基本定义
策梅洛定理(Zermelo's theorem)
在二人的有限游戏中,如果双方皆拥有完全的资讯,并且运气因素并不牵涉在游戏中,那先行或后行者当一必有一方有必胜/必不败的策略。
即对于游戏局面\(X\),存在确定的游戏结果\(P(X)=0\ or\ 1\),\(succ(X)\)为\(X\)的后继局面。
推论
-
一个状态是必败状态,当且仅当,它的所有后继状态都是必胜状态
\(P(X)=0⟺∀i, P(succ(X_i))=1\) -
一个状态是必胜状态,当且仅当,它的至少一个后继状态是必败状态
\(P(X)=1⟺∃i, P(succ(X_i))=0\)
SG游戏
- SG游戏定义:没有后继状态为必败状态
\(succ(X)=∅⇒P(X)=0\)
NIM游戏
桌上n堆石子,游戏者轮流在某一堆取若干(>0)个,取走最后一个石子人胜。
最后局面为
\(X_{end}=\{X_1=0,X_2=0,⋯,X_n=0\}\)
可知NIM游戏是SG游戏。
Bouton定理
在NIM游戏中的必胜状态为:当前局面下所有单堆石子数目的异或和为0
\(P(X)=((x_1⊕x_2⊕⋯⊕x_n )==0)\)
单堆NIM游戏
- SG函数(定义见下)
\(SG(x)=x\) - 游戏结果
\(P(x)= \begin{cases} &0 &x=0\\ &1 &otherwise\\ \end{cases}\)
SG函数
一个游戏局面的SG函数为该局面的后继局面的SG函数集合的mex值
\(SG(X)=mex(S)\)
其中
\(S=\{SG(succ(X_1) ),SG(succ(X_2) ),⋯SG(succ(X_n) )\}\)
mex表示不在集合内的最小非负整数
\(mex(S)=min(x|(x∈\mathbb{R})\& (x∉S))\)
Sprague-Grundy 定理
游戏和的SG函数等于各子游戏SG函数的NIM和
\(SG(X)=SG(X_1 )⊕SG(X_2 )⊕⋯⊕SG(X_n )\)
其中
SG游戏局面为若干SG子游戏之和
\(X=X_1+X_2+⋯+X_n\)
SG函数性质
\(SG(X)=0⟺∀i, SG(succ(X_i))≠0\)
2.
\(SG(X)≠0⟺∃i, SG(succ(X_i))=0\)
3.
\(succ(X)=∅⇒SG(X)=0\)
- 在SG游戏(\(succ(X)=∅⇒P(X)=0\))条件下的等价结论
\(P(X)=0⟺SG(X)=0\)
\(P(X)=1⟺SG(X)≠0\)
反SG(Anti-SG)游戏
- Anti-SG游戏定义:决策集合为空的为必胜状态
\(succ(X)=∅⇒P(X)=1\)
反NIM (Anti-NIM)游戏
桌上n堆石子,游戏者轮流在某一堆取若干(>0)个,取走最后一个石子人败。
单堆反NIM游戏
- SG函数:不变
\(SG(x)=x\) - 游戏结果:判断标准改变
\(P(x)= \begin{cases} &0 &x=1\\ &1 &otherwise\\ \end{cases}\)
解释:
- 若堆中有1个石子,根据定义,为必败状态。
- 若堆中有0个石子,根据定义,为必胜状态。
- 若堆中石子数目大于1,存在导致必败状态的取法:取剩下1个石子,因此为必胜状态。
反NIM游戏的游戏结果
\(P(x)= \begin{cases} &SG(X)=0 &∀i,x_i=1\\ &SG(X)≠0 &otherwise \end{cases}\)
Sprague Grundy——Jia Zhihao 定理
对于任意一个 Anti-SG 游戏,如果我们规定当局面中所有的单一游戏的 SG 值为 0 时,游戏结束,则先手必胜当且仅当:
- 游戏的 SG 函数不为 0 且游戏中某个单一游戏的 SG 函数大于 1;
- 游戏的 SG 函数为 0 且游戏中没有单一游戏的 SG 函数大于 1。
即,在Anti-SG游戏(\(succ(X)=∅⇒P(X)=1\))条件下的等价结论
\(P(x)= \begin{cases} &SG(X)=0 &∀i,SG(X_i )≤1\\ &SG(X)≠0 &∃i,SG(X_i )>1 \end{cases}\)
引论
“规定当局面中所有的单一游戏的 SG 值为 0 时,游戏结束”过于严格, 完全可以替换成“当局面中所有的单一游戏的 SG 值为 0 时,存在一个单一游戏它的 SG 函数能通过一次操作变为 1”。
\((∀i,SG(X_i )=0) \& (∃i,SG(succ(X_i ))=1)⇒P(X)=1\)
SG游戏和反SG游戏模型
除了上述提到的NIM游戏和反NIM游戏,还存在几类博弈论组合游戏中的经典变体。
巴什博弈(Bash game)
有一堆总数为n的物品,2名玩家轮流从中拿取物品。每次至少拿1件,至多拿m件,不能不拿,最终将物品拿完者获胜。
(单堆NIM游戏变式-有上限的单堆NIM游戏)
巴什博弈游戏结果
在先取完者胜的巴什博弈中,若n可被m+1整除,则先手必败,否则先手必胜。
\(P(n)=((n\%(m+1)) ≠0)\)
反巴什博弈(Anti-Bash game)游戏结果
在先取完者败的反巴什博弈中,若n整除m+1的余数为1则先手必败,否则先手必胜。
\(P(n)=((n\%(m+1)) ≠1)\)
威佐夫博弈(Wythoff's game)
有两堆各若干个物品,两个人轮流从任一堆取至少一个或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。
奇异局势
\(X=(a[k],b[k]),k∈\mathbb{R}, P(X)=0\)
\(a[0]=b[0]=0\),\(a[k]\)是未在前面出现过的最小自然数,即\(mex\left(\{a[0],a[1],\cdots,a[k-1],b[0],b[1],\cdots,b[k-1]\}\right)\),而 \(b[k]= a[k] + k\)。
Betty 定理 (Betti theorem)
设\(a\)、\(b\)是正无理数且 \(\frac{1}{a} +\frac{1}{b} =1\)。记\(P=\{\left. \lfloor na\rfloor \right| n∈\mathbb{N}^+\}\),\(Q=\{\left. \lfloor nb\rfloor \right| n∈\mathbb{N}^+\}\),(\(\lfloor x\rfloor\)指的是取\(x\)的整数部分\(floor(x)\)),则\(P\)与\(Q\)是\(\mathbb{N}^+\)的一个划分,即\(P∩Q=Ø\)且\(P∪Q=\mathbb{N}^+\)。
Betty序列(\(a[n]、b[n]\))
\(a_n=[αn],b_n=[βn]\),有 \(a_n+n=[(α+1)n]=[βn]\),解方程 \(\frac{1}{α+1}+\frac{1}{\alpha}=1\)
\(α=\frac{\sqrt{5}+1}{2},β=α+1\)
\(a_n =\left[\frac{\sqrt{5}+1}{2} n\right]\),\(b_n= a_n+n\) (方括号\([x]\)表示四舍五入取整函数\(round(x)\))
参考资料
- 百度百科
- 维基百科
- 《算法竞赛入门提高》刘汝佳
- 国家集训队论文集2009-贾志豪