avoiding manipulation in elections through computational complexity vincent conitzer computer...

35
Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture 15-892

Upload: darrell-mccarthy

Post on 18-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Avoiding manipulation in elections through computational

complexity

Vincent Conitzer Computer Science Department

Carnegie Mellon University

Guest lecture 15-892

Page 2: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Introduction

. [Bartholdi, Tovey, Trick 1989]

[Bartholdi, Orlin 1991]

Page 3: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Voting• In multiagent systems, agents may have conflicting preferences• Based on reported preferences, a preference aggregator often

must choose one candidate from the possible outcomes– Deciding on a leader/coordinator/representative– Joint plans– Allocations of tasks/resources– …

• Voting is the most general preference aggregation method– Applicable to any preference aggregation setting– No side payments

Page 4: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Voting

“A > B > C” “A > C > B” “B > A > C”

Winner

(probably A here)

Voter 1 Voter 2 Voter 3

VOTING PROTOCOL

Page 5: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Manipulation in voting• A voter is said to manipulate when it does not rank the

candidates according to its true preferences• Example: not ranking your most preferred candidate first

because that candidate has no chance anyway• Why is manipulation bad?

– Protocol is designed to maximize (some measure of) social welfare with respect to the reported preferences

• Manipulation will cause a suboptimal outcome to be chosen

– Also: if the protocol actually relies on manipulation to choose the right outcome…

– … then there exists another nonmanipulable protocol that will lead to the same outcome (Revelation Principle)

Page 6: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Manipulation in voting

“Gore” “Bush” “Gore” “Bush”

Nader > Gore > Bush• Voting truthfully (for Nader) might let Bush win, certainly will not get Nader to win

• So, better rank Gore first

“Gore”

MANIPULATION!!!

Page 7: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Some well-known protocols• Plurality: candidate with the most votes wins• Borda: candidate gets m-1 points for each vote, but also m-2 points for each second

place in a vote, m-3 for each third place, …• Maximin:

– From the complete rankings, for each pair of candidates, we can deduce how each voter would have voted with only these two candidates

– This defines (m choose 2) “pairwise elections”– In Maximin, winner is the candidate with the best score in her worst pairwise

• Single Transferable Vote (STV)– Each round, candidate with fewest votes drops out– When your candidate drops out, your vote transfers to your next most preferred (remaining)

candidate– Continue until one candidate remains

• Note: now our voter can safely vote for Nader, then let the vote transfer to Gore• Still manipulable in other cases

Seminal result (Gibbard-Satterthwaite): all nondictatorial voting protocols with >2 candidates are manipulable!

Page 8: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Software agents may manipulate more• Human voters may not manipulate because:

– Do not consider the option of manipulation

– Insufficient understanding of the manipulability of the protocol

– Manipulation algorithms may be too tedious to run by hand

• For software agents, voting algorithms must be coded explicitly– Rational strategic algorithms are preferred

– The (strategic) voting algorithm needs to be coded only once

– Software agents are good at running algorithms

Key idea: use computational complexity as a barrier to manipulation!

Page 9: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Computational manipulation problem • The simplest version of the manipulation problem (defined relative to a protocol):

• CONSTRUCTIVE-MANIPULATION. We are given the (unweighted) votes of the other candidates, and a candidate c. We are asked if we can cast our (single) vote to make c win.

• E.g. for the Borda protocol:• Voter 1 votes A > B > C; Voter 2, B > A > C; Voter 3, C > A > B• Borda scores are now: A: 4, B: 3, C: 2• Can we make B win?• Answer: YES. Vote B > C > A (Borda scores: A: 4, B: 5, C: 3)

• Utility-theoretically, the special case where the manipulator has utility 1 for c and 0 for everyone else

Page 10: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Prior research

• Theorem. CONSTRUCTIVE-MANIPULATION is NP-complete for the second-order Copeland protocol. [Bartholdi, Tovey, Trick 1989]

• Theorem. CONSTRUCTIVE-MANIPULATION is NP-complete for the STV protocol. [Bartholdi, Orlin 1991]

• All the other protocols are easy to manipulate (in P)

Page 11: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Universal voting protocol tweaks to make manipulation hard

[Conitzer, Sandholm IJCAI-2003]

Page 12: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

“Tweaks” for protocols

• Hardness of manipulation is one factor in choosing a voting protocol, but…

• Many existing protocols have other nice properties– Each attempts to maximize a certain notion of welfare

• It would be nice to be able to tweak protocols:– Change the protocol slightly so that

• Hardness of manipulation is increased (significantly)• (Most of) the original protocol’s properties still hold

• It would also be nice to have a single, universal tweak for all (or many) protocols

• A preround turns out to be such a tweak!• And it introduces hardness far beyond previous results

Page 13: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Adding a preround to the protocol• A preround proceeds as follows:

– Pair the candidates– Each candidate faces its opponent in a pairwise election– The winners proceed to the original protocol

Original protocol

Page 14: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Preround example (with Borda)

Voter 1: A>B>C>D>E>F

Voter 2: D>E>F>A>B>C

Voter 3: F>D>B>E>C>A

A gets 2 points

F gets 3 points

D gets 4 points and wins!

Voter 1: A>D>F

Voter 2: D>F>A

Voter 3: F>D>A

A vs B: A ranked higher by 1,2

C vs F: F ranked higher by 2,3

D vs E: D ranked higher by all

Match A with B

Match C with F

Match D with E

STEP 1:

A. Collect votes and

B. Match candidates

(no order required)

STEP 2:

Determine winners of preround

STEP 3:

Infer votes on remaining candidates

STEP 4:

Execute original protocol (Borda)

Page 15: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Matching first, or vote collection first?

• Match, then collect“A vs C,

B vs D.”“D > C > B > A”

“A vs C,

B vs D.”

“A vs C,

B vs D.”

“A > C > D > B”

• Collect, then match (randomly)

Page 16: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Could also interleave…• Elicitor alternates between:

– (Randomly) announcing part of the matching– Eliciting part of each voter’s vote

“A vs F”“C > D”

“B vs E”“A > E”

“A vsF”

Page 17: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Main result: how hard is manipulation?

• Manipulation hardness differs depending on the order/interleaving of preround matching and vote collection:

• Theorem. NP-hard if preround matching is done first• Theorem. #P-hard if vote collection is done first• Theorem. PSPACE-hard if the two are interleaved (for a

complicated interleaving protocol)• In each case, the tweak introduces the hardness for any

protocol satisfying certain sufficient conditions– All of Plurality, Borda, Maximin, STV satisfy the conditions in all

cases they are hard to manipulate with the preround

Page 18: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

NP-hard with preround matching first• Theorem. (Sufficient condition) Suppose that in a protocol we can

construct a set of votes for the other voters s.t.– There is a set of candidates K that could possibly defeat our preferred candidate p

in the final round (original protocol)– However, there is another set of candidates L of “nemeses” of K– For each candidate c_k in K, there are some candidates in L such that if even one

of these candidates continues, c_k will not defeat p in the final round– The candidates in L are matched in pairs (c_{+l} and c_{-l}), and each pair is tied

in their pairwise election

Then manipulation is NP-hard!• Proof idea: Suppose each pair of candidates in L faces each other in the

preround. We have to choose between nemeses such that each candidate in K gets at least one nemesis SATISFIABILITY.

Page 19: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Still not done…• Now we still have to show that protocols meet this

complicated condition

• Simple example: Plurality– Assume that for each c_k in K, each of its nemeses

would steal some of its votes in Plurality• That is, c_k is ranked below (only) its nemeses in these votes

– Then, any of the nemeses going on to the final round would push c_k below p

Page 20: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Conclusions on tweaks• We have shown that it is possible to tweak protocols…

– A tweak preserves many of the protocol’s properties

• …in order to drastically increase computational hardness of manipulation– If manipulation is computationally hard, it is less likely to occur

• The tweak we introduced is a preround– One round of pairwise elimination

• This makes manipulation NP-hard, #P-hard, or even PSPACE-hard depending on whether scheduling the preround is done before, after, or during vote collection– First results where manipulation is more than NP-hard

Page 21: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Hardness of manipulationwith few candidates

[Conitzer, Sandholm AAAI-2002]

[Conitzer, Lang, Sandholm TARK-2003]

Page 22: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

What if there are few candidates?

• The previous results rely on the number of candidates (m) being unbounded

• We designed a recursive algorithm for individually manipulating STV with O(1.62^m) calls (and usually much fewer)

• E.g. 20 candidates: 1.62^20 = 15500

• Sometimes the candidate space is much larger– Voting over allocations of goods/tasks; California

• But what if it is not?– A typical election for a representative will only have a few

Page 23: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Manipulation complexity with few candidates• Ideally, would like complexity results for constant number of

candidates• But then manipulator can simply evaluate each possible vote

– assuming the others’ votes are known

• Even for coalitions, only polynomially many effectively different votes

• However, if we place weights on votes, complexity may return…

Unweightedvoters

Weightedvoters

Individualmanipulation

Coalitionalmanipulation

Can behard easy

easy

easy

Constant #candidatesUnbounded #candidates

Can behard

Can behard

Can behard

Potentiallyhard

Unweightedvoters

Weightedvoters

Page 24: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Why study weighted coalitional manipulation?

• In large elections, usually an effective individual manipulation does not exist

• Many real world elections have weights– E.g. electoral college– Weights more likely with heterogeneous software agents

• Weighted coalitional manipulation may be more realistic than assuming unbounded number of candidates

• Theorem Whenever weighted coalitional manipulation is hard under certainty, individual weighted manipulation is hard under uncertainty

• Theorem Whenever evaluating an election is hard with independent weighted voters, it is hard with correlated unweighted voters

Page 25: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Constructive manipulation now becomes:

• We are given the weighted votes of the others (with the weights)• And we are given the weights of members of our coalition• Can we make our preferred candidate c win?

• E.g. another Borda example:• Voter 1 (weight 4): A>B>C, voter 2 (weight 7): B>A>C• Manipulators: one with weight 4, one with weight 9• Can we make C win?• Yes! Solution: weight 4 voter votes C>B>A, other C>A>B

– Borda scores: A: 24, B: 22, C: 26

Page 26: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Destructive manipulation

• Exactly the same, except:• Instead of a preferred candidate• We now have a hated candidate• Our goal is to make sure that the hated candidate

does not win (whoever else wins)

• Utility-theoretically: hated candidate gives utility 0, everyone else utility 1

Page 27: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Some other well-known protocols

• Veto: candidate with the fewest vetoes wins• Copeland: the candidate with the most pairwise election

victories wins• Cup: candidates are arranged in a tennis-style tournament

and defeat each other based on pairwise elections• Plurality with runoff : the two candidates with the highest

plurality score advance to the “runoff”; winner is winner of pairwise election

Page 28: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

A simple example of hardness• We want: given the other voters’ votes…• … it is NP-complete to find votes for the manipulators to achieve their

objective• Simple example: veto protocol, constructive manipulation, 3 candidates• Suppose, from the given votes, p has received 2K-1 more vetoes than a,

and 2K-1 more than b• The manipulators’ combined weight is 4K (every individual has weight

a multiple of 2)• The only way for p to win is if the manipulators veto a with 2K weight,

and b with 2K weight• But this is doing PARTITION => NP-complete!

Page 29: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

What does it mean for a protocol to be easy to manipulate?

• Given the other voters’ votes…• …there is a polynomial-time algorithm to find votes for the

manipulators to achieve their objective• If the protocol is easy to run, it is easy to check whether a vector of

votes for the manipulators is successful• Lemma: Suppose the protocol satisfies (for some number of

candidates):– If there is a successful (constructive, destructive) manipulation– Then there is a successful (constructive, destructive) manipulation where all

manipulators vote identically.

• Then the protocol is easy to manipulate– Simply check all possible orderings of the candidates (constant)

Page 30: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Example: Maximin with 3 candidates is easy to manipulate constructively

• Recall: candidate’s Maximin score = worst score in any pairwise election

• 3 candidates: p, a, b. Manipulators want p to win• Suppose there exists a vote vector for the manipulators that makes p win• WLOG can assume that all manipulators rank p first

– So, they either vote p > a > b or p > b > a

• Case I: a’s worst pairwise is against b, b’s worst against a– One of them would have a maximin score of at least half the vote weight, and

win (or be tied for first) => cannot happen

• Case II: one of a and b‘s worst pairwise is against p– Say it is a; then can have all the manipulators vote p > a > b

• Will not affect p or a’s score, can only decrease b’s score

Page 31: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Why do we care about the exact number of candidates required

for hardness?• If your election has 3 candidates, and the protocol becomes hard to manipulate only at 4 candidates, that hardness is of little use to you!

• If you do not know beforehand how many candidates the election will have, the lower the hardness occurs, the better the chances you will get the hardness

• The minimal number of candidates for hardness can be used to compare and quantify the relative hardness of manipulation across protocols– Hardness of manipulation is only one factor in deciding on a protocol, so it is

good to know how much harder one protocol is to manipulate than another

Page 32: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Results for constructive manipulation

Page 33: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Results for destructive manipulation

Page 34: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Worst-case hardness…

• All of these are worst-case measures

• It may not prevent all (or even most) instances from being manipulable

• It would be nice if we had some sort of average case hardness…

• In the works: impossibility result – Impossible to make a constant fraction of instances

hard to manipulate in class of protocols

Page 35: Avoiding manipulation in elections through computational complexity Vincent Conitzer Computer Science Department Carnegie Mellon University Guest lecture

Thank you for your attention!