1 / 27 Sequential allocation of indivisible goods Thomas Kalinowski Institut für Mathematik, Universität Rostock Newcastle Tuesday, January 22, 2013
joint work with... 2 / 27 Nina Narodytska Toby Walsh NICTA and UNSW in Sydney
Outline 3 / 27 1 Introduction 2 Sequential allocation policies 3 Maximizing the social welfare
Sequential allocation 4 / 27 A simple example Suppose you are coaching a football team and you want to divide your players into two teams for a practice match.
Sequential allocation 4 / 27 A simple example Suppose you are coaching a football team and you want to divide your players into two teams for a practice match. Nominate two captains and let them take turns in picking team members
Sequential allocation 4 / 27 A simple example Suppose you are coaching a football team and you want to divide your players into two teams for a practice match. Nominate two captains and let them take turns in picking team members What is the best picking order? alternating: 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2 alternating and reversing: 1, 2, 2, 1, 1, 2, 2, 1, 1, 2, 2, 1???
Example: Alternating policy 5 / 27 Captain 1 Captain 2 121212
Example: Alternating policy 5 / 27 Captain 1 Captain 2 121212
Example: Alternating policy 5 / 27 Captain 1 Captain 2 121212
Example: Alternating policy 5 / 27 Captain 1 Captain 2 121212
Example: Alternating policy 5 / 27 Captain 1 Captain 2 121212
Example: Alternating policy 5 / 27 Captain 1 Captain 2 121212
Example: Alternating policy 5 / 27 Captain 1 Captain 2 121212
Example: Alternating and reversing policy 6 / 27 Captain 1 Captain 2 122112
Example: Alternating and reversing policy 6 / 27 Captain 1 Captain 2 122112
Example: Alternating and reversing policy 6 / 27 Captain 1 Captain 2 122112
Example: Alternating and reversing policy 6 / 27 Captain 1 Captain 2 122112
Example: Alternating and reversing policy 6 / 27 Captain 1 Captain 2 122112
Example: Alternating and reversing policy 6 / 27 Captain 1 Captain 2 122112
Example: Alternating and reversing policy 6 / 27 Captain 1 Captain 2 122112
The order makes a difference 7 / 27 Preference orders Captain 1 Captain 2 Alternating Captain 1 Captain 2 Alternating and reversing Captain 1 Captain 2
Background 8 / 27 How do we best share resources between competing agents? Best can mean different things (fair, efficient,...) Resources can be divisible (mineral rights, viewing times, etc.) or indivisible (machines, holiday slots, time slots for landing and take-off, etc.)
Background 8 / 27 How do we best share resources between competing agents? Best can mean different things (fair, efficient,...) Resources can be divisible (mineral rights, viewing times, etc.) or indivisible (machines, holiday slots, time slots for landing and take-off, etc.) The allocation of scarce resources is an abundant problem in many economic and social contexts, in engineering, algorithm design, etc. Therefore, it is of great interest to theoretically understand the related phenomena, and develop good allocation mechanisms.
Cake-cutting (fair division) Cut-and-choose Dividing a cake between two persons The first person cuts the cake into two parts The second person chooses which part to take 9 / 27
Cake-cutting (fair division) Cut-and-choose Dividing a cake between two persons The first person cuts the cake into two parts The second person chooses which part to take More agents Different solutions depending on fairness notion Banach, Knaster, Steinhaus 1947 Selfridge; Conway 1960 Brams, Taylor 1995 9 / 27
From fair division to social welfare maximization 10 / 27 To compare division mechanisms the agent s shares have to be evaluated using a utility function. Fair division usually tries to balance utilities: Every agent should be satisfied with the outcome. Game theory studies the effect of strategic decision making. A different aspect A central agency that manages the allocation process might be interested in maximizing a global quality measure, while the opinions of individual agents might be irrelevant.
From fair division to social welfare maximization 10 / 27 To compare division mechanisms the agent s shares have to be evaluated using a utility function. Fair division usually tries to balance utilities: Every agent should be satisfied with the outcome. Game theory studies the effect of strategic decision making. A different aspect A central agency that manages the allocation process might be interested in maximizing a global quality measure, while the opinions of individual agents might be irrelevant. Problem [Bouveret, Lang 2011] Maximize the social welfare over a class of allocation mechanisms.
Formal setup n agents compete for k items Preference order Permutation π of the set [k] = {1,..., k} 11 / 27
Formal setup n agents compete for k items Preference order Permutation π of the set [k] = {1,..., k} Preference profile n-tuple R = (π 1,..., π n ) of preference orders 11 / 27
Formal setup n agents compete for k items Preference order Permutation π of the set [k] = {1,..., k} Preference profile n-tuple R = (π 1,..., π n ) of preference orders Utilities Values k, k 1, k 2,..., 1 11 / 27
Formal setup n agents compete for k items Preference order Permutation π of the set [k] = {1,..., k} Preference profile n-tuple R = (π 1,..., π n ) of preference orders Utilities Values k, k 1, k 2,..., 1 Additivity assumption The utility of a subset A [k] is the sum of the utilities of the elements of A. 11 / 27
Example for n = 2, k = 6, alternating 12 / 27 Available items 1 2 3 4 5 6 Profile (1, 2, 3, 4, 5, 6), (1, 4, 2, 5, 3, 6)
Example for n = 2, k = 6, alternating 12 / 27 Available items 1 2 3 4 5 6 Profile (1, 2, 3, 4, 5, 6), (1, 4, 2, 5, 3, 6) Allocation Agent 1 Agent 2 Utilities Agent 1: Agent 2:
Example for n = 2, k = 6, alternating 12 / 27 Available items 1 2 3 4 5 6 Profile (1, 2, 3, 4, 5, 6), (1, 4, 2, 5, 3, 6) Allocation Agent 1 Agent 2 Utilities Agent 1: 6 Agent 2:
Example for n = 2, k = 6, alternating 12 / 27 Available items 2 3 4 5 6 Profile (1, 2, 3, 4, 5, 6), (1, 4, 2, 5, 3, 6) Allocation Agent 1 Agent 2 Utilities Agent 1: 6 Agent 2: 5
Example for n = 2, k = 6, alternating 12 / 27 Available items 2 3 5 6 Profile (1, 2, 3, 4, 5, 6), (1, 4, 2, 5, 3, 6) Allocation Agent 1 Agent 2 Utilities Agent 1: 6 + 5 Agent 2: 5
Example for n = 2, k = 6, alternating 12 / 27 Available items 3 5 6 Profile (1, 2, 3, 4, 5, 6), (1, 4, 2, 5, 3, 6) Allocation Agent 1 Agent 2 Utilities Agent 1: 6 + 5 Agent 2: 5 + 3
Example for n = 2, k = 6, alternating 12 / 27 Available items 3 6 Profile (1, 2, 3, 4, 5, 6), (1, 4, 2, 5, 3, 6) Allocation Agent 1 Agent 2 Utilities Agent 1: 6 + 5 + 4 = 15 Agent 2: 5 + 3
Example for n = 2, k = 6, alternating 12 / 27 Available items 6 Profile (1, 2, 3, 4, 5, 6), (1, 4, 2, 5, 3, 6) Allocation Agent 1 Agent 2 Utilities Agent 1: 6 + 5 + 4 = 15 Agent 2: 5 + 3 + 1 = 9 = social welfare 15 + 9 = 24
Example for n = 2, k = 6, alternating and reversing 13 / 27 Available items 6 Profile (1, 2, 3, 4, 5, 6), (1, 4, 2, 3, 5, 6) Allocation Agent 1 Agent 2 Utilities Agent 1: 6 + 4 + 2 = 12 Agent 2: 5 + 4 + 1 = 10 = social welfare 12+10 = 22
Allocation policies 14 / 27 Policy p = p 1... p k [n] k In step i agent p i picks an item. Truthful behaviour Among the available items, the agent always picks the best according to her ranking. Individual utilities u i (R, p) Utility of agent i for profile R and policy p Social welfare sw(r, p) = n u i (R, p) i=1
Problem formulation 15 / 27 For a given probability P on the set R of all profiles we consider Expected utilities and social welfare u i (p) = R R P(R)u i (R, p) and sw(p) = R R P(R) sw(r, p) n Linearity of expectation: sw(p) = u i (p). i=1 Here P is always the uniform distribution on R. Conjecture [Bouveret & Lang 2011] The expected social welfare is maximized by the alternating policy p = 12... (n 1)n 12... (n 1)n...... 12... (n 1)n...
Main results 16 / 27 Theorem (K,Narodytska,Walsh 2013+) The expected utilities u i (p) can be computed in linear time. Theorem (K,Narodytska,Walsh 2013+) For a linear utility function and n = 2 agents the expected social welfare is maximized by the alternating policy p = 121212... Theorem (K,Narodytska,Walsh 2013+) For Borda utility and n agents the expected social welfare is nk 2 + O(k) and this is asymptotically optimal. n + 1
The policy tree 17 / 27 1 2 21 11 12 22 121 221 211 111 212 112 122 222 2121 1121 1221 2221 1211 2211 2111 1111 1212 2212 2112 1112 2122 1122 1222 2222 Level k 1 p 1 p 2... p k 1 alternate don t alternate 1 = 2, 2 = 1 Level k p 1 p 1 p 2... p k 1 p 1 p 1 p 2... p k 1
The policy tree 17 / 27 1 2 21 11 12 22 121 221 211 111 212 112 122 222 2121 1121 1221 2221 1211 2211 2111 1111 1212 2212 2112 1112 2122 1122 1222 2222 Reducing symmetry u 1 (1211) = u 2 (2122), u 2 (1211) = u 1 (2122). = sw(1211) = sw(2122)
The policy tree 17 / 27 1 2 21 11 12 22 121 221 211 111 212 112 122 222 2121 1121 1221 2221 1211 2211 2111 1111 1212 2212 2112 1112 2122 1122 1222 2222 Reducing symmetry u 1 (1211) = u 2 (2122), u 2 (1211) = u 1 (2122). = sw(1211) = sw(2122) = It is sufficient to consider the left subtree.
Recursive computation of the expected utilities 18 / 27 With a policy we associate a pair (x, y) where x is the expected utility for the starting agent, y is the expected utility for the other agent. The root node (k = 1): (1, 0) The recursion for k 2 Level k 1 (x, y) Level k ( y + k, k+1 k x) ( x + k, k+1 k y)
Utilities for the first four levels 19 / 27 1 (1, 0) 21 11 121 221 211 111 2121 1121 1221 2221 1211 2211 2111 1111 (1, 0) (0 + 2, 32 1 ) (1 + 2, 32 0 )
Utilities for the first four levels 19 / 27 ( 2, 3 ) 2 21 1 (1, 0) (3, 0) 11 121 221 211 111 2121 1121 1221 2221 1211 2211 2111 1111 (1, 0) (0 + 2, 32 1 ) (1 + 2, 32 0 )
Utilities for the first four levels 19 / 27 ( 2, 3 ) 2 21 1 (1, 0) (3, 0) 11 121 221 211 111 2121 1121 1221 2221 1211 2211 2111 1111 ( 2, 3 ) 2 (3, 0) ( 3 2 + 3, 4 ) ( 3 2 2 + 3, 4 3 3 ) 2 (0 + 3, 43 3 ) (3 + 3, 43 0 )
Utilities for the first four levels 19 / 27 ( 9 ) ( 2, 3 ) 2 21 1 (1, 0) (3, 0) 11 2, 8 3 121 (5, 2) 221 (3, 4) 211 (6, 0) 111 2121 1121 1221 2221 1211 2211 2111 1111 ( 2, 3 ) 2 (3, 0) ( 3 2 + 3, 4 ) ( 3 2 2 + 3, 4 3 3 ) 2 (0 + 3, 43 3 ) (3 + 3, 43 0 )
Utilities for the first four levels 19 / 27 ( 9 ) ( 2, 3 ) 2 21 1 (1, 0) (3, 0) 11 2, 8 3 121 (5, 2) 221 (3, 4) 211 (6, 0) 111 2121 1121 1221 2221 1211 2211 2111 1111 ( 9 2, 8 ) 3 (3, 4) ( 8 3 + 4, 5 4 9 ) ( 9 2 2 + 4, 5 4 8 ) 3 (4 + 4, 54 3 ) (3 + 4, 54 4 )
Utilities for the first four levels 19 / 27 ( 9 ) ( 2, 3 ) 2 21 1 (1, 0) (3, 0) 11 2, 8 3 121 (5, 2) 221 (3, 4) 211 (6, 0) 111 2121 ( 20 3, 45 ) 8 1121 ( 17 2, 10 ) 3 1221 2221 1211 ( ) 8, 15 4 2211 (7, 5) 2111 1111 ( 9 2, 8 ) 3 (3, 4) ( 8 3 + 4, 5 4 9 ) ( 9 2 2 + 4, 5 4 8 ) 3 (4 + 4, 54 3 ) (3 + 4, 54 4 )
Utilities for the first four levels 19 / 27 ( 9 ) ( 2, 3 ) 2 21 1 (1, 0) (3, 0) 11 2, 8 3 121 (5, 2) 221 (3, 4) 211 (6, 0) 111 2121 ( 20 3, 45 ) 8 1121 ( 17 2, 10 ) 3 1221 ( 6, 25 ) 4 2221 ( 9, 5 ) 2 1211 ( 8, 15 ) 4 2211 (7, 5) 2111 ( 4, 15 ) 2 1111 (10, 0) (5, 2) (6, 0) (2 + 4, 54 5 ) (5 + 4, 54 2 ) (0 + 4, 54 6 ) (6 + 4, 54 0 )
Solution for the alternating policy 20 / 27 Let p k denote the alternating policy of length k, p k = 1212... Theorem (K,Narodytska,Walsh 2013+) The expected social welfare for the alternating policy is sw ( p k) k(2k + 1) = + O( k). 3 The expected utility difference between the agents is d k := u 1 ( p k) u 2 ( p k) = k 3 + O( k).
Reformulation 21 / 27 Defect pairs For a policy p we measure the deviation from p k by the pair (x p, y p ) = (u 1 (p) u 1 ( p k), u 2 (p) u 2 ( p k)) sw(p) sw( p k ) = x p + y p The optimality of p k for all k is equivalent to Theorem For all k 1, if (x, y) is the defect pair for a policy of length k then x + y 0.
Defect pairs for k = 10 22 / 27
Small defect pairs for k = 10 23 / 27
Recursion for defect pairs 24 / 27 (0, 0) is the only defect pair for k = 1. Recursion for k 2 Level k 1 (x, y) L k 1 R k 1 Level k ( ) ( ) y, k+1 k x x + d k, k+1 k (y d k)
Recursion for defect pairs 24 / 27 (0, 0) is the only defect pair for k = 1. Recursion for k 2 Level k 1 (x, y) L k 1 R k 1 Level k ( ) ( ) y, k+1 k x x + d k, k+1 k (y d k) where d k is the utility difference for the alternating policy: d k = u 1 ( p k) u 2 ( p k).
Defect pairs in the policy tree 25 / 27 (0, 0) 121 (0, 0) 21 ( ) 1 2, 2 3 221 1 (0, 0) ( 3 2, 4 ) 3 211 ( 1, 3 ) 2 11 ( ) 3 2, 8 3 111 2121 (0, 0) 1121 ( ) 11 6, 55 24 1221 ( 2 3, 5 ) 8 2221 ( ) 7 3, 25 8 1211 ( ) 4 3, 15 8 2211 ( ) 1 3, 5 8 2111 ( 8 3, 15 ) 8 1111 ( ) 10 3, 45 8
Proof strategy 26 / 27 Prove by induction on k the following statement: Proposition If (x, y) is a defect pair for a policy of length k then 1 x + y 0, 2 m 1 : (x, y ) = R k+m 1 R k (x, y) = x + y 0, 3 m 1 : (x, y ) = R k+m 1 R k+1 L k (x, y) = x +y 0.
Outlook 27 / 27 Generalize the optimality result for the alternating policy to more than two agents, convex utility functions, i.e. the utility difference between consecutive items decreases with the rank, different probability distributions on the set of profiles. Study different social welfare measures. What happens if agents behave strategically?