博弈论—扩展式转化为策略式博弈(十五)

博弈的扩展式和策略式是博弈模型的两种表示方式。博弈的扩展式通常用来描述多人博弈中的动态博弈关系,扩展式还包括了博弈的时间序列,即参与者的行动顺序,扩展式(博弈树可视化)有助于理解博弈者如何制定策略以达到最佳结果。策略式是扩展式博弈的一个重要子集,它关注于每个参与者的策略选择以及他们如何根据对手的策略来做出决策。有时为了理论研究,常常借助策略式(入手简单、常用熟悉)表述博弈的结果分析扩展式博弈,这就需要将扩展式博弈转化为策略式表述。

一、行动集

接前博弈论——完全信息动态博弈(五)扩展式结构化描述
可以由终端历史集和局中人函数来推断出这些行动集合。对于一些非终端历史h,如果序列(ha)是历史,那么a就是在h之后采取行动的局中人可选择的行动之一。于是在h之后采取行动的局中人,他的所有可使用的行动集是:

A(h)={a|(ha)}

例如,对于下图中的进入博弈,历史是,“进人”,“在外”,(进人,默许),以及(进人,斗争)。于是,对于博弈开始时采取行动的局中人,也就是挑战者,她的可使用行动集为A()={};对于在历史“进人”之后行动的局中人,也就是在位者,他的可使用行动集是A()={}

二、信息集

为描述不完全信息展开型博弈,我们必须添加一条:每一个局中人关于在她行动的每一时刻的历史信息的说明。Hi表示历史的集合,局中人i在这之后采取行动。通过将Hi划分(分隔)为若干信息集的集成来确定局中人i的信息。这种集成称为局中人i的信息划分。局中人i在作出决策时,知道所发生的信息集,但不知道在该信息集中发生的是哪个历史。
如前所述, 将在历史 h 之后行动的局中人的可使用行动集合记作 A(h)。只有当 A(h)=A(h) 时, 我们认为两个历史 hh 在同一个信息集中。为什么呢? 在任何历史之后行动的局中人必须知道在该历史之后她可使用的行动集, 因此如果 hh 在同一个信息集中, 并且 A(h) A(h),那么在这个信息集上采取行动的局中人可以通过观察她可使用的行动来推断在这两个历史中发生了哪一个历史。只有当局中人可使用行动集的知识是 A(h)=A(h), 那么她自然不会知道已发生的历史是 h 还是 h 。如果包含 hh 的信息集是 Ii, 那么记 A(h)A(h) 的共同部分为 A(Ii) 。也就是说, A(Ii) 是局中人 i 在他的信息集 Ii 上可供选择的行动集。
如下图所述,在图顶端的小圆圈表示博弈起始点,每一条线描述一个行动;在每个终端历史下方的数字是伯努利盈利,其期望值描述了局中人关于随机结局的偏好。连接B与S的虚线表示这两个历史处于局中人2的同一个信息集中。注意,局中人2在她的信息集内的每个历史上的行动集相同这个条件得到满足:在每个这样的历史之后,局中人2的行动集都是{B,S}

局中人:两个人,设为 1 和 2 。
终端历史: (B,B)(B,S)(S,B)(S,S)
局中人函数:P()=1,P(B)=P(S)=2
机会行动:无。
信息划分:局中人 1 的信息划分包含了单一的信息集 ( 局中人 1 有独自的行动, 并且在行动时她知道博弈正在开始); 局中人 2 的信息划分也包含单一的信息集 {B,S} (局中人 2 有独自的行动, 并且当她行动时, 她不知道历史是 B 还是 S )。
偏好:如该情况描述中所给出。

参与人i信息集Ii是决策节点的一个集合,满足两个条件:
Ii中的每个决策节点都是参与人i决策节点;当博弈到达信息集Ii时参与人知道自己是在信息集Ii中的决策节点上,但不知道自己究竟在哪个决策节点上。

例1:知道参与人1的选择,不知道参与人2的选择。 例2:不知道参与人1的选择,不知道参与人2的选择。

参与人的一个信息集(information set)是一个由他无法区分的决策节点组成的集合。参与人的信息集描述的是当轮到他行动时,他不知道自己位于哪个决策节点上,所有这样的决策节点构成了他的信息集。

三、扩展式博弈完整描述

由于每个决策节点对应着唯一的行动路径(从根节点到该决策节点的路线),因此参与人的每个信息集由他无法区分的所有真子历史(proper subhistories)所对应的决策节点组成。比如给定参与人1的信息集,在该信息集内的每个节点上,他必定有相同的可能行动集。
例3:用一套符号系统表示博弈模型。

N={1,2}-----(2人,显然是 1,2)
A1=A2={H,T} (动作,显然只有H和T)
H={(H,H),(H,T),(T,H),(T,T)}-----(终止历史,也就是所有能走到头的,一个括号里放一个)
SH={,H,T}-----(真子历史,就是所有没走到头的子历史)
P()=1,P(H)=2,P(T)=2-(参与人函数,就是1和2这两个人,是在什么动作之后轮到他们决策的, P 后面括号里对应的就是动作)
Ii{{}},I2{{H},{T}}-----(看下角标对应的参与人不能区分的真子历史写上去)
u1(HH)=1,u1(HT)=1,u1(TH)=1,u1(TT)=1
u2(HH)=1,u2(HT)=1,u2(TH)=1,u2(TT)=1 (效用函数,一看就懂)
显然,不同参与人的行动集可以从终止历史与参与人函数推到出来。但是为了更容易理解展开型博弈的定义,我们还是将其作为这个定义的组成部分。
如果我现在不知道参与人1的动作集是什么,是否能推用终止历史和参与人函数推出来呢?这里因为P()=1,所以是1先决策,再看参与人函数等号右边也就只有1和2,所以推出来只有1和2两个参与人,所以2肯定是由1采取了什么动作以后才轮到他决策的,从参与人函数里面可以看出来有H和T,所以在1决策完,如果输出了H或者T,那么游戏还继续,但是并不意味着1就只有这两个选择,因为有可能他选了其他可行动作游戏直接结束,轮不到2,所以需要看一眼终止历史,发现1不可能上来就自杀,所以确定1的动作就是H和T。再通过参与人函数看,1只有上去就决策这一项,所以2决策完游戏就结束了,因为1无论做什么都能引出2,所以就直接去终止历史那里看每个括号里的第二项,发现只有H和T。
例4:进入博弈(entry game)

有两个参与人,1和2,参与人1是挑战者,参与人2是在位者,参与人1可以决定挑战在位者,执行“进入”的动作,也可以决定不挑战,执行“不进入”的动作。当挑战者决定进入时,参与人2可以决定斗争,也可以决定容忍,即接受。因此,这个博弈的表示方式如下:
N={1,2}( 参与人,显然1和2)
A1={ 进入, 不进入 },A2={ 接受, 斗争 } (动作集)
H={( 进入, 接受 ), (进入, 斗争 ),( 不进入 )} (终止历史,与上一个博弈不同的是,这里1可以自杀)
SH={,( 进入 )} (只有空集和1进入之后2决策这一点才是真子历史)
P()=1,P( 进入 )=2-----(参与人函数,说明1是第一个决策的)
I1={{}},I2={{ 进入 }} (对于1来说, 2 人家好好的在那待着,进攻不进攻是1说了算,所以不存在信息集,对于2来说,1进入还是不进入是不确定的,所以2的决策节点前面的真子集就是2的信息集)

u1( 进入, 接受 )=2,u1( 进入, 斗争 )=0,u1( 不进入 )=1u2( 进入, 接受 )=1,u2( 进入, 斗争 )=0,u2( 不进入 )=2

再次注意到,行动集 A1A2 可从终止历史与参与人函数推导出来。

四、扩展型博弈转换为策略型博弈

策略是博弈论中最重要的概念之一。一个策略(strategy)就是一个完整的行动方案,它规定了参与人在他的每个信息集上将做什么。

信息集: I={I1,I2,,IN} 为所有玩家的信息集, Ii={Ii1,Ii2,,Iin} 为玩家的所有决策节点根据信息的划分。
信息集 Ii 中的每个元素为到达该玩家某一决策点或多个决策节点,可以使用从根节点到此节点的路径对应表示。在完全信息博弈中每个信息集只包含一个节点。显然信息集中某决策节点在多个路径下候选行动集是相同的,记作 A(Iij)=A(h)=A(h),h,hIij ,因此才无法区分。 P(Iij) 为在该处做出决策的玩家。
纯策略(Pure Strategies): 玩家i的纯策略定义为笛卡尔积 aiA(Ii1)×A(Ii2)××A(Iin)
混合策略(Mixed Strategies): 作用在该玩家纯策略上的概率分布函数。即玩家i的一系列的概率分布函数 βi={βi1(Ii1),βi2(Ii2),,βini(Iin)} ,其中 βik 为作用在 A(Iik) 行动集上的概率分布函数,其中 P(Iik)=i

例5:分钱博弈(Dividing money game)

玩家1决定怎么分2块钱,玩家2决定是否接受。
玩家1有3个纯策略:(2-0)、(1-1)、(0-2)
玩家2有8个纯策略:nnn,nny,nyn,nyy,ynn,yny,yyn,yyy.(nny表示玩家2拒绝2-0 、1-1的分法,只接受0-2的分法)
纯策略数量:每个信息集的行动集作笛卡尔积。即

{ny}×{ny}×{ny}={nnn,nny,nyn,nyy,ynn,yny,yyn,yyy}

例6:动态博弈

玩家1的策略也是4个:AG,AH,BG,BH(虽然选了A就不可能来到G/H, 即AG AH都是A,但还是算两个)。混合策略、最优反应、纳什均衡等概念都可以类比过来。

例7:展开式博弈转换

图1 图2

图1中局中人1信息集: H1={h1};
行动集: A(h1)={ 左, 右 }
纯策略空间: S1=A(h1)={ 左, 右 }
局中人2信息集: H2={h21, h22};
行动集: A(h21)={A,B};A(h22)={C,D}
纯策略空间: S2=A(h21)×A(h22)={(A,C),(A,D),(B,C),(B,D)}
纯策略组合

S={{ 左, AC},{ 左, AD},{ 左, BC},{ 左, BD},{ 右, AC},{ 右, AD},{ 右, BC},{ 右, BD}}

收益矩阵

玩家1\玩家2 AC AD BC BD
3,1 3,1 5,6 5,6
4,2 2,7 4,2 2,7

图2中局中人 1信息集: H1={h1};
行动集: A(h1)={ 左, 右 }
纯策略空间: S1=A(h1)={ 左, 右 }
局中人2信息集: H2={h2};
行动集: A(h2)={A,B}
纯策略空间: S2=A(h2)={A,B}
纯策略组合

S={{ 左, A},{ 左, B},{ 右, A},{ 右, B}}

收益矩阵

玩家1\玩家2 A B
3,1 5,6
4,2 2,7

例8:完全信息动态硬币匹配博弈

考虑例3中博弈图的信息集为:I1=;I2={H,T}
参与人1有两个策略:S1=A(I1)=A()={H,T}
参与人2有四个策略:S2=A(I2)=A(H)×A(T)={HH,HT,TH,TT}
现在参与人1和2的收益由下表描述。例如,当参与人1的策略为H且参与人2的策略为HH时,参与人1和2分别选择H和H,他们的收益分别为1和-1。根据参与人可能选择的策略,可以写出收益矩阵:

玩家1/玩家2 HH HT TH TT
H 1,-1 1,-1 -1,1 -1,1
T -1,1 1,-1 -1,1 1,-1

例9:序贯博弈

图3 图4

请写出上图3所示的博弈树双方各自的策略。1有2个信息集,第一个信息集有三个行动, 第二个信息集有2个行动。因此共有六个策略。可记参与人 1 的策略集为 S1={Aa,Ab,Ba,Bb,Ca,Cb} 。这样表示的含义, 以策略 Bb为例, 表示的是参与人 1 在第一个信息集选行动 B, 第二个信息集选行动 b;同理, 参与人2有两个信息集的策略集可以表示为 S2={lL,lR,rL,rR}
见图4,分析策略组合 {Ca,lL} 对应的博弈路径。参与人在博弈开始首先选择行动 C, 然后到达虚拟参与人结点Chance。在Chance点, 两条路径出现的概率分别为 1/43/4, 对应的支付向量分别为 (0,0)(8,8)。故支付向量是上面两项的概率平均值, 为 (6,6) 。这样就构造出如下的收益矩阵:

玩家1/玩家2 lL lR rL rR
Aa 4,1 4,1 7,2 7,2
Ab 4,1 4,1 7,2 7,2
Ba 6,3 6,3 4,0 4,0
Bb 6,3 6,3 4,0 4,0
Ca 6,6 8,7 6,6 8,7
Cb 0,6 2,7 0,6 2,7

标有星号的元素对应的策略组合为纳什均衡。

例10:考虑以下的三阶段博弈
参与人1在左 L1和右R1之间进行选择。
参与人2在观察参与人1的选择后:

  • 如果参与人1选择左,参与人2在左L2 和右R2之间选择;
  • 如果参与人1选择右,参与人2在l2r2之间选择。
    如果在前两个阶段中选择了左,那么参与人1在左l1和右r1之间再次选择,博弈终止;否则博弈直接终止。
扩展式 策略式

参与人1的策略集
参与人1必须在游戏开始时做出决定;此外,他可能要在第三阶段做出决定。由于参与人1的策略是他可能需要做出决定的所有情况的计划。因此参与人1的策略集是:A1=L1l1,L1r1,R1l1,R1r1
此处的L1r1表示“参与人1计划在阶段1使用L1,在阶段3使用r1”,其余策略同理。
参与人2的策略集
参与人2在观察到参与人1在第一阶段的选择后,必须在第二阶段做出决定。因此,依照上述讨论,他的策略集是:A2=L2l2,L2r2,R2l2,R2r2
此处的R2l2表示“如果参与人1使用了L1,参与人2打算使用R2,如果参与人1使用了R1,参与人2打算使用l2”。其余策略同理。

总结

扩展式博弈转为策略式博弈的步骤如下:
找出每个参与人的策略集,该策略集是其信息集划分后的行动集的笛卡尔积,考虑了各种决策行动的可能性;
在扩展式中,找出每个策略组合所对应的行动路径(行动组合);
将终端历史节点旁边的支付数据填入相应策略组合所对应的单元格。

图5 图6
图7 图8

参考文献

  1. 完美信息博弈
  2. 博弈论与机制设计 第3章 展开型博弈
  3. 将展开型博弈转换成策略型博弈
  4. 博弈论(第三讲)(2)
  5. 博弈论2(扩展型博弈)
posted @   郝hai  阅读(2037)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
点击右上角即可分享
微信分享提示