博弈论小记(1)——基础博弈论概念

在算法竞赛中,我们一般关注对于一个初始局面,是否存在先手必胜/必败,以及其策略.

我们称当前局面先手必胜为 N 态,必败则为 P 态.

几个不同的游戏术语

合作/非合作博弈

合作博弈:参与者能进行合作,或不合作会受到规则惩罚.

非合作博弈:参与者不能合作,或者合作会受到规则惩罚.

对称博弈

参与者无论身份,在做出相同操作(如果可以)的时候,获得的收益一定相同.

完美信息博弈

玩家在自己回合操作时,完全知道当前局面的一切信息.

比如象棋、围棋就是完美信息博弈;扑克牌就是不完美信息博弈,因为不知道对手手牌.

完全信息博弈

玩家完全知道一切规则和所有玩家的可执行操作.

比如下棋、打牌就是完全信息博弈;最近网络上比较热门的不要做挑战等就是不完全信息博弈.

公平组合博弈

所有人在同一状态下能执行的操作是一样的,无关身份.

比如 Nim 游戏;象棋就不是公平组合博弈,因为玩家只能动自己颜色的棋子.

正常/反常博弈

正常博弈:最后一个行动的玩家为胜者.

反常博弈:最后一个行动的玩家为败者.


下面我们一般考虑正常博弈.


博弈图

考虑把一个 局面 看成是一个点,把当前局面和它的后继局面连一条有向边,最终会形成一张图,称之为 博弈图 .

我们只考虑不存在环的 公平博弈游戏 .

显然,没有后继节点的一定是 P 态.
\(\newline\)

直观上不难理解,因为当前操作时,该玩家一定希望自己必胜,即希望对手操作时面临 P 态,所以有以下结论:

当前局面必胜(N 态)的充分必要条件是存在一个后继节点是必败的(P 态).

当前局面必败(P 态)的充分必要条件是其所有后继节点都是必胜的(N态).
\(\newline\)

因此,理论上我们存在 \(O(|V|+|E|)\) 时间复杂度的算法来计算出当前局面是否必胜,但是时间复杂度显然过高.


下面我们来看一个简单的博弈论模型及其内涵.

Nim 游戏

有 \(N\) 堆石子,每堆石子各有 \(a_1,a_2,\dots,a_n\) 个,玩家每次可以选择一堆,拿走其中的若干个石子,当一名玩家拿走了场上所有剩余石子时,该玩家获胜.

其先手必胜,当且仅当 \(\oplus a_i =0\). 我们把全体元素的异或和 \(\oplus a_i\) 称为 Nim 和,这是博弈论中很重要的一个概念.


游戏的和与等价

游戏 \(G\) 与 \(H\) 的和,记作 \(G+H\),指的是两个互不干扰的游戏,玩家每次只能选择其中的一个游戏进行一次操作. 两个子游戏都无法移动时,游戏结束.

这个定义可以简单地扩展到多个游戏的和,比如 Nim 游戏就是 \(N\) 个单堆 Nim 游戏的和.

如果对于所有游戏 \(H\),游戏 \(G_1+H,G_2+H\) 都同处于必败或必胜状态,则称 \(G_1,G_2\) 等价,记作 \(G1\approx G_2\).

我们可以引出两个引理:

对于游戏 \(G\) 和任一必败游戏 \(A\),都有 \(G\approx G+A\).
两游戏等价当且仅当他们的和是必败游戏.

从而我们可以得到 SG 定理与 SG 函数.


SG 定理与 SG 函数

SG 定理:所有公平组合游戏都等价于单堆 Nim 游戏. 即对于任一公平组合游戏 \(G\),都存在一个自然数 \(n\),使得 \(G\approx *n\),其中 \(*n\) 表示有 \(n\) 个石子的单堆 Nim 游戏.

从而我们可以把所有的公平游戏都映射到一个自然数上,这个映射称为 SG 函数 . 对应的自然数 \(n\) 称为该游戏的 SG 函数值.

根据博弈图中的推论,可以递归地定义 SG 函数值:

\(\operatorname{SG}(x) = \operatorname{mex}\{\operatorname{SG}(x'): x'\in x\}\)

其中,\(\operatorname{mex}(A):=\min\{n\in\mathbf N:n\notin A\}\) 是没有出现在集合 A 中的最小自然数。

即 SG 函数值是其所有后继节点的 SG 函数值的 mex.

如此,我们能简单地考虑一个局面是否先手必胜:

状态 \(x\) 必胜,当且仅当 \(SG(x)\neq 0\)

最后,考虑和游戏的 SG 函数值,其为所有子游戏 SG 函数的 Nim 和,即:

\(\operatorname{SG}(G_1+G_2+\dots+G_n)=\operatorname{SG}(G_1)\oplus\operatorname{SG}(G_2)\oplus\dots\oplus\operatorname{SG}(G_n)\)


小结

有了以上的所有结论,我们可以在竞赛中通过暴力打表的方式,初步研究一下局面的必胜/必败情况.