communication complexity of common voting rules vincent conitzer and tuomas sandholm cmu
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
Communication Complexityof 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
• 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 xi for 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
• Tree of all possible communications:
Player 1
Player 2 0 01 1
10
f=0 f=0f=1f=1• Every input vector goes to some leaf x1, x2 x1’, x2
x1’, x2’• If x1, …, xn goes to same leaf as x1’, …, xn’ then so must any mix of them (e.g. x1, x2’, x3, …, xn’)
• Only possible if f is 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 1vote 2
…vote n
vote 1vote 2
…vote n
vote 1vote 2
…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 bound2 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 wins2n’(m-1) vectors
(ways to choose the Si)
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}
wlog, suppose b Si - Si’
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}
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 (c wins 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 S be 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-1 iterations 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 bound2 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)
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}
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}
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
• Still not good enough: need log m iterations of nm bits each
1 mm/2
3 over half
m/4
0 over half
1 over half
3m/8
k
Improvement• Observation: we ask a lot of unnecessary queries
– If we already found out that c was not among v’s top k candidates, c cannot be among v’s top k’ < k candidates
– If we already found out that c was among v’s top k candidates, c must be among v’s top k’ > k candidates
• Each time number of candidates to ask about halves
• So need at most nm + nm/2 + nm/4 + … = 2nm bits
1 mm/2m/4 3m/8
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
Bucklin rule: lower bound
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 wins2n’m’ vectors
(ways to choose the Si)
wlog, j Si - Si’ lj now passes the
post before avalid fooling set of size 2n’m’
so communication lower bound of Ω(nm)
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’’)
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’’)
L = {l1, …, lm’}, R = {r1, …, rm’}, Si {1, …, m’}, L(Si) = {li: i Si}, R(Si) similar
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 m bits
• Better analysis:– In round 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 bound2 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 avalid fooling set of size (m’!)n’
so communication lower bound of Ω(nm log m)
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
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
Summary of resultsrule lower bound upper bound
plurality Ω(n log m) O(n log m)
plurality with runoff Ω(n log m) O(n log m)
STV Ω(n log m) O(n (log m)2)
Condorcet Ω(nm) O(nm)
approval Ω(nm) O(nm)
Bucklin Ω(nm) O(nm)
cup Ω(nm) O(nm)
maximin Ω(nm) O(nm) 1
Borda Ω(nm log m) O(nm log m)
Copeland Ω(nm log m) O(nm log m)
ranked pairs Ω(nm log m) O(nm log m)1 – nondeterminstic upper bound only
[Segal 04 draft] can be used to give alternative proofs of these
two
Thank you for your attention!