等级分的计算公式是Rn=Ro+K*(W-We),Rn是新等级分、Ro是原始等级分、K是K值、W是比赛实际对局得分(胜为1,和为0.5,负为0)、We是估计胜率。从这个公式可以看出,We值的估算越精确,则等级分就越精确。
按照目前通行的Elo等级分计算模型,王天一对郑惟桐的胜率计算为Ew=1/1+10^(2699-2712)/400约等于0.518即约为52%。
笔者琢磨了We的提高精度的计算方法,现把思路阐述如下:
第一步,以原始等级分为基础数据,首先计算所有棋手等级分的平均分,比如以中国象棋协会公布的最新等级分表为例,计算出平均分为2466分。
第二步,引入一个能力值的概念。以王天一的等级分为例进行计算,2712-2466=246,246/466=0.53,0.53+0.5=1.03。得出王天一的能力值约为1.03。
第三步,计算预估胜率(能力值在双方能力值和中的占比)。按照第二步的算法算出郑惟桐的能力值为1.0。计算王天一对郑惟桐预估胜率的方法为1.03/(1.03+1.0)=0.51。王天一对郑惟桐的预估胜率为51%。
王天一和郑惟桐的预估胜率,笔者的算法和Elo模型的计算结果相差了近1%,而与其他棋手的结果相差更大,因此笔者觉得Elo模型的算法精确度有很大的提升空间。
第四步,计算对局后的等级分变化。模拟王天一和郑惟桐的对局的胜、负、和的等级分变化情况如下:
王天一胜郑惟桐
王天一的等级分为:Rn=2712+10*(1-0.51),结果为2716.9;
郑惟桐的等级分为:Rn=2699+10*(0-0.49),结果为2694.1;
双方战平的情况
王天一的等级分为:Rn=2712+10*(0.5-0.51),结果为2711.9;
郑惟桐的等级分为:Rn=2699+10*(0.5-0.49),结果为2699.1;
郑惟桐胜王天一
王天一的等级分为:Rn=2712+10*(0-0.51),结果为2706.9;
郑惟桐的等级分为:Rn=2699+10*(1-0.49),结果为2704.1;
当然随着棋手的等级分的变化,棋手的能力值也在变化,预估胜率也就发生了变化。
以下是笔者根据最新等级分模拟计算的一张能力值表和王天一对其他棋手的预估胜率表,供大家探讨。
更多象棋交流,欢迎关注微信公众号 木门斋
序号 | 姓 名 | 单位 | 现等级分 | 称号 | K值 | 能力值 | 预估胜率 | Eol预估胜率 |
1 | 王天一 | 四川 | 2712 | 特 | 10 | 1.03 | ||
2 | 郑惟桐 | 四川 | 2699 | 特 | 10 | 1.00 | 0.507 | 0.519 |
3 | 赵鑫鑫 | 浙江 | 2623 | 特 | 10 | 0.84 | 0.552 | 0.625 |
4 | 许银川 | 广东 | 2607 | 特 | 10 | 0.80 | 0.562 | 0.647 |
5 | 孟 辰 | 天津 | 2604 | 大 | 10 | 0.80 | 0.564 | 0.651 |
6 | 洪 智 | 上海 | 2602 | 特 | 10 | 0.79 | 0.565 | 0.653 |
7 | 赵国荣 | 黑龙江 | 2597 | 特 | 10 | 0.78 | 0.569 | 0.660 |
8 | 蒋 川 | 北京 | 2595 | 特 | 10 | 0.78 | 0.570 | 0.662 |
9 | 孙勇征 | 上海 | 2592 | 特 | 10 | 0.77 | 0.572 | 0.666 |
10 | 汪 洋 | 湖北 | 2589 | 特 | 10 | 0.76 | 0.574 | 0.670 |