Par*_*roX 3 javascript php statistics chess rating
Glicko-2是国际象棋中使用的评级系统,但可用于许多其他情况.Glicko-2是对Glicko-1的改进,它解决了旧ELO评级的问题.
与版本1相比,Glicko-2的特殊之处在于它具有更高的评级偏差(RD),即某人不活动的时间越长.它使用与时间/评级周期相关的系统常数的概念来实现这一点.
可以在此处找到作者的一个例子:http://www.glicko.net/glicko/glicko2.pdf.
在这份文件中,他解释说:
当评级期间的游戏数量从中到大时,Glicko-2系统效果最佳,比如评级期内每位玩家平均至少10-15场比赛.评级期的时间长短由管理员决定.
假设一组活跃的国际象棋选手在1个月的时间内平均玩10-15场比赛,管理员将在每个月末更新评级.
我需要一个Glicko-2评级系统的PHP实现,并且遇到了以下内容:
我已经修复了错误(并向作者提交了问题/补丁)我可以在PHP和JavaScript版本上找到与Excel计算器紧密匹配的错误
现在我有99%的信心,我有一个准确的Glicko-2实现(在它们中的3个之间)进行分析,这就是我遇到一些奇怪的东西,以及这个讨论的主题.
给出新玩家Glicko-2的建议默认值:
Rating: 1500
RD: 350
Volatility: 0.06
Run Code Online (Sandbox Code Playgroud)
如果您在接下来的12个时期(1年)的每个评级期(1个月)内只面对1378评级和RD 99(来源)的平均对手,您将累积假定的国家A级(1800-1999)评级为1852实际上,你在12个月的时间里只击败了12名平均水平的球员.
Month Rating RD Volatility Class
1 1625 259 0.059999 National Class B
2 1682 225 0.059998 ?
3 1718 205 0.059997 ?
6 1784 174 0.059994 ?
12 1852 148 0.059988 National Class A
24 1922 127 0.059976 ?
Run Code Online (Sandbox Code Playgroud)
如果你在每个评级期间面对2个普通对手,你可以在4-5个月内到达国家A级,面对的平均对手只有8-10个.
Month Rating RD Volatility Class
1 1672 215 0.059999 National Class B
2 1733 183 0.059997 ?
3 1770 166 0.059995 ?
4 1797 154 0.059993 ?
5 1819 146 0.059992 National Class A
6 1836 140 0.059991 ?
Run Code Online (Sandbox Code Playgroud)
如果它不是一个bug,除此之外还有哪些方法可以解决这个问题:
小智 8
这看似违反直觉,但实际上这是一个正确的结果.如果你连续玩普通玩家,但你总是赢,无论时间段如何,你都表明你的排名很高(即使你的对手是平均水平,也不是平均排名).平均(具有'真正的'平均等级)的玩家,玩对手具有完全相同的"真实"等级(平均值)应该赢得并且失去大约50%的时间.具有非常高的"真实"等级的玩家将在玩普通玩家时赢得更大比例的时间,这取决于他们的等级有多远,但是可以说这是一个足够高的等级,他们应该赢得90%的时间.这意味着对于普通玩家来说,有10场比赛,这个排名很高的球员应该输掉其中的一场.
你有效建模的是一个排名足够高的玩家,可以赢得每场比赛对阵普通玩家(超过12或24场没有损失的比赛),这意味着如果他们继续获胜,他们的得分将继续上升因为他们从未输过.他们表现出的能力(直到发生损失)应该具有足够大的等级分离,以达到100%的预期胜率.
| 归档时间: |
|
| 查看次数: |
3610 次 |
| 最近记录: |