Elo评分系统:玩家可以不断join游戏的初始值
我已经在游戏中实现了一个Elo评分系统。 号码玩家没有限制。 玩家可以不断地join游戏,所以玩家的数量可能会逐渐增加。
如何精确地计算Elo值并不重要,因为这个事实:如果A队击败B队,那么A的Elo胜平等于B的Elo损失。
因此,我的评分系统的初始值有一个问题:
- 我是否应该为每个玩家使用起始值“0”? 所有Elo值的总和将是不变的。 但是由于球员人数在增加,会出现某种Elo通货紧缩,不是吗?
- 我应该使用任何大于0的起始值吗? 在这种情况下,所有Elo值的总和将不断增加。 所以可能会有一个Elo通货膨胀。 问题:Elo点失去价值,但始终保持不变。
我该怎么办? 你可以帮我吗? 提前致谢!
您可以从零开始,为显示的分数添加一个模糊因子,使其保持在零以上,也可以从1000开始 – 它们是相同的。 是的,在1000的起点上,系统中总的ELO点数会有所增加,但平均每个玩家的总数是1000. Elo的起始值始终是当前的平均值。 ELO是一个零和游戏,玩家A失去的点数由玩家B获得。
当你将起点设置为1000时,你基本上是说平均玩家= 1000点。 有一组封闭的初始玩家(testing者?),这是真实的,在这个群体平均值= 1000。但是如果游戏是你随着时间改进的东西,那么你的封闭群体平均玩家变得高度熟练播放。
现在当你给一个新玩家分配一个1000时,你会说新的普通玩家=现有高技能的普通玩家。 这是不正确的,他们可能会更不熟练,你最初的封闭组。 所以新玩家失分,高技能玩家获得=>通货膨胀。 你需要做的是准确地评估新玩家的技能,并给他们一个更符合他们实际技能的排名。 这可以通过为他们的第一个x游戏分配一个“临时排名”,直到你感觉到他们的技能。 临时排名只有他们的ELO分数会改变,而不是他们所玩的人。 一旦他们join真正的系统,他们带入ELO的要点将大致等同于他们的实际技能,他们不会显着上升或下降,即不会出现通货膨胀或通货紧缩。
总之:临时排名
这个网站使用了Elo评分系统。 他们从1200开始
取自http://gameknot.com/help-answer.pl?question=29
GameKnot评分系统基于Elo评分系统,具有固定的K = 20以及以下修改:
前20场比赛用于在网站上build立玩家评分。 在前20场比赛中,球员的评分是以他/她的对手的平均评分计算的,如果是赢,则为400,如果是亏损则为-400,平局相同。 与临时评级的玩家比赛时使用+/- 200分。 玩家的评级在前20场比赛中是暂时的,在此之后就成立了。 在前5场比赛中,玩家的评级被认为等于1200。
超时只有在游戏中至less有3次移动的情况下才会被视为胜利(不pipe有多less次移动都会造成超时玩家的损失)。
两个评分中的较高者,在游戏开始时和结束时,用于计算游戏结束后的评分调整。
例如,如果在前20场比赛中,你打了3场比赛,你赢了1200个临时评级的玩家,然后对1400个已经build立了评级的玩家,但是对于1600个已经build立了评级的玩家,你的评分将是:((1200 + 200)+(1400 + 400)+(1600-400))/ 3 = 1467
或者,如果在你的前20场比赛中,你赢了1200临时,赢得1400反对,1600临时,1500反对,你的评分将是:((1200 + 200)+(1400 + 400)+(1600 – 200)+ 1500)/ 4 = 1525
- 玩家看到这个分数吗?
- 玩家会了解Elo吗?
- 如果他们的分数变成负值,玩家会继续玩吗?
我会开始每个人在一些积极的价值(10,100,1000,没关系)。 当两个相对能力较强的人打比赛时,分数交易如预期。 你需要集中注意力是两个球员之间的某种相对能力。
假设,在游戏的一生中,我有25000分,而你是100分。我打败了你,我什么也得不到,什么也没有损失。 为什么? 因为我刚运了一个n00b,这就是为什么。 新玩家取下首发球员应该没有什么优势。 而且,即使你处于某个点的范围内,你也应该实现一个在特定的时间范围内只能从给定的玩家那里获得这么多点的东西。
很明显,这将会在整个游戏的生命周期中不断调整。
我不知道它是否有用,但是Mark Glickman的评级页面讨论了一些Elo评级,他们的下跌等问题(见最后几段)。 另请参阅他的评分系统,即Glicko系统 ,这个系统似乎考虑了播放频率并讨论了评分的可靠性 。 最后,他的研究页面上有很多论文讨论评分和可靠性。
希望有所帮助。
也许,让点不能在首发之下,把他的损失量放在一些“口袋里”。
让我们说玩家从0开始。一个玩家有elo 0,失去10分。 他什么都不会输,这点将会放在一些口袋里。 现在让我们来想象一下,玩家赢下了11分。 他没有得到那11分,而只得到1分。 而现在他的“口袋”将有0分。
Elo对两位球员或球队的评分有所不同 ,实际价值无关紧要。 你可以从任何你喜欢的数字开始。 我运行一个起始值为5000的Facebook Scrabble League系统,只是为了区别于其他Scrabble评级系统。
通货膨胀并不是因为经验丰富的新手失分而导致的 – 这一切都会及时消除。 来自低于平均评级的人员的通货膨胀结果离开系统。 这就是在线游戏中发生的事情,与现实生活中的国际象棋不同的是,通货紧缩是一个问题,因为高度评价的玩家退休并将自己的观点从系统中解放出来。
但是你需要担心通货膨胀吗? 唯一重要的是,如果你想比较现有玩家的performance和历史数据 – 没有任何networking游戏玩家可能面临的问题。 即使你担心通货膨胀,也很容易纠正。 find所有当前玩家的平均评分,并将其与开始数字进行比较,如果过高,则降低每个人的评分以使其恢复正常。 根据我的经验,每个评分期间减less1或2分是不可能的,并且会造成很多新手被打败,不会回来。
许多系统给予新人更高的K值,以便他们更快地find他们的等级。
另一种方法是不评估新人,直到他们发挥了他们的第一个评级期间,在这一点上,你计算评级的基础上,如果将不得不Elo正确地预测结果。 这是不可能的,如果你有所有未评级的玩家在一起,(我想)会涉及recursion,如果你有一个比赛中有多个新人。 这也破坏了Elo的零和原则,消除了衡量通货膨胀的能力。 然而,与使用这个系统的人交谈,在实践中我被告知“这一切都是平等的”。
我还要补充一点,我们有一个坚定的球员,在过去的四年里,他在732场比赛中只有21场失利,而他的Elo仍然是4100左右。他每轮输球的积分都快速接近于零。
我认为互联网上的大部分类似ELO的系统在评级蠕变方面会有问题。
假设所有新玩家的评分为零。 LousyPlayer失去了十几场比赛,他的评分远低于零。 什么阻止他清除浏览器,在新的电子邮件地址注册一个新的帐户,并重新开始?
如果这是可能的,那么排名较低的账户将休市,提高实际平均评级。