Efficient cake-cutting is a problem in economics and computer science. It involves a heterogeneous resource, such as a cake with different toppings or a land with different coverings, that is assumed to be divisible - it is possible to cut arbitrarily small pieces of it without destroying their value. The resource has to be divided among several partners who have different preferences over different parts of the cake, i.e., some people prefer the chocolate toppings, some prefer the cherries, some just want as large a piece as possible, etc. The allocation should be economically efficient. Several notions of efficiency have been studied:

The most common notion is Pareto-efficiency. It means that no other allocation is better for at least one participant and at least as good for everyone. A weaker notion is non-wastefulness. An allocation is non-wasteful if no agent receives a piece of cake that is worth 0 for him/her, and worth more than 0 for another agent.

Efficient cake-cutting

Most often, efficiency is studied in connection with fairness, and the goal is to find a division which satisfies both efficiency and fairness criteria.

Efficient cake-cutting

Definitions

There is a cake . It is usually assumed to be either a finite 1-dimensional segment, a 2-dimensional polygon or a finite subset of the multidimensional Euclidean plane .

Efficient cake-cutting

There are partners. Each partner has a subjective value function which maps subsets of to numbers.

has to be divided into disjoint subsets, such that each person receives a disjoint subset. The piece allocated to person is called , so that .

In the following lines we consider a cake with four parts: chocolate, vanilla, lemon and sugar, and two agents: Alice and George, with the following valuations:

An allocation is called wasteful if it allocates to some agent a piece that is worth 0 to that agent but worth more than 0 to another agent. In symbols:

and .

Otherwise it is called non-wasteful (NW). In the example cake, an allocation giving all the cake to Alice is NW, but an allocation giving all the cake to George is wasteful since the lemon part is "wasted". There are many other NW allocations, for example, giving the chocolate to George and the remaining cake to Alice is NW.

An allocation Pareto-dominates an allocation , if at least one person feels that is better than , and no person feels that is worse than . In symbols:

and

An allocation is called Pareto optimal (PO) if it is not Pareto-dominated by any other division, i.e., it cannot be improved without objection. In the example cake, giving the entire cake to Alice is PO, but giving the entire cake to Bob is Pareto-dominated by the allocation where the lemon part is given to Alice. In general (when there are no connectivity requirements on the pieces), every wasteful allocation is Pareto-dominated, therefore every PO allocation is NW. However, the opposite is not true. For example, the allocation giving the chocolate to George and the remaining cake to Alice is NW but it is not PO - it is Pareto-dominated by the allocation giving to George the vanilla and half the chocolate. This is because, in the original allocation the utilities of (Alice, George) are (3, 6), while in the alternative allocation the utilities are (5.5, 7).

Existence and computation

Efficient allocations always exist. For example, every utilitarian-optimal cake-cutting is PO, hence also NW.

However, finding such allocations may be hard. It may be impossible to find a NW cake-allocation using a finite number of "mark" and "eval" queries, even if there are only two agents with piecewise-uniform valuations. This is because, after any finite number of such queries, the algorithm has information regarding only a finite number of intervals, and thus it cannot prevent waste inside the intervals: for any allocation of an interval to an agent, it is possible that this agent values a part of this interval at 0 while the other agent values the same part at 1. Hence, PO too is not attainable by a finite protocol.

The problem becomes easy under the assumption of strict positivity (each agent values each point of the cake at strictly more than 0): every allocation is trivially NW, and every allocation that gives all the cake to a single agent is trivially PO (since every other allocation gives this agent strictly lower utility).