本帖最后由 morningstar 于 2010-7-25 21:48 编辑
近期有很多帖子在讨论与BGG排名有关的话题,所以我简略写一个BGG排名机制介绍,供大家参考。其实这个内容本来是我计划中一篇长文的一小部分,不过长文暂时是没精力写了,就简要介绍一下排名这一块吧。
BGG的排名牵动了很多人的心,但你是否完全了解BGG的排名机制呢?
常上BGG的人对上图一定不陌生,但表头的含义你全都了解吗?
这些问题在BGG FAQ中都有回答,但很多人不一定认真读过。
表头中最重要的三项是:Geek Rating;Avg Rating;Num Voters
Geek Rating是BGG默认排名的主要依据,下文会详述。
Avg Rating代表的是为某一游戏投票的所有BGG用户的投票分数平均值。
Num Voters是指为某一游戏投票的总人数。
后两项都很清楚明了,只剩Geek Rating需要解释了。
Geek Rating的得分以Avg Rating的值为基础,加以适当调整。调整的方法为:设定若干个虚拟投票,加入到实际投票中,然后再重新计算平均值。在BGG FAQ的说明中,这一虚拟票数被设定为100个左右,每一票的分数等同于投票分数(1-10)的算术平均值5.5。采用这种方法的目的在于避免样本集过小时个别样本的极端偏差对总体产生较大影响。
举个通俗的例子,假如一个游戏只有5个人投票,其中3个人投7分,2个人因为某种目的,投了10分,那么这个游戏的平均分便是8.2,但是事实上这款游戏确实只是7分水平的游戏。为了避免这种情况的发生,我们可以设置100个虚拟投票,每个投票都是7分(假设同类游戏的平均得分就是7分),那么这款游戏的平均分就变成7.06,非常接近于它应该获得的分数。
这种方法被称作贝叶斯平均。
OK,基本介绍结束,没有耐心的朋友可以移目他贴了。
如果你还觉得不够,继续看:
经过这种处理后的得分会出现如下情况:对于某个游戏,参与游戏投票的人数越少,游戏的BGG得分越接近系统预设的虚拟投票的分数,而与实际投票平均分的差距越大;相反,参与游戏投票的人数越多,游戏的BGG得分越接近其实际投票平均分。这种差距的变动是以非线性的方式进行的,有兴趣的朋友可以推导一下。
采用这种机制的结果是,如果一款游戏的投票人数较少,那么它的BGG排名就会很低,比如Conflict of Heroes: Storms of Steel! - Kursk 1943,这款游戏的实际投票得分很高(8.66),但BGG得分只有6.59,排名431。这款游戏的实际水准就应该排在431名么?显然不是,只不过当前玩的人不多,导致它被虚拟投票无情地拉低了。顺便说一句,在BGG,只有投票上30的游戏才参与排名,所以排行榜上基本不会出现完全由虚拟投票主宰的游戏。
由此可见,在虚拟投票的分数与票数都为常量的情况下,决定一款游戏排名的便有两个因素:1.实际投票的平均分;2.参与投票的人数。这两个因素一般的来说,是比较反映客观情况的,因为一款游戏好玩,既体现在人们对它的口碑很好,也体现在它很流行。不过这只是一般的情况,由于桌面游戏的复杂性,某些类型的游戏非常小众,它们在和大众游戏同场竞技时便吃了大亏。
典型的例子就是战棋,常上BGG的朋友会发现,战棋游戏的BGG得分都很低,从而排名靠后。可以说这完全是由于战棋的小众而造成的。一些战棋里面的经典游戏,比如East Front,只有几百个投票,因此分数被压低好多,排名几百以后。相反,很多实际平均分和East Front差不多的游戏却因玩家很多而名列前茅。这种影响不仅体现在游戏总榜上,连战棋游戏子榜也受波及。
我在很多帖子中都曾引用过Matthew Gray在2007年对BGG用户Top-10 Game的数据进行聚类分析的结果。结果反映BGG用户的70%以上是倾向于欧式桌游的玩家(这个数字到今年肯定有变化,只可惜没人再进行研究了),核心战棋爱好者只占6%。所以那些深受欧式游戏玩家和美式游戏玩家喜爱的“战棋”(Grognards可以对它们的分类产生质疑,但这不是本文的论述目标),比如TS、CC:A,由于参与投票的人数众多,也在战棋榜上名列前茅。
但是完全按照实际投票平均值来排序(BGG战棋榜曾经就是这样的),又会使得一些名不见经传的游戏因为某一小撮玩家的集体高分而鸡立鹤群,扰乱排行榜的公信力。所以想要做到完全客观的排名实属不易。不过BGG也在不断地改进当中,现在BGG战棋榜的排名就综合了很多因素,在它们中间设置了不同的权重,并配合投票阈值的限制筛除不知名的游戏,使得现在的排行榜结果近乎合理。
上述所有的论述均建立在虚拟投票的分数与票数都为常量的情况下,但实际情况如何呢?在假设虚拟投票的分数恒为5.5的情况下,我把BGG排名前29的游戏的虚拟投票数计算了一下,见下图:

可以发现虚拟投票数(Dummy那一列)的数字并不相等。如果差异在几十之内,可以认为是取两位小数所造成的差异,如果相差上百,那就是有别的因素了。大致浏览一遍,不难发现战棋类的游戏的虚拟投票数都相对较低,在250左右(Shogun除外,怀疑是系统错误),而波多黎各、凯吕斯等游戏的虚拟投票数都偏高,原因我暂时还不知道。因为时间有限,我现在无法在BGG上全面收集信息,进行彻底的研究,但是我猜测产生这一原因有几种可能:
1.虚拟投票的分数不为常量。可能是按分类设置,也可能是人为任意设置,也可能是其他某个参数的函数。
2.虚拟投票的票数不为常量。可能的原因同上。
3.在贝叶斯平均的方法之外增添了其他的考虑因素,比如玩家持有量、近期开局次数、游戏关注度等。
4.上述若干种情况的综合。
总之,现在的BGG评分系统已经与FAQ上介绍的有些不同了。
初探结束。
Update:又去BGG调查了一番,了解了为什么有些游戏的BGG分数不完全符合贝叶斯平均的理论值。
老外有不少好事者进行了相关的讨论,感兴趣的人可以在BGG搜索关键词“Bayesian average”。
大概的意思是,BGG的管理者开发了一套采用“Shill Busting algorithm”的神秘系统。它的作用是在计算Geek Rating时智能地识别并剔除恶意评价(比如注册一新帐号,直接给某些游戏1分、10分,然后就消失了),正常用户的评分则不受影响。所以经过这套系统的过滤,很多恶意好评较多的游戏(按实际情况推断,比如波多黎各和凯吕斯)的实际得分就要比原本理论得分低一些。如果这套系统确实有效,那就可以解释为什么我计算出来的虚拟投票数不一致了。
这让我突然想起了前不久的Space Hulk风波,国内很多玩家给SH评1分,但估计大部分都被过滤掉了。现在人家BGG正常用户开始评1分了,这个游戏的排名便自由落体了。