博弈论进阶之SG函数(转载)

本文深入探讨了SG函数在博弈论中的重要性,介绍了SG函数的定义及其与有向无环图(DAG)的关系。通过基本定理和必胜态、必败态的概念,阐述了如何在DAG中进行博弈分析。此外,文章还讨论了SG函数与nim游戏的联系,并提出了SG定理,揭示了SG函数在解决复杂博弈问题中的广泛应用。
摘要由CSDN通过智能技术生成

转载地址:博弈论进阶之SG函数 - 自为风月马前卒 - 博客园

SG函数

个人理解:SG函数是人们在研究博弈论的道路上迈出的重要一步,它把许多杂乱无章的博弈游戏通过某种规则结合在了一起,使得一类普遍的博弈问题得到了解决。

从SG函数开始,我们不再是单纯的同过找规律等方法去解决博弈问题,而是需要学习一些博弈论中基本的定理,来找到他们的共同特点

那么就先介绍几个最基本的定理(也可以叫常识)吧

基本定理

ICG游戏

1.游戏有两个人参与,二者轮流做出决策。且这两个人的决策都对自己最有利。

2.当有一人无法做出决策时游戏结束,无法做出决策的人输。无论二者如何做出决策,游戏可以在有限步内结束。

3.游戏中的同一个状态不可能多次抵达。且游戏不会有平局出现。任意一个游戏者在某一确定状态可以作出的决策集合只与当前的状态有关,而与游戏者无关。

满足上述条件的问题我们称之为ICG游戏,ICG游戏属于组合游戏

最典型的nim游戏,就是一种ICG游戏

必胜态与必败态

定义P-position与N-position

P-position:必败态(简记为P),即Previous-position,你可以直观的认为处于这种状态的人一定会输

N-position:必胜态(简记为N),即Next-position,你可以直观的理解为处于这种状态的人一定会赢

这仅仅是最直观的定义

更严谨的定义为:

  1. 无法移动的状态(即terminal-position)为P
  2. 可以移动到P的局面为N
  3. 所有移动都会进入N的局面为P

DAG(有向无环图)中的博弈

在正式研究SGSG函数之前,我们先来研究一下DAG中的博弈

给定一张有向无环图,在起始定点有一枚棋子,两个顶尖聪明的人交替移动这枚棋子,不能移动的人算输

不要小看这个游戏,事实上,所有ICG问题都可以抽象为这种游戏(即把初始局面看做顶点,把从一个状态可以到另一个状态之间连边)

SG函数

下面我们来正式研究一下SG(Sprague-Grundy)函数

首先定义mex运算,这是一种集合中的运算,它表示最小的不属于集合的非负整数

例如mex{1,2,3}=0mex{1,2,3}=0,mex{0,2}=1mex{0,2}=1,mex{0,1,2,3}=4mex{0,1,2,3}=4,mex{}=0mex{}=0

对于给定的有向无环图,定义每个点的SG函数为

SG(x)=mex{ SG(y) | x can go to y}SG(x)=mex{ SG(y) | x can go to y}

然而单单一个这样的空洞的函数是解决不了问题的,我们需要分析一下它的性质

  • 所有汇点的SGSG函数为00

这个性质比较显然,因为汇点的所有后继状态都是空集

  • 当SG(x)=0SG(x)=0时,该节点为必败点

由SGSG函数的性质易知该节点的所有后继节点SGSG值均不为00

满足必败态的定义

  • 当SG(x)≠0SG(x)≠0,该节点为必胜点

由SGSG函数的定义可知该节点的后继节点中一定有一个节点SG=0SG=0

满足必胜态的定义

这样我们通过最基本的SGSG值的定义,我们就可以判断出一个状态是必胜态还是必败态

这个问题实际上就是我们前面讲的巴什博奕

如果这个问题再复杂一点呢?

当这个棋盘上有nn个棋子的时候呢?

其实它们的分析思路是一样的

当SG(x)=kSG(x)=k时,它表明后继状态中含有SG(y)=1…k−1SG(y)=1…k−1

也就是说,我们从kk可以转移到1…k−11…k−1中的任何一个状态,而当前共有nn个棋子。

这会让你想到什么?

nim取石子游戏!

那我们是不是也可以推出:

如果在nim游戏中的nn堆石子的SGSG值异或和不为00就说明先手必胜呢?

这是肯定的,因为当你打出nim游戏的SGSG值表时就会发现,SGnim(x)=xSGnim(x)=x

是不是很神奇?

SG定理

SG函数的应用远远不止和巴什博奕与nim游戏有关,我们回过头来考虑能否把SG函数推广开来

类比nim取石子游戏的思路,我们可不可以大胆设想:

游戏的和的SG值是他们的SG值的xor

暂且不管这个结论对不对,我们设想一下,假如这个结论对的话,会有什么后果.

我们可以将ICG问题对应到DAG上,然后直接通过SG函数之间的转移而解决几乎全部的问题

是不是很令人兴奋?

更令人兴奋的是,这个定理是正确的!

什么?证明?

如果你是一个追求完美的人可以看这里

如果你像我一样连线性代数都不知道是什么的话大概就是从DAG上归纳一下就好了吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值