国际象棋 Elo 计算器:公式、K 系数和示例
适用于 iPhone、iPad、Mac 和 Android。无需账户。
Elo 计算器
| 对局 | 对手等级分 | 结果 | 预期得分 | 变化 | 删除对局 |
|---|---|---|---|---|---|
| 1 | 0.36 | +12.8 | |||
| 2 | 0.57 | −1.4 |
FIDE 会把一个等级分周期内所有对局的变化相加,并公布取整后的结果。
上方的 Elo 计算器会显示一盘或多盘对局之后等级分如何变化。输入你的等级分、对手的等级分和对局结果,选择 K 系数,它就会显示每盘对局的预期得分、等级分变化和你的新等级分。下面介绍它背后的公式和计算示例、FIDE 关于 K 系数和 400 分规则的规定,以及 Elo 与 Lichess 和 Chess.com 所用的 Glicko 系统有什么不同。
Elo 是什么意思
Elo 等级分制度以阿帕德·埃洛(Arpad Elo)的名字命名,他是匈牙利裔美国人,马凯特大学的物理学教授。美国国际象棋联合会于 1960 年采用了他的等级分制度,国际棋联(FIDE)于 1970 年跟进。如今 FIDE 的官方等级分仍然使用这一制度。
Elo 等级分是一个相对的数字。单看 1650 说明不了什么,关键在于你和对手之间的分差。系统根据这个分差预测你应该得多少分。如果你的得分高于预测,等级分就上升;低于预测,就下降。在 K 系数相同时,一方得到的分数正好是另一方失去的分数。
预期得分
预期得分 E 是一位棋手对阵某个对手时每盘应得的分数,介于 0 和 1 之间。赢一盘记 1 分,和棋记 0.5 分,输棋记 0 分。公式是:
E = 1 / (1 + 10^((R_opponent - R_own) / 400))其中 R_opponent 是对手的等级分,R_own 是你自己的等级分。等级分相同时,E 为 0.5。分差每增加 400 分,胜负赔率就扩大十倍。保留两位小数:
| 等级分差 | 高分方的预期得分 | 低分方的预期得分 |
|---|---|---|
| 0 | 0.50 | 0.50 |
| 100 | 0.64 | 0.36 |
| 200 | 0.76 | 0.24 |
| 300 | 0.85 | 0.15 |
| 400 | 0.91 | 0.09 |
预期得分 0.76 并不表示有 76% 的获胜概率,而是表示 100 盘对局得 76 分,和棋按半分计算。FIDE 并不直接使用这个公式,而是使用其等级分条例中的一张换算表。表中的数值几乎相同;分差为 400 时,换算表给出的是 0.92 而不是 0.91。
等级分如何变化
一盘对局之后,等级分的变化等于实际得分与预期得分之差乘以 K 系数:
变化 = K × (实际得分 - E)计算示例。 你的等级分是 1500,对手是 1700,你的 K 系数是 20。分差为 200 分,所以你的预期得分是 1 / (1 + 10^(200/400)) = 0.24。
| 结果 | 得分 | 计算 | 变化 |
|---|---|---|---|
| 胜 | 1 | 20 × (1 - 0.24) | +15.2 |
| 和 | 0.5 | 20 × (0.5 - 0.24) | +5.2 |
| 负 | 0 | 20 × (0 - 0.24) | -4.8 |
和一个更强的对手下成和棋就已经能加分,因为你的得分高于预期。K 系数相同的对手,失去的分数正好等于你得到的分数。
多盘对局。 FIDE 把一个等级分周期内所有对局的变化相加,每盘都用当前等级分表上的等级分计算。上方的计算器也是这样计算的。示例,K 为 20,等级分 1500:战胜 1400 的对手(E 0.64,变化 +7.2),与 1600 的对手和棋(E 0.36,+2.8),输给 1550 的对手(E 0.43,-8.6)。合计 +1.4,所以新等级分是 1501。
FIDE 的 K 系数和 700 规则
K 系数决定一盘对局能让等级分变动多少。根据 FIDE 等级分条例:
- K = 40:新进入等级分表的棋手,直到他们完成至少 30 盘对局的赛事为止。
- K = 40:所有棋手在年满 18 岁那一年的年底之前,只要等级分保持在 2300 以下。
- K = 20:只要等级分保持在 2400 以下。
- K = 10:公布的等级分一旦达到 2400。即使之后等级分跌到 2400 以下,也仍然保持为 10。
700 规则。 如果一个等级分周期内的对局数乘以 K 超过 700,K 就会降为使 K × 对局数不超过 700 的最大整数。一位 K 为 40 的青少年棋手如果一个月内下了 20 盘计分对局,乘积会达到 800,所以这个周期的 K 变为 35。一位 K 为 20 的成年棋手下了 40 盘,乘积同样达到 800,所以 K 变为 17。
计算器可以选择 K 为 40、20 或 10。如果你在一个周期内下了很多盘,请自己按 700 规则设置 K 系数,或者把结果与你所在棋协的计算结果对照。
400 分规则
FIDE 对等级分差设有上限:超过 400 分的分差按 400 分计算。自 2025 年 10 月 1 日起,这条规则适用于等级分低于 2650 的棋手;高于此分数则使用实际分差。
示例,K 为 20:一位 1500 分的棋手战胜一位 1000 分的对手。按实际分差 500 分计算,预期得分为 0.95,加分约 +1.1。按上限计算,预期得分为 0.91,加分 +1.8。如果这盘棋输了,会失去 18.2 分而不是 18.9 分。打开 400 分规则后,计算器会应用这个上限。对于等级分 2650 及以上的棋手,请把它关掉。
Elo、Glicko 以及等级分数字说明了什么
网络平台使用的是统计学家马克·格利克曼(Mark Glickman)对 Elo 思想的发展。Lichess 使用 Glicko-2,新棋手从 1500 起步。Chess.com 使用 Glicko,那里的起始等级分取决于你注册账户时选择的水平。
Glicko 保留了预期得分的思路,但增加了第二个数字,即等级分偏差:系统对你的等级分有多大把握。新棋手和中断一段时间后回来的棋手偏差较大,所以他们的等级分每盘变动更多。偏差较大时,Lichess 会在等级分后面加一个问号。这就是为什么上方的计算器与 FIDE 的计算非常接近,但与你在 Lichess 或 Chess.com 上看到的只是大致相符。
等级分数字只有在它自己的棋手池里才有意义。例如 FIDE 的等级分表从 1400 开始,低于这个分数的棋手显示为无等级分。Lichess 上的 1500、Chess.com 上的 1500 和 FIDE 等级分表上的 1500 是三种不同的水平。它们之间的关系请参阅 Chess.com 与 Lichess 等级分对比页面。
计算器只计算结果,不看着法
Elo 只看结果。侥幸战胜强手和下得漂亮的胜利算的分一样,下得很好却超时输掉的对局也算输棋。如果你想知道自己在一盘对局中实际下得怎么样,就需要另一种工具:一种看着法的工具。
这正是 ChessWOW 应用通过棋力估计所做的事。按用户名导入你的 Lichess 对局,打开报告,ChessWOW 就会为双方估计一盘超快棋或快棋所体现的水平,以 Lichess 尺度上的一个大致范围表示。它不是官方等级分,单盘对局也可能与你平时的水平有出入,但多盘对局就能看出规律。
问题与解答
Elo 是怎么计算的?
先算预期得分:E = 1 / (1 + 10^((对手等级分 - 自己等级分) / 400))。再算变化:K × (实际得分 - E),胜记 1 分,和记 0.5 分,负记 0 分。
我的 K 系数是多少?
在 FIDE,新棋手在下满 30 盘之前以及 2300 分以下的青少年棋手为 40,2400 分以下为 20,达到 2400 分后为 10。各国棋协可以使用自己的规则。
和棋能加分吗?
能,前提是对手的等级分比你高。和棋得 0.5 分,而对阵更强的棋手时,你的预期得分低于 0.5。
为什么 Lichess 上我的等级分变化幅度不一样?
Lichess 使用 Glicko-2,它还会考虑你的等级分有多确定。新棋手或不活跃的棋手每盘的变化比 Elo 预测的更大。
什么是 400 分规则?
FIDE 把超过 400 分的等级分差按 400 分计算。自 2025 年 10 月 1 日起,这条规则适用于等级分低于 2650 的棋手。
计算器能告诉我下得有多强吗?
不能。它只根据结果计算。要估计一盘对局所体现的水平,ChessWOW 应用会查看导入的 Lichess 对局中的着法。
继续阅读
看看你下得怎么样,而不只是得了多少分。
ChessWOW 估计你的 Lichess 对局所体现的水平,并显示每盘棋在哪里发生了转折。