CFR算法系列文章(一):背景知识铺垫

(文章首发于本人微信公众号 ,文章链接 https://mp.weixin.qq.com/s/ldiiWSKfRAzJZ4kma74Aog

系列文章背景

最近笔者在研究计算机博弈领域的CFR算法(Counterfactual Regret Minimization),在这过程中遇到了不少困难,包括但不限于 弄不明白博弈论中的相关概念(例如信息集),被CFR算法的复杂的符号体系搞得晕头转向……
目前网上是有一些关于CFR算法的文章,但是对于自学并不是特别友好。首先,网上关于 CFR算法 以及 博弈论中的非完美信息扩展型博弈(Extensive Games with Imperfect Information) 的文章较少。其次,其中的例子更是少得可怜,在我看过的中文和英文文章中,例子几乎只有库恩扑克(Kuhn Poker),而且对于具体的计算细节一笔带过。最后,网上有部分文章介绍了CFR算法的具体实现,但是并没对代码做更进一步的讲解,由于这些实现几乎都是仅针对双人博弈的,有些地方是做了特殊处理的(例如,如果玩家的编号分别为0和1,那么用 1-player 就可以获得对手的编号),而且还用到了递归来实现,对于刚接触这一算法的萌新,想理解这段代码是比较困难的。
总之,目前网上的资料大多都不够细致,对于博弈论基础不太扎实的萌新并不是特别友好。

针对上面提到的这些问题,笔者希望能够写一个系列的文章,来帮助萌新们理解CFR算法以及其背后的博弈论知识。在这个系列文章中,笔者会着重阐述“是什么”以及“怎么做”(也就是相关概念以及具体的实现步骤),会在文章中尽量多地使用具体的例子以及计算过程来帮助读者理解相关概念以及算法。至于“为什么”,也就是相关定理的证明部分,大家如果感兴趣可以去阅读一下原论文。

本系列文章的主要参考文献为《An Introduction to Counterfactual Regret Minimization》【1】和《Regret minimization in games with incomplete information》【2】,其中前者类似于一部英文教材,对初学者是比较友好的,后者就是提出CFR相关公式的文章,其中包含了对于相关公式以及定理的证明,感兴趣的读者可以去自行阅读一下。

最后,笔者并没有系统性地学习过博弈论,再加上需要进行实例的阐述,所以文章中可能会出现一些不准确甚至是错误的地方,如果有大佬能发现,恳请大佬能进行批评指正,如果读者对于其中的内容存在疑问,也欢迎在评论区或者私信里进行探讨。

写在前面

这篇文章是这个系列的第一篇文章,本文的主要目的是为接下来的文章进行一些直觉上的铺垫。
本文将通过一些简单的博弈论模型及其求解,来帮助大家理解非完美信息博弈,纳什均衡,混合策略等博弈论概念。
本文的目标读者是对博弈论了解较少的初学者,文章可能会显得比较啰嗦,望理解。

区分“完美”与“完全”

首先需要区分一下两个经常被混用的名词,也就是“完美(perfect)信息博弈”和“完全(complete)信息博弈”。
简单而言,完全信息博弈是指所有玩家都知晓规则【4】,而完美信息博弈是指玩家在作决策之前,对于之前发生的所有事情都是知情的【3 p89】。
在之后的文章里,我们要探讨的是完美信息博弈与非完美信息博弈,完全信息会作为一个默认条件,将不会再加考虑。
如果读者对于这两者的具体区别比较感兴趣的话,可以参考一下文末附录1中的解释。

纳什均衡

我们通常说的“求解一个博弈”,其实就是求解这个博弈的纳什均衡,那什么是纳什均衡?
所谓纳什均衡,就是博弈的一种稳定状态,在这种状态下,没有任何一个玩家能通过单方面改变策略来获取更多的利益。。
需要注意的是,纳什均衡考察的仅仅是这样一个稳定的状态,至于用何种途径达到这种状态,这并不是我们需要考虑的东西【3 p14】。

纯策略纳什均衡(pure-strategy Nash equilibrium)

我们以 性别战博弈(Battle of the Sexes game) 为例子,来介绍一下相对而言更简单的纯策略纳什均衡。

性别战博弈【1 p3】:
假设有一对情侣Monica和Gary,他们在这周末要去约会,在这之前他们需商量约会时的活动。目前可选的活动有看电影(简称M)和看足球比赛(简称G),Monica更想去M,而Gray则更想去G,但是,如果两人不一起行动的话,那两人都会不开心。
如果Monica的选择为A,Gray的行动为B,那么我们把这种情况记为(A,B)

为了用数学的方式来解决这个博弈问题,我们用效用(utility)来表示每个人的获利情况,效用是一个数,具体如何定义需要根据具体问题来决定。
在这个问题里,我们这样定义:如果Monica和Gray都选择了M,由于Monica更想去M,而且两人是一起行动的,所以Monica的效用是2,而Gray的效用是1;如果两人分开行动,那么两人的效用都是0。
由此,我们可以用一张表来描述4种情况下两者的效用:

Gray选择MGray选择G
Monica选择M2,10,0
Monica选择G0,01,2

接下来,我们来讨论一下这个博弈中的纳什均衡。
这里面有2个纳什均衡,分别是两者都去M和两者都去G,即(M,M)与(G,G)。以(M,M)为例分析,在这情况下,如果Monica单方面更改决定,那么两者的效用都会变为0,同理,Gray也面临一样的情况,所以两者都不可能通过单方面更改决定来获取更多的效用,因此,这是一个纳什均衡。
我们再来分析一下Monica去M,而Gray去G的这种情况,假如小俩口闹脾气了,发展到了分开行动这个分支,此时,我们切换到Gray的视角,如果他足够理性,那么他就会发现,他单方面更改决定,可以使自己获得更大的利益,所以他一定会选择去M,因此,这并不是一个稳定的状态,不是一个纳什均衡。

混合策略纳什均衡(mixed strategy Nash equilibrium)

上面提到的是纯策略纳什均衡的例子,所谓纯策略,就是指在每一个纳什均衡里面,每个玩家的行为都是固定了的,例如,在(M,M)这个纳什均衡中,Monica一定会选择去M,而Gray也一定会选择去M。那么有读者会疑惑了,如果在纳什均衡里,每个玩家的选择都是不确定的,那还称得上是稳定吗?
如果这个博弈会进行很多次,那么我们可以假定每个玩家进行某个行动的频率是稳定的,并通过求效用的期望值来代替效用,在这种假定下,如果存在一种状态,在这种状态下,每个玩家都不能通过单独改变自己的行动频率来获取更大的利益,那么这也是一种纳什均衡,这就是混合策略纳什均衡。

用定义求解混合策略纳什均衡

我们还是以性别战博弈【1 p3】为例子,这次我们假定Monica和Gray要进行很多次约会,并且将会使用混合策略。
我们假设Gray会以x的频率去M,也就是说,如果约会n次(n足够大),那么Gray去M的次数就是n*x,相应的Gray去G的频率就是1-x。类似的,设Monica会以y的频率去G,以1-y的频率去M。
(由于约会有很多次,所以这里认为概率就等于频率,以频率作为概率来计算效用的期望值)
那么可以分别求出4种情况发生的概率:

Gray选择M(概率x)Gray选择G(概率1-x)
Monica选择M(概率1-y)2,1,概率x(1-y)0,0,概率(1-x)(1-y)
Monica选择G(概率y)0,0,概率xy1,2,概率(1-x)y

进而求出Monica的总期望值:
E_monica=2x(1-y)+0(1-x)(1-y)+0xy+1(1-x)y=2x+y(1-3x)

按照定义,我们希望我们的x取得足够巧妙,使得Monica不可能通过单方面更改策略,也就是更改y,来获得更大的期望值。
注意到,此时如果我们让1-3x=0,这样的话E_monica的表达式就不含y了,这也就达到了我们的目的;反之,如果1-3x≠0,那Monica就有机会通过更改y的值,来让自己获得更多的期望值。
所以在纳什均衡中,一定有1-3x=0,即x=1/3,同样地,计算Gray的期望,可以得到y=1/3
由此,我们便得到了一个纳什均衡,如果 某人去M的频率为p1,去G的频率为p2 这一策略记为(p1,p2),那么这个纳什均衡就可以表示为Gray的策略为(1/3,2/3),Monica的策略为(2/3,1/3)

使用定理求解混合策略纳什均衡

我们再考虑一种情况,假设Monica使用纯策略,而Gray使用混合策略。先考虑Monica使用纯策略(1,0),也就是去M的概率为1的情况。在这种情况下,可以计算出Monica的期望值为2x+0*(1-x),类似的,可以计算出当Monica使用策略(0,1)时的期望值为0x+1(1-x)
如果x的值取得不够好,这两个期望值不同,那Monica就能通过选择期望值更大的策略来获得更多的收益;相反,如果x取得足够巧妙,使得两个期望值相同,那Monica无论怎么做,都不可能通过更改策略来获取更大的收益。
也就是说,纳什均衡中,一定会有2x+0*(1-x)= 0x+1(1-x),可以解得x=1/3
事实上,有定理:一个策略是纳什均衡当且仅当玩家i选任意一种纯策略的期望收益是相同的【5】

我们再来看一个经典的例子,就是我们熟悉的石头剪刀布,这个游戏是存在一个混合策略的纳什均衡的,这个纳什均衡的求解就留做习题请读者自行练习了,解答过程可以参考附录2。

如何理解纳什均衡

达到纳什均衡的策略并不一定是最好的策略,但它是能保证玩家不会被剥削的策略。如果一个玩家按照纳什均衡策略行动,而另一个玩家并不按照纳什均衡策略行动,那结果就有可能是后者获得更大的利益。但是,如果前者通过长期的观察,察觉到了后者采用的策略,那么他就可以有针对性地调整自己的策略,使自己获得更大的利益。
我们以石头剪刀布这个游戏为例子,如果有一个精通博弈论的理性玩家A和一个普通玩家B,A通过长期的游戏观察到B出石头的频率是0.6,出剪刀的频率是0.2,出布的频率是0.2。如果此时A仍然按照纳什均衡策略行动,可以计算出A的期望值为0,B的期望值也是0,但如果此时A提高出布的频率,比如把策略调整到只出布,那么A的期望值就变为了2/15,而B的期望值就是-2/15,也就是说,在长期的游戏中,平均下来B是每局都会输2/15的效用,这就是A对B的剥削。

在纳什均衡情况下,所有玩家的期望不一定都是一样的,完全有可能出现这种情况:在纳什均衡策略下,玩家A的期望大于玩家B的期望,也就是说,在长期游戏中,玩家B是一定会输钱的,这就是不公平的游戏。例如,田忌赛马就并非一个公平的游戏,如果两者都按照纳什均衡策略行动,长期下来赢家一定是齐王,这就是齐王的马比田忌的更好所带来的先天性优势。

纳什均衡的存在性

纳什定理(Nash’s theorem)告诉我们,如果玩家数量以及玩家可以选择的行动是有限的,那么至少存在一个纳什均衡,这个纳什均衡可能是纯策略的,也可能是混合策略的【6】。
由此可见,现实中的大部分游戏,比如象棋,斗地主,都是存在纳什均衡的,只是它们的博弈树太大了,这个纳什均衡不是很好找到。但也有部分游戏不存在纳什均衡,例如两个人先后报一个数字,数字大的获胜,这个游戏中玩家可选择的行动是无限多的,所以不存在纳什均衡。

总结

本文主要介绍了博弈论中的纳什均衡。我们之后会使用计算机算法去求解纳什均衡,我们的最终目标是利用CFR算法求解非完美信息扩展型博弈的纳什均衡。本文则是对相关的背景知识进行了介绍,起到了一个铺垫的作用。
以上就是正文的全部内容,欢迎大家的批评指正,也欢迎大家在评论区或私信里进行探讨。

参考文献与资料

【1】Lanctot M, Neller T. An Introduction to Counterfactual Regret Minimization[J]. 2014.
【2】Zinkevich M, Johanson M, Bowling M, et al. Regret minimization in games with incomplete information[J]. Advances in neural information processing systems, 2007, 20.
【3】M. Osborne and A. Rubenstein. A Course in Game Theory. The MIT Press, Cambridge, Massachusetts, 1994.
【4】知乎问答 什么是完全信息博弈和完美信息博弈,有什么例子可以理解这两个的区别? https://www.zhihu.com/question/57529962
【5】知乎文章 博弈论笔记(二):混合策略博弈及其纳什均衡 https://zhuanlan.zhihu.com/p/148772400
【6】WIKIPEDIA Nash equilibrium https://en.wikipedia.org/wiki/Nash_equilibrium#

附录

附录1:关于完美信息博弈与完全信息博弈的具体区别

以下理解主要参考了https://www.zhihu.com/question/57529962中答主“司马懿”的回答,不一定保证准确,仅供参考。
具体而言,完全信息博弈是指玩家都知道游戏规则,所有玩家都能根据已知的游戏规则推算出这个博弈的所有可能性,例如,发两张牌比大小,更大的赢1元,更小的输1元,虽然对手会被发什么牌是个不确定的事件,但是我们总是可以列举出博弈会出现的所有情况,例如玩家1的牌是5,玩家2的牌是3,所以玩家1赢1元,玩家2输1元,以此类推,直到穷举完所有的可能性;而不完全信息博弈就是玩家并不是完全知晓规则,例如还是发牌比大小,但是赢的玩家会赢多少,这个信息只有玩家1知道,这样玩家2就不能列举出博弈会出现的所有情况(至少最后的收益大小是无法知晓的)。
而完美信息博弈,则是强调了在玩家采取行动时,需要准确掌握之前已经发生过的事情,例如,下象棋就是完美信息博弈,因为玩家每走一步时,是准确掌握了之前对手的棋子都是怎么走的;而不完美信息博弈,就是玩家并没有完全了解到作决策之前发生了什么事,例如,在斗地主中,对手的手牌自己是不知道的,也就是说,自己并没有完全了解在发牌阶段每个人都被发到了哪张牌,所以这是一个非完美信息博弈。
如果有读者了解信息集的定义,那完美信息与非完美信息的定义就会更简单,完美信息博弈要求每个信息集只有一个元素,而非完美信息博弈则是有的信息集里面会有多个元素。

附录2:石头剪刀布游戏的纳什均衡

假设有两个玩家A和B,A出石头的频率是x,出剪刀的频率是y,那么出布的频率就是1-x-y
我们以B的视角来求解纳什均衡时的x和y。我们可以列出一张表格,其中的内容是每种情况下B的收益(也就是效用),0表示平局,1表示赢,-1表示输
在这里插入图片描述

如果B采用只出石头的纯策略,那么B的收益期望就是0x+1y+(-1)*(1-x-y),同样地,可以求出另外两种纯策略下,B的收益期望,令这三者相等,可以得到一个连等式
X+2y-1=1-2x-y=x-y
可以求得x=y=1/3,从而1-x-y=1/3
由于对称性,可以得知在纳什均衡时,B的策略也一定是(1/3,1/3,1/3)
所以石头剪刀布的纳什均衡就是:每个玩家都以1/3的概率随机出石头剪刀布

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值