ELO是什么? 埃洛排名系统是基于统计学的一个评估棋手水平的方法。美国国际象棋协会在1960年首先使用这种计分方法。由于它比先前的方法更公平客观,这种方法很快流行开来。1970年国际棋联正式开始使用这个系统。 换言之,就是一个叫ELO学霸,做了一个算法取名叫ELO,大家玩LOL和DOTA的时候匹配就是通过这个算法做的。 我们认为,在某一个人的身上,其生涯实力总体在某一特定水平波动。虽然有可能会出现大波动,但通常情况下出现大波动的可能性较低。 l 某个选手,在某一分段区间内的波动属于正常现象。 l 在某一分段区间内的选手,水平大致相同,胜出的期望也大致相同。 那么在样本量足够大的情况下,我们可以认为,出现异常情况(期望胜率大于50%时失败)是可以被允许的。
这是国际棋联FIDE所用200为一分段的Rank区间。弄一个称号显得高大上,信达雅。 不是学霸不要紧,看到公式不要怕! *这一章的公式比较多,看起来很复杂,但是跟着楼主的思路慢慢走,你会发现其实很简单,千万别着急。
A对B的期望胜率:
反之,得到B对A的期望胜率:
最终,我们得到这样一个最简化公式:(后面和有一个附加值公式,我们先分析这个)
Sa表示队伍A的比赛结果,胜利S值为1,平局S值为0.5,失败S值为0 Ra(A’s RankScore):表示队伍A当前的Rank分 Rb(B’s RankScore):表示队伍B当前的Rank分
D=Ra-Rb:就是A和B的Rank分差
也就是说,狗蛋能成为爸爸的概率是57.1%,同时狗蛋也会有42.9%的概率成为儿子。
多场比赛后,一般为
我们为什么不用W?因为W是实际得分率,下面会用到。 W作为实际得分率,有且只有三个取值 胜利:100%=1 打平:50%=0.5 失败:0%=0
此时还不够,因为我们必须要为不同分段的选手们引入一个常数K,这个常数的作用暂时不表,留作课后习题。
天空一阵巨响,公式闪亮登场 Rn:赛事后的新Rank分
Ro:赛事前的原Rank分
通过读题我们发现,W=0+1+1=2(负1胜2)
那么最核心的一步就是计算We了:
然后我们再带入公式: Rn=2000+20×(2-1.589)≈2008 狗蛋队最终得分是2008分。
为了防止某一个玩家连胜,或者连败,为游戏和用户体验带来消极的影响,我们会在Rank分中加入一个临时常数Ri,该常数在匹配时会使玩家匹配到更低或者更高的分段,并且在Rank分差D=Ra-Rb-Ri中体现。这个常数的引入有什么好处就一并留作课后思考吧。 2. K的取值大小会对Rank分造成什么影响? 3. K的取值大小在游戏中实际对玩家造成了什么影响? 4.我们应该如何为K赋值? 本文不允许任何形式的转载。 |
数值 ELO算法教程
最新推荐文章于 2023-07-12 20:45:24 发布