海盗问题

版权声明:你今天的气质包含了曾经走过的路 读过的书和爱过的人 https://blog.csdn.net/yeiweilan/article/details/86626107

题目:

有5个海盗,获得了100枚金币,于是他们要商量一个方法来分配金币。商议方式如下:
1. 由5个海盗轮流提出分配方案。
2. 如果超过半数海盗(包括提出者)同意该方案,则按照该方案分配。
3. 如果同意该方案的人数(包括提出者)小于等于半数,则提出者要被扔到海里喂鱼,剩下的海盗继续商议分配。
4. 海盗们都是绝对理性的,以自己尽可能多获得金币为目的。但是在收益相等的情况下,会倾向把提出者扔到海里。

问:第一个海盗应该提出怎样的分配方案,才能保证自己既不被扔到海里,又能使自己利益最大化?

举例说明:

当第一个海盗来提议分配方案,他说:
我要100枚金币,你们其他人一个金币也没有!
显然,其他小伙伴一致反对,结果第一个提出者被扔到了海里。

接下来轮到第二个海盗提出分配方案,他说:
我只要1个金币,剩下3个小伙伴每人33个金币!

第三个海盗反对,剩下两个小伙伴同意,同意者超过了半数(4 : 1),于是按照这个方法执行了分配。但是,第二个海盗就不是利益最大获得者。

答案

97 0 1 2 0或97 0 1 0 2

分析(递归思想)

后文把五个海盗简称为A、B、C、D、E

A在提出分配方案的时候,不妨这样思考:
如果我被扔到海里了,剩下4个海盗,此时B的最优分配方案是什么呢?
我只要在B的分配方案上稍微增加一点,就能赢得更多的支持。

B在提出分配方案的时候,也会这样思考:
如果我被扔到海里了,剩下3个海盗,此时C的最优分配方案是什么呢?
我只要在C的分配方案上稍微增加一点,就能赢得更多的支持。
。。。。
整个递归过程,
这个递归过程到什么时候截止呢?剩下两个人为止。

想想看,当剩下两个人的时候,是什么情形?

此时D没有任何选择!无论他如何分配,哪怕把100枚金币都给E,E仍然可以反对,导致D被扔到海里,金币全归E所有。
由此,C心想:D没有最优决策,所以无论我提出什么要求,D都一定会同意,而E一定不同意。

由于只要超过半数同意就可以执行分配,所以C的最优策略如下:100, 0 , 0
接下来,B暗自寻思:如果没有我,C能获得100枚金币,所以无论如何不会同意我。但我可以设法“笼络”D和E,形成 3 : 1 的局面。

在C的“淫威”下,他们原本一个金币都得不到。我给他们一人一枚金币,好过由C来分配,所以他们肯定会同意。
因此,B的最优策略如下:98, 0, 1, 1
终于轮到A了,A心里琢磨:如果没有我,B能获得98枚金币,我总不能分给他多于98枚,索性放弃他,只要剩下三人中笼络到两人,形成 3 : 2 的局面即可。

要笼络谁呢?以B的策略,C得不到金币,所以C最好“伺候”。我给C1枚,C一定同意。

至于D和E,本来可以得到1枚,所以我必须比B给的多,才能赢得支持。但我又没必要同时笼络他俩,要么给D两枚金币,放弃E,要么给E两枚金币,放弃D。

因此,A的最优策略如下:97 0 1 2 0或97 0 1 0 2

猜你喜欢

转载自blog.csdn.net/yeiweilan/article/details/86626107
今日推荐