简单博弈

简单博弈

我们先只考虑公平组合游戏。

最暴力的方式就是在决策树上爆搜看看是不是必胜/败态即可。

下面阐述一个重要定理:

(SG 定理) 在有向图游戏中,状态 \(x\) 以及后继状态 \(y_1,\dots,y_k\),我们定义 SG 函数 \(\text{SG}(x)=\text{mex}(\text{SG}(y_1),\dots,\text{SG}(y_k))\)

一个有向图游戏,起点是 \(s_1,\dots,s_k\),那么一个状态是必胜态,等价于 \(\text{SG}(s_1)\oplus\dots\oplus\text{SG}(s_k)\neq 0\),一个状态是必败态,等价于 \(\text{SG}(s_1)\oplus\dots\oplus\text{SG}(s_k)=0\)

我们考虑使用类似归纳法的方法。

你先说明没有后继的状态,它的 SG 是 0。这个很显然。

你再说明异或起来不是 0 的状态一定能变成 0。你考虑异或值是 k,最高二进制位是 p,那么在这堆参与异或的元素里至少有一个元素第 p 位上也是 1,那你就尝试把这个元素变成它异或 p 之后的值。我们发现,它异或 p 之后,一定变小了,而由 SG 的定义知道它肯定有一个后继状态满足我们的要求,我们移过去就行了。

最后说明异或起来是 0 的状态下一步一定变成非 0。这个因为你没办法移动一步之后 SG 值仍然相等。

那我们现在对有向图游戏的处理方法就是找出 SG 函数的值,找规律。

Anti-SG

必胜等价于

  • \(\text{SG}\neq 0\) 且某个 \(\text{SG}>1\)

  • \(\text{SG}=0\) 且不存在某个 \(\text{SG}>1\)

证明是类似的。

posted @ 2024-01-24 17:06  PYD1  阅读(5)  评论(0)    收藏  举报