Proportional cake-cutting with different entitlements

In the fair cake-cutting problem, the partners often have different entitlements. For example, the resource may belong to two shareholders such that Alice holds 8/13 and George holds 5/13. This leads to the criterion of weighted proportionality (WPR): there are several weights $$w_i$$ that sum up to 1, and every partner $$i$$ should receive at least a fraction $$w_i$$ of the resource by their own valuation.

In contrast, in the simpler proportional cake-cutting setting, the weights are equal: $$w_i=1/n$$ for all $$i$$

Several algorithms can be used to find a WPR division.

Cloning
Suppose all the weights are rational numbers, with common denominator $$D$$. So the weights are $$p_1/D,\dots,p_n/D$$, with $$p_1+\cdots+p_n=D$$. For each player $$i$$, create $$p_i$$ clones with the same value-measure. The total number of clones is $$D$$. Find a proportional cake allocation among them. Finally, give each partner $$i$$ the pieces of his $$p_i$$ clones.

Robertson and Webb show a simpler procedure for two partners: Alice cuts the cake into $$D$$ pieces equal in her eyes; George selects the $$p_{G}$$ most valuable pieces in his eyes, and Alice takes the remaining $$p_{A}$$ pieces.

This simple procedure requires $$D-1$$ cuts, which may be very large. For example, if Alice is entitled to 8/13 and George is entitled to 5/13, then 13-1=12 cuts are needed in the initial partition.

The number of required queries is $$D\lceil\log_2(D)\rceil.$$

Ramsey partitions
Suppose a cake has to be divided among Alice and George, Alice is entitled to 8/13 and George is entitled to 5/13. The cake can be divided as follows.
 * Alice cuts the cake to 6 pieces with valuation-ratios 5:3:2:1:1:1.
 * George marks the pieces that have for him at least the value mentioned by Alice.

Now there are two "good" cases - cases in which we can use these pieces to attain a weighted-proportional division respecting the different entitlements:

Case 1: There is a subset of the marked pieces whose sum is 5. E.g., if George marks the 3-piece and the three 1-pieces. Then, this subset is given to George and the remainder is given to Alice. George now has at least 5/13 and Alice has exactly 8/13.

Case 2: There is a subset of the unmarked pieces whose sum is 8. E.g., if George marks the 3-piece and only one 1-piece. Then, this subset is given to Alice and the remainder is given to George. Alice now has exactly 8 and George has given up a sum of less than 8, so he has at least 5/13.

It is possible to prove that the good cases are the only possible cases. I.e, every subset of 5:3:2:1:1:1, EITHER has a subset that sums to 5, OR its complement has a subset that sums to 8. Hence, the above algorithm always finds a WPR allocation with the given ratios. The number of cuts used is only 5.

McAvaney, Robertson and Webb  generalize this idea using the concept of Ramsey partitions (named after the Ramsey theory).

Formally: if $$k_1$$ and $$k_2$$ are positive integers, a partition $$P$$ of $$k_1+k_2$$ is called a Ramsey partition for the pair $$k_1,k_2$$, if for any sub-list $$L\subseteq P$$, either there is a sublist of $$L$$ which sums to $$k_1$$, or there is a sublist of $$P\setminus L$$ which sums to $$k_2$$.

In the example above, $$k_1=8$$ and $$k_2=5$$ and the partition is 5:3:2:1:1:1, which is a Ramsey partition. Moreover, this is the shortest Ramsey partition in this case, so it allows us to use a small number of cuts.

Ramsey partitions always exist. Moreover, there is always a unique shortest Ramsey partition. It can be found using a simple variant of the Euclidean algorithm. The algorithm is based on the following lemma:
 * If $$p_1<a<b$$, and $$P=(p_1,\dots,p_n)$$ is a partition of $$b$$, and $$P'=(b,p_1,\dots,p_n)$$, then $$P'$$ is a partition of $$a+b$$. Moreover, $$P'$$ is a minimal Ramsey partition for the pair $$a,b$$ if-and-only-if $$P$$ is a minimal Ramsey partition for the pair $$a,b-a$$.

This lemma leads to the following recursive algorithm.

$$FindMinimalRamsey(a,b)$$:
 * 1) Order the inputs such that $$a<b$$.
 * 2) Push $$a$$.
 * 3) If $$a=b-a=1$$, then push $$1,1$$ and finish.
 * 4) If $$b-a\neq 1$$, then $$FindMinimalRamsey(a,b-a)$$.

Once a minimal Ramsey partition is found, it can be used to find a WPR division respecting the entitlements.

The algorithm needs at least $$\log_\phi \min(a,b)$$ cuts,  where  $$\phi = (1+\sqrt{5})/2$$ is the golden ratio. In most cases, this number is better than making $$a+b-1$$ cuts. But if $$a=1$$, then $$b=a+b-1$$ cuts are needed, since the only Ramsey partition of the pair $$b,1$$ is a sequence with $$b+1$$ ones.

Cut-near-halves
Suppose again that Alice is entitled to 8/13 and George is entitled to 5/13. The cake can be divided as follows.
 * George cuts the cake to two pieces in ratios 7:6.
 * Alice chooses one of the pieces, which is worth for her at least its declared value. Consider two cases:
 * Alice chooses the 7. Then, Alice is entitled to 1 more, and the remaining piece should be divided in ratio 5:1.
 * Alice chooses the 6. Then, Alice is entitled to 2 more, and the remaining piece should be divided in ratio 5:2.
 * In both cases, the remaining piece is smaller and the ratio is smaller. Eventually, the ratio becomes 1:1 and the remaining cake can be divided using cut and choose.

The general idea is similar to the Even-Paz protocol: $$CutNearHalves(a,b)$$:
 * 1) Order the inputs such that $$a<b$$. Suppose Alice is entitled to $$b/(a+b)$$ and George is entitled to $$a/(a+b)$$.
 * 2) Ask George to cut the cake to near-halves, i.e.:
 * 3) * if $$a+b$$ is even then George cuts the cake to two pieces equal in his eyes;
 * 4) * if $$a+b$$ is odd then George cuts the cake to two pieces whose valuation-ratio is $$(a+b-1)/2 : (a+b+1)/2$$ in his eyes.
 * 5) At least one of the pieces is worth for Alice at least the value declared by George; give this piece to Alice.
 * 6) Suppose the piece taken by Alice is the piece with value $$c/(a+b)$$, where $$c\in\{(a+b-1)/2,(a+b)/2,(a+b+1)/2)$$. Call $$CutNearHalves(b,a-c)$$.

The cut-near-halves algorithm needs at most $$\log_2 \min(a,b)$$ cuts, so it is always more efficient than the Ramsey-partitions algorithm.

The cut-near-halves algorithm is not always optimal. For example, suppose the ratio is 7:3.
 * Cut-near-halves may need at least four cuts: first, George cuts in the ratio 5:5, and Alice gets 5. Then, Alice cuts in the ratio 3:2; suppose George chooses the 2. Then, George cuts in the ratio 2:1; suppose Alice chooses the 1. Finally, they do cut-and-choose on the remainder.
 * We can do better by letting George cut in the ratio 6:4. If Alice chooses the 4, then the ratio becomes 3:3 and we can use cut-and-choose immediately. If Alice chooses the 6, then the ratio becomes 3:1. Alice cuts in ratio 2:2, George chooses the 2, and we need one more step of cut-and-choose. All in all, at most three cuts are needed.

It is an open question how to find the best initial cut for each entitlement ratio.

The algorithm can be generalized to n agents; the number of required queries is $$n(n-1)\lceil\log_2(D)\rceil.$$

Cseh and Fleiner presented an algorithm for dividing a multi-dimensional cake among any number of agents with any entitlements (including irrational entitlements), in a finite number of queries. Their algorithm requires $$2(n-1)\lceil\log_2(D)\rceil$$ queries in the Robertson–Webb query model; thus it is more efficient than agent-cloning and cut-near-halves. They prove that this runtime complexity is optimal.

Algorithms for irrational entitlements
When the entitlements are not rational numbers, methods based on cloning cannot be used since the denominator is infinite. Shishido and Zeng presented an algorithm called mark-cut-choose, that can also handle irrational entitlements, but with an unbounded number of cuts.

The algorithm of Cseh and Fleiner can also be adapted to work with irrational entitlements in a finite number of queries.

Number of required cuts
Besides the number of required queries, it is also interesting to minimize the number of required cuts, so that the division is not too much fractioned. The Shishido-Zeng algorithms yield a fair division with at most $$2 \cdot 3^{n-2}$$cuts, and a strongly-fair division with at most $$4 \cdot 3^{n-2}$$cuts.

In the worst case, at least $$2(n-1)$$ cuts might be required. Brams, Jones and Klamler show an example for n=2. A cake made of four consecutive regions has to be divided between Alice and George, whose valuations are as follows:

Note that the total cake value is 8 for both partners. If $$w_A \geq 0.75$$, then Alice is entitled to a value of at least 6. To give Alice her due share in a connected piece, we must give her either the three leftmost slices or the three rightmost slices. In both cases George receives a piece with a value of only 1, which is less than his due share of 2. To achieve a WPR division in this case, we must give George his due share in the center of the cake, where his value is relatively large, but then Alice will get two disconnected pieces.

Segal-Halevi  shows that, if the cake is circular (i.e. the two endpoints are identified) then a connected WPR division for two people is always possible; this follows from the Stromquist–Woodall theorem. By recursively applying this theorem to find exact divisions, it is possible to get a WPR division using at most $$2 n \cdot (\log_2 n-1) + 2$$ cuts when n is a power of 2, and a similar number when n is general.

Crew, Narayanan and Spirkle improved this upper bound to 3n-4 using the following protocol:


 * Ask each agent i to mark an x such that Vi(0,x)=1/2.
 * Order the agents in increasing order of their mark, breaking ties arbitrarily.
 * Add the agents in the above order into a set P. Stop just before the total weight of agents in P goes above 1/2.
 * The first agent that was not added to P is called t, and the set of agents after t is called Q. Now:
 * All agents in P value (0,x) at least 1/2, and their total weight is at most 1/2;
 * All agents in Q value (x,1) at least 1/2, and their total weight is at most 1/2;
 * Agent t values both (0,x) and (x,1) at exactly 1/2.
 * If both P and Q are nonempty, then agent t is split between P and Q such that the total weight in each set is exactly 1/2. The cake is cut at x, and the procedure proceeds recursively. This leads to the following recurrence relation (where k is the number of agents in P, not including the clone of agent t): $$\text{Cuts}(n+1) \leq \max_{1\leq k\leq n-1} (1 + \text{Cuts}(k+1) + \text{Cuts}(n-k+1))$$. Adding the initial condition  $$\text{Cuts}(2) = 2$$ yields the claimed number  $$\text{Cuts}(n) \leq 3n-4$$.


 * The harder case is that P is empty (the case that Q is empty is analogous). This implies that the weight of t is at least 1/2, and all agents value (0,x) at most 1/2. In this case, we find some y such that agent t values (0,y) exactly wt, and try to partition the agents into P and Q as before. If again one of these sets is empty, then we know that all agents value (0,y) at least wt. Therefore, by the intermediate value theorem, there must be a value z in (x,y) for which one of the agents, which is not t, values (0,z) exactly the same as t. Then, we can cut the cake at z and recurse as in the first case.

The exact number of required cuts remains an open question. The simplest open case is when there are 3 agents and the weights are 1/7, 2/7, 4/7. It is not known if the number of required cuts is 4 (as in the lower bound) or 5 (as in the upper bound).