话说五个强盗抢得100枚金币,他们决定: 1、抽签决定各人的号码(1,2,3,4,5
);2、由1号提出分配方案,然后5人表决,当且仅当超过半数同意方案被通过,否则他将被扔入大海喂鲨鱼;3、1号死后,由2号提方案,4人表决,当且仅当超过半数同意时案通过,否则2号同样被扔入大海;4、依次类推……

假定“每个海盗都是很聪明的人,都能很理智的判断得失,从而做出选择”,那么“第一个海盗提出怎样的分配方案才能够使自己的收益最大化?” 据说,凡在20分钟答出此题的人有望在美国赚取8万以上的年薪,还有人干脆说这其实就是微软员工的入门测试题。希望拿到年薪8万或者进入微软的当然大有人在,猜题的人也就多如过江之鲫!可惜,大多数的答案均是错误的。

标准答案是:1号强盗分给3号1枚金币,4号或5号强盗2枚,独得97枚。分配方案可写成(97,0,1,2,0)或(97,0,1,0,2)。推理过程是这样的:从后向前推,如果1-3号强盗都喂了鲨鱼,只剩4号和5号的话,5号一定投反对票让4号喂鲨鱼,以独吞全部金币。所以,4号惟有支持3号才能保命。3号知道这一点,就会提(100,0,0)的分配方案,对4号、5号一毛不拔而将全部金币归为已有,因为他知道4号一无所获但还是会投赞成票,再加上自己一票他的方案即可通过。不过,2号推知到3号的方案,就会提出(98,0,1,1)的方案,即放弃3号,而给予4号和5号各一枚金币。由于该方案对于4号和5号来说比在3号分配时更为有利,他们将支持他而不希望他出局而由3号来分配。这样,2号将拿走98枚金币。不过, 2号的方案会被1号所洞悉,1号并将提出(97 ,0,1,2,0)或(97,0,1,0,2)的方案,即放弃2号,而给3号一枚金币,同时给4号(或5号)2枚金币。由于1号的这一方案对于3号和4号(或5号)来说,相比2号分配时更优,他们将投1号的赞成票,再加上1号自己的票,1号的方案可获通过,97枚金币可轻松落入囊中。这无疑是1号能够获取最大收益的方案了!

在搞理论的人看来,“强盗分金”其实是一个高度简化和抽象的模型(非数理模型),但无疑以现实为基础。在“强盗分金”模型中,任何“分配者”想让自己的方案获得通过的关键是事先考虑清楚 “挑战者”的分配方案是什么,并用最小的代价获取最大收益,拉拢“挑战者”分配方案中最不得意的人们。

想一想历朝历代的农民起义,想一想绵延起不断的宫廷斗争,想一想我们这个时代比比皆是的结盟与背叛,想一想企业内部的明争暗斗,想一想办公室脚下使绊的政治,哪一个得胜者不是采用的类似“强盗分金”的办法?为什么革命者总是找穷苦人,因为他们是最失意的人。为什么恐怖分子拉登在沙特阿拉伯没有市场,在阿富汗却大受欢迎,因为阿富汗是全球化的弃儿。为什么企业中的一把手,在搞内部人控制时,经常是抛开二号人物,而与会计和出纳们打得火热,难道不是因为公司里的小人物好收买,而二号人物却总是野心勃勃地想着取而代之……

还可以举出许许多多的例证来。比如,国际交易中的先发优势和后发劣势。1号看起来最有可能喂鲨鱼,但他牢牢地把握住先发优势,结果不但消除了死亡威胁,还收益最大。这不正是全球化过程中先进国家先发优势吗?而5号,看起来最安全,没有死亡的威胁,甚至还能坐收渔人之利。却因不得不看别人脸色行事而只能分得一小杯羹。这难道不是后发劣势的写照?可以预料,如果中国人总是处于5号位置,总是坐等别人制定规则,未来就不见得会比5号好到那里去!

走笔至此,不免脱口而出:强盗的逻辑原来竟是真实世界的内幕?!不过,且慢!“强盗分金”模型虽然是一个有益的智力测验,但应用于现实仍显粗糙不堪。现实世界相比精致模型要远为复杂。

首先,现实中肯定不会是人人都绝顶聪明兼“绝对理性”。回到“强盗分金“的模型中,只要3号,4号或5号中有一个人偏离了绝对聪明兼绝顶理性的假设,强盗1号保不准就会被扔到海里去了。所以,1号首先要考虑的就是他的强盗兄弟们的聪明和理性究竟靠得住靠不住,而断断不敢自取97颗金币,拼了性命去狂赌。

偏好和效用及其替代是另外的一个大问题。现实中人们是如此的复杂,某人的神经末稍
微偏离一毫,就可能表现得对金币满不在乎而偏偏喜欢看同伙被扔进海里喂鲨鱼。果真如此,1号自以为得计的方案岂成了自掘坟墓!

再就是俗话所说的“人心隔肚皮”。这翻译成经济学语言则是信息不对称。由于信息不对称,谎言和虚假承诺就大有用武之地,而阴谋也会象杂草般疯长,并借机获益。譬如,2号完全可以对3、4、5号大放烟幕弹,假称对于1号所提出任何分配方案,他一定会再多加上一个金币给他们。果真如此,结果又当如何?

还有比上述情形更复杂的。让我们试考虑分配规则变化的情形。通常,在现实世界中,人人都有自认的公平标准,因而时常会嘟嚷:“谁动了我的奶酪?”可以料想,一旦1号所提方案和其所想的不符合,就会有人大闹……当大家都闹将起来的时候,1号能拿着97枚金币毫发不损地、镇定自若地地走出去吗?最大的可能就是,强盗们会要求修改规则,然后重新分配。想一想第二战前的希特勒德国吧!

假如由一次博弈变成重复博弈呢?比如,大家讲清楚下次再得100枚金币时,先由2号强盗来分……然后是3号……这颇有点象美国总统选举,轮流主政。说白了,其实是民主制度下的分脏制。可能还会有比这更闹得凶的。比如,四人会想:1号居然要独得97枚金币,这还得了。于是,他们立即形成一个反1号的大联盟并制定出新规则:四人平分金币,独将1号扔进大海……

这便是阿Q式的革命理想:高举平均主义的旗帜,将富人扔进死亡深渊,睡吴妈的床……

无须更多讨论,我们或许能够同意:现实的确是太复杂了,“强盗分金”之类的好题目或可用于测试小孩智力,却难于照搬于现实。这就好象我们手里拿了一幅地图,却未必能找到回家的路一样。虽然,一幅比例尺为100:100的地图是无用的。但是,切不可以为在地图上画圆圈就如同真的在地球上打转转。

五个强盗分金币的问题分析(博弈论)相关推荐

  1. 三姬分金/四姬分金/五姬分金(海盗分金币)等经典博弈论问题

    题目: A.B.C三人分100枚金币,按顺序提议. 规则:提议未获得半数以上(不包括半数)通过,则提议人被处死. 假如你是A,你会怎么提? 从后往前推 如果只剩下B.C 无论B怎么提议,C都不会同意, ...

  2. Spreading the Wealth UVA - 11300 (分金币)(分析求中位数)

    题目意思 圆桌旁坐着n个人,每个人有一定数量的金币,金币总数能被n整除.每个人可以给他左右相邻的人一些金币,最终使得每个人的金币数目相等,你的任务是求出被转手的金币数量的最小值. 这道题乍看没有什么思 ...

  3. 智力题:5个强盗分100个金币

    本文用递归方法解决一个智力题.题目如下:5个强盗分100个金币,如果第一个人提出的分配方案得到半数以上(含半数)的人同意则执行,否则处死第一个人,再由第二个人提出方案,直到分配完成.第一个人提出怎样的 ...

  4. 海盗分金币 两种条件下的分析

    文章目录 海盗分金币 大于50%同意 大于等于50%同意 海盗分金币 有5个海盗,获得了100枚金币,于是他们要商量一个方法来分配金币.商议方式如下: 由5个海盗轮流提出分配方案. 如果超过半数海盗( ...

  5. 有趣的编程(一)——海盗分金币问题如何编程求解

    0. 写作目的 有趣的编程. 1. 问题描述 有n个海盗,分k个金币. 分配原则:依次从第一个人到最后一个人提出分配方法,只有当超过半数的人同意时,方案生效.如果该人提出的方案不能生效,则该人会被扔到 ...

  6. 5个强盗分100颗宝石

    5个海盗抢到了100颗宝石,每100颗宝石大小相同且价值连城,他们决定这么分: (1)抽签决定自己的号码(1.2.3.4.5). (2)首先,由1号提出分配方案,然后大家5人进行表决,当超过半数的人同 ...

  7. cogs 1430. [UVa 11300]分金币

    1430. [UVa 11300]分金币 ★☆   输入文件:Wealth.in   输出文件:Wealth.out   简单对比 时间限制:1 s   内存限制:256 MB [题目描述] 圆桌旁坐 ...

  8. WinSock五种I/O模型的性能分析

    原文地址:http://club.topsage.com/thread-735498-1-1.html 五种I/O模型的性能分析 重叠I/O模型的另外几个优点在于,微软针对重叠I/O模型提供了一些特有 ...

  9. 2014年第五届蓝桥杯C/C++ A组国赛 —— 第一题:海盗分金币

    标题:海盗分金币 有5个海盗,相约进行一次帆船比赛. 比赛中天气发生突变,他们被冲散了. 恰巧,他们都先后经过途中的一个无名的荒岛,并且每个人都信心满满,觉得自己是第一个经过该岛的人. 第一个人在沙滩 ...

最新文章

  1. DenseNet 测试
  2. Operating System Concepts--chap9 Memory Management;
  3. The “data“ option should be a function that returns a per-instance value in component definitions
  4. C++右值引用与转移语义
  5. Mysql 零距离-入门(六)数据唯一约束性
  6. golang 项目设置后台运行
  7. Android开发使用的常见第三方框架汇总
  8. 四川方言说唱《管我锤子事》
  9. routing zuul_金三银四跳槽季快到了:送上Spring cloud全家桶系列之Zuul
  10. php递归实现冒泡排序,排序算法之PHP版快速排序、冒泡排序
  11. 荣耀v30鸿蒙5g是什么版本,标配双模5G全国通手机 荣耀V30马上就要来了
  12. RedisTemplate 常用方法、序列化方式、基于 Redis 实现分布式锁
  13. 一:部署harbor镜像仓库
  14. c语言用指针升序降序,C语言函数序——升序降序.doc
  15. vi 编辑器的使用 笔记
  16. Windows窗口消息大全,全不全自己看
  17. Unity3D ——强大的跨平台3D游戏开发工具教程
  18. android switch 空间,android Android UI(Switch)详解
  19. 华为云-实时流计算服务CS
  20. 首个室温超导体问世,为了发现它,科学家用废了几十颗钻石 | Nature封面-1

热门文章

  1. 如何从外网访问校园内网
  2. springboot 相同类名但不同包,报错non-compatible bean definition of same name and class
  3. 【二十二】 H.266/VVC | 选择最优的仿射AMVP候选项 | xEstimateAffineAMVP函数
  4. BAP:PPP 带宽分配协议 BACP:PPP 带宽分配控制协议--网络大典
  5. 关于Python绘制柱状图等图形,以及数据拆分与合并详细讲解
  6. Unity CardboardSDK解析
  7. Excel数据透视表: GetPivotData
  8. 8 岁小学生B站教编程惊动苹果,库克亲自送生日祝福!
  9. php网页ico更改,favicon.ico图片该如何修改
  10. 2D 横向对抗射击游戏之美