海盗博弈论

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

海盗博弈论

Charlesgao发表于2011-06-09 17:39:44

海盗分金是一个非常古老的问题,在1999年《科学美国人》正式把它发表之前,已经至少流行10年了,相信很多人都有所耳闻,也知道解法。此前死理性派也对这个问题也有所涉及。今天我们就来回顾一下这个有意思的问题,并且在把问题推广到大规模海盗团伙后,会得出一些非常有意思的结论。

分金的规则

有五个非常聪明的海盗,他们都是死理性派,编号分别是P1、P2、P3、P4、P5。他们一同抢夺了100个金币,现在需要想办法分配这些金币。

海盗们有严格的等级制度:P1

海盗们的分配原则是:等级最高的海盗提出一种分配方案。然后所有的海盗投票决定是否接受分配,包括提议人。并且在票数相同的情况下,提议人有决定权。如果提议通过,那么海盗们按照提议分配金币。如果没有通过,那么提议人将被扔出船外,由下一个最高等级的海盗再提出新的分配方案。

海盗们基于三个因素来做决定。首先,要能留在船上存活下来。其次,要使自己的利益最大化(即得到最多的金币)。最后,在所有其他条件相同的情况下,优先选择把别人扔出船外(这是因为每个海盗都想夺占这条船的控制权)。

海盗的逻辑

现在,假如你是等级最高的P5,你会做何选择?直觉上,为了保住自己的生命,你可能会选择留给自己很少的金币,以便让大家同意自己的决策。然而,结果和此大相径庭。

解决这个问题的关键在于换个思维方向。与其苦思冥想你要做什么决策,不如先想想最后剩下的人会做什么决策。假设现在只剩下P1和P2了,P2会做什么决策?很明显,他将把100金币留给自己,然后投自己一票。由于在票数相同的情况下提议人有决定权,无论P1同不同意,P2都能毫无危险地将所有金币收入囊中。

现在再把P3考虑进来。P1知道,如果P3被扔下海,那么游戏就会出现上述的情况,自己终将一无所获。由于他们都很聪明,P3同样能看到这一点,所以他知道,只要给P1一点点利益,P1就会投票支持他的决策。所以P3最终的决策应该是:( P3,P2,P1 ) → ( 99,0,1 ) P4的策略也类似:由于他需要50%的支持率,所以他只需贿赂1个金币给P2就可以了。P2一定会支持他(否则轮到P3做决策,他就一无所获啦)。所以P4最终的决策是:

( P4,P3,P2,P1 ) → ( 99,0,1,0 )

P5的情况稍有不同:由于这次一共有5个人,他至少需要贿赂两个海盗才能使自己的决议通过。所以决策就是:( P5,P4,P3,P2,P1 ) → ( 98,0,1,0,1 )

这个结果是不是很出乎意料?你不但可以保全自己,还能得到绝大部分的利益!其实这里面蕴含着递归的思想,它是解决许多问题(如汉诺塔问题,全排列问题,整数划分问题等)的有利手段。好了,看到这里,想必你一定在感慨:哎,还是做上司(等级高)好啊!且慢!问题还没有结束。

如果有更多的海盗

真实情况下海盗的数目肯定不止5个。继续按照这个逻辑推理,P6的决策将是:

( P6,P5,P4,P3,P2,P1 ) → ( 98,0,1,0,1,0 )

一直到P200,它会给自己留1个金币,同时给剩下所有偶数编号的海盗1个金币。

如果海盗数是201个,那么P201该怎么做呢?他好像没有足够的钱去贿赂别的海盗了。不过,为了保住自己的性命,他可以把自己手中的金币全分出去,即给每个奇数编号的海盗(P1~P199)一个金币。这样虽然空手而归,但不至于人财两空。

如果海盗数是202个,P202也只能把这100个金币全部贿赂给其他100个海盗,而这100个海盗必须是在P201做决策时什么也得不到的海盗。由于符合这样条件的海盗有101个(所有偶数编号的海盗+P201),P202的决策不再是唯一的!有101种方案供他选择。

可怜的是P203,由于人数众多,他实在没有足够的钱去贿赂其他海盗以获得足够的支持(他至少还需要获得101个人的支持,但只有100个金币)。所以,不论P203做什么决策,他都难逃被扔出船外的厄运了。不过P203并没有我们想象中的那么悲剧,除非船上正好有且只有203个海盗。不妨再来看增加一个海盗P204的情况。P204明白,P203现在的唯一愿望就是活下来…不论他做什么决策,P203都会举双手支持他(当然举多少手都只能算一

票)。所以P204可以靠他自己的一票,P203的一票和贿赂另外100个海盗获得正好50%的支持。

P205就没有那么幸运了。他不能无偿的得到P203和P204的支持。所以如果轮到P205

做决策,他也必定被扔到船外。P206也一样,尽管他能得到P205的免费支持,但是这还不够。P207需要得到至少104个海盗的支持,所以有了P205,P206的无偿支持还是不够。P208就比较幸运了,他需要得到104个海盗的支持,P205,P206,P207为了保命会无偿支持他,加上他自己,再贿赂100个海盗,正好104票。

到这里我们又看出了新的规律:

从P201之后,在每两个能够作出决策保住自己生命的海盗之间,存在着一些无论如何决策都会被扔到船外的海盗。而这些海盗会支持在这之后的那个能够做出决策的海盗以保命。用数学来表达,设在P201之后,能在轮到自己作决策时,保住性命的海盗编号所组成的序列为a(n)。我们有

a(0)=202 (1)

a(n)-a(n-1)+100= [a(n)/2] (2)

对于(2),

若a(n)是偶数,则a(n)=2a(n-1)-200

若a(n)是奇数,则a(n)=2a(n-1)-199

给定一个固定的初值,数列的下一项有两个可能解:一个奇数解、一个偶数解,且偶数解比奇数解小1。再考虑我们原问题的意义,当达到偶数解时,偶数编号的海盗已经能够做出决策保全自己。这说明我们应该舍弃所有奇数解(因为相同情况下,海盗会选择把决策人扔出船外)。

相关文档
最新文档