37
Instructor: Shengyu Zhang 1

Instructor: Shengyu Zhang 1. Resource allocation General goals: Maximize social welfare. Fairness. Stability. 2

Embed Size (px)

DESCRIPTION

Cake cutting 3

Citation preview

Page 1: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

1

Instructor: Shengyu Zhang

Page 2: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

2

Resource allocation

General goals:

Maximize social welfare.

Fairness.

Stability.

Page 3: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

Cake cutting

Problem setting: One cake, people (who want to split it). Each person might value different portions of the cake

differently. Some like strawberries, some like chocolate, … Normalization: Each one values the whole cake as 1.

This valuation info is private. Goal: divide the cake to make all people happy.

3

Page 4: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

Cake cutting

A cake cutting protocol is fair if each person gets fraction by her measure. No matter how other people behave.

A cake cutting protocol is envy-free if each person thinks that she gets the most by her measure.

Envy-free fair: : how much person gets in person ’s measure. Envy-free: fair: .

4

Page 5: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

𝑛=2 1. Alice cuts the cake into two equal pieces

by her measure 2. Bob chooses a larger piece

by his measure 3. Alice takes the other piece

5

Page 6: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

6

Page 7: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

envy-free

Theorem. The outcome is envy-free (and thus fair).

Proof. Alice: gets exactly half, no matter which piece Bob

chooses. Bob: gets at least half, no matter how Alice cuts

the cake.

7

Page 8: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

8

𝑛=3 Stage 0: Player 1 divides into three equal

pieces according to his valuation.

Player 2 trims the largest piece s.t. the remaining is the same as the second largest.

The trimmed part is called Cake 2; the other form Cake 1.

Page 9: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

9

Stage 1: division of Cake 1

Player 3 chooses the largest piece. If player 3 didn’t choose the trimmed piece, player

2 chooses it. Otherwise, player 2 chooses one of the two

remaining pieces. Either player 2 or player 3 receives the trimmed

piece; call that player and the other player by .

Player 1 chooses the remaining (untrimmed) piece

Page 10: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

10

Stage 2 (division of Cake 2)

divides Cake 2 into three equal pieces according to his valuation.

Players , 1, and choose the pieces of Cake 2, in that order.

Page 11: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

11

Whole process

cuts trims

Cake 2

choose cake 1(three cases)

𝑃𝑇 𝑃𝑇 𝑃𝑇

𝑃𝑇 ′ 𝑃𝑇 ′

𝑃𝑇 ′

choose cake 2 cutscake 2

Page 12: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

12

Envy-freeness

The division of Cake 1 is envy-free: Player 3 chooses first so he doesn’t envy others. Player 2 likes the trimmed piece and another

piece equally, both better than the third piece. Player 2 is guaranteed to receive one of these two pieces, thus doesn’t envy others.

Player 1 is indifferent judging the two untrimmed pieces and indeed receives an untrimmed piece.

Page 13: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

13

Envy-freeness of Cake 2

Player goes first and hence does not envy the others.

Player is indifferent weighing the three pieces of Cake 2, so he envies no one.

Player 1 does not envy : Player 1 chooses before

Player 1 doesn’t envy : Even if T the whole Cake 2, it’s just 1/3 according to Player 1’s valuation.

Page 14: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

General ?

An algorithm using recursion. Suppose that the people are . 1. Let divide the cake.

How? Recursively. 2. Now comes.

Each of divides her share into equal pieces. takes a largest piece from each of .

Let’s try on board.

14

Page 15: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

Fairness

Theorem. The protocol is fair. Proof.

For : each gets . : gets

’s value of ’s share in Step 1. Complexity? Let be the number of pieces.

recursion: Try a few examples for small to convince yourself.

, and for general .

15

Page 16: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

Moving Knife protocols

Dubins-Spanier, 1961 Continuously move a knife from left to right.

1. A player yells out "STOP" as soon as knife has passed over of the cake by her measure.

2. The player that yelled out is assigned that piece. (And she is out of the game; .) break tie arbitrarily

3. The procedure continues until all get a piece.

16

Page 17: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

Fairness and complexity

Theorem. The protocol is fair. Proof.

For the first who yells out: she gets . For the rest: each things that the remaining part

has value at least , and people divide it. Recursively: each gets .

Complexity? Only cuts into pieces.

17

Page 18: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

18

Resource allocation

The previous example of cake cutting is to allocate divisible resource.

Similar examples include time, memory on a computer, etc.

But sometimes resources are indivisible. Pictures, cars, … in heritage. Baby, house, … in a divorce

Page 19: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

19

Assignment

4 students just came to HK and they found an apartment with 4 rooms. Total rent for the apartment is

They need to decide who lives in which room and pays how much

Page 20: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

20

Assignment

Note that each person has a different valuation of the four rooms. Someone prefers a large room with private

bathroom. Someone prefers small room with low price.

Page 21: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

21

General setup

people items person ’s valuation of

item Solution:

is a matching assigning item to person

is the price for item

{𝑣𝑖𝑗 }

{𝑝 𝑗 }

Page 22: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

22

General setup

Solution: is a matching

assigning item to person

is the price for item Person ’s utility:

where .

{𝛼 𝑖𝑗 }

{𝑝 𝑗 }

Page 23: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

23

General setup

Person ’s utility:

where . The solution is envy-

free if

Everyone is happy and secretly thinks that

all others are dumb ass!

{𝛼 𝑖𝑗 }

{𝑝 𝑗 }

Page 24: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

24

General setup

Question 1: Does there exist an envy-free solution? Sounds too good to be

true. Question 2: If there exists

envy-free solutions, can we find one efficiently? Seems pretty hard…

{𝛼 𝑖𝑗 }

{𝑝 𝑗 }

Page 25: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

25

General setup

Question 1: Does there exist an envy-free solution? Yes!

Question 2: If there exists envy-free solutions, can we find one efficiently? Yes!

{𝛼 𝑖𝑗 }

{𝑝 𝑗 }

Page 26: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

26

General setup

Question 1: Does there exist an envy-free solution? Yes!

Question 2: If there exists envy-free solutions, can we find one efficiently? Yes!

{𝛼 𝑖𝑗 }

{𝑝 𝑗 }

That’s the power of linear program!

Page 27: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

27

Item owner’s utility

Recall: If person is assigned item , then person ’s utility is .

We can also think of item has a utility of Item owner gets this money.

Thus overall the pair of agents get utility . Social welfare: total utility of all agents.

, where .

Page 28: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

28

LP

Though the apartment is indivisible, let’s treat it as divisible for the moment.

Let be the fraction of apartment taken by person .

: each person takes at most 1 apartment. : the fractions sum up to 1. .

Page 29: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

29

LP

Consider the following LP, which maximize the social welfare.

s.t.

Issue: If the optimal solution to this LP is fractional, how to assign the indivisible items?

Page 30: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

30

Surprise

Good news: It’s not really an issue! Theorem. The feasible region of the above LP is

the convex hull of integral solutions , where each . In particular, there exists an optimal -solution. Next we show how to find it efficiently using

duality.

Page 31: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

31

Primalmax s.t.

Dualmins.t.

Page 32: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

32

Primal Dualmax mins.t. s.t.

s.t.

s.t.

Page 33: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

dual

Primal

s.t.

33

Dual

s.t.

Page 34: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

34

Dual

s.t.

The condition has a meaning of envy-free: Suppose that is utility, and is price. If , then person would like to take item .

since he then has utility .

Page 35: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

35

Complementary slackness Primal Dual

max mins.t. s.t.

Theorem. If and are optimal for Primal and Dual, respectively, then , where is the -th column of , where is the -th row of

Proof. Note . But by strong duality, , thus equality holds. Thus if , the first (in)equality implies . If , the second (in)equality implies.

Page 36: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

36

algorithm

Complementary slackness here:

So to find an assignment, it is enough to solve the dual, collect edges find a perfect matching in the graph . define if and only if

This is a optimal solution to the primal.

The utility and price are also given by and . Dual variables coincide with utility and price.

Page 37: Instructor: Shengyu Zhang 1. Resource allocation General goals:  Maximize social welfare.  Fairness.  Stability. 2

37

Summary

Resource allocation naturally arises in many applications.

Main goal is to achieve high social welfare as well as fairness. Examples:

Divisible: cake cutting Indivisible: assignment game