- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
Glicko-2 是一种用于国际象棋的评级系统,但也可用于许多其他情况。 Glicko-2 是对 Glicko-1 的改进,它解决了旧 ELO 评级的问题。
与版本 1 相比,Glicko-2 的特别之处在于,它包含的评级偏差 (RD) 越高,某人处于非事件状态的时间越长。它使用与时间/评级周期相关的系统常数的概念来做到这一点。
作者撰写的示例可在此处找到:http://www.glicko.net/glicko/glicko2.pdf .
在这份文件中,他解释道:
The Glicko-2 system works best when the number of games in a rating period is moderate to large, say an average of at least 10-15 games per player in a rating period. The length of time for a rating period is at the discretion of the administrator.
假设一组活跃的国际象棋玩家在 1 个月的时间段内平均玩 10-15 场比赛,然后管理员将在每个月底更新评级。
我需要 Glicko-2 评级系统的 PHP 实现,遇到了以下情况:
Glicko-2 JavaScript Implementation
我已经修复了我可以在 PHP 和 JavaScript 版本上找到的错误(并向作者提交了问题/补丁)以尽可能接近 Excel 计算器
现在我有 99% 的信心我有一个准确的 Glicko-2 实现(在它们的 3 个之间)用于分析,那时我遇到了一些奇怪的事情,以及这个讨论的主题。
给定新玩家 Glicko-2 的建议默认值:
Rating: 1500
RD: 350
Volatility: 0.06
如果您在接下来的 12 个周期(1 年)中每个评级周期(1 个月)仅面对一次评级为 1378 和 RD 99 (Source) 的平均对手,您将累积假定的 National Class 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 〃
如果每个rating period面对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 〃
如果不是bug,还有什么方法可以解决:
最佳答案
这可能看起来违反直觉,但这实际上是一个正确的结果。如果你连续打普通玩家,但你总是赢,不管时间段,你证明你有一个高排名(不是平均排名,即使你的对手是平均水平)。一个平均水平的玩家(具有“真实”平均等级),与完全相同“真实”等级(平均)的对手交手应该有大约 50% 的胜负率。一个“真实”排名非常高的玩家,在与普通玩家比赛时将赢得更大比例的时间,这取决于他们的排名相差多远,但假设这个排名足够高,他们应该赢得 90%的时间。这意味着在与普通玩家对战的 10 场比赛中,这位排名靠前的玩家应该输掉其中的 1 场。
您有效建模的是一名排名高到足以在与普通球员的比赛中获胜的球员(超过 12 或 24 场比赛未输),这意味着他们的分数将继续无限制地上升,如果他们继续赢,因为他们从未输过。他们展示了一种能力(直到失败发生)应该有足够大的等级分离以接近 100% 的预期获胜率。
关于php - Glicko-2 评级系统 : Bug or exploit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12054514/
我正在尝试在已加载到 python 中的数据帧上运行 Glicko v2 计算。由于每场比赛都是独立的,我只能比较参加过同一场比赛的运动员。 import pandas as pd import nu
Glicko-2 是一种用于国际象棋的评级系统,但也可用于许多其他情况。 Glicko-2 是对 Glicko-1 的改进,它解决了旧 ELO 评级的问题。 与版本 1 相比,Glicko-2 的特别
我是一名优秀的程序员,十分优秀!