通常来说,公平的切蛋糕问题是假设所有参与者同时获得其份额。但是,在许多情况下,玩家会逐渐到达。例如,我们可以将蛋糕分配给玩家,但随后有一位新玩家到达并想要分享。
通常,公平蛋糕的划分需要付出很多努力(例如,要求玩家回答许多查询),尤其是当玩家人数众多时。
是否可以在播放器上使用蛋糕的现有划分,以便以最少的额外工作(即,与从头开始重新分配蛋糕相比要少的精力)将蛋糕划分为播放器?n + 1
通常来说,公平的切蛋糕问题是假设所有参与者同时获得其份额。但是,在许多情况下,玩家会逐渐到达。例如,我们可以将蛋糕分配给玩家,但随后有一位新玩家到达并想要分享。
通常,公平蛋糕的划分需要付出很多努力(例如,要求玩家回答许多查询),尤其是当玩家人数众多时。
是否可以在播放器上使用蛋糕的现有划分,以便以最少的额外工作(即,与从头开始重新分配蛋糕相比要少的精力)将蛋糕划分为播放器?n + 1
Answers:
我会先说我无法为您的问题提供一个很好的答案(我想您可能会从中获得一份研究论文),但是我认为我可以通过正式定义问题并指出问题所在来提供帮助困难所在。
背景。让我清楚地说明切蛋糕的模型。我们希望在玩家之间划分间隔。每个玩家在蛋糕的子集上具有评估函数。我们将假定此函数是一种概率度量;它是非负数和加法的(对于不相交的,)和。解决该问题的方法是查询球员并分配时间间隔的部分的协议或算法。请注意,玩家可能会误报/撒谎。Ñ 我v 我(小号)小号甲,乙⊆ [ 0 ,1 ] v 我(甲∪ 乙)= v 我(甲)+ v 我(乙)v 我([ 0 ,1 ] )= 1
有些论文会有更具体的限制。例如,评估函数是连续的,分段线性的或分段常数的。
让分配给玩家的棋子为。我们经常需要协议的以下属性:
注意,羡慕自由意味着相称。
我们可能还需要“操作”属性,例如切成小段,多项式运行时间(或者实际上是可计算性/可构造性-我们不想使用选择公理来选择蛋糕的一个子集! ), 等等。
具体问题要问。两个笔记。首先,您对问题的任何答案都将解决一般性问题:首先将整个蛋糕交给玩家,然后让其他玩家上网并迭代地应用此协议。因此,我们应该期望这个问题比我们应用的标准切蛋糕设置更难。
其次,我们始终可以通过从所有人手中收回整个蛋糕并使用已知算法从头重新分发蛋糕来解决您的问题。所以问题是,是否有一种更优雅的方法可以做到这一点。我认为量化这一点的一种好方法是“何时重新分配比从头开始需要更少的时间或更少的削减;和/或玩家何时才能保留其当前片段的很大一部分?”
我怀疑这很难。原因是找到一个令人羡慕的,有效的分配已经是一个难题。据我所知,已知的协议可能需要无限制地削减蛋糕数量,而且非常复杂。(请参阅Brams和Taylor,《羡慕的蛋糕分部协议》,1995年。)因此,没有什么比使用Brams-Taylor 将整个蛋糕从所有人手中拿回并重新分配给代理商更好的了。
我认为这仍然很困难(尽管更可行)。考虑以下情况:每个玩家均值蛋糕,每个玩家都有大小的筹码。然后,无论新玩家做什么,都需要所有人之间进行改组。这是另一种不好的情况:假设玩家的分片估值为正好,但玩家的分片的估价为。假设玩家将自己的分片值精确地定为,但玩家的分片的值定为,依此类推,玩家将自己的分片的值定为,玩家的分片。在1 1 / n 2 (n − 1 )2 1 / n 3 (n − 1 )/ n n 1 / n 1 (n − 1 )/ n 2 1 3 2。现在新玩家到了。无论新玩家想要什么,您的协议最终都将不得不重新排列从玩家到玩家,从玩家到玩家等的内容。
一个参考文献可能是Walsh,《在线蛋糕切割》,《算法决策理论2011》(pdf链接)。但是我认为该论文假设我们提前知道了到达的特工人数,并假设必须在球员离开时(协议结束之前)准确分配一个球员,所以这实际上不适用于您的问题。
重新分配保持比例性的比例分配的一种方法如下。让当前的玩家中的每位将自己分配的蛋糕切成他自己同样重视的张。玩家,现在会选择最好的一块,据他介绍,从每个的玩家的削减。很容易看出,结果分配也是成比例的。n + 1 n + 1 n
假定蛋糕/区域是一个圆半径。然后,我们可以通过标准的蛋糕切割来创建 公平的片断,从而为每个玩家分配。然后,我们可以在第个围绕中心的小圆圈上分配一个环,随后新的玩家在该环附近(内圈的吞没部分)响起,依此类推。这样,每个玩家都会获得一个连续的棋子/剧情,对于前玩家,游戏将以单调的方式缩小,并在随后加入的玩家朝中心移动。ř Ñ π - [R 2(n+1)n+1
计算数字很简单;对于第一个新玩家,只需解决
得到他的情节的半径。第二,解决
获得两个新玩家的(外部)半径,依此类推。似乎玩家加入了其他玩家 之后,其外半径,但我没有证明这一点。ř 我 = - [R √ ķ
这是和:ķ = 0 ,1 ,2 ,3
[ 来源 ]
同样的想法适用于具有边的常规多边形。如果您假设矩形为基本形式,则可以通过分配前相等大小的列和随后的玩家行(从一侧开始)来做类似的事情。n