5.5 Last Diminisher
The Last Diminisher method is another approach to division among 3 or more parties.
Note
Last Diminisher Method
In this method, the parties are randomly assigned an order, perhaps by pulling names out of a hat. The method then proceeds as follows:
1) The first person cuts a slice they value as a fair share.
2) The second person examines the piece
a. If they think it is worth less than a fair share, they then pass on the piece unchanged.
b. If they think the piece is worth more than a fair share, they trim off the excess and lay claim to the piece. The trimmings are added back into the to-be-divided pile.
3) Each remaining person, in turn, can either pass or trim the piece
4) After the last person has made their decision, the last person to trim the slice receives it. If no one has modified the slice, then the person who cut it receives it.
5) Whoever receives the piece leaves with their piece and the process repeats with the remaining people. Continue until only 2 people remain; they can divide what is left with the divider-chooser method.
Example 2
Marcus, Abby, Julian, and Ben are splitting a pizza that is 4 slices of cheese and 4 slices of veggie with total value $12. Marcus and Ben like both flavors equally, Abby only likes cheese, and Julian likes veggie twice as much as cheese. They divide the pizza using last diminisher method, playing in the order Marcus, Abby, Ben, then Julian.
Show solution
Notice Ben and Marcus both value any slice of pizza at $1.50.
Abby values each slice of cheese at $3, and veggie at $0.
Julian values each slice of cheese at $1, and each slice of veggie at $2. (see Example 2)
A fair share for any player is $3.
In the first round, suppose Marcus cuts out 2 slices of cheese, which he values at $3.
Abby only likes cheese, so will value this cut at $6. She will trim it to 1 slice of cheese, which she values as her fair share of $3.
Ben will view this piece as less than a fair share, and will pass.
Julian will view this piece as less than a fair share, and will pass.
Abby receives the piece.
In the second round, suppose Marcus cuts a slice that is 2 slices of veggie.
Abby already received a slice so is out.
Ben will view this piece as having value $3. He can barely trim it and lay claim to it.
Julian will value this piece as having value $4, so will barely trim it and claim it.
Marcus and Ben can then split the remaining 3 slices of cheese and 2 slices of veggie using the divider-chooser method.
In the second round, both Ben and Julian will make tiny trims (pulling off a small crumb) in order to lay claim to the piece without practically reducing the value. The piece Julian receives is still essentially worth $4 to him; we don’t worry about the value of that crumb.
Your Turn
Try it Now 5
Five players are dividing a $20 cake. In the first round, Player 1 makes the initial cut and claims the piece. For each of the remaining players, the value of the current piece (which may have been trimmed) at the time it is their turn is shown below. Describe the outcome of the first round.
# Math in Society 5.5 -- Last Diminisher
# Player 1 cuts a piece worth exactly a fair share to them and claims it. Each
# later player either passes, or TRIMS it back to a fair share and claims it.
# Whoever trimmed last keeps it. The numbers below are what the piece is worth to
# each player AT THE MOMENT IT REACHES THEM (so after any earlier trim).
CAKE, PLAYERS = 20.0, 5
fair = CAKE / PLAYERS
round1 = {"P2": 3.00, "P3": 5.00, "P4": 3.50, "P5": 3.00} # EDIT any value
round2 = {"P2": 7.00, "P4": 3.00, "P5": 5.00} # P3 has left with a piece
def play(values, cutter, rnd):
print(f"Round {rnd}: {cutter} cuts a piece worth ${fair:.2f} to {cutter}"
f" and claims it")
holder, held, order = cutter, fair, list(values)
for i, p in enumerate(order):
v = values[p]
if v <= fair + 1e-9:
print(f" {p} values it at ${v:>5.2f} -- not more than a fair share, passes")
elif i == len(order) - 1:
holder, held = p, v
print(f" {p} values it at ${v:>5.2f} and is LAST to decide: trims off a"
f" crumb and claims it")
else:
holder, held = p, fair
print(f" {p} values it at ${v:>5.2f} -- trims it back to ${fair:.2f}"
f" and claims it")
print(f" -> {holder} takes the piece, worth ${held:.2f} to {holder}"
f" ({held/CAKE:.0%} of the cake in their eyes)\n")
return holder, held
print(f"${CAKE:.0f} cake, {PLAYERS} players, so a fair share is ${fair:.2f}\n")
w1, v1 = play(round1, "P1", 1)
w2, v2 = play(round2, "P1", 2)
print("Nobody in either round ended up with less than a fair share, which is what")
print("the method promises. But the promise is only a FLOOR:")
for w, v, r in ((w1, v1, 1), (w2, v2, 2)):
extra = v - fair
print(f" round {r}: {w} took ${v:.2f}, "
+ (f"${extra:.2f} above a fair share" if extra > 1e-9 else "exactly a fair share"))
print("Going last is worth real money. A player who is last to decide can claim a")
print("piece with a token trim, keeping every dollar of value above the fair share,")
print("while anyone earlier has to trim all the way down to it.")
print("\nTry it: in round1 set P5 to 6.00. P3 still trims and claims, but the piece")
print("comes back around to P5, who is last -- watch who ends up holding it.")
print("Try it: set every round1 value below $4 and the cutter P1 keeps their own")
print("piece, which is exactly a fair share and not a penny more.")
In the second round, Player 1 again makes the initial cut and claims the piece, and the current values are shown again. Describe the outcome of the second round.
Answer
In the first round, Player 1 will cut a piece he values as a fair share of $4. Player 2 values the piece as $3, so will pass. Player 3 values the piece as $5, so will claim it and trim it to something she values as $4. Player 4 receives that piece and values it as $3.50 so will pass. Player 5 values the piece at $3 and will also pass. Player 3 receives the trimmed piece she values at $4.
In the second round, Player 1 will again cut a piece he values as a fair share of $4. Player 2 values the piece as $7, so will claim it and trim it to something he values as $4. Player 4 values the trimmed piece at $3 and passes. Player 5 values the piece at $5, so will claim it. Since Player 5 is the last player, she has an advantage and can claim then barely trim the piece. Player 5 receives a piece she values at $5.
Adapted from Math in Society by David Lippman, hosted on LibreTexts (math.libretexts.org) and licensed under CC BY-SA 3.0. Changes were made. License: CC-BY-SA-3.0 .