有限博弈的必胜策略:存在、构造与执行
说某一方“有必胜策略”,至少要分清三个问题:数学上能否证明这样的策略存在,能否写出每一步的走法,以及能否在有限时间和内存中执行。第一个问题有答案,不代表后两个问题也已经解决。
有限博弈能确定什么
考虑一类满足以下条件的游戏:局 面和对局长度有限;两名玩家轮流行动;没有随机事件;双方知道此前的全部行动和当前局面;双方利益对立。把所有合法行动展开成有限游戏树,再从终局向初始局面逆向标记,就能确定每个局面在最优行动下的结果。
若规则允许和局,现代常用的结论是:一方能强制获胜,或者双方都能保证自己至少不败。这里的“确定”指初始局面有理论博弈值,并不等于已经找到一套容易执行的走法。现代有限博弈的定理表述涵盖这一类结论。
策梅洛 1913 年的论文研究的是国际象棋一类问题,并奠定了相关证明思路。今天使用的抽象条件和完整表述经过了后续发展,因此不宜把现代定理原封不动地归到那篇论文名下。历史研究详细区分了原论文与后来的表述。
可以直接照做的构造
有些游戏不仅能判断谁占优,还能给出简短的走法规则。
单堆 50 颗糖
一堆有 50 颗糖。两人每次取 1–3 颗,取走最后一颗者获胜。轮到行动时,糖果数为 4 的倍数是必败态,因为无论取几颗,对手都能把两次取走的总数补成 4。
先手先取 2 颗,留下 48 颗。此后若对手取 颗,先手就取 颗。每轮结束后仍留下 4 的倍数,最终由先手取走最后一颗。这既证明策略存在,也给出了构造和执行方法。
两堆数量相等的糖
两堆各有 100 颗糖。每次只能从一堆取走任意正数颗,取尽最后一颗者获胜。两堆相等时,轮到行动的一方处于必败态。
初始局面因此由后手获胜。先手从一堆取多少,后手就从另一堆取同样数量,使两堆重新相等。这个模仿策略一直有效,直到后手取尽剩余糖果。
策略窃取只证明存在
策略窃取通常从反证法出发:先假定后手有必胜策略,再利用先手多走一步不会有害等性质,让先手采用这套策略,得到矛盾。论证由此排除后手必胜,却往往没有告诉先手第一步究竟该走哪里。
Chomp
在矩形 Chomp 中,玩家轮流吃掉一个方格及其右上方的部分,吃到毒方格者输。除 棋盘外,策略窃取可以证明先手必胜,但没有给出适用于任意矩形的通用首步。Chomp 的原始论文给出了这一非构造性结果。 是明确的例外:先手只能吃掉毒方格,因此先手输。
不采用交换规则的标准对称 Hex
标准 Hex 不会和局。在对称棋盘上,交换两方目标边后,游戏的结构不变;多一枚己方棋子也不会破坏已有或未来的连通。假设后手有必胜策略,先手便可先落一子,再借助对称性采用后手的策略。额外棋子不会造成妨碍,因此假设产生矛盾,先手必胜。
这个证明仍未给出任意棋盘的通用首步,而且只适用于这里指定的规则。交换规则,也叫 pie rule,会改变开局权利,不能直接套用同一结论。Hex 的无和局性质与策略窃取可见相关教材。
存在的策略未必算得出来
有限游戏树原则上可以完整展开,规模却可能超过现实可用的时间和内存。程序和玩家往往只搜索部分分支或有限深度,再用局面评估估计尚未展开的节点。对称局面合并、排除已经 证明无关的着法,以及利用强迫着缩小分支,都属于一般的游戏树剪枝。
Alpha–Beta 剪枝的含义更窄。它用于 minimax 搜索,维护当前可保证结果的 下界和 上界;只有当这些界已经证明剩余分支不会改变当前选择时,才截断搜索。Knuth 与 Moore 的分析和 CMU 的课程笔记给出了严格定义。原视频对井字棋分支的省略适合称为一般游戏树剪枝,不能仅凭那段叙述认定为严格的 Alpha–Beta 演示。
五子棋必须先说明规则
策略窃取依赖“多一枚己方棋子不会变坏”这一单调性。在长连也算获胜的自 由式五子棋中,额外棋子不会让己方原有连线失效,所以相应论证可以排除后手拥有必胜策略。如果规则仍允许和局,结论只能是先手可胜或至少可保和,不能只靠策略窃取断定先手必胜。
标准 exact-five Go-Moku 要求恰好五子连珠。添加一枚棋子可能把五连变成长连,反而使原本的胜形失效,因而不具备上述单调性。某个具体棋盘和规则组合的求解结果需要另行搜索与证明,不能归功于策略窃取。已求解游戏综述也以明确的规则版本讨论 Go-Moku。
判断“有必胜策略”的含义
看到一个必胜策略结论时,可以依次检查:游戏规则是否满足定理条件,证明是否给出了生成走法的构造,以及构造能否在可用资源内执行。取糖游戏跨过了这三个层次;Chomp 与不采用交换规则的标准对称 Hex 主要证明存在性;大型游戏中的搜索和剪枝处理的则是执行成本。