当时一个模型可能用到博弈论的算法,于是就自己搜罗资料学了一下(虽然最后其实没用到博弈论) 发现博弈论这个东西其实挺抽象的,也没有特别成熟的经典的算法公式(尤其是均衡这块儿),而具体的博弈模型它的应用场景其实并不广……大家且学且珍惜吧。
目录
一.具体的博弈模型(分胜负)
1、巴什博弈
只有一堆n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个。最后取光者得胜。
解析:
当n=m+1,无论先手取多少个,后手都能把剩下的取走,后手胜;进一步地,当n=k(m+1),同理后手胜。
当n=k(m+1)+s(即 n 不可被(m+1)整除),先手只要第一次拿走s个,即回到上述情况,先手胜。
2、威佐夫博弈
有两堆各若干个物品,两个人轮流从某一堆取至少一个或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。
解析:
用(a,b)(a≤b)表示两堆物品的数量并称其为局势,如果甲面对(0,0),那么甲已经输了,这种局势称为奇异局势。
初始局势为(a,b)a<=b的,如果int[(b-a)*(sqrt(5)+1)/2]== a,则该局势为奇异局势,先手必输。否则,先手必赢。
前几个奇异局势:(0,0)、(1,2)、(3,5)、(4,7)、(6,10)、(8,13)、(9,15)…
当初始时不满足奇异局势的条件可以通过合理取物来转化成奇异局势:
3、尼姆博弈
有任意堆物品,每堆物品的个数是任意的,双方轮流从中取物品,每一次只能从一堆物品中取部分或全部物品,最少取一件, 取到最后一件物品的人获胜。
解析:
假设三堆,当局势(0,n,n)时,无论怎么取,对方都能从另一堆中取出同样多的物品,因此谁面对了这种局势,谁必败;推而广之,(0,0,n,n)(0,0,…n,n)都是奇异局势。
假设(a,b,c),将所有数写为二进制形式,然后依次使用异或运算(XOR)得到它们的异或和,即若a⊕b⊕c=0,则为奇异局势,先手必败;反之不为0,能采取策略获胜。
从非奇异局势向奇异局势转变(假设三堆):①使 a = c⊕b; ②使 b = a⊕c;③使 c = a⊕b
注意每个非奇异局势可以一步到达奇异局势,而每个奇异局势不能一步再次到达奇异局势,因此谁先使对方面对奇异局势就先获胜。
二、抽象的
1、纳什均衡
纳什均衡是非合作博弈中的完全信息静态博弈达到的均衡,指每个玩家选择了自己的策略后,没有玩家可以通过单方面改变自己的策略来获得更高的期望效用。(完全信息静态博弈指博弈者彼此知道策略集,并同时做出决策的博弈。)
策略可分为纯策略和混合策略,纯策略指玩家确定地选择某个特定的行动,混合策略指玩家以一定的概率选择不同的纯策略。在纯策略中每个决策者每一步决定的是一个动作a i,在混合策略中每个决策者每一步决定的是一个策略s i
纯策略针对每个决策者的不同动作衡量效用,混合策略针对每个决策者的不同策略概率分布来衡量效用,即计算效用期望:
其中u()为效用函数,pi为玩家选择策略si的概率,qj为对手选择策略tj的概率。
当决策集较简单时,可用收益矩阵(或子集枚举法)辅助寻找纳什均衡(一般指两人博弈的情况):
(a)纯策略:
(b)混合策略:
以行人问题作为示例,展示两种纳什均衡的求解方法:
2、LCP线性互补问题求解纳什均衡
有一篇论文(十几年前的了),提出把博弈问题转化为线性互补问题的方法,再通过数学算法解决该问题。
冯丽荣.线性互补问题在经济中的应用[D].北京交通大学,2010.