博弈论进阶

由于之前写的太垃圾,所以有了这篇

一、基础博弈

1.基本定理

  • 先手必胜当且仅当先手可以把当前状态转移到先手必败态

  • 先手必败当且仅当先手不能将当前状态转移至先手必败态

2.如何证明博弈推论成立

  • 确定必败和必胜态

  • 最终态是必败态

  • 必胜态可以走到必败态

  • 必败态只能走到必胜态

3.SG函数

以有向无环图博弈为例,$SG(i) = mex{SG(j)|(i,j)∈E}$,其中 $mex$ 表示集合中没有出现过的最小的非负整数。则先手必胜当且仅当 $SG(1)≠0$ 。

证明: 若 $SG(i)=0$ ,则出边中不含有 $SG(j)=0$ 的点,即无法走到先手必败态;若 $SG(i)≠0$,则存在一个出边使得 $SG(j)=0$ ,即先手必败态。 因此事实上判断单个有向无环图博弈结果只需 $0,1$ 状态即可。

4.子游戏

还是以有向无环图博弈为例,只是一次游戏变成了有多个 $DAG$

SG定理 : 先手必胜当且仅当这几个 $DAG$ 起点的 $SG$ 值异或不为 $0$。

证明 : 若异或值为 $0$ ,则显然先手无论如何操作都会将某个 $DAG$ 的 $SG$ 值改变,从而使得异或值非零,即先手必胜;若异或值非 $0$,则总能有一种挑选方法使得异或值为 $0$ 。

二、博弈进阶

1.阶梯 $Nim$

有 $n$ 堆石子放在 $n$ 级楼梯上,楼梯编号为 $1...n$(地面为 $0$ 层),每堆有 $a_n$ 个石子。 两人轮流游戏,每次将任意堆 $i$ 中的任意个石子但至少一个移动到它的相邻层 $i - 1$。 直到所有石子都移动到地面,最后移动的为胜者。

解法:只需将奇数层的位置进行 $Nim$ 游戏即可,即把奇数层的 $SG$ 函数异或起来

证明:石子在偶数位置的操作是是可以在下一位模仿的,所以只看奇数位就够了

2.$K-nim$

两人取石子,每个人可以从至多K堆中取至少一枚石子,取不了的人输。

定理 : 先手必败当且仅当 $n$ 堆石子写成二进制后,每一位上都有 $K+1$ 倍数个 $1$ (相当于写成二进制后做 $K+1$ 进制下不进位加法)。

即 $SG_i=i\%(K+1)$,当 $SG$ 异或和为零时,先手必败

证明:当 $SG$ 函数异或和为零是,因为最多只能选 $K$ 个,所以并不能使异或和等于零;当 $SG$ 不为零时,因为是 $K+1$ 进制数,且不为零,所以选至多 $K$ 个时,是可以使异或和再次为零

3. $Anti-SG$

规则变换为游戏中不能操作的人胜利

定理:满足以下任意一个条件时先手必胜

  • 游戏的 $SG$ 值的异或和不为零且某个游戏 $SG$ 值 $>1$

  • 游戏的 $SG$ 值的异或和为零且所有游戏的 $SG$ 值 $<=1$

证明

posted @ 2022-08-02 19:51  hubingshan  阅读(73)  评论(0)    收藏  举报  来源