三个极度自私的人分一个蛋糕,采用什么策略,能让三人都觉得公平?
所谓「三人都满意」,数学上有多种可能的涵义,常用的两种是:
- 公平:三人都认为自己的一份不少于 1/3
- 无怨:三人都不觉得别人拿得比自己多 Envy-free
无怨一定公平,但是公平不一定无怨。
一、公平
「公平」的切法要简单一些,这里有一个很通俗的介绍:MathematicsIn Europe,波兰数学家们做了很大贡献。针对 n 人的一般公平程序如下(Banachand Knaster 提出):
- 先排好顺序。
- 第一个人切出他认为的 1/n。
- 按顺序,每个人都判断一下,这一份是不是太大。是的话就削掉一点并进原来的蛋糕,不是的话跳过。
- 所有人都判断过后,这一块给最后削过蛋糕的那位;如果没有人削过蛋糕,这块给第一个人。
- 重复 2-4,直至最后剩两人,用我切你选的方式决定。
二、无怨
1、三人分蛋糕
1) 连续解
daniel 的答案是一种「走刀程序moving-knife procedure」。真正达到「无怨」的 走刀程序 见 Stromquistmoving-knife procedure,80 年代由 Stromquist 提出。
需要一个裁判,从左向右走刀,三人拿着刀站在裁判右边,保持在平分右边蛋糕的位置(按各自标准)。一旦三人中有一个喊「切」,此人获得裁判左边的蛋糕。然后三人中位于中间位置的那位(B)把刀切下。没蛋糕的两位中,离裁判近的那位获得中间那块,远的那位获得右边那块。
容易证明,三人都认为自己的那份最大。
走刀程序的坏处是连续,假设了两人同时叫停的概率为零,假设了蛋糕无限可分,现实中不好操作。
2) 离散解
一个离散程序是 Selfridge60 年代由 Selfridge 提出,90 年代由 Conway 独立提出并发表。
- A 按照自己的标准把蛋糕切三块
- 如果 B 认为最大的两块一样大,那么把 C,B,A 的顺序选蛋糕,结束。
- 如果 B 认为其中一块 M 最大,他就从 M 削去一小块 R,使之与第二大的那块一样大,把 R 放在一边。
- C 先选。如果 C 没有选 M,那么 B 必须选 M,否则一切正常,A 拿最后一块。
- B 和 C 中没拿 M 的那位,把 R 分成三份,让 B 和 C 中拿了 M 的那位先挑一份,然后 A 选一份,最后一份留给自己。结束。
可以证明,三人都认为自己的那一份最大。
2、四人分蛋糕
1)连续解
首先需要一个引论,Austin'sprocedure for two partners and general fractions
这个引论声明了一种将蛋糕分成k份,且两个人均认为每份为1/k
步骤如下:
-- 首先证明K=2的情况
- A拿着两把平行放置的刀,从蛋糕的最左边往最右边移动,要求保持两把刀中间的部分A始终认为是1/2
- 在A移动的过程中,一旦B认为两把刀中间的部分为1/2,则喊停,A将两把刀切下
容易证明两刀之间的部分和剩下的部分,A和B均认为是1/2
至于为什么B一定会喊停,因为A从最左边移动到最右边是一个连续的过程,而最左边的部分和最右边的部分在B眼中必是一个大于1/2,一个小于1/2,故连续的过程中一定会经过一个等于1/2.
-- 证明K的情况
- A将蛋糕K等分
- 若有一块B认为其等于1/k,则去掉这一块,剩下的蛋糕退化为k-1的情况
- 若2不成立,则B眼中必有一块大于1/k,一块小于1/k,将这两块放在一起,用k=2的走刀程序,必可以得到一块A、B都认同的1/k大小的蛋糕,将其去掉,再次退化为k-1的情况
- 利用数学归纳法可将k退化至k=2的情况,完成
下面就是四人无怨走刀程序
- 首先A、B使用Austin程序把蛋糕分成四等分
- C将其认为最大的那块进行切割,使得其与第二大的一样多,切到的那块设其为X(若C认为有两块同样为最大,则不做切割)
- 按照D、C、B、A的顺序来选分好的四块蛋糕,要求D或C必须将切割的那块选走。此时所有人都无怨
- 下面来分割X,假设第3步中C拿走了切割的那块,那么接下来由D、A来使用Austin程序将X分为四等分。
- 按照C、B、D、A的顺序来选X分成的四份蛋糕
可以证明,四人此时无怨
2)离散解
见N人分离散解
3、N人分蛋糕
1)连续解
实际上对Austin方法进行推广,可以得到一个N人走刀程序
- 首先A1和A2用Austin程序将蛋糕二等分,且各取一块
- 接着A3分别对A1、A2将其所拿的蛋糕进行1/3等分,兵分别拿走A1的1/3和A2的1/3,这时三个人都认为拿到了总蛋糕的1/3.
- 递归下去直到第N个人,完成
2)离散解
多人无怨分割的离散程序,1995 年由Brams and Taylor 提出,但是需要切的次数可能无上界,因此应该说尚未完满解决。
这篇博客探讨了如何公平且无怨地将蛋糕分配给三到N个人。介绍了Banach和Knaster的公平切法,以及Stromquist的无怨走刀程序。对于连续解,包括了Austins的程序,而对于离散解,提到了Selfridge和Conway的方案。这些数学方法确保每个人都能得到满意的一份。
565

被折叠的 条评论
为什么被折叠?



