Elo评级系统:玩家可以不断加入游戏时的起始值

caw*_*caw 43 system rating

我在游戏中实现了Elo评级系统.玩家数量没有限制.玩家可以不断加入游戏,因此玩家数量可能会逐渐增加.

由于这个事实,Elo值如何精确计算并不重要:如果A队击败B队,那么A的Elo胜利等于B的Elo损失.

因此,我的评级系统的起始值存在问题:

  • 我应该为每个玩家使用起始值"0"吗?所有Elo值的总和将是恒定的.但是,由于球员数量的增加,会出现某种Elo通缩,不是吗?
  • 我应该使用任何大于0的起始值吗?在这种情况下,所有Elo值的总和将不断增加.因此可能存在Elo通胀.问题:Elo点失去价值,但起始值始终保持不变.

我该怎么办?你能帮助我吗?提前致谢!

And*_*rew 58

您可以从零开始并在显示的分数中添加一个软糖因子以使其保持在零以上,或者您可以从1000开始 - 它们是相同的.是的,有了1000个起点,你将在系统中拥有越来越多的总ELO积分,但它平均每个玩家的数量总是相同的 - 1000.Elo的起始值始终是当前的平均值.ELO是零和游戏,玩家A失去的分数由玩家B获得.

当你将起点设置为1000时,你基本上说的是普通玩家= 1000分.有一组封闭的初始玩家(beta测试员?)这是真的,在该组平均值= 1000.但如果游戏是你随着时间的推移而改善的那么你的封闭组平均玩家变得高技能而不是没有播放.

现在当你为一个新玩家分配1000时,你说的是新的普通玩家=现有的高技能普通玩家.事实并非如此,他们可能比你原来的封闭团队技能要低得多.因此,新玩家会失去积分,而你的高技能玩家会获得通胀.你需要做的是准确评估新玩家的技能,并为他们分配更符合他们实际技能的排名.这可以通过为他们的前x场比赛分配一个"临时排名",直到你感受到他们的技能.暂时排名只有他们的ELO分数会改变,而不是他们所扮演的人.一旦他们加入真实系统,他们带入得分ELO的分数大致相当于他们的实际技能,他们不会大幅上升或下降=>没有通货膨胀或通货紧缩.

简而言之:临时排名

  • 对,就是这样.然后经过一些临时游戏,你的评分应该大致反映出他们的真实能力.将它们升级到正常的玩家状态,使用此等级并从那时起对待它们与其他人一样. (4认同)
  • 非常感谢!所以我可以给每个玩家1000个起点。但新玩家只有前 X 场比赛的临时分数。到目前为止正确吗?在这些 X 场比赛中,他们只会正常获得或失去分数,但他们的对手却不会。正确的? (2认同)
  • 这与国际象棋中使用的 ELO 系统相同,并且不会获得负面评级。如果你从同一个起点开始,你也不应该。偏离平均值越远,保持偏离的难度就越大,这是有一个有效限制的。在国际象棋中,“平均分”= 1200,“特级大师”= 2500,因此,如果您能够将平均分提高 1300 分,那么您就是特级大师。要获得负值,您需要将平均分提高 1200 分以上 - 表现不佳的“负值”大师。这将是极其困难的,我怀疑它是否会发生。 (2认同)

Kie*_*ran 18

该网站使用了elo评级系统.他们从1200开始

取自http://gameknot.com/help-answer.pl?question=29

GameKnot评级系统基于Elo评级系统,固定K = 20,并进行以下修改:

前20场比赛用于在网站上建立球员的评分.在前20场比赛中,球员的评分被计算为他/她所有对手的平均评分,如果是胜利则为+400,如果是亏本则为-400,平局为相同.与具有临时评级的玩家对战时使用+/- 200点.在前20场比赛中,球员的评分是暂定的,之后就会成立.在前5场比赛中,玩家的评分被认为等于1200.

只有在游戏中至少进行了3次移动时才会将超时计为胜利(无论进行了多少次移动,都会计算超时玩家的损失).

在游戏开始时和结束时,两个评级中的较高者用于计算游戏结束后的评级调整.

例如,如果在你的前20场比赛中,你打了3场比赛,而你赢了1200名具有临时评分的玩家,那么对于1400名已经确定评级的玩家,但是对于1600名具有既定评级的玩家而言,你的评分将是:((1200) + 200)+(1400 + 400)+(1600 - 400))/ 3 = 1467

或者,如果在你的前20场比赛中,你赢得1200比赛,赢得1400比赛,输掉1600比赛,比1500比赛,你的评分为:((1200 + 200)+(1400 + 400)+(1600 - 200)+ 1500)/ 4 = 1525