Chess Caddy / 指南 / 俱乐部等级分榜
俱乐部国际象棋等级分榜怎么运作
等级分榜是一个跟着棋手从这个俱乐部之夜走到下一个俱乐部之夜的数字。下面是它的算法、常见的坑,以及在把它放到互联网上之前该做的决定。
多数俱乐部比赛的结局都一样:一份最终成绩表、一个冠军,然后就没有然后了。下个月大家又从零开始。 等级分榜就是把这些夜晚串起来的东西——每位棋手一个数字,赢了比预期更强的对手就往上走, 没做到就往下走,只要人还在来,这个数字就从一场比赛带到下一场。
它是唯一能把一连串俱乐部之夜变成一个赛季的功能。这份指南讲清楚它的算术怎么算、它刻意拒绝计入哪些 东西,以及哪些决定你应该有意识地去做,而不是稀里糊涂地撞上——尤其当你的棋手里有孩子的时候。
一句话版本。所有人从 1200 分起步。每场比赛结束后,每位棋手的等级分变化量 = K 乘以 “实际得分减去等级分预测的得分”。新棋手动得快,老棋手动得慢,而最初几局会被标为临时, 因为那时的分数还只是一个猜测。
俱乐部等级分榜是什么,又不是什么
俱乐部等级分榜是一份内部等级分名单。它属于你的俱乐部,由你们自己的比赛结果算出来,和任何国家级或 国际级等级分都没有关系。这个区别比本页上其他任何内容都重要,所以值得把话说得直白一点。
| 俱乐部等级分榜 | 国家等级分 |
|---|---|
| 由你们俱乐部自己的比赛算出 | 由本国协会根据注册的等级分赛事计算 |
| 办完一个晚上就开始起作用 | 需要会员身份、赛事注册和费用 |
| 在你的俱乐部内部有意义 | 在哪里都代表同一件事 |
| 你可以自己更正 | 你提交上去,然后等着 |
两者谁也替代不了谁。俱乐部等级分榜回答的是“这个赛季谁在我们俱乐部下得好”,那正是你的 会员真正会问的问题,而且它星期二晚上就能回答,不用等到下个月。国家协会的等级分回答的是“这名棋手 和全国所有人比有多强”,而这是一个俱乐部无论软件多好都算不出来的。
它的实际用处平常而直接。它能给你下一场瑞士制的第一轮排序,不用谁去凭空猜实力顺序。它能给一位回来 下棋的老会员一个目标。它让你把一场大型赛事分成站得住脚的组别。而且它给新人一个来第三次的理由。
算法:期望得分、K 系数,以及一个数字
世界上几乎每一份俱乐部等级分榜,都是 Elo 系统的某个版本,而 Elo 只有两行算术。第一步,先算出按 等级分应该发生什么:
Expected = 1 / (1 + 10^((opponentRating - yourRating) / 400))
它得出一个 0 到 1 之间的数字——你在这一局里的预测得分。等级分相同得 0.5。相差 200 分时,高的一方 大约是 0.76。相差 400 分时大约是 0.91。然后把预测和现实做比较:
New rating = old rating + K x (actual score - expected score)
实际得分是:胜 1 分、和 0.5 分、负 0 分。赢下一位本来就该赢的对手,差值很小,所以你涨得很少。赢下 一位等级分远高于你的对手,差值接近 1,所以你涨得很多。整个系统就这么点内容。
K 决定这个数字动得有多快。K 高,等级分就灵敏、跳动大;K 低,等级分就稳定、变化慢。 世界上每一套等级分系统都是在这两者之间折中,而且它们的解决办法都一样:新棋手用高 K,好让他们尽快找到 自己的水平;已经稳定的棋手用较低的 K,这样一个手气差的晚上不会毁掉一整个赛季。
| 系统 | 高 K | 之后降到 |
|---|---|---|
| 典型的俱乐部等级分榜 | 前 20 局用 40 | 20 |
| FIDE | 40,直到下满 30 局 | 2400 以下为 20,2400 及以上为 10 |
| US Chess | 浮动——K 等于 800 除以(已下局数加本次赛事局数) | 随着局数增加而稳步下降 |
FIDE 还规定:只要棋手的等级分低于 2300,在他年满 18 岁那一年结束之前,K 一律保持 40,理由也很合理 ——孩子的进步速度比算式预期的快。如果你的俱乐部以青少年为主,这条规则值得了解,哪怕你自己的等级分榜 并不照搬它。
还有一个细节很关键,而且很容易做错:整场比赛都要用大家赛前持有的等级分来计算,最后再一次性 应用变化。如果你每下完一局就更新一次,那么答案就取决于哪一台先结束,而事后重算这场比赛会得出 不一样的数字。把赛前等级分冻结住,才使等级分榜可以重现。FIDE 在整个等级分周期里也是这么做的。
一个你可以手算核对的例子
Ann 的等级分是 1400。在一场四轮瑞士制里,她的对手等级分分别是 1500、1300、1600 和 1350,她拿到 2½/4。她在今晚之前已经下过 30 局计分棋,所以她的 K 是 20。
| 对手 | 期望得分 | 实际得分 |
|---|---|---|
| 1500 | 0.36 | 0(负) |
| 1300 | 0.64 | 1(胜) |
| 1600 | 0.24 | 0.5(和) |
| 1350 | 0.57 | 1(胜) |
她的期望总分是 0.36 + 0.64 + 0.24 + 0.57 = 1.81。她实际拿了 2.5。差值是 +0.69,所以她的等级分变化是 20 x 0.69 = +13.8,最后带着 1413.8 离场。注意这些分是从哪里来的:对 1600 的那盘和棋, 比她的任何一场胜局都更值钱,因为那是等级分最没料到的结果。
整套系统就是这样。如果有会员问为什么自己赢了却涨这么少,答案永远是同一个——等级分榜本来就认为他 会赢。
最初的几局:临时等级分
全新的棋手没有等级分,所以等级分榜必须先编一个出来。1200 是通常的选择。它是一个猜测,而且可能朝任何 一个方向错得很离谱:这位新人可能是一位回归的市级选手,也可能是上星期才学会走子。
因此,每一套严肃的等级分系统都会把早期等级分标注为不可靠。FIDE 在一名棋手对阵有等级分对手下满至少 五局之前,根本不会公布他的等级分。US Chess 对局数不超过八局的棋手另用一套“特殊”公式,并且 在局数超过 25 局之前不把等级分视为正式。如果一份俱乐部等级分榜下完一局就显示一个数字,还把它当作和别人 的分数同等看待,那它做的正是上述三套系统都特意避免的事。
俱乐部层面通行的折中办法,是把一名棋手在下满五局计分棋之前称为临时,等级分用灰色 显示,并把临时棋手排在正式棋手下面。这些都只是显示方式。真正保护等级分榜的规则,是算术上的:
一个仍然只是猜测的等级分,绝不能被允许去撼动一个真实的等级分。如果你的对手是临时的 而你不是,那么你自己的等级分应当保持不变。否则,一位强手只因为和系统随手定在 1200 的陌生人下成和棋, 就要实打实地掉分——这既不是他的错,也没有任何办法拿回来。
例外正是让一个全新俱乐部能运转起来的关键。当双方都是临时棋手时,这一局对两人都完整计入: 谁都没有需要保护的真实等级分,所以谁也没被不公平对待。在一个俱乐部的第一个赛季里,人人都是临时棋手, 于是每一局都算数,等级分榜正常地跑起来。之后,随着每个人各自下满五局、变成正式棋手,这层保护就会 一个一个地自动开启。
由此有两件事值得提前告诉你的会员。临时棋手的数字会剧烈波动几个星期然后稳定下来——那是系统在正常 工作,不是出了毛病。另外,一位正式棋手花一整晚只和新人下棋,最后可能恰好还是开局时的那个等级分。这 同样是对的。
难的是名字,不是算术
上面那些算式只有几行代码。运营一份等级分榜真正困难的部分,是判定今晚有人录进来的这个 J. Smith,就是已经在榜上待了两个赛季的那位 John Smith。
朝一个方向错,一位常客就悄悄多出第二条记录,他的战绩被劈成两半。朝另一个方向错,两个不同的人被焊成 了一个,那要糟糕得多,也难拆得多——如果他们是两个同姓的孩子,那就更糟。
所以规则很简单,而且没得商量:软件可以给出建议,必须由人来确认。好的姓名匹配能抓住 你预料得到的那些情况——用首字母代替名、有些周写中间名有些周不写、姓氏里的一个字母打错、姓和名的顺序 颠倒——并把它们列成一份清单交给组织者审批。它绝不会悄悄合并任何人。而且它做的任何操作都必须可以撤销, 因为让你后悔的那次合并,往往是三个星期之后才被发现的。
有两个习惯能让这件事轻松很多。请会员每次都用同样的写法登记姓名,并把这一点写在签到表上。以及,一旦 真的出现重复记录,就当晚修掉,趁你还记得哪个是哪个。
永远不计入的:轮空、弃权和双人换棋
一份等级分榜之所以可信,是因为它拒绝去评那些它没法诚实评价的东西。有三种情况,每个俱乐部赛季都会 碰到。
- 轮空。轮空是因为没有对手而给出的分数。它计入比赛成绩表,但绝不能碰等级分榜—— 没有对局发生过,也没有任何一位对手的等级分可以进入计算。
- 弃权与未到场。道理相同。因为对手没来而获胜的棋手,没有展示出关于他棋艺的任何 东西。FIDE 的等级分规程说得很清楚:未战的对局,无论是弃权还是别的原因,都不计入。
- 双人换棋(Bughouse)。两张棋盘上的二对二是一种真实而精彩的玩法,而标准 Elo 并 没有为它建模。给它算等级分只会得出看起来很正式、实际上并不成立的数字。照办双人换棋、照公布它的成绩 表,但别让它进等级分榜。
这三条背后的总原则是:只给真正下过的对局计分,计给真正下棋的人,而且对手必须有等级分。 其余的一切都留在它该待的地方——比赛成绩里。
三场比赛之后才发现结果录错了
总会有人把结果写错。总会有组织者在第二轮就公布成绩表、之后才把比赛下完。总会有一场比赛因为建错了而 被删掉。这三件事都很平常,而且都会击垮一份只保存当前数字的等级分榜。
解决办法是把完整历史保留下来,并且重算而不是打补丁。把每场比赛的等级分变化和这场 比赛一起存起来,一旦有任何改动,就按日期顺序从头把每一场重放一遍。这样每次更正的工作量更大,但它是 唯一能在真实俱乐部赛季里活下来的做法。
要提防的那种失败模式很隐蔽,值得明说,因为它是看不见的:如果更正被保存了,但等级分榜没有被重放, 那么每个页面照样能打开,每个数字看上去照样合理,而等级分已经悄悄错了。屏幕上没有任何提示。所以当你 更正一个结果时,务必确认等级分榜真的被重建了——如果你的软件有一个手动重建按钮,它就是干这个用的。
隐私:姓名、儿童,以及谁能看到这个页面
一份等级分榜,是一份带姓名的人员名单,外加他们在某件事上有多强,而且长期保存。把它公开出去是一个 实实在在的决定,而成人俱乐部和青少年组的答案并不一样。
三个问题,按顺序来。
- 谁应该能看到它?多数俱乐部想要的是三者之一:只有组织者可见;拿到链接的人都能看,
但不出现在搜索结果里;或者完全公开且可被收录。一个猜不出来、并且标了
noindex的链接就能 覆盖常见情况——会员找得到,搜索引擎不会把它推出去。 - 用全名,还是用首字母?显示“J. B.”而不是“Jason Becher”, 完全不影响等级分榜好用——会员认得出自己,也认得出彼此——却拿掉了陌生人可以拿去做文章的那部分。 任何涉及 18 岁以下棋手的活动,首字母都应当是默认选项,而不是一个可选项。
- 家长同意了吗?公布一个孩子的全名,连同他的成绩,以及他每周固定的某个晚上会出现在 某个具体场地这件事,这是一个儿童保护上的决定,不是技术上的决定。先取得同意,除了问家长也要问孩子, 并且核对你的学校或俱乐部是不是已经有相关制度——那份制度的效力高于本页上的任何内容。
除此之外,就是少收集。一份等级分榜需要的是姓名和结果。它不需要出生日期、住址、电话或电子邮箱。各国 的数据保护规定差别很大,所以请把这一段当作提醒你去核对自己那一套的提示,而不是当作法律意见——不过在 任何一套规定之下,“我们从头到尾只存过姓名和结果”都是一个很稳的位置。
用 Chess Caddy 做这一切
Chess Caddy 办比赛是免费的、可离线的、不需要账号的,这一点不会改变。等级分榜属于俱乐部
页面——一个俱乐部或学校在网上的固定主页,地址是 chesscaddy.com/club/your-club,
上面放着等级分榜、会员名册、每位棋手的档案,以及你办过的每一场比赛。这部分是付费订阅,因为它和 App
不一样,它跑在每个月都要花钱的服务器上。
它实现的,正是这份指南所描述的内容。棋手从 1200 分起步。前 20 局 K 为 40,之后为 20。不满五局的 等级分为临时,用灰色显示;临时对手不能撼动一位正式棋手的等级分,除非双方都是临时。每一场比赛都按赛前 等级分计算,结束时统一应用。轮空、弃权和双人换棋永远不计入等级分。姓名匹配会给出关联建议交由组织者 确认,合并可以撤销,而更正或删除一个已公布的结果会自动重放整个等级分榜。
实际操作的流程很短:照常在 App 里办比赛,按下“公布”,把它归档到你的俱乐部名下。确认 今晚这些名字分别对应哪些现有会员,等级分榜就更新了。之后,每位棋手的个人页面会带上一份生涯战绩和一条 等级分变化曲线,那正是会员真正会回来看的部分。
价格是每月 $2.99 或每年 $24.99,俱乐部和学校同价,随时可以取消。如果你还不确定自己需不需要等级分榜, 可以先用免费的瑞士制工具办两三场比赛——公布 结果的链接也是免费的,而一个从没公布过任何东西的俱乐部,暂时也没有内容可以放上等级分榜。
赛季中途才开始做等级分榜?你不需要历史数据。让所有人都从默认分起步,办三到四场 比赛,到那时等级分榜自己就会把你的俱乐部排成一个可信的顺序。用你自己编出来的数字去给大家定初始分, 通常比让结果说话更糟。
常见问题
什么是国际象棋俱乐部等级分榜?
一份由你们俱乐部自己的比赛算出来的内部等级分名单。每位棋手带着一个数字,每场比赛之后有升有降,于是一整个赛季的俱乐部之夜就累积成了一件事,而不是每次都从头开始。它和国家或 FIDE 等级分没有关系,也不需要任何会员身份或注册。
俱乐部国际象棋等级分是怎么算出来的?
用 Elo。每一局的期望得分是 1 / (1 + 10^((opponentRating - yourRating) / 400)),而你的等级分变化量等于 K 乘以「实际得分减去期望得分」。K 通常在棋手还是新人时为 40、成为正式棋手后为 20,这样新人能很快找到自己的水平,而稳定的棋手变化缓慢。
临时等级分是什么意思?
意思是这个数字还只是一个估计值,因为该棋手的局数太少——在俱乐部等级分榜上通常指不满五局。临时等级分在每场比赛后波动很大,一般用灰色显示并排在正式棋手下面。FIDE 在一名棋手下满至少五局之前不会公布等级分,US Chess 在不满 26 局时也不把等级分视为正式。
新棋手的等级分会拖累正式棋手吗?
不应该。新人的初始分是系统编出来的,所以让这个数字去撼动一个真实的等级分,等于让正式棋手为系统的猜测买单。通行的规则是:如果你的对手是临时的而你不是,你的等级分保持不变。当双方都是临时棋手时,这一局对两人都完整计入,正是这一点让一个全新的俱乐部能够起步。
轮空和弃权计入俱乐部等级分吗?
不计入。轮空是因为没有对手才给的,而弃权意味着根本没下棋,所以两者都说明不了棋手的实力。它们计入比赛成绩表,但必须排除在等级分榜之外。FIDE 的等级分规程写的是同一条规则:未战的对局不计入。
如果我事后更正了一个结果,等级分榜会怎样?
等级分榜必须从头重算,而不是打补丁。把每场比赛的等级分变化和这场比赛一起存起来,然后只要有任何改动——更正过的结果、公布之后才下完的比赛、被删掉的比赛——就按日期顺序把每一场重放一遍。如果只保存了更正而没有重放,每个页面照样能打开,而等级分已经悄悄错了。
俱乐部等级分榜该显示儿童的全名吗?
对 18 岁以下的棋手,默认用姓名首字母,公布全名之前先取得家长同意。一份等级分榜展示的是一个有名有姓的人、他的成绩,以及言下之意——他每周固定的某个晚上会在哪里。同时也要决定谁能看到这个页面:仅组织者可见、拿到不公开链接的人可见,还是完全公开并被搜索引擎收录。
俱乐部等级分榜能代替 FIDE 或 US Chess 等级分吗?
不能,它也没打算这么做。俱乐部等级分榜衡量的是棋手在一个俱乐部内部下得怎么样,而且当晚就更新。国家协会的等级分可以在全国或国际范围内比较,但需要会员身份、注册赛事和一套上报流程。多数俱乐部两者并用,在两次等级分赛事之间用等级分榜来做编排排序和分组。