先手必胜?策梅洛定理的探讨

1.关于定理

笔者作为一个棋类,尤其是象棋的爱好者,特别喜欢钻研下棋的一些套路。然而,随着计算机算力的提高,AI技术的发展,人类逐渐开始下不过人工智能。尚在2006年,象棋特级大师许银川还能勉强战胜当时比较强大的电脑浪潮天梭,之后战胜电脑就逐渐成了绝唱,发展到现在,即使运行在普通PC机上的《象棋名手》软件,也不是象棋世界冠军可以抗衡的。2017年,柯洁0:3负于阿尔法狗,也标志者围棋,这一棋类智力之冠的胜利也归人工智能所有。那么,我们可以很自然地想到,会不会有一天,不需要开下,只要棋一摆好,双方就能知道哪一方胜利呢?

这在理论上是可行的。策梅略定理(Zermelo’s theorem)是博弈论的一条定理,以恩斯特●策梅洛命名。定理表示在二人的有限游戏中,如果双方皆拥有完全的资讯,并且运气因素并不牵涉在游戏中,那先行或后行者当中必有一方有必胜/必不败的策略(注意,也包括平局)。策梅洛定理的论文于1913年以德文发表。

策梅洛定理仅在双人游戏中有效,在三人及以上的多人游戏中胜负仍是不确定的。定理的具体表现形式,满足条件

  1. 双方依次行动
  2. 有限步,不会出现可以一直重复某种循环的状态
  3. 信息完备,双方均知道先前的步骤且没有隐藏的机制
  4. 仅有赢、输、平局三种结局

在满足以上四种条件的情况下,只会出现以下情况之一

  1. 先走方有必胜的走法
  2. 两者的最优策略会导向平局
  3. 后走方有必胜的走法

满足情况3:“后走方有必胜的走法”,需要规则内不能有停止行动的选项,否则先手方的最优策略是停一回合,成为实际上的后手方,那么此时后手方的最优解也是停一回合。如果能无限停止,将不满足条件2,如果不能无限停止,将导向情况2。

对于策梅洛定理的证明,可以采用数学归纳法证明。假设结束所需的回合数n。n=1,即一步就能游戏结束,那么一定会导致先手必胜/负/和的局面。现在对于任何一个n>1的值,行动后将转换为一个n-1时的情况,而这时的结果是已知的。因为对于此时先手方行动的情况,必然是以下三种互斥的情况之一:

  1. 存在行动方案使得之后的状态为先手方有必胜策略,那么此时先手有必胜策略;
  2. 所有的行动方案都使得之后的状态为后手方有必胜策略,那么此时后手方有必胜策略;
  3. 不存在行动方案使得之后的状态为先手方有必胜策略,且存在行动方案使得之后的状态为双方有不败的策略,那么此时有双方不败的策略。

编程上,如果有类似状况,一般使用记忆化搜索的方式应用。

2.已得到验证的游戏

经典井字棋

经典的3x3井字棋就是一个典型的双方不败游戏。为了增加点代入感,我们先手用○,后手用×来表示吧。 ○的第一步行动为走正中,此时×必须走角落,否则○将必胜:因为○第二步走对位的角落,那么×在堵的过程中会出现堵不上的情况:

井字棋图

由于井字棋上下左右对称,×走四个位置都会触发以上情况。
另一种情况,如果第二步×走角落,那么无论○下一步怎么走,×都可以阻止其连成三个,直至下满,双方和棋。

无禁手规则的五子棋

禁手:五子棋术语,指对局中禁止先行一方(黑方)使用的战术,具体包括黑方一子落下时同时形成双活三、双四或长连等三种棋形。禁手只对黑方有效,白方无禁手。黑方禁手的位置称为禁手点。

五子棋在很早的时候,就已经有前人研究出了无禁手规则下先手必胜的情况。对于白棋的应对不同,开局可以分为蒲月、寒星、新月等,但是所有的开局,无论白棋如何防备,只要黑方不下错,都不能阻止黑棋胜利。因此,五子棋赛场上都对先手方有很大的限制。日常下棋达不到那么高的水平,但是一般也能感觉到黑棋优势较大。
五子棋执黑必胜的变招相当多,读者感兴趣可以自行了解,这里只列举其中的蒲月开局:
20220215000533
黑棋正中开局,白棋下在斜线,黑棋再下在3的位置,对此,白棋可以有很多种应对方法:
20220215001207
其中最后一幅图为白棋最强防守,但是黑方可以选择:
20220215001454
后招可以参考https://wenku.so.com/d/df91d9b58a3c207002ada61806fee442。

双人取物游戏

地上摆放了80个物品,每人每次可以取1至4个,双方轮流取物,取到最后一个者胜利,那么某一方是否有必胜策略?

后手方必胜。先手方取X个时,后手方取5-X个,这样每个回合两人加起来都为五个,而5是80的公约数。这类游戏可以拓展到一般形式:地上摆放了X个物品,每人每次可以取Y至Z个,取到最后一个者胜利。那么如果X是Y+Z的公倍数,后手方必胜,每次先手方取s个时,后手方取Y+Z-s个。如果X不是Y+Z的公倍数,先手方必胜,先手方先取X除以Y+Z的余数个,转换为前一情况的后手方,执行前一情况的必胜策略。如果做过编程类题目,应该对此不陌生。

WU游戏

确切地说,这个并没有被证实,只是我对此比较感兴趣,想找出有没有一方必胜的方式(按照策梅洛定理,应该是有的)。灵感来自于侯世达著的《哥德尔、艾舍尔、巴赫——集异壁之大成》一书中的WU谜题。

设置游戏规则如下:
初始给定”WUWU”字符串,两人参与,双方轮流设计一条规则。
规则设置方式:
1.假定α,β分别为一至三个任意字母。
2.条件项选其一:如果字符串中有α/以α开头/以α结尾。
执行项选其一:可以将其删除并在原位置添加β/在串尾添加β/在串首添加β。
每设定一条规则,将会按顺序执行所有的规则直至字符串不再发生改变,转移到下一个人设定。如果设定规则与之前某规则冲突,则删除之前的规则。不能设置无限递归规则。
胜利条件:清空字符串者立即获得胜利,连续两回合将字符串变成同样的全相同字母者获得胜利。

3.定理的思考

策梅略定理对积分制是否有效?

由于定理的前提条件是结局仅有胜、负、和三种可能,那么把积分设定为:分高者胜,双方同分则平局。那么,定理仍然是有效的。 如果规则机制中会允许执行某些步骤会导致暂时导向分数降低,但是一定步骤后会收束为分数比常规增加更高的情况,按数学归纳法,这类情况可以成为一个集合,从而将其看做一个步骤,这个步骤集由于更优会取代其它的步骤集合。许多游戏也可以视为积分制,比如象棋设置胜利为10000分,开局双方0分,每下一步都为局势评分,就像现在的象棋打分软件,一些弃子攻杀的步骤也会先打低分再打高分。

策梅洛定理对二人以上博弈为什么无效?

假设三人A、B、C游戏,游戏设定为一方胜利另两方败,或者三人平局。如果按A、B、C的顺序依次执行,如果A有必胜策略,那么把B、C的行动组合,将其看做一个两次行动的对手,从而变成两人形式,似乎可行?但是如果A只有必和策略,那么情况就不太确定了,作为理性人B、C采取的对自己的最优策略,但是由于只有一个胜利者,这个策略合起来不一定是最优的,可能不会导致趋向于平局。其实我也不太确定,以上只是一点推论,不一定正确。

证明结论成立到找出结果需要多少努力?

对于一些简单游戏来说不难,但是对目前的“大棋”很难,按对局的变化数来说,围棋的棋盘就有2^361种可能(再减去气中有子的情况),再加上每一步的可能性,目前的算力要花费数十亿年计算。穷举既然不可行,那么只能寄托于数学家、科学家们、围棋大师们能不能找到合适的算法了。

对这个定理来说,虽然我们或许目前不能找到一方必胜或必和的方式是怎样的,但是我们能证明它存在也是有意义的,或许日后会有应用前景。就像密码学中的零知识证明,A方在不透露任何知识的情况下让B方相信A掌握了这个知识,也有其应用场景,如数字签名。

策梅洛定理属于博弈论的其中一个环节,笔者虽然没有系统学过博弈论的课程,但是对博弈论有一定的兴趣和研究。如果读者也对这些感兴趣的话,维基百科上有较为详尽的博弈论内容:

维基百科图


如果有任何有错误或不够清晰的表达,欢迎邮件至 passacaglia@88.com,谢谢!

文章标题:先手必胜?策梅洛定理的探讨

字数:2.7k

本文作者:Passacaglia

发布时间:2022-02-14, 18:14:07

最后更新:2022-02-15, 23:00:39

原始链接:https://passacaglia424.github.io/2022/02/14/%E7%AD%96%E6%A2%85%E6%B4%9B%E5%AE%9A%E7%90%86%E7%9A%84%E6%8E%A2%E7%A9%B6/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。