首页
社区
课程
招聘
[转帖]海盗分金子问题
发表于: 2010-3-14 12:51 13741

[转帖]海盗分金子问题

2010-3-14 12:51
13741
海盗的难题
    数学的逻辑有时会导致看来十分怪异的结论。一般的规则是,如果逻辑
推理没有漏洞, 那么结论就必定站得住脚,即使它与你的直觉矛盾。 1998
年9月,加利福尼亚州帕洛阿 尔托的Stephen M. Omohundro寄给我一道难题,
它恰好就属于这一类。这难题已经流传 了至少十年,但是Omohundro对它作
了改动,使它的逻辑问题变得分外复杂了。
    先来看看此难题原先的形状。10名海盗抢得了窖藏的100块金子,并打算
瓜分这些战利 品。这是一些讲民主的海盗(当然是他们自己特有的民主),
他们的习惯是按下面的方式进行分配:最厉害的一名海盗提出分配方案,然
后所有的海盗(包括提出方案者本人)就此方案进行表决。如果50%或更多的
海盗赞同此方案,此方案就获得通过并据此分配战利品。否则提出方案的海
盗将被扔到海里,然后下提名最厉害的海盗又重复上述过程。
    所有的海盗都乐于看到他们的一位同伙被扔进海里,不过,如果让他们
选择的话,他们还是宁可得一笔现金。他们当然也不愿意自己被扔到海里。
所有的海盗都是有理性的,而且知道其他的海盗也是有理性的。此外,没有
两名海盗是同等厉害的——这些海盗按照完全由上到下的等级排好了座次,
并且每个人都清楚自己和其他所有人的等级。这些金块不能再分,也不允许
几名海盗共有金块,因为任何海盗都不相信他的同伙会遵守关于共享金块的
安排。这是一伙每人都只为自己打算的海盗。
    最凶的一名海盗应当提出什么样的分配方案才能使他获得最多的金子呢?
    为方便起见,我们按照这些海盗 那优 程度来给他们编号。最怯懦的海
盗为1号海盗,次怯懦的海盗为2号海盗,如此类推。这样最厉害的海盗就应
当得到最大的编号,而方案的提出就将倒过来从上至下地进行。
    分析所有这类策略游戏的奥妙就在于应当从结尾出发倒推回去。游戏结
束时,你容易知道何种决策有利而何种决策不利。确定了这一点后,你就可
以把它用到倒数第2次决策上,如此类推。如果从游戏的开头出发进行分析,
那是走不了多远的。其原因在于,所有的战略决策都是要确定:“如果我这
样做,那么下一个人会怎样做?” 因此在你以下海盗所做的决定对你来说是
重要的,而在你之前的海盗所做的决定并不重要,因为你反正对这些决定也
无能为力了。
    记住了这一点,就可以知道我们的出发点应当是游戏进行到只剩两名海
盗——即1号和2号——的时候。这时最厉害的海盗是2号,而他的最佳分配方
案是一目了然的:100块金子全归他一人所有,1号海盗什么也得不到。由于
他自己肯定为这个方案投赞成票,这样就占了总数的50%,因此方案获得通过。
现在加上3号海盗。1号海盗知道,如果3号的方案被否决,那么最后将只剩2
个海盗,而1号将肯定一无所获——此外,3号也明白1号了解这一形势。因此,
只要3号的分配方案,给1号一点甜头使他不至于空手而归,那么不论3号提出
什么样的分配方案,1号都将投赞成票。因此3号需要分出尽可能少的一点金子
来贿赂1号海盗,这样就有了下面的分配方案: 3号海盗分得99块金子,2号海
盗一无所获,1号海盗得1块金子。4号海盗的策略也差不多。他需要有50%的支
持票,因此同3号一样也需再找一人做同党。他可以给同党的最低贿赂是1块金
子,而他可以用这块金子来收买2号海盗。因为如果4号被否决而3号得以通过,
则2号将一文不名。因此,4号的分配方案应是:99块金子归自己,3号一块也
得不到,2号得1块金子,1号也是一块也得不到。5号海盗的策略稍有不同。他
需要收买另两名海盗,因此至少得用2块金子来贿赂,才能使自己的方案得到
采纳。他的分配方案应该是:98块金子归自己,1块金子给3号,1块金子给1号。
    这一分析过程可以照着上述思路继续进行下去。每个分配方案都是唯一确
定的,它可以使提出该方案的海盗获得尽可能多的金子,同时又保证该方案肯
定能通过。照这一模式进行下去,10号海盗提出的方案将是96块金子归他所有,
其他编号为偶数的海盗各得1 块金子,而编号为奇数的海盗则什么也得不到。
这就解决了10名海盗的分配难题。
    Omohundro的贡献是他把这一问题扩大到有500名海盗的情形,即500名海
盗瓜分100块金子。显然,类似的规律依然成立——至少是在一定范围内成立。
事实上,前面所述的规律直到第200号海盗都成立。 200号海盗的方案将是:
从1到199号的所有奇数号的海盗都将一无所获,而从2到198号的所有偶数号
海盗将各得1块金子,剩下的1块金子归200号海盗自己所有。
    乍看起来,这一论证方法到200号之后将不再适用了,因为201号拿不出更
多的金子来收买其他海盗。但是即使分不到金子,201号至少还希望自己不会
被扔进海里,因此他可以这样分配:给1到199号的所有奇数号海盗每人1块金
子,自己一块也不要。202号海盗同样别无选择,只能一块金子都不要了——
他必须把这100块金子全部用来收买100名海盗,而且这100名海盗还必须是那
些按照201号方案将一无所获的人。
    由于这样的海盗有101名,因此202号的方案将不再是唯一的——贿赂方案
有101种。203号海盗必须获得102张赞成票,但他显然没有足够的金子去收买
101名同伙。因此,无论提出什么样的分配方案,他都注定会被扔到海里去喂
鱼。不过,尽管203号命中注定死路一条,但并不是说他在游戏进程中不起任
何作用。相反,204号现在知道,203号为了能保住性命,就必须避免由他自
己来提出分配方案这么一种局面,所以无论204号海盗提出什么样的方案,203
号都一定会投赞成票。这样204号海盗总算 男 拣到一条命:他可以得到他自
己的1票、203号的1票、以及另外100名收买的海盗的赞成票,刚好达到保命所
需的50%。获得金子的海盗,必属于根据202号方案肯定将一无所获的那101名
海盗之列。
    205号海盗的命运又如何呢?他可没有这样走运了。他不能指望203号和
204号支持他的方案,因为如果他们投票反对205号方案,就可以 以掷 祸地
看到205号被扔到海里去喂鱼,而他们自己的性命却仍然能够保全。这样,无
论205号海盗提出什么方案都必死无疑。
    206号海盗也是如此——他肯定可以得到205号的支持,但这不足以救他
一命。类似地,207号海盗需要104张赞成票——除了他收买的100张赞成票以
及他自己的1张赞成票之外,他还需3张赞成票才能免于一死。他可以获得205
号和206号的支持,但还差一张票却是无论如何也弄不到了,因此207号海盗
的命运也是下海喂鱼。
    208号又时来运转了。他需要104张赞成票,而205、206、207号都会支持
他,加上他自己一票及收买的100票,他得以过关保命。获得他贿赂的必属于
那些根据204号方案肯定将一无所获的人(候选人包括2到200号中所有偶数号
的海盗、以及201、203、204 号)。
    现在可以看出一条新的、此后将一直有效的规律:那些方案能过关的海盗
(他们的分配方案全都是把金子用来收买100名同伙而自己一点都得不到)相
隔的距离越来越远,而在他们之间的海盗则无论提什么样的方案都会被扔进海
号都一定会投赞成票。这样204号海盗总算 男 拣到一条命:他可以得到他自
己的1票、203号的1票、以及另外100名收买的海盗的赞成票,刚好达到保命所
需的50%。获得金子的海盗,必属于根据202号方案肯定将一无所获的那101名
海盗之列。
    205号海盗的命运又如何呢?他可没有这样走运了。他不能指望203号和
204号支持他的方案,因为如果他们投票反对205号方案,就可以 以掷 祸地
看到205号被扔到海里去喂鱼,而他们自己的性命却仍然能够保全。这样,无
论205号海盗提出什么方案都必死无疑。
    206号海盗也是如此——他肯定可以得到205号的支持,但这不足以救他
一命。类似地,207号海盗需要104张赞成票——除了他收买的100张赞成票以
及他自己的1张赞成票之外,他还需3张赞成票才能免于一死。他可以获得205
号和206号的支持,但还差一张票却是无论如何也弄不到了,因此207号海盗
的命运也是下海喂鱼。
    208号又时来运转了。他需要104张赞成票,而205、206、207号都会支持
他,加上他自己一票及收买的100票,他得以过关保命。获得他贿赂的必属于
那些根据204号方案肯定将一无所获的人(候选人包括2到200号中所有偶数号
的海盗、以及201、203、204 号)。
    现在可以看出一条新的、此后将一直有效的规律:那些方案能过关的海盗
(他们的分配方案全都是把金子用来收买100名同伙而自己一点都得不到)相
隔的距离越来越远,而在他们之间的海盗则无论提什么样的方案都会被扔进海
里——因此为了保命,他们必会投票支持比他们厉害的海盗提出的任何分配方
案。得以避免葬身鱼腹的海盗包括201、202、204、208、216、232、264、328、
456号,即其号码等于200加2的某一方幂的海盗。
    现在我们来看看哪些海盗是获得贿赂的幸运儿。分配贿赂的方法是不唯一
的,其中一种方法是让201号海盗把贿赂分给1到199号的所有奇数编号的海盗,
让202号分给2到200号的所有偶数编号的海盗,然后是让204号贿赂奇数编号的
海盗,208号贿赂偶数编号的海盗,如此类推,也就是轮流贿赂奇数编号和偶
数编号的海盗。
    现在我们来看看哪些海盗是获得贿赂的幸运儿。分配贿赂的方法是不唯一
的,其中一种方法是让201号海盗把贿赂分给1到199号的所有奇数编号的海盗,
让202号分给2到200号的所有偶数编号的海盗,然后是让204号贿赂奇数编号的
海盗,208号贿赂偶数编号的海盗,如此类推,也就是轮流贿赂奇数编号和偶
数编号的海盗。
    结论是:当500名海盗运用最优策略来瓜分金子时,头44名海盗必死无疑,
而456号海盗则给从1到199号中所有奇数编号的海盗每人分1块金子,问题就解
决了。由于这些海盗所实行的那种民主制度,他们的事情就搞成了最厉害的一
批海盗多半都是下海喂鱼,不过有时他们也会觉得自己很幸运——虽然分不到
抢来的金子,但总可以免于一死。只有最怯懦的200名海盗有可能分得一份脏
物,而他们之中又只有一半的人能真正得到一块金子,的确是怯懦者继承财富。
    结论是:当500名海盗运用最优策略来瓜分金子时,头44名海盗必死无疑,
而456号海盗则给从1到199号中所有奇数编号的海盗每人分1块金子,问题就解
决了。由于这些海盗所实行的那种民主制度,他们的事情就搞成了最厉害的一
批海盗多半都是下海喂鱼,不过有时他们也会觉得自己很幸运——虽然分不到
抢来的金子,但总可以免于一死。只有最怯懦的200名海盗有可能分得一份脏
物,而他们之中又只有一半的人能真正得到一块金子,的确是怯懦者继承财富。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 391
活跃值: (717)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
2
这个东西好像老钱第一阶段有讲!
博弈论,如果觉得问题太复杂,可以把问题化为简单一点.
只有5个海盗,要分100两金子!
我们从最后一个海盗分析,因为他后面没有人了,只要到他这些,金子就全是他的了,所以前面无论谁发表什么意见,他都会反对!
第四个人知道,无论他说什么,第五个人都会反对,所以他尽量不要轮到自己发表,所以前面的人无论说什么,他都会同意!
第三个人知道第四第五个人的想法,所以无论前面的人说什么,他一直反对.
而第二个人知道他们的想法,无论他说什么,三和五都会反对,所以无论第一个提出什么,他都会支持,
为了追求意义极大化,第一个提出全部金子归他所有,二和四同意,再加上自己的一票,60%通过!
2010-3-14 12:52
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
有点明白这个问题~~
2011-3-29 01:39
0
雪    币: 37
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
博弈论,博大精深!你们慢慢研究
2011-3-30 14:15
0
雪    币: 429
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
奇总说的稍微有点错误,因为这些海盗都是聪明绝顶的,他们当然会推论出根据情况变化利益分配所产生的变化,应该是这样的:
1号海盗分给3号1枚金币,4号或5号2枚金币,自己则独得97枚金币,即分配方案为(97,0,1,2,0)或(97,0,1,0,2)。现来看如下各人的理性分析:
首先从5号海盗开始,因为他是最安全的,没有被扔下大海的风险,因此他的策略也最为简单,即最好前面的人全都死光光,那么他就可以独得这100枚金币了。
接下来看4号,他的生存机会完全取决于前面还有人存活着,因为如果1号到3号的海盗全都喂了鲨鱼,那么在只剩4号与5号的情况下,不管4号提出怎样的分配方案,5号一定都会投反对票来让4号去喂鲨鱼,以独吞全部的金币。哪怕4号为了保命而讨好5号,提出(0,100)这样的方案让5号独占金币,但是5号还有可能觉得留着4号有危险,而投票反对以让其喂鲨鱼。因此理性的4号是不应该冒这样的风险,把存活的希望寄托在5号的随机选择上的,他惟有支持3号才能绝对保证自身的性命。
再来看3号,他经过上述的逻辑推理之后,就会提出(100,0,0)这样的分配方案,因为他知道4号哪怕一无所获,也还是会无条件的支持他而投赞成票的,那么再加上自己的1票就可以使他稳获这100金币了。
但是,2号也经过推理得知了3号的分配方案,那么他就会提出(98,0,1,1)的方案。因为这个方案相对于3号的分配方案,4号和5号至少可以获得1枚金币,理性的4号和5号自然会觉得此方案对他们来说更有利而支持2号,不希望2号出局而由3号来进行分配。这样,2号就可以屁颠屁颠的拿走98枚金币了。
不幸的是,1号海盗更不是省油的灯,经过一番推理之后也洞悉了2号的分配方案。他将采取的策略是放弃2号,而给3号1枚金币,同时给4号或5号2枚金币,即提出(97,0,1,2,0)或(97,0,1,0,2)的分配方案。由于1号的分配方案对于3号与4号或5号来说,相比2号的方案可以获得更多的利益,那么他们将会投票支持1号,再加上1号自身的1票,97枚金币就可轻松落入1号的腰包了
2011-6-3 11:14
0
雪    币: 391
活跃值: (717)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
6
最凶的一名海盗应当提出什么样的分配方案才能使他获得最多的金子呢?
2011-6-29 12:35
0
雪    币: 142
活跃值: (121)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
都说方案是最凶的人提出的还有什么好讨论的,都归自己,谁反对试试!!
2016-1-10 05:57
0
雪    币: 7
活跃值: (353)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
8
解决这个问题的关键在于客观性思维,不能纯粹YY,比如“民主的海盗”,"最厉害的一名海盗","使他获得最多的金子","没有两名海盗是同等厉害的"。那么说明最厉害的一名海盗一定要给出方案。
2017-3-9 09:36
0
游客
登录 | 注册 方可回帖
返回
//