ELO算法
来源:互联网 发布:矩阵特征根 编辑:程序博客网 时间:2024/04/30 09:41
Elo分级系统由美国物理学教授Arpad Elo提出,最初是用于计算象棋比赛中的选手的相对水平,现在已经广泛用于很多类比赛的选手分级。
在一场比赛中,选手都有一个分数,这个分数代表了选手的实力。分越高表示选手实力也越高。而分数可以通过打败其他选手来获得。
Elo算法的实现细节如下:
假设选手A和B,当前拥有的分数分别为RA和RB。
则选手A得分的期望值为:
类似地选手B得分的期望值为:
或者也可以表示为:
其中:,
显然的,根据公式,有
期望值为A的实际得分为SA,则更新后的分数为:
这里K是一个常数,对于实力较强的选手,设置K=16,以相对减小实力强的选手的增加得分(这基于一个常识,实力越强,后面提升的空间就相对越小)。对于实力较弱的选手,则设置K=32。
举个例子,A的初始分数和1613,B的初始分数为1609。则
EA =1/(1+10^((1609-1613)/400)) = 0.506。
若A负于B,则SA=0(若A战胜B,则SA=1,平局为0.5)。
则R'a = 1613 + 32*(0 - 0.506) = 1597
Elo与一般的锦标赛得分制相比,优势在于它考虑到了选手本身的实力差距。比如一个较强的选手战胜了一个较弱的选手,这种胜利应该是理所当然的,因而获得的分数就会相对较少。而反之一个较弱的选手战胜了一个较强的选手,这种胜利不太常见,就会相应提高赢得的分数。这样相对而言更为公平。
Elo分级算法的一种潜在的应用是,用在电子商务中商品之间的比较。可以通过一系列指标给所有商品一个初始的分数。然后通过用户的决策,如浏览、收藏、购买这些行为来形成比较,从而选出优胜的商品。
- ELO算法
- 数值 ELO算法教程
- ELO评分算法
- ELO算法的JAVA实现
- 游戏中的数学:ELO Rating算法简介
- Elo评分算法原理与实现
- Elo系统---英雄联盟、WOW采用的匹配算法
- 游戏 匹配算法 实现(基于ELO分数、等待时长)
- Elo rating system(Elo 打分体系)
- Elo排名系统
- ELO等级介绍
- Elo rating system
- ELO Rating排名系统
- 天梯匹配规则ELO
- ELO等级分制度
- 天梯匹配规则ELO
- ELO等级分制度
- ELO rating system
- 九度OJ 1072 harsh处理清华机试之邮票面值总和
- iphone开发十几个实用demo合集
- ETL的解释
- AWK 简明教程
- linux升级监控-sysstat
- ELO算法
- Pidgin下登陆Hipchart的步骤
- 过年好啊!
- c# 集合对象详解
- ListView的理解
- Lol的积分机制:埃罗(ELO)预算法详解
- linux 使用ssh登录到另一台服务器和本地之间的切换
- Android异步下载图片并且缓存图片到本地
- Android画图drawText入门(一)-字体结构