博弈论变形
Daniel_yuan · · 个人记录
博弈论虽然冷门,但是各种奇奇怪怪的基础变形要是考了考场上肯定推不出来(至少我是这样的)。我脑子又不好使,容易忘事,写个东西心里踏实。
全文由 《组合游戏略述——浅谈SG游戏的若干拓展及变形-贾志豪》 整理补充。
Anti-SG
定义
Anti-SG 游戏规定,决策集合为空的游戏者赢。且其他规则与 SG 游戏相同。
结论(SJ 定理)
需要注意的是,下述结论只在保证了对于任意一个 SG 函数为
举个栗子, Anti-Nim 是符合要求的。
先手必胜当且仅当:
(1) 游戏的 SG 函数不为
0 且游戏中某个单一游戏的 SG 函数大于1 。(2) 游戏的 SG 函数为
0 且游戏中没有单一游戏的 SG 函数大于1 。
证明
证明以下两点即可:
(1) 游戏中的任何一个先手必败局一定只能够转移到先手必胜局。
(2) 游戏中的任何一个先手必胜局一定能够转移到至少一个先手必败局。
先看先手必败局:
- 当前游戏的 SG 函数为
0 且游戏中某个单一游戏的 SG 函数大于1 。
因为当前游戏的 SG 函数为
0 ,所以它所能转移到的任何一个局面的 SG 函数值不为0 。因为当前游戏的 SG 函数为
0 ,且游戏中某个单一游戏的 SG 函数大于1 ,所以它一定至少有两个单一游戏的 SG 函数大于1 ,所以它所能转移到的任何一个局面都至少有一个单一游戏的 SG 值大于1 。
因此,当前游戏必定转移到先手必胜状态的 (1)。
- 局面的 SG 函数不为
0 且游戏中没有单一游戏的 SG 函数大于1 。
如果将某个单一游戏的 SG 值修改为大于
1 的数,那么修改后,它的 SG 函数值一定不为0 ,而且就会有某个单一游戏的 SG 函数大于1 ,即先手必胜状态的 (1)。如果将某个单一游戏的 SG 值修改为
0 ,那么修改后,它的 SG 函数值为0 ,且没有单一游戏的 SG 函数大于1 ,即先手必胜状态的 (2)。
因此,当前游戏必定转移到任意一个先手必胜状态。
再看先手必胜局:
- 游戏的 SG 函数不为
0 且游戏中某个单一游戏的 SG 函数大于1 。
如果当前局面只有一个单一游戏的 SG 值大于
1 ,那么我们就可以修改这个单一游戏到0 或1 ,来使它变成没有一个单一游戏的 SG 值大于1 且所有游戏总的 SG 值为1 的一个局面。如果当前局面有至少两个单一游戏的 SG 值大于
1 ,那么我们就可以把当前局面修改成一个 SG 值为0 的局面,并且至少有两个单一游戏的 SG 值大于1 。(当至少有一个游戏的大于1 且 SG 值为0 的时候,不可能只有一个单一游戏的 SG 值大于1 )
因此,当前游戏必定转移到任意一个先手必败状态。
- 游戏的 SG 函数为
0 且游戏中没有单一游戏的 SG 函数大于1 。
如果决策集合为空就赢了。
反之可以修改一个单一游戏,使得局面变成没有一个单一游戏的 SG 值大于
1 且所有游戏总的 SG 值为1 的一个局面。
因此,当前游戏必定转移到任意一个先手必败状态。
综上,即可证。
Multi-SG
定义:
Multi-SG 游戏规定,在符合拓扑原则的前提下(即该游戏图不会出现环),一个单一游戏 的后继可以为多个单一游戏。且其他规则与 SG 游戏相同。
结论:
一个游戏的 SG 函数,等于
形式化的
证明
感性证明一波。
考虑普通的 SG 游戏,其 SG 值为
对于
那么对于 Multi-SG,实际上是丢给的对方一个 SG 值为
类似的就可以这么做了。
Every-SG
定义:
Every-SG 游戏规定,对于还没有结束的单一游戏,游戏者必须对该游戏进行一步决策。且其他规则与普通 SG 游戏相同。
结论
设
证明如下:
式
1 显然。式
2 因为当前是必胜状态,那么先手肯定想晚一点结束这个游戏,而且不会走到一个状态让对手必胜,因为这样不会更优。式
3 因为当前是必败状态,那么先手肯定想快一点结束这个游戏,而且这个状态因为是必败状态,所以后继状态一定都必胜。
对于 Every-SG 游戏先手必胜当且仅当单一游戏中最大的
证明
首先证明所有的单一游戏,如果
显然
\text{step} 为0 时先手必败。假设已经证明了所有
\text{step} 小于等于K 的状态符合要求。那么对于一个状态,如果它是先手必败状态,那么它的后继状态全部是先手必胜状态,而先手必胜状态的
\text{step} 全部为奇数,那么它的\text{step} 为偶数。如果一个状态是先手必胜状态,那么它一定存在至少一个后继状态是先手必败状态,而先手必败状态的
\text{step} 全部为偶数,那么它的\text{step} 为奇数。
那么根据上述