Dividing a Cake Fairly - PowerPoint PPT Presentation


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


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation

Dividing a Cake Fairly


Problem Statement: Given a cake, devise a procedure to divide it fairly among n players ... A knife is moved continuously over the cake from left to right. ... – PowerPoint PPT presentation

Number of Views:140
Avg rating:3.0/5.0
Slides: 14
Provided by: thoma86
Tags: cake | dividing | fairly


Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Dividing a Cake Fairly

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
  • 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
  • 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

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
  • 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
  • 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
  • For example, from the simple fair algorithm
    mentioned for n 2

Player A divides Cake into X1 X2 , in his
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
  • The following concluding example once again
    illustrates how disagreement can make everyone
  • 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
  • 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
About PowerShow.com