前言:这条回答躺在我的草稿箱里,上面的最后编辑日期是一年半之前,里面第一句话还是当时这篇回答就拖了半年了。严重的拖延症和对回答质量的不满意让我一直没有完成这个回答,但是今天我决定把它补完,原因是我在拖延一个更大的任务。所以解决拖延的方法就是找一个更大的任务,这真的很有效,虽然有点像层压式传销。我进行了一些风格和结构调整,并补完了最后一些内容。我们进入正题。
我想再更完整地讨论一下这个问题,所以我们分几步看看这个问题中我们作了一些什么假设:
- 1 -
我们先从一些大的前提开始。我们当然要先假设异步游戏当中先后手一定有差异,再来说平衡。
先后手差异往往是内生的。多数棋盘游戏中玩家所执颜色不同,就会导致游戏方式不可避免的不对称 - 一方的第一步是空棋盘,其他玩家则会从有落子的棋盘开始游戏。这样的游戏要在盘面上做弥补和修正,需要量化评估一方的优势,几乎是不可能的 - 不同玩家在游戏树上的位置是完全不同乃至全无交集的。哪怕真的量化了优势大小,在游戏内可以做出的补偿又往往是有离散大小的 - 比如我计算了某个卡牌游戏先手对后手的优势约合5/8张手牌,那也没办法补充。
- 2 -
好吧。既然一定有差异,但差异不等于不公平。先手是否一定是优势?有没有后手优势的游戏?有没有双方都没有优势的游戏?
答案是都有。 阿撒托斯要吃糖 在他的(两年前的)回答中举的QUARTO这个游戏就是一个没有任何先手优势的游戏。
接下来的一些内容对于没有相关知识或兴趣的读者可能比较枯燥。建议略读。
QUARTO是一个先后手完全公平的游戏 - 在游戏双方都以最优策略进行游戏的方式下,游戏的结果一定是平局。有人解出了这个游戏的完整游戏树 - 他们进行了模拟,在他们的笔记本上分别用了147分钟和2周。有兴趣的同学可以移步这里的一个talk大纲。(感谢它在两年后的今天可以访问。)
这个演讲其实是拿这个问题来讲了一个算法设计,结果上也只通过穷举计算得到了游戏是公平的这一结果。比较算法,不太数学。有兴趣或者有疑问的同学我们可以评论交流。不过简单说就是我们简化一下这个游戏再穷举一下所有可能,结果发现最好的下法一定会使游戏变成平局。公平也有别的定义 - 例如到达这样的最优解可能对双方有不同的失误容忍度云云,那暂不作讨论了。我想我们可以说这样的游戏是对双方公平的。
QUARTO是一个典型的无偏游戏(Impartial Game),意思是其玩家在每一步中的决策仅与场上形势有关,而与正在行动的玩家是哪一位 - 是先手还是后手 - 没有关系。然而无偏游戏依然不是先后手完全公平的:这虽然听起来难以理解,但是举一个大家可能见过的经典游戏的例子应该就比较清晰了:
桌上有一堆棋子。两位玩家轮流从堆中取子,一次只能取一枚或者两枚,不能不取;先将棋子取完的玩家胜。
这个游戏是尼姆游戏(Nim Game)的一个特殊例子。很多人都听过类似这样的游戏,也很有可能熟悉这个游戏的策略:轮到自己时将棋子数量取到剩下3n(三的倍数)个,这样对方取2个的时候自己取1个,对方取1个的时候自己取2个,那总棋子数3个一减,最后一次自己取的时候就一定是取到0个了。
因此,双方在游戏中任何时间点的策略都是一致的:将剩余子数取成3的倍数,和当前玩家是先手还是后手是没有关系的。然而游戏的胜负和先后手显然是有关的:如果初始的子数是3n的话,先手是必败的;否则先手是必胜的。因此尼姆游戏是一个典型的无偏游戏,因为其双方平等性和其组合游戏(Combinatorial Game)的基本特性 - 完全信息,无随机,有限步骤 - 我们可以推知所有的无偏游戏都是确定结果的:先手必胜,先手必败,或是必定平局。事实上所有的无偏游戏都等价于一个尼姆游戏。
所以我们的结论是,世界上存在先后手完全公平的游戏,甚至也存在先手完全必胜或者完全必败的游戏。不过这些游戏哪怕是有确定结果的,也不代表这个游戏本身是没有意义的:比如五子棋已经有过证明在标准棋盘(15*15)上、无禁手规则下必胜了,但大家还是会玩五子棋玩得开开心心。哪怕有一天国际象棋甚至围棋真的变成了完全已解游戏,人们还是会去玩那些游戏 - 因为思考并试图抵达最优解的思考过程,也是让大脑受到刺激获得满足的地方。
- 3 -
我们现在看到有的游戏甚至不存在先后手公平的问题。把这些游戏放在一边,接下来我们终于可以开始讨论一开始的那个问题了。对于先后手有差异的游戏,有什么样的手段来平衡这样的差异?
这个问题我们刚才看到了部分解答,对于异步游戏,玩家顺序优势难以量化,量化了之后也难以通过游戏内机制补偿;非对称机制使得这样的优势模糊化,但并不根本解决平衡问题。最好的方法自然就是通过游戏外的方式进行补偿 - 我想把这种方式称作元游戏平衡。
国际象棋先手有巨大的先手优势(Wikipedia:
First-move advantage in chess),但我们仍然能够举行有良好竞技性的象棋赛事,因为我们可以让双方交换白黑,各以同样次数进行先手。用棋盘外的方法修正棋盘内的公平性,就比游戏内的补偿要方便多了。当然这也会在元游戏层面上带来新的问题,例如先执白是否会带来比分导致的心理优势等等,但比起盘面内的毕竟是小量。这样的差异再讨论下去无穷尽,没有什么意义。“互换攻守”在非对称竞技游戏中的应用是最普遍的,从CS到EVOLVE,亦及棒球橄榄球,都有这样的模式。
其他一些游戏则试图通过记分或者胜负判别规则进行自己的努力。围棋在每局记分上补偿后手,日式规则黑贴六目半,中式贴七目半,再平局黑胜。这样的补偿方法显然落入上文所述问题之中,绝无可能做到50/50的完全公平,但确是通过经验做出的一种努力尝试,使得胜负向公平的方向靠拢。
这样回答这个问题的话看起来很让人失望,似乎并没有很好的在游戏内部就解决公平性的方法,但是这可以让我们更好地审视这个问题的出发点。我们为什么追求游戏的公平性?为什么要在每一个参与者间找到平衡?最终目的一定是为了服务游戏自身的特质:有的时候我们追求竞技性,有的时候我们希望能大家都能开心,那么最后我们应当根据这些目的的达成度来衡量一个平衡设计是否足够好。MTG给后手一张牌,炉石再多一个硬币,这些补偿是否量和形式合宜的争论不断,但它们已经足够好了 - 这两个游戏健康地活到现在当足以证明它们至少不会对游戏造成显著的负面影响。任何设计当服务于目的,这个问题亦不例外。
行文冗长繁复,羞愧之至。感谢卒读。