学习笔记——博弈论
前言
博弈论真是一门玄学,这类题需要我们有强大的数学功底以及一定的推演能力,在考场上我们一般没有时间去证明一个结论的正确性,所以只能靠打表找出前几项的规律再推演到所有。
公平组合游戏(ICG)
若一个游戏满足
-
由两名玩家交替行动
-
在游戏进程的任何时刻,可执行的合法行动与轮到那名玩家无关
-
不能行动的玩家判负
则该游戏称为公平组合游戏。
有向图游戏
给定一个有向无环图(DAG),图中有唯一的起点,在起点上放有一枚棋子。两名玩家交替地把这枚棋子沿有向边进行运动,每次可以移动一步,无法移动者判负。该游戏被称为有向图游戏。
任何一个公平组合游戏都可以转化为有向图游戏。具体的方法是将每一个局面看成图中的一个节点,并从每个局面沿合法行动能够到达的下一个局面连向边。
Mex运算
设\(S\)表示一个非负整数集合,定义\(mex(S)\)为求出不属于集合\(S\)的最小非负整数的运算,
SG函数
在有向图游戏中,对于每一个节点\(x\),设从\(x\)出发共有\(k\)条有向边,分别到达节点\(y_1,y_2,...y_k\),定义\(SG(S)\)为\(x\)的后继节点\(y_1,y_2,...y_k\)的\(SG\)函数值构成的集合再执行\(mex\)运算结果,即
整个有向图游戏的\(SG\)函数值被定义为有向图起点的\(SG\)函数值。
有向图游戏的和的\(SG\)函数值等于它的每个子游戏\(SG\)函数值的异或和,即
定理
若在有向图游戏中某个局面必胜,当且仅当该局面对应节点的\(SG\)函数值大于\(0\)
若在有向图游戏中某个局面必败,当且仅当该局面对应节点的\(SG\)函数值等于\(0\)
理解:
若该局面的\(SG\)函数值为\(0\),则当前玩家无法操作(定义),所以为必败局面。
若该局面的\(SG\)函数值不为\(0\),则当前玩家可以将当前局面移动到\(SG\)函数值为\(0\)的局面中(定义,\(SG(S)>0\),则该节点的后继中有\(SG(y)=0\)的节点),所以为必胜局面。
例题
P2197 【模板】nim 游戏(题解加学习笔记)(我的代码)
P2252 [SHOI2002]取石子游戏|【模板】威佐夫博弈(题解)(我的代码)
P1247 取火柴游戏(裸的nim游戏)(题解)(我的代码)
参考资料
《算法竞赛进阶指南》


浙公网安备 33010602011771号