今天处座要请Gamma Lab的小哥哥
来解密经典的“海盗分金”问题
究竟如何解答
让小哥哥帮你打开思路吧~
HI,屏幕前的童鞋大家好,我是火车嘟嘟嘟,先让我们来一起看看题目。
有五个理性且聪明的海盗,准备分配100个金币。
海盗世界的分配原则是:
等级最高的海盗提出一种分配方案;
所有的海盗投票决定是否通过分配方案,包括提议人;
如果票数超过半数,则提议通过;
提议通过,海盗们按照提议分配金币。
提议没有通过,提议者将被扔出船外,
然后由下一个最高职位的海盗提出新的分配方案。
假设你是等级最高的海盗,你最多能拿多少金币?
首先,分享一下我的答案:
作为1号海盗,我只需要半数同意我的分配方案,即我只需要考虑四个人中任意两个人的感受。
肯定是他们拿到的利益比我多的时候
会同意我的建议。所以我给任意两个人给他们34金,我自己那32金。自然会同意我的提案。
这个答案并不是最优解!
给他们的金币比我多的时候,他们一定会接受我的提议。但是有没有能够拿到更多金币的方案呢?
当然是有的!
为了详细解释海盗分金问题,我们先思考一个简化版的海盗分金问题——最后通牒问题!
最后通牒问题是指2个海盗分100金币,其中一名提议者向另一名响应者提出一种分配资源的方案,如果响应者同意这一方案,则按照这种方案进行资源分配;如果不同意,则两人都会什么都得不到。
理性的人是怎么分这个金的呢?
一定是——
按照理性人假设,只要提议者将少量资源分配给响应者,响应者就会同意。因为有总比没有强。
如果二人是感性人,他会考虑这个龟儿子分这么少,一定会鱼死网破。
所以,我们一定要记住这个结论:
有总比没有强。
现在我们来看一下正确答案——
海盗1、2、3、4、5号的分配方案分别是:
[97,0,1,2,0]
或者[97,0,1,0,2]
(注:下文都利用list的形式表示分配方案)
这个答案是怎么来的呢?
作为1号海盗,我们首先想到的是保住性命,其次拿最多的钱。既然我们是这样想的,那其他海盗肯定也是这么想的。所以当我们只关注自己的生死问题时,也应该关心别人的处境。
而分析问题的时候,肯定是海盗越少的时候,问题越简单的。所以我们采用倒序的方式来思考。
坐上时光机,穿越时空。
所以先穿越到1、2、3号海盗都被喂鱼了,只剩4、5号海盗的时候。4号正在提出自己的方案。
5号是个聪明人,此时5号的心理活动是:
不管4号提出怎样的方案,我都反对,这样同意与反对的比为1:1,同意票没有超过半数,4号被喂鱼,我拿走全部的金币。
然后穿越到,1、2号海盗都被喂鱼了,只剩3、4、5号海盗的时候。3号正在提出自己的方案。
4号是个聪明人,他已经洞悉了5号的心理活动,此时4号的心理活动是:
我
一定要让3号的方案通过。只有3号的方案通过,我才没有性命之忧。所以在3号提出方案时,我一定要无脑支持,这样同意与反对的比为2:1。
3号是个聪明人,他已经洞悉了4号的心理活动,此时3号的心理活动是:
4号无脑支持我,我提什么样的方案都一定通过,所以我会提出最不要脸的[100,0,0]的方案。我此时没有性命之忧,我要让我自己的利益最大化。我很期待1号和2号被喂鱼,自己独吞100金币。
再穿越到,1号海盗都被喂鱼了,只剩2、3、4、5号海盗的时候。2号正在提出自己的方案。
而2号是个聪明人,他已经洞悉了3号的心理活动,此时2号的心理活动是:我
知道4、5号都拿不到金币,此时贿赂一下4号和5号,让他们支持我,表决结果为3:1,提议通过。本着有总比没有强的思想,我只需要给4、5号一人1个金币,他们就会支持我,所以我的方案是[98,0,1,1]。1号赶紧被喂鱼,我自己拿到98金币,美滋滋!
最后回到现实。我要提出自己的方案。
作为1号海盗,我也是个聪明人,我已经洞悉了2号的心理活动,此时我的心理活动是:
我也要通过贿赂,找到2个支持我的人。如果3号知道2号的方案为[98,0,1,1],自己拿不到金币,那我给他1金币,他就自然会支持我;在4和5号之间随便多给1金,这样4或者5号多拿一个金币,他肯定支持我的更好的方案。所以是我的方案是[97,0,1,2,0]或者[97,0,1,0,2]。
1号海盗就这样拿走了97个金币!
我们返回到2号的[98, 0, 1, 1]的方案,这个方案合理吗?是唯一解吗?为什么不可以是[98,1,0,1]或者[98,1,1,0]?
如果3号知道2号的方案,自己拿不到金币,那2号给他金币,可以让他支持自己。这样方案会是[98,1,1,0]或者[98,1,0,1]。这样3号会同意吗?
当然不!只要3号不支持2号,3号就有机会获得100金币,所以一点小恩小惠是不会让3号支持你的。所以不如给4,5号1金币,他们就会无脑支持你。
如果3号想到自己最终只拿到1个金币,他会放弃他[100,0,0]的方案,给4,5号更多的钱来让他们反对1和2号吗?
我想说的是,这些人都是聪明人,虽然3号会想到1,2号的想法,自己最后只拿了1金币,他会想分配更多的金币给4,5号,让他们反对1,2号。
但是4,5号会相信3号的这种想法吗?如果4,5号想到3号会多分配金币给他们,让他们反对1,2号,如果4,5号真的做了,等到3号提方案的时候,3号一定会提[100,0,0]的方案。
以保命再拿钱的前提下,同意[97,0,1,0,2]或者[97,0,1,2,0]是最保险的方法。
记住他们都是聪明人,如果但凡谁不按套路出牌,有希望拿到更多金币这种贪婪的想法,就会有拿到更少或者丧命的危险。
当我反思这个问题,我发现一个小小的BUG。
他们既然有等级森严的制度,当真的只剩下4、5号海盗的时候,4号真的会因为票数不超过半数,乖乖地跳下海吗?
在我的理解中,海盗是一定被迫扔下海的。海盗被喂鱼是其余海盗合力做到的。所以理论上提议者的实力应该低于剩余海盗的实力之和。
当只剩4和5号的时候是个例外,因为实力决定地位,理论上4号的实力应该高于5号。所以当只剩4、5号时,更有实力的4号一定会用自己实力压迫5号,把钱都上交。
所以考虑实力因素后,在原来的基础上,4号和5号的处境互换,并对之后的逻辑推理并不产生影响。
所以这个所谓的小BUG并不影响最后的结果。
对于这道题目的背景,我十分好奇,所以进行了一系列的遐想。
为什么这样的分金的规则会出现,这么“不公平”的分金规则为什么会被其他4个聪明人通过?
我想到的合理解释是:作为最有实力的1号海盗,左屠龙,右倚天,身披998黄金战甲,镶满999南非钻石。带着4个小弟刷副本。
1号海盗作为大哥作为主力输出,即是肉盾爸爸,又是奶水妈妈。不依靠1号海盗大哥,其余4个海盗肯定是无法通过副本的,也拿不到这100金币,所以他们需要1号海盗。所以只分到一点利益,本着有总比没有强的原则,他们理应接受这个“不公平”的规则。
而作为1号海盗的大哥,只给小弟这些钱,他的良心不会痛吗?不懂得可持续发展吗?
我想到的合理解释是:这些小弟应该是临时找到的,队伍是临时组建的,俗称野队。即使这些人因心中不满,解散队伍。1号海盗大哥有实力,可以轻松找到新的小弟。所以,他根本不需要考虑他们的感受。
所以,总的来说:
Q.E.D!海盗分金问题到这里,解答完毕!
如果Gamma Lab的人拿到了100金币,他们又会是怎样分金呢?
GammaLab的分配原则是:
5个GammaLab成员每人给出一个0到100之间的数字,
将5个人所给出的所有数字计算平均值,再计算平均值的2/3。
5个人中,给出的数字最接近计算结果的人将会是获胜者,获得所有的金币。
五位小伙伴是怎么思考这个问题的呢?