Loading...

PPT – Dividing a Cake Fairly PowerPoint presentation | free to download - id: 2d83c-NzZhN

The Adobe Flash plugin is needed to view this content

Dividing a Cake Fairly

among n players

Thomas Yeo Advisor Prof. B. Prabhakar

Network Group, Electrical Engineering

Department, Stanford University

Topics Outline

- The Different Definitions of Fairness
- Simple Fairness, Case n 2
- Simple Fairness, Case n 3, Finite Algorithm
- Simple Fairness, Case n 3, Infinite Algorithm
- Minimizing the Number of Cuts Required
- Other Criteria An Envy-Free Algorithm Example
- Why Disagreeing might be Better
- Conclusion Applicability to Real Life

Different Definitions of Fairness

- Problem Statement Given a cake, devise a

procedure to divide it fairly among n players - Aim In this presentation, we shall try to

provide some intuitive understanding of cake

sharing algorithms. For detailed proofs, we

recommend the book by Robertson and Webb - Examples of definitions of fairness
- 1) Simple Fair Each gets at least 1/n
- 2) Strong Fair Each gets more than 1/n
- 3) Envy-Free No one thinks another has a

strictly larger piece - 4) Super Envy-Free Each thinks everyone else

gets less than 1/n - 5) Exact Everyone thinks everyone gets exactly

1/n. - Some criteria are subsets of others. For example,

Simple Fair is the weakest criterion, implied by

all the other four criteria

Simple Fairness, case n 2

- A simple solution is
- 1) Player A cuts the cake into what he considers

to be two equal halves - 2) Player B picks one of the 2 pieces
- 3) Player A gets the remaining piece
- Why is this simple fair?
- Although both A and B are guaranteed a piece

which they consider to be at least half, would

you rather be player A or B? - Note that this algorithm is also envy-free. Why?

But, is it strong fair, super envy-free, or exact?

Simple Fairness, n 3

- n 3 is harder than n 2, but since we know how

to do it for the latter, can we extend the

previous method inductively to n 3? - Perform the previous algorithm for 2 players.

Now, players A and B each has at least 1/2 of the

cake. - Players A and B now divide their shares into 3

equal parts. - Player C will choose 1 part from player A and 1

part from player B - Why is player C ensured at least 1/3 of the cake?
- It is fairly straight-forward to extend this

algorithm to the general n-players case. - However, this algorithm requires many cuts and

therefore generates many small pieces of cake for

everyone. Is it possible to use lesser number of

cuts?

Accomplishing n 3 With 2 (or n-1) Cuts

- This can be accomplished by the so-called Moving

Knife Algorithm - A knife is moved continuously over the cake from

left to right. When a player thinks that the cake

on the left side of the knife is 1/3 of the whole

cake, he calls out, Stop, and gets that piece - This is repeated for the remaining 2 players. The

player who did not call out this time, will get

the piece on the right - However, this algorithm is not finite, because

the players have to make a decision at every

instance of time - In fact, it is not possible to accomplish the

task with n-1 cuts (except for the case of n

2), unless an infinite algorithm is used - What then is the minimum number of cuts that can

be attained with a finite algorithm?

Min. Cuts for Finite Simple Fair Algorithms

- The inspiration comes from a problem commonly

encountered in programming inserting an element

into a sorted list of length L. We know that an

efficient algorithm is to recursively reduce the

size of the problem by half at each step of the

algorithm - Using this divide and conquer strategy, we can

develop a cutting algorithm with O(n) ? n x log2n

- In general, supposed the problem has been reduced

to k (assume even) players - Then all but one of the k players are told to cut

the cake into the ratio k/2. So there are in

total k-1 cuts in this iteration - The non-cutter now goes to the middle cut and

picks the side which he thinks is bigger. He then

joins the group of players ((k-2)/2 of them)

whose cuts landed on the side he picks - We now have a k/2 problem. If k is odd, only a

slight modification is required

Other Criteria An Envy-Free Algorithm

- Because the simple fair criterion is the subset

of the other four criteria mentioned before, it

is therefore the easiest to be accomplished. - To give everyone a taste of how much harder the

other criteria are, an envy-free algorithm for 3

players is shown here (attributed to Selfridge) - Player A cuts cake into 3 equal pieces. player B

ranks pieces ?, ?, ?, from largest to smallest. - Player B trims ? from ? so that ? ? - ? ?
- Leaving ? out, the three pieces are split among

players C, B, A in that order. Player B has to

pick ? if available. Therefore B or C must have

picked ?. Call this person P1 and the other P2. - P2 now cuts ? into 3 equal pieces, and P1, player

A, P2 pick the pieces in that order. - Why does this work intuitively? Why is everyone

happy with step 3? Why is everyone happy with

step 4?

Other Criteria Why Harder?

- As can be seen, the envy-free algorithm for 3

players is much more complicated than that of the

simple fair algorithm. - In fact, a finite bounded algorithm for the

general case has yet to be found. - Why are the other criteria so much harder to

accomplish? - Intuitively, this is because unlike the simple

fair criterion, each player not only cares about

what he gets, but also cares about what the other

players get. For example, in exact division, each

player thinks every other player has the same

piece as him. - Therefore, each player must be somehow involved

in the decision making process throughout the

algorithm. So a recursive algorithm (such as that

in divide and conquer) which reduces the problem

to a smaller size at each step by eliminating

some players will not work.

Why Disagreeing might be Better Part 1

- Interestingly, players who have different

measures of cake size can both benefit from the

disagreement. - For example, from the simple fair algorithm

mentioned for n 2

Player A divides Cake into X1 X2 , in his

opinion

B might think X1 60 and X2 40

B takes X1 leaving A with X2

B divides X1 into 12 pieces and A takes one piece

B now has 55 and A now has 54 of the cake

Why disagreeing might be Better Part 2

- Notice that we have just achieved super envy-free

division for n 2 - In fact super envy-free division is possible for

n players if and only if the n measures are

independent. - The following concluding example once again

illustrates how disagreement can make everyone

happier. - Consider three players A, B and C splitting a

family inheritance a car, boat and painting. - The players are told to submit their individual

valuation of the three properties, so we will get

a matrix like this

Why disagreeing might be Better Part 3

3. Each of the three items is given to the

players who value them the most and the players

pay the difference between their valuation of the

items they receive and their fair share of the

inheritance to a common pool. Therefore

- Because 13333 8000 3667 9000, there is an

excess of 9000 and each player gets an extra

3000 beyond his valuation of a fair share. - We have achieve strong fairness.
- Why does this work? Intuitively, since the person

who values an item the most gets the item, the

other players will think that he is paying more

than he should to the pool. For example, if

player B gets the boat instead of the painting,

he would only pay 23000 14000 9000 to the

pool instead of 13333.

Conclusion Applicability to Real Life

- While the previous example seems promising for

solving real life sharing - dispute, what might be some of the problems that

arise? - As the sharing procedure continues, people might

change their measures of the shared resource

during the procedure. - People might also disagree on what the

appropriate share should be, for example in a

territorial dispute. Player A might want 70 of

the land, while player B might want 50 of it.

This is much more difficult than the unequal

sharing problem which actually has a finite

bounded solution.

Source Cake-Cutting Algorithms by Jack Robertson

and William Webb