210 likes | 326 Views
Communication Complexity of Common Voting Rules Vincent Conitzer and Tuomas Sandholm CMU. Voting rules. Set of m candidates (alternatives) C Each one of n voters has preferences over candidates in some form (the voter’s vote ) Typically, ranking of the candidates
E N D
Communication Complexityof Common Voting RulesVincent Conitzer and Tuomas Sandholm CMU
Voting rules • Set of m candidates (alternatives) C • Each one of n voters has preferences over candidates in some form (the voter’s vote) • Typically, ranking of the candidates • Voting rule maps every vector of votes to a winner in C • E.g. plurality: • every voter votes for a single candidate (equiv. we only consider the candidate’s top-ranked candidate) • candidate with most votes wins
Communication protocols for voting rules • Voting rule does not say how votes are to be collected (or elicited) from voters • E.g. approval rule: • every voter labels every candidate as approved or not approved • the candidate that is approved by the most voters wins • Different communication protocols for approval: • 1) ask each voter for all her approved candidates simultaneously • 2) ask voter 1 for all her approved candidates, then voter 2, … • 3) ask all voters if they approve candidate c1, then c2, … • 2b), 3b): do not ask for approvals of candidates that no longer have a chance of winning • … • Which protocol requires the fewest bits (in the worst case)?
Communication complexity model [Yao 79] • Player i holds input xi • Players seek to compute the value of a known function f(x1, …, xn) • Mapping to {0, 1} • Players repeatedly broadcast bits according to protocol • When protocol terminates function value should be known • Deterministic communication complexity = worst case number of bits sent for one vector of xifor the best protocol • Nondeterministic protocols: next bit to be sent chosen nondeterministically • Allowed false positives OR false negatives as long as always correct for some nondeterministic choices
A lower bounding technique from communication complexity Player 1 0 1 • Tree of all possible communications: 0 1 0 1 Player 2 • Every input vector goes to some leaf f=0 f=1 f=1 f=0 x1, x2 x1’, x2 x1’, x2’ • If x1, …, xngoes to same leaf asx1’, …, xn’ then so must any mix of them (e.g. x1, x2’, x3, …, xn’) • Only possible if fis same in all 2n cases • Suppose we have a fooling set of t input vectors that all give the same function value f0, but for any two of them, there is a mix that gives a different value • Then all vectors must go to different leaves tree depth log(t) • Also lower bound on nondeterministic comm. complexity • With false positives or negatives allowed, depending on f0
In our setting… • Fooling set contains vectors of votes (one vote for each voter) such that • all vectors give the same winner a • for any two vectors, there is a way of taking some votes from the one, some from the others such that a no longer wins vote 1 vote 2 … vote n vote 1 vote 2 … vote n vote 1 vote2 … vote n a wins a wins a does not win • Communication complexity lower bound is log of the size of the fooling set
Approval rule • Every voter labels every candidate as approved or not approved • The candidate that is approved by the most voters wins • Trivial upper bound on communication: O(nm) • Can we do better?
Approval rule: lower bound 2 approve{a} S1’ 2 approveC – ({a} S1’) 2 approve{a} S2’ 2 approveC – ({a} S2’) … 2 approve{a} Si’ 2 approveC – ({a} Si’) … 2 approve{a} Sn’’ 2 approveC – ({a} Sn’’) 1 approves{a} 2 approve{a} S1’ 2 approveC – ({a} S1’) 2 approve{a} S2’ 2 approveC – ({a} S2’) … 2 approve {a} Si 2 approveC – ({a} Si’) … 2 approve{a} Sn’’ 2 approveC – ({a} Sn’’) 1 approves{a} 2 approve {a} S1 2 approve C – ({a} S1) 2 approve {a} S2 2 approve C – ({a} S2) … 2 approve {a} Si 2 approve C – ({a} Si) … 2 approve {a} Sn’ 2 approve C – ({a} Sn’) 1 approves {a} a wins 2n’(m-1) vectors (ways to choose the Si) wlog, suppose b Si - Si’ b now has 2 more votes and defeats a valid fooling set of size 2n’(m-1) so communication lower bound of Ω(nm)
Condorcet rule • Votes rank the candidates • If there is some candidate c such that for any other candidate c’, more voters prefer c to c’than vice versa (cwins the pairwise election against c’), then c wins • Does not always generate a winner • Trivial upper bound on communication: O(nm log m)
Better protocol for Condorcet • Let Sbe the set of noneliminated candidates (initialize to C) • Repeat until |S| = 1 • Choose any two candidates in S • Ask every voter which candidate she prefers (n bits) • Eliminate the loser (or both in case of a tie) • Note: at most m-1iterations of repeat loop • Let c be the remaining candidate • For every other c’in C, ask every voter whether c or c’ is preferred At most 2n(m-1) bits needed overall
Condorcet rule: lower bound 2S1’> a > C - S1’ 2C - S1’> a > S1’ 2S2’> a > C – S2’ 2C – S2’> a > S2’ … 2Si’> a > C – Si’ 2C – Si’> a > Si’ … 2Sn’’> a > C – Sn’’ 2C – Sn’’> a > Sn’’ 1a > C –{a} 2S1’> a > C - S1’ 2C - S1’> a > S1’ 2S2’> a > C – S2’ 2C – S2’> a > S2’ … 2 Si > a > C – Si 2C – Si’> a > Si’ … 2Sn’’> a > C – Sn’’ 2C – Sn’’> a > Sn’’ 1a > C –{a} 2 S1 > a > C - S1 2 C - S1> a > S1 2 S2 > a > C – S2 2 C – S2> a > S2 … 2 Si > a > C – Si 2 C – Si> a > Si … 2 Sn’ > a > C – Sn’ 2 C – Sn’> a > Sn’ 1 a > C –{a} a wins 2n’(m-1) vectors (ways to choose the Si) wlog, suppose b Si - Si’ b now wins pairwise election against a valid fooling set of size 2n’(m-1) so communication lower bound of Ω(nm)
Bucklin rule • Votes rank the candidates • Start with k=1 • Increase k until some candidate is ranked among the top k candidates by more than half the votes • Trivial upper bound on communication: O(nm log m)
Bucklin rule: can we find a better protocol? • Idea: do a binary search to find the final k • One step of the binary search in nm bits: • Ask every voter, for every candidate, if that candidate is among the top k 3 over half 1 over half 0 over half k 1 m/4 3m/8 m m/2 • Still not good enough: need log miterations of nmbits each
Improvement • Observation: we ask a lot of unnecessary queries • If we already found out that cwas not among v’s top k candidates, c cannot be among v’s top k’ < k candidates • If we already found out that cwas among v’s top k candidates, c must be among v’s top k’ > k candidates need not ask voter about her bottom m/2 again need not ask voter about her bottom m/2 or top m/4 again k 1 m/4 3m/8 m m/2 • Each time number of candidates to ask about halves • So need at most nm + nm/2 + nm/4 + … = 2nm bits
Bucklin rule: lower bound L = {l1, …, lm’}, R = {r1, …, rm’}, Si {1, …, m’}, L(Si) = {li: i Si}, R(Si) similar 1L(S1’)>R-R(S1’)>a> >L-L(S1’)>R(S1’) 1L-L(S1’)> R(S1’)>a> >L(S1’)>R-R(S1’) … 1L(Si’)>R-R(Si’)>a> >L-L(Si’)>R(Si’) 1L-L(Si’)>R(Si’)>a> >L(Si’)>R-R(Si’) … 1L(Sn’’)>R-R(Sn’’)>a> >L-L(Sn’’)>R(Sn’’) 1L-L(Sn’’)>R(Sn’’)>a> >L(Sn’’)>R-R(Sn’’) 1L(S1’)>R-R(S1’)>a> >L-L(S1’)>R(S1’) 1L-L(S1’)>R(S1’)>a> >L(S1’)>R-R(S1’) … 1 L(Si)>R-R(Si)>a> >L-L(Si)>R(Si) 1L-L(Si’)>R(Si’)>a> >L(Si’)>R-R(Si’) … 1L(Sn’’)>R-R(Sn’’)>a> >L-L(Sn’’)>R(Sn’’) 1L-L(Sn’’)>R(Sn’’)>a> >L(Sn’’)>R-R(Sn’’) 1 L(S1)>R-R(S1)>a> >L-L(S1)>R(S1) 1 L-L(S1)>R(S1)>a> >L(S1)>R-R(S1) … 1 L(Si)>R-R(Si)>a> >L-L(Si)>R(Si) 1 L-L(Si)>R(Si)>a> >L(Si)>R-R(Si) … 1 L(Sn’)>R-R(Sn’)>a> >L-L(Sn’)>R(Sn’) 1 L-L(Sn’)>R(Sn’)>a> >L(Sn’)>R-R(Sn’) a wins 2n’m’ vectors (ways to choose the Si) ljnow passes the post before a wlog, j Si - Si’ valid fooling set of size 2n’m’ so communication lower bound of Ω(nm)
STV rule • Votes rank the candidates • Repeat until one candidate remains: • Candidates’ plurality scores are tabulated • Lowest scoring candidate is eliminated and removed from votes (votes “transfer” to next most preferred remaining candidate) • Trivial upper bound on communication: O(nm log m)
Obvious protocol for STV is better • Obvious protocol: • Ask every voter for most preferred candidate (n log m bits) • Whenever a voter’s most preferred candidate is eliminated, ask for next most preferred candidate • How many bits in the second step? • Naïve analysis: nm log mbits • Better analysis: • Inround t exactly m-t+1 candidates remain • Loser can receive at most n/(m-t+1)votes • So at most nΣt1/(m-t+1) (O(n log m)) votes transfer, each transfer costs log m bits, so total of O(n (log m)2) bits
Borda rule • Votes rank the candidates • For every vote, • last ranked candidate gets no points • second-to-last gets 1 point • third-to-last gets 2 points • … • Candidate with most points wins • Trivial upper bound on communication: O(nm log m)
Borda rule: lower bound 2a>b>π1’(1)>…>π1’(m’) 2π1’(m’)>…>π1’(1)>b>a 2a>b>π2’(1)>…>π2’(m’) 2π2’(m’)>…>π2’(1)>b>a … 2a>b>πi’(1)>…>πi’(m’) 2πi’(m’)>…>πi’(1)>b>a … 2a>b>πn’’(1)>…>πn’’(m’) 2πn;’(m’)>…>πn’’(1)>b>a 1a>b>1>…>m’ 1m’>…>1>a>b 2a>b>π1’(1)>…>π1’(m’) 2π1’(m’)>…>π1’(1)>b>a 2a>b>π2’(1)>…>π2’(m’) 2π2’(m’)>…>π2’(1)>b>a … 2 a>b>πi(1)>…>πi(m’) 2πi’(m’)>…>πi’(1)>b>a … 2a>b>πn’’(1)>…>πn’’(m’) 2πn;’(m’)>…>πn’’(1)>b>a 1a>b>1>…>m’ 1m’>…>1>a>b 2 a>b>π1(1)>…>π1(m’) 2 π1(m’)>…>π1(1)>b>a 2 a>b>π2(1)>…>π2(m’) 2 π2(m’)>…>π2(1)>b>a … 2 a>b>πi(1)>…>πi(m’) 2 πi(m’)>…>πi(1)>b>a … 2 a>b>πn’(1)>…>πn’(m’) 2 πn;(m’)>…>πn’(1)>b>a 1 a>b>1>…>m’ 1 m’>…>1>a>b a wins (m’!)n’ vectors (ways to choose the πi) wlog, for some c, (πi)-1(c) <(πi’)-1(c) c now has at least 2 more points and defeats a valid fooling set of size (m’!)n’ so communication lower bound of Ω(nm log m)
Summary of results [Segal 04 draft] can be used to give alternative proofs of these two 1 – nondeterminstic upper bound only