Optimal Impartial Selection Max Klimm Technische Universität Berlin Head of Junior Research Group Optimization under Uncertainty Einstein-Zentrum für Mathematik
Introduction select member of a set of agents based on nominations by agents from the set applications Selection of representatives Award of prizes Assignment of responsibilities Peer review: of papers, projects Optimal Impartial Selection 2
Introduction A, B, C form committee vote for speaker, arcs represent votes p B = 0 B C p C = 1 A p A = 0 naive mechanism chose vertex with max. in-degree uniformly at random Optimal Impartial Selection 3
Introduction A, B, C form committee vote for speaker, arcs represent votes p B = 01/3 B C p C = 1/3 Vote of A influences its own probability of selection! A p A = 01/3 naive mechanism chose vertex with max. in-degree uniformly at random Optimal Impartial Selection 4
Impartial selection Goal: Find a mechanism that is impartial: probability of selecting an agent independent of its votes competitive: select (in expectation) agents with many nominations Optimal Impartial Selection 5
Formalization set G of directed graphs G = (N,E) without loops (approval voting) subset G =1 G of graphs with uniform out-degree 1 (plurality) mechanism f maps G = (N,E) G to a probability distribution over N f is impartial if f(n,e) i = f(n,f) i, whenever E \ ({i} N) = F \ ({i} N). f is α-optimal, for α [0,1], if for all G G if E i~f(g) [deg(i)] Δ(G) α, where Δ(G) = max i N deg(i). Optimal Impartial Selection 6
Related work Deterministic mechanisms are very limited, even for G =1 [Moulin, Holzman, Econometrica, `13] 1/4-optimal randomized mechanism (2-partition) Upper bound of 1/2 for any mechanism on G [Alon et al., TARK, `11] Achievable approximation factors G G =1 deterministic 0 1/n randomized [1/4, 1/2] [1/4, 1] Optimal Impartial Selection 7
Outline and main results Achievable approximation factors G G =1 deterministic 0 1/n randomized [1/4, 1/2] [1/4, 1] Optimal Impartial Selection 8
Outline and main results different analysis of the 2-partition mechanism 1/2-optimal mechanism for G Achievable approximation factors G G =1 deterministic 0 1/n randomized 1/2 [1/4, 1] Optimal Impartial Selection 9
Outline and main results different analysis of the 2-partition mechanism 1/2-optimal mechanism for G same mechanism is 67/108-optimal ( 0.62-optimal) for G =1 Achievable approximation factors G G =1 deterministic 0 1/n randomized 1/2 [67/108, 1] Optimal Impartial Selection 10
Outline and main results different analysis of the 2-partition mechanism 1/2-optimal mechanism for G same mechanism is 67/108-optimal ( 0.62-optimal) for G =1 upper bound for G =1 of 3/4 Achievable approximation factors G G =1 deterministic 0 1/n randomized 1/2 [67/108, 3/4] Optimal Impartial Selection 11
Outline and main results different analysis of the 2-partition mechanism 1/2-optimal mechanism for G same mechanism is 67/108-optimal ( 0.62-optimal) for G =1 upper bound for G =1 of 3/4 Achievable approximation factors G G =1 deterministic 0 1/n randomized 1/2 [67/108, 3/4] Optimal Impartial Selection 12
The 2-partition mechanism Partition each i N into (S 1, S 2 ) uniformly at random Return i arg max j S2 deg(j,s 1 ) uniformly at random (unless S 2 =, then return an arbitrary i S 1 ) deg(i,s 1 ) = (j,i) E : j S 1 Optimal Impartial Selection 13
The 2-partition mechanism Partition each i N into (S 1, S 2 ) uniformly at random Return i arg max j S2 deg(j,s 1 ) uniformly at random (unless S 2 =, then return an arbitrary i S 1 ) deg(i,s 1 ) = (j,i) E : j S 1 D E C A B Optimal Impartial Selection 14
The 2-partition mechanism Partition each i N into (S 1, S 2 ) uniformly at random Return i arg max j S2 deg(j,s 1 ) uniformly at random (unless S 2 =, then return an arbitrary i S 1 ) deg(i,s 1 ) = (j,i) E : j S 1 S 1 C S 2 E D A B Optimal Impartial Selection 15
The 2-partition mechanism Partition each i N into (S 1, S 2 ) uniformly at random Return i arg max j S2 deg(j,s 1 ) uniformly at random (unless S 2 =, then return an arbitrary i S 1 ) deg(i,s 1 ) = (j,i) E : j S 1 S 1 C S 2 E D A B Optimal Impartial Selection 16
The 2-partition mechanism Partition each i N into (S 1, S 2 ) uniformly at random Return i arg max j S2 deg(j,s 1 ) uniformly at random (unless S 2 =, then return an arbitrary i S 1 ) deg(i,s 1 ) = (j,i) E : j S 1 S 1 C 1/3 S 2 E D A 1/3 B 1/3 Optimal Impartial Selection 17
The 2-partition mechanism Theorem 2-Partition is impartial and 1/4-optimal. [Alon et al., TARK, `11] Proof: Impartiality: only nominations in S 1 considered, only agents in S 2 selected 1/4-Optimality: i* arg max i N deg(i) E i~f [deg(i)] P[i* S 2 ] E[deg(i*,S 1 ) i* S 2 ] E i~f [deg(i)] 1/2 E x~bin(1/2,δ) [x] =Δ/4 Bound is tight: Optimal Impartial Selection 18
The 2-partition mechanism - Revisited P[i* S 1 ] = 1/2 i* P[i* S 2 ] = 1/2 S 1 S 2 d* = deg(i*,s 1 ) d = max i S2 deg(i,s 1 ) for every 2-partition S = (S 1,S 2 ), E i~f [deg(i) S] d + (Δ-d) χ(d* > d)/2 E i~f [deg(i) S] min t N {t + (Δ-t) χ(d* > t)/2} minimum is attained for either t = 0, then E i~f [deg(i) S] = Δ/2 or t = d*, then E i~f [deg(i) S] = d* thus E i~f [deg(i)] E x~bin(1/2,δ) min{x, Δ/2} Δ/4 Optimal Impartial Selection 19
The 2-partition mechanism - Revisited Theorem [Fischer and K., SICOMP, `15] 2-Partition is α(δ)-optimal where α(δ) = Ex~Bin(1/2,Δ) min{x, Δ/2}. α(δ) is increasing lim Δ α(δ) = 1/2 1/2 α(δ) 3/8 1/4 1/8 0 0 2 4 6 8 10 Δ Optimal Impartial Selection 20
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i Optimal Impartial Selection 21
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i Optimal Impartial Selection 22
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i Optimal Impartial Selection 23
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i Optimal Impartial Selection 24
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i Optimal Impartial Selection 25
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i i d = 0 S 1 S 2 S 3 S 4 S 5 Optimal Impartial Selection 26
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i i d = 0 S 1 S 2 S 3 S 4 S 5 Optimal Impartial Selection 27
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i i d = 0 S 1 S 2 S 3 S 4 S 5 Optimal Impartial Selection 28
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i i d = 0 S 1 S 2 S 3 S 4 S 5 Optimal Impartial Selection 29
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i i d = 1 S 1 S 2 S 3 S 4 S 5 Optimal Impartial Selection 30
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i i d = 1 S 1 S 2 S 3 S 4 S 5 Optimal Impartial Selection 31
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i i d = 2 S 1 S 2 S 3 S 4 S 5 Optimal Impartial Selection 32
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i i d = 2 S 1 S 2 S 3 S 4 S 5 Optimal Impartial Selection 33
The k-partition mechanism Randomly partition N into (S 1,S 2,,S k ), denote S <j = i<j S i {i } :=, d := 0 for j:= 2,,k if max i Sj deg(i, S <j {i }) d Choose i arg max i Sj deg(i,s <j ) uniformly at random i := i, d = deg(i,s <j ) Return i i d = 2 S 1 S 2 S 3 S 4 S 5 Optimal Impartial Selection 34
The k-partition mechanism - Analysis P[i* S j ] = 1/k for all j = 1 k i* S 1 S 2 S 3 S 4 S 5 i* looses For k-partition S = (S 1, S k ) i* wins v j = deg(i*,s j ) and d j * = deg(i*,s <j ) = l [j-1] v l d = max j [k] max i Sj deg(i,s <j ) Then E i~f [deg(i) S] d + 1 k j [k](δ-d) χ(d j * > d) E i~f [deg(i) S] min t N {t + 1 k j [k](δ-t) χ(d j * > t)} minimum attained for t = d j * with j [k], and v = (v 1,,v k )~Mul(Δ,k) E i~f [deg(i)] E v~mul(δ,k) min j [k] { l=1,,j-1 v l + (k-j)/k l=j, k v l } Optimal Impartial Selection 35
The k-partition mechanism - Analysis Lemma k-partition is α(δ)-optimal, where α(δ) = E v~mul(δ,k) min j [k] { l=1,,j-1 v l + (k-j)/k l=j, k v l }. 0 1 α(δ) = E v~mul(δ,k) min v B @ k 1 k 1 k k k 2 1 k k 1 k 1 k... k k 2 k 2 k... k k 3 k... k 1 1 k 3......... 1 1... 1 0 C A Theorem [Fischer and K., SICOMP `15] k-partition is impartial and (k-1)/2k-optimal. α(δ) is non-decreasing in Δ α(1) E v~mul(1,k) min {v (k-1, k-2,,0)}/k (1/k 2 ) i=1,,k k-i = (k-1)/2k Optimal Impartial Selection 36
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i Optimal Impartial Selection 37
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 0 i Optimal Impartial Selection 38
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 0 i Optimal Impartial Selection 39
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 0 i Optimal Impartial Selection 40
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 0 i Optimal Impartial Selection 41
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 0 i Optimal Impartial Selection 42
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 0 i Optimal Impartial Selection 43
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 0 i Optimal Impartial Selection 44
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 0 i Optimal Impartial Selection 45
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 0 i Optimal Impartial Selection 46
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 1 i Optimal Impartial Selection 47
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 1 i Optimal Impartial Selection 48
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 2 i Optimal Impartial Selection 49
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 2 i Optimal Impartial Selection 50
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 2 i Optimal Impartial Selection 51
The permutation mechanism Choose permutation (π 1,π 2,,π n ) of N, denote π <j = i<j {π i } {i } :=, d := 0 for j:= 1,,k if deg(π j, π <j {i }) d i := π j, d = deg(π j,π <j ) return i d = 2 i Optimal Impartial Selection 52
The permutation algorithm Theorem [Fischer and K., SICOMP `15] Permutation is impartial and 1/2-optimal. Proof by standard limit arguments d = 2 i Optimal Impartial Selection 53
Highly nominated agents Theorem [Fischer and K., SICOMP `15] For graphs with sufficiently large Δ, permutation is (3/4-ε)-optimal. Proof For large Δ, v Mul(Δ,k): v i (1-ε)(Δ/k) whp 0 B B @ k 1 k 1 k k k 2 1 k k 1 k 1 k... k k 2 k 2 k... k k 3 k... 1 1 k 3......... 1 1... 1 0 With W = B k C, α(δ) = E v~mul(δ,k) min Wv (1-ε)(Δ/k) min W (1,..,1) T 3/4 - ε 1 C C A Δ Δ/2 Δ/2 Optimal Impartial Selection 54
Plurality Any G G =1 contains a directed cycle Permutation mechanism always selects a vertex with deg(i) 1 If Δ = 1, then α = 1 If Δ = 2, then α 2/3 Approximation guarantees parametrized in Δ give better bounds for Δ 3 67/108 for permutation (quite technical) Optimal Impartial Selection 55
Upper bound for plurality Optimal Impartial Selection 56
Upper bound for plurality p 1 p 1 p 1 p 1 p 1 p 1 np 1 = 1 Optimal Impartial Selection 57
Upper bound for plurality p 1 p 1 p 2 p 4 p 1 p 1 p 1 p 5 p 1 p 1 np 1 = 1 p 3 p 5 p 1 +p 2 +p 3 +p 4 +(n 4)p 5 = 1 Optimal Impartial Selection 58
Upper bound for plurality p 1 p 1 p 2 p 4 p 2 p 1 p 1 p 1 p 5 p 2 p 1 p 1 np 1 = 1 p 3 p 5 p 1 +p 2 +p 3 +p 4 +(n 4)p 5 = 1 Optimal Impartial Selection 59
Upper bound for plurality p 1 p 1 p 2 p 4 p 2 p 1 p 1 p 1 p 5 p 2 p 1 p 1 np 1 = 1 p 3 p 5 p 1 +p 2 +p 3 +p 4 +(n 4)p 5 = 1 p 3 p 3 2p 2 +2p 3 1 Optimal Impartial Selection 60
Upper bound for plurality p 1 p 1 p 2 p 4 p 2 p 1 p 1 p 1 p 5 p 2 p 1 p 1 np 1 = 1 p 3 p 5 p 1 +p 2 +p 3 +p 4 +(n 4)p 5 = 1 p 3 p 4 p 4 p 4 p 3 2p 2 +2p 3 1 p 4 4p 4 1 Optimal Impartial Selection 61
Upper bound for plurality p 1 p 1 p 2 p 4 p 2 p 1 p 1 p 1 p 5 p 2 p 1 p 1 np 1 = 1 p 3 p 5 p 1 +p 2 +p 3 +p 4 +(n 4)p 5 = 1 p 3 p 6 p 6 p 4 p 4 p 5 p 5 p 4 p 3 2p 2 +2p 3 1 2p 5 +2p 6 1 p 4 4p 4 1 Optimal Impartial Selection 62
Upper bound for plurality p 1 p 1 p 2 p 4 p 2 p 1 p 1 p 1 p 5 p 2 p 1 p 1 np 1 = 1 p 3 p 5 p 1 +p 2 +p 3 +p 4 +(n 4)p 5 = 1 p 3 p 6 p 6 p 6 p 4 p 4 p 5 p 5 p 4 p 3 2p 2 +2p 3 1 2p 6 +(1-p 6 ) α 2 = p 6 /2+1/2 2p 5 +2p 6 1 p 4 4p 4 1 combining these inequalities: α 3/4-1/(8n) Optimal Impartial Selection 63
Selecting more than one agent Using permutation mechanism as a building block Selecting up to 2 agents [Bjelde, Fischer, K., WINE `15] 2/3-optimal while no impartial mechanism is better than 3/4-optimal Selecting exactly 2 agents 7/12-optimal while no impartial mechanism is better than 2/3-optimal Optimal Impartial Selection 64
Conclusions Impartial mechanisms select agents independently of their vote(s). Permutation mechanism is 1/2-optimal, i.e., it selects on average an agent with 1/2 of the maximal number of votes (subject to impartiality this is optimal) For highly nominated agents, it is 3/4-optimal. For plurality, it is 67/108-optimal and no impartial mechanism is better than 3/4-optimal. Multiple agents can be selected by running the permutation mechanism several times. Thank you. Optimal Impartial Selection 65