莱姆克-豪森算法

来自testwiki
跳转到导航 跳转到搜索

Template:Translating 莱姆克-豪森算法Template:Lang-en[1]是一种计算双矩阵博弈的纳什均衡的算法,以其提出者卡尔顿·E·莱姆克和J.T.豪森的名字命名。据说它是“寻找纳什均衡的组合算法中最著名的算法”。[2]

说明

该算法需要输入两个参与者的博弈矩阵G,这些参与者分别有m和n个纯策略。G由两个m × n的博弈矩阵A和B组成,它们分别是参与者1和2在所有决策下的收益。在这一算法中,我们假设所有的收益都是正的。

G有两个相应的多胞形(称为最佳回应多胞形)P1P2,分别为m维和n维,定义如下:

P1在集合Rm中,其坐标用{x1,...,xm}表示。并且P1的范围是被xi0(其中i{1m})这m个不等式以及B1,jx1++Bm,jxm1(其中j{1n})这n个不等式所规定的。
P2在集合Rn中,其坐标用{xm+1,...,xm+n}表示。并且P2的范围是被xm+i0(其中i{1n})这n个不等式以及Ai,1xm+1++Ai,nxm+n1(其中j{1m})这m个不等式所规定的。

P1表示参与人1的m个纯策略的非归一化概率分布集合,即参与人2的期望收益最多为1。前m个约束条件要求概率是非负的,其他n个约束条件要求参与人2的n个纯策略的期望收益不超过1,P2同理。

P1的每个顶点v都与集合j{1m+n}中的一组标签相关联。对于i{1m},如果在顶点w处存在xi=0,顶点v就会得到标签i。对于j{1n},当B1,jx1++Bm,jxm=1时,顶点v就会得到标签m+j。假设P1是非退化的,每个顶点都关联到P1m个刻面,并且有m个标签。在这里需要注意的是,原点也是P1的一个顶点,它所拥有的标签集合是{1m}

同理,P2的每个顶点w都与集合j{1m+n}中的一组标签相关联。对于j{1n},如果在顶点w处存在xm+i=0,顶点w就会得到标签m+i。对于i{1m},当Ai,1xm+1++Ai,nxm+n=1时,顶点w就会得到标签i。假设P2是非退化的,每个顶点都关联到P2n个刻面,并且有n个标签。在这里需要注意的是,原点也是P2的一个顶点,它所拥有的标签集合{m+1m+n}

对于顶点对(v,w),其中vP1wP2,如果满足vw的并集包含集合{1m+n}中所有的标签,那么我们可以定义这样一个顶点对是完全标记的。如果vw分别为P1P2的原点,那么顶点对(v,w)是完全标记的。如果与vw包含了集合{1m+n}中除g之外的所有标签,我们就定义顶点对(v,w)几乎完全标记,在这种情况下vw中存在一个标签。

主元运算如下所示:取某顶点对(v,w),用P1中某个与v相邻的顶点替换v,或者用P2中某个与w相邻的顶点替换w。这步操作的意义是在v被替换的情况下用另一个标签替换v的某个标签。被替换的标签就会立刻被丢弃。对于v的任何标签,都可以通过移动到与v相邻且不包含与该标签关联的超平面的顶点来删除该标签。

算法从由两个原点组成的完全标记对(v,w)开始。

特点

该算法最多能找到n+m个不同的纳什均衡,最初放弃标签的任何选择决定了最终由算法找到的均衡。

参考文献

Template:Reflist