CFR算法/反事实遗憾最小化算法
符号和背景
扩展式博弈
扩展式博弈是一种基于树形式的用来描述非完备信息博弈的一种方法。可以用形式化的语言来描述这棵树:
一个扩展时博弈可以被描述为一个七元组其中:
:状态序列的集合
:终止序列的集合
:参与博弈的玩家集合
:一个非终止状态到中某一玩家的映射,表示当前状态应该由哪位玩家采取行动
:一个由终止状态到实数的映射,表示某个玩家到达终止状态时可以获得的奖励
:玩家的信息集,一个信息集中包含了若干个中的状态,当其他玩家通过观测历史h时,只知道玩家处于集合上,但是并不清楚该玩家具体在的哪一个状态上。可以利用信息集的大小来衡量一个玩家在游戏中隐藏了多少信息
例如,在Kuhn扑克中,节点3对于玩家A来说就是一个信息集,因为它可以表示3:1和3:2两种状态,这两种状态对于A来说是无法区分的。一般来说,非完全信息博弈树中的每一个节点都代表了一个信息集
:机会玩家(可理解为发牌员)做出所有合法动作的概率分布,可进一步用来表示当游戏处于状态时,机会事件发生的概率
对于任何一个在集合中的序列,它是一个在某一次游戏中发生状态的序列,将此次博弈中发生的所有动作按照时间先后依次排列起来即得到。从博弈树的角度来讲,是从根节点到达博弈树中任意某个节点的路径。基于此我们可以做如下定义:表示是的子串(在状态下进行若干操作后可以得到),表示是的真子串。对应到博弈树中则表示是的一个孩子节点。
例如,状态3PB表示3-P-B这样一个状态序列,它是由在状态3P下进行操作B得来的
策略
策略是玩家在游戏中选择动作的准则,在非完备信息博弈中,策略是一个从当前信息集上所有合法动作到之间的一个映射,也可以说是一个基于信息集的概率分布。以下是一些关于策略的常用符号表达:
:玩家p处于信息集I时,做出动作a的概率
:表示一个概率分布,即处于状态集时,做出所有合法动作的概率分布(将游戏中所有的信息集上的 组合起来,即可得到完整的策略
除了策略之外,在博弈问题中经常需要用到一些概率,为了方便表示,我们将定义一系列概率:
:从初始状态出发,当所有玩家都遵循策略时,到达状态的概率
:玩家从初始状态出发,遵循策略,到达状态的概率
:从初始状态出发,除玩家外,其他所有玩家都遵循策略,到达状态的概率
:玩家遵循策略,从状态出发,到达状态的概率
关于概率这一定义,有以下三个等式需要额外注意:
:这个等式表明所有玩家遵循策略到达状态的概率等于每个玩家分别遵守策略到达状态的概率相乘
:这个等式表明所有概率都可以表示为一系列概率的乘积
:这个等式是上一个等式的推论,表明从初始状态出发,遵循策略到达状态的概率等于从初始状态出发,遵循策略到达状态(是的子串)的概率乘以遵循策略,从状态出发到达状态的概率
收益与反事实值
第1节中介绍了拓展式博弈模型,其中的是终止状态的收益。接下来我们将基于终止状态的收益对博弈树中的每个节点都定义一个收益。当玩家遵循策略时,对于博弈树中任意的一个状态,该状态的收益定义为:
反事实值:
反事实值与收益的关系:
反事实值的实际意义:对于某个玩家,遵循特定策略到达状态,在此策略指导下到达状态的概率越小,则其相应的反事实值越大;在此策略指导下到达状态的概率越大,则其相应的反事实值越小。当在策略下到达状态的概率为1时,反事实值和收益值相等。总结起来就是,在遵循策略时,反事实值的大小和到达状态的可能性成反比。在策略下,越不可能到达状态,该状态越反事实。
最佳回应与最佳回应收益
最佳反应是一种策略,使用这种策略可以在其他玩家都使用策略时获得最大收益,使用最佳反应策略获得的收益值即为最佳反应收益。
例如,在石头剪刀布中,如果一个玩家的策略为(对应出石头、剪刀、布的概率),则另一玩家的最佳反应策略为,最佳反应收益为1
最佳反应是我们在已知对手策略时的最优选择,相应地,根据我们的策略推算对手的最佳反应能够反映出若我们目前的策略被对手利用,最多会损失多少收益,并可以依据此来作为该策略最坏情况的参考。
-纳什均衡
在所有拓展式博弈中,纳什均衡一定存在,求解拓展式博弈问题就是在求解纳什均衡。计算机求解纳什均衡时一般都是通过迭代来逐步逼近纳什均衡,最终求得一个和纳什均衡足够近似的-纳什均衡解:
上式的意思是:对于任意一名玩家,他对当前策略中其他人的策略的最佳响应收益与他在当前策略中所能获得的收益的差值不超过
例如,在石头剪刀布中,有一个策略组为,这时每个人的最佳反应收益,而他们在当前策略中获得的收益
可利用度
在实际应用中,我们通常使用两种可利用度来刻画策略与纳什均衡的近似程度:
策略组的可利用度:所有玩家针对此策略的最佳反应收益的均值:
策略组可利用度的定义:在零和博弈中,若所有玩家都采用纳什均衡策略,则所有玩家都可以在最坏情况下获得最大的收益,所以所有玩家的。换种角度来讲,玩家在策略中可能获得的收益越少,那么这个策略就越接近纳什均衡,当所有玩家在任一情况下都无法从策略中获利时,这个策略就收敛到纳什均衡了。
单个玩家策略的可利用度:游戏的game value与最差收益之差:
即:若玩家依照纳什均衡策略进行游戏,则此策略保证玩家在最坏的情况下也至少可以获得收益。这个在最坏情况下的最好收益就是上述定义中的game value(也就是在纳什均衡策略下玩家的收益)。而定义中的后面一项的含义是:当前策略在最坏情况下(即对手针对我的策略使用最佳回应最大化自己的收益。在零和博弈中,对手的收益变大即意味着玩家本人的收益变小,所以当所有对手的收益都最大时,我们就面临着最坏的情况),玩家可以获得多少收益。
博弈论中极大极小化公式的含义:
即:在每个其他玩家都想让我的收益最小化的前提下,我仍要让我的收益最大化
*遗憾值
遗憾值的含义:将我们实际使用的策略替换成策略,新策略比原策略多产生的那部分收益,即为遗憾值的数值
*反事实遗憾最小化算法
1.使用遗憾值更新策略
2.使用新策略更新平均策略
3.使用新策略计算反事实值
4.使用反事实值更新遗憾值
CFR算法举例
将初始策略定为随机策略,基于结点3来尝试运行一下CFR算法:
1.第一轮迭代时,“节点3处选择动作P的反事实值”的计算方法为:
结合博弈树易知:
代入得:
同理可得:
2. 利用反事实值更新遗憾值:
3. 利用遗憾值更新策略:
做一下归一化操作以得到第一轮迭代之后玩家在节点3处的策略: