Elo rating system匹配算法

Elo算法用来天梯中的积分计算。应用于WOW竞技场、LOL、dota等积分系统中

设定:

Ra:A选手的当前rating积分

Rb:B选手的当前rating积分

Sa:实际胜负值,胜=1 平=0.5 负=0

Ea:预期A选手的胜负值,Ea=1/(1+10^[(Rb-Ra)/400])

Eb:预期B选手的胜负值,Eb=1/(1+10^[(Ra-Rb)]/400)

其中Ea+Eb=1,E值为预估的胜率

K:每场比赛能得到的最大rating,魔兽中k=32

R‘a:A选手一场比赛之后的rating

R’b:B选手一场比赛之后的rating

R‘a=Ra+K(Sa-Ea)


举例:

A:1500,B:1600,则A队的胜负值Ea=1/(1+10^[(1600-1500)]/400)=0.36

假设A队赢了,实际胜负值为1

A最终得分为:R’a=1500+32*(1-0.36)=1500+20.5=1520,赢20分,B输20分

假设B队赢了,预估B队胜负值Eb=0.64

B最终得分为:R‘b=1600+32*(1-0.64)=1600+11.52=1612,赢12分,A队赢输12分

你可能感兴趣的:(Elo rating system匹配算法)