Download presentation
Presentation is loading. Please wait.
Published byChristal McBride Modified over 6 years ago
1
Algorithmic Analysis of Elections: Voting Rules and Manipulability (minicourse)
Piotr Faliszewski AGH University Kraków, Poland
2
Why Are Elections Important?
Politics Electing leaders Deciding policies, laws … Business settings Stock holders make decisions in companies University Senates, hiring decisions Competitions (e.g., racing, Eurovision) Multiagent systems Meta-search engines Planning Recommendation systems Elections aggregate the opinions of the voters
3
Agenda Computational Social Choice Why study elections? Formal model
What are elections? How to model votes? What voting rules to use? Manipulating Elections Example Gibbard-Satterthwaite Theorem Median Voter Theorem Computational Social Choice Winner Determination Exercises
4
How to Study Elections? We need to answer several questions:
What are elections? How can we model voters’ preferences? What election rules are we interested in? A mathematical object, a pair E = (C,V). C – set of candidates, V – set of voters A single top guy? A ranking of candidates? Numerical values, “utility” a voter derives from having a particular candidate elected? An election rule is a function that given an election returns the set of winners.
5
Formal Model of Elections
L(C) – linear orders over C W(C) – weak orders over C E = (C, V) – an election C = {c1, c2, …, cm} – set of candidates V = (v1, v2, …, vn) – collection of voters Each vote is a ranking of the candidates: vi : c1 > c7 > c2 > … L(C) Finding a result: Social choice function: f: L(C)n C Social choice correspondence: f: L(C)n 2C Social welfare function: f: L(C)n W(C) Social welfare correspondence: f: L(C)n 2W(C)
6
Who Wins? C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b
7
Who Wins? C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b Plurality p = 3 c = 2 b = 1 d = 1 others = 0
8
Who Wins? C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b Borda a = 12 b = 22 c = 21 d = 20 v = 13 p = 17
9
Who Wins? C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b Veto a = 5 b = 6 c = 6 d = 6 v = 7 p = 5
10
Who Wins? Condorcet 4 c : a 3 4 c : b 3 4 c : d 3 5 c : v 2 4 c : p 3 C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b b a c p d v
11
Who Wins? C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b Approval a = 7 b = 6 c = 4 d = 6 v = 3 p = 4
12
Who Wins? C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b Approval a = 7 b = 6 c = 4 d = 6 v = 3 p = 4
13
Who Wins? C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b Dictatorship!
14
Which Election Rule Is Best?
Nondictatorship There is no voter vi such that f(vi) = vi Unrestricted domain Every vote is legal (i.e., every linear order can be cast as a vote, we can have as many candidates as we like) Unanimity If all voters prefer a to b, then a is socially preferred to b Independence of irrelevant alternatives Whether a is socially preferred to b is independent of how other candidates are ranked Arrow’s Theorem: There is no non-dictatorial social welfare function with unrestricred domain that satisfies unanimity and independence of irrelevant alternatives.
15
Agenda Computational Social Choice Why study elections? Formal model
What are elections? How to model votes? What voting rules to use? Manipulating Elections Example Gibbard-Satterthwaite Theorem Median Voter Theorem Computational Social Choice Winner Determination Exercises
16
Puzzle: Why would Mac win this elections?
Who Wins? Voting for an operating system to use in the lab. Rule: Borda Linux : 21 Windows : 20 Mac : 5 Votes: 7: Linux > Windows > Mac 6: Windows > Linux > Mac 2: Mac > Windows > Linux 1: Mac > Linux > Windows Puzzle: Why would Mac win this elections?
17
Which Election Rule Is Best?
Nondictatorship There is no voter vi such that f(vi) = top(vi) Unrestricted domain Every vote is legal (i.e., every linear order can be cast as a vote, we can have as many candidates as we like) Unanimity If all voters rank c first, then f(V) = c Gibbard-Satterthwaite Theorem: Consider a set C of at least three candidates. Dictatorship is the only social choice function f: L(C)n C that accepts unrestricted domain, is unanimous, and reporting truthful preferences is the dominant strategy for the votgers.
18
Gibbard-Satterthwaite Theorem
Gibbard--Satterthwaite Theorem: Consider a set C of at least 3 candidates. Dictatorship is the only social choice function f: L(C)n C that accepts unrestricted domains, is unanimous, and reporting truthful preferences is the dominant strategy for the votgers. History of the proofs 1973 – Gibbard 1975 – Satterthwaite 1978 – Schmeider/Sonnenschein 1983 – Barbera 1990 – Barbera/Peleg 2000 – Benoit 2001 – Sen 2001 – Remy 2009 – Cato 2012 – Ninjbat
19
Gibbard-Satterthwaite Theorem
Gibbard--Satterthwaite Theorem: Consider a set C of at least 3 candidates. Dictatorship is the only social choice function f: L(C)n C that accepts unrestricted domains, is unanimous, and reporting truthful preferences is the dominant strategy for the votgers. History of the proofs 1973 – Gibbard 1975 – Satterthwaite 1978 – Schmeider/Sonnenschein 1983 – Barbera 1990 – Barbera/Peleg 2000 – Benoit 2001 – Sen 2001 – Remy 2009 – Cato 2012 – Ninjbat
20
Proof of the G-S Theorem: Start
C = {a, b, c, …} – set of at least 3 candidates f: L(C)n C – social choice function (unanimous, nonmanipulable) v1: a > b > c > … v2: a > c > b > … … vn: b > c > a > … V Lemma (shifting): If f(V) = a and we form V’ by shifting b forward by one position in some vote, then f(V’) {a, b} v1: a > b > c > … v2: a > b > c > … … vn: b > c > a > … V’ Proof If f( V’ ) = c (c ≠ a, c ≠ b) then v2: a > c – v2 would prefer to lie in V’ v2: c > a – v2 would prefer to lie in V
21
Proof of the G-S Theorem: Step 1
v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b f(V0) ≠ b V0 What if f(V0) = b? v1: > ... > … > b v2: > ... > … > b … vt-1: > ... > … > b vt: > ... > … > b vn: > ... > … > b f(V’0) = b V’0
22
Proof of the G-S Theorem: Step 1
v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b f(V0) ≠ b V0 What if f(V0) = b? v1: a > ... > … > b v2: > ... > … > b … vt-1: > ... > … > b vt: > ... > … > b vn: > ... > … > b f(V’0) = b V’0
23
Proof of the G-S Theorem: Step 1
v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b f(V0) ≠ b V0 What if f(V0) = b? v1: a > ... > … > b v2: a > ... > … > b … vt-1: > ... > … > b vt: > ... > … > b vn: > ... > … > b f(V’0) = b V’0
24
Proof of the G-S Theorem: Step 1
v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b f(V0) ≠ b V0 What if f(V0) = b? v1: a > ... > … > b v2: a > ... > … > b … vt-1: a > ... > … > b vt: > ... > … > b vn: > ... > … > b f(V’0) = b V’0
25
Proof of the G-S Theorem: Step 1
v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b f(V0) ≠ b V0 What if f(V0) = b? v1: a > ... > … > b v2: a > ... > … > b … vt-1: a > ... > … > b vt: a > ... > … > b vn: > ... > … > b f(V’0) = a V’0 A step before vt also preferred a to b, so vt would have preferred to lie then This had to happen due to unanimity
26
Proof of the G-S Theorem: Step 1
v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b f(V0) ≠ b V0 shift b to top position as long as it does not become a winner v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: k > ... > … > b Vr+1: a1 > ... > … > b vn: awhatever> … > b V1 f(V1) ≠ b
27
Proof of the G-S Theorem: Step 1
v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b f(V0) ≠ b V0 shift b to top position as long as it does not become a winner v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: k > ... > … > b Vr+1: a1 > ... > … > b vn: awhatever> … > b v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: b > k > … > … Vr+1: a1 > ... > … > b vn: awhatever> … > b V1 V2 shift b in vr f(V1) ≠ b f(V2) = b
28
Proof of the G-S Theorem: Step 1
If vi with i > r changes a vote to another one, then b is still winning (otherwise, this voter would lie in V2) v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b V0 v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: k > ... > … > b Vr+1: a1 > ... > … > b vn: awhatever> … > b v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: b > k > … > … Vr+1: a1 > ... > … > b vn: awhatever> … > b V1 V2 f(V1) ≠ b f(V2) = b
29
Proof of the G-S Theorem: Step 1
If vi with i > r changes a vote to another one, then b is still winning (otherwise, this voter would lie in V2) v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b V0 If vi with i < r changes a vote to another one, where b is first, b still is winning (otherwise, this voter would lie in the new profile) v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: k > ... > … > b Vr+1: a1 > ... > … > b vn: awhatever> … > b v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: b > k > … > … Vr+1: a1 > ... > … > b vn: awhatever> … > b V1 V2 f(V1) ≠ b f(V2) = b
30
Proof of the G-S Theorem: Step 1
Conclusion If v1 … vr rank b first, then b is winning If vr … vn rank b last, then b is losing v1: > ... > … > b v2: > ... > … > b … vn: > ... > … > b V0 v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: k > ... > … > b Vr+1: a1 > ... > … > b vn: awhatever> … > b v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: b > k > … > … Vr+1: a1 > ... > … > b vn: awhatever> … > b V1 V2 f(V1) ≠ b f(V2) = b
31
Proof of the G-S Theorem: Step 2
If v1 … vr rank b first, then b is winning If vr … vn rank b last, then b is losing We want to show f(V3) = k f(V4) = k shift b to the top in v1 … vr-1 v1: > ... > … > b v2: > ... > … > b … vr-1: > ... > … > b vr: k > ... > … > b Vr+1: > ... > … > b vn: > ... > … > b v1: b > k > … > … v2: b > k > … > … … vr-1: b > k > … > … vr: k > ... > … > b vr+1: k > ... > … > b vn: k > ... > … > b f(V3’) = k V3 V4 v1: k > ... > … > b v2: k > ... > … > b … vr-1: k > ... > … > b vr: k > ... > … > b Vr+1: k > ... > … > b vn: k > ... > … > b V3’ shift k to the top position everywhere unanimity
32
Proof of the G-S Theorem: Step 2
If v1 … vr rank b first, then b is winning If vr … vn rank b last, then b is losing We want to show f(V3) = k f(V4) = k f(V5) = k v1: > ... > … > b v2: > ... > … > b … vr-1: > ... > … > b vr: k > ... > … > b Vr+1: > ... > … > b vn: > ... > … > b v1: b > k > … > … v2: b > k > … > … … vr-1: b > k > … > … vr: k > ... > … > b vr+1: k > ... > … > b vn: k > ... > … > b v1: b > k > … > … v2: b > k > … > … … vr-1: b > k > … > … vr: k > b > … > … vr+1: k > ... > … > b vn: k > ... > … > b V3 V4 V5 Shift b – no winner change or vr would want to lie
33
Proof of the G-S Theorem: Step 2
If v1 … vr rank b first, then b is winning If vr … vn rank b last, then b is losing Assume f(V3) = g, g ≠ k f(V4) = k f(V5) = k v1: > ... > … > b v2: > ... > … > b … vr-1: > ... > … > b vr: k > ... > … > b Vr+1: > ... > … > b vn: > ... > … > b v1: b > k > … > … v2: b > k > … > … … vr-1: b > k > … > … vr: k > ... > … > b vr+1: k > ... > … > b vn: k > ... > … > b v1: b > k > … > … v2: b > k > … > … … vr-1: b > k > … > … vr: k > b > … > … vr+1: k > ... > … > b vn: k > ... > … > b V3 V4 V5 Shift b – no winner change or vr would want to lie
34
Proof of the G-S Theorem: Step 2
If v1 … vr rank b first, then b is winning If vr … vn rank b last, then b is losing Assume f(V3) = g, g ≠ k By shifting lemma f(V6) {b, g} If g were winning in V6, then vr could shift b to top, and b would win vr prefers b to g (or b = g) f(V5) = k v1: > ... > … > b v2: > ... > … > b … vr-1: > ... > … > b vr: k > ... > … > b Vr+1: > ... > … > b vn: > ... > … > b v1: b > k > … > … v2: b > k > … > … … vr-1: b > k > … > … vr: k > b > … > … vr+1: k > ... > … > b vn: k > ... > … > b V3 V5 v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: k > b > … Vr+1: > ... > … > b vn: > ... > … > b V6 shift b to top in v1 … vr-1 and second to last in vr
35
Proof of the G-S Theorem: Step 2
If v1 … vr rank b first, then b is winning If vr … vn rank b last, then b is losing 3) So… b = f(V5) = k contradiction! Assume f(V3) = g, g ≠ k f(V5) = k 2) shifting k in vr+1 … vn cannot change the result from b v1: > ... > … > b v2: > ... > … > b … vr-1: > ... > … > b vr: k > ... > … > b Vr+1: > ... > … > b vn: > ... > … > b v1: b > k > … > … v2: b > k > … > … … vr-1: b > k > … > … vr: k > b > … > … vr+1: k > ... > … > b vn: k > ... > … > b 1) shifting k in v1 … vr-1 cannot change the result from b V3 V5 f(V6) = b v1: b > ... > … v2: b > ... > … … vr-1: b > ... > … vr: k > b > … Vr+1: > ... > … > b vn: > ... > … > b V6 shift b to top in v1 … vr-1 and second to last in vr shift k to 2nd best in v1 … vr-1 shift k to top in vr+1 … vn
36
Proof of the G-S Theorem: Step 3
If v1 … vr rank b first, then b is winning If vr … vn rank b last, then b is losing v1: > ... > … v2: > ... > … … vr-1: > ... > … vr: k > ... > … Vr+1: > ... > … vn: > ... > … v1: > ... > … > b v2: > ... > … > b … vr-1: > ... > … > b vr: k > ... > … > b Vr+1: > ... > … > b vn: > ... > … > b If v1 … vn rank b last, but vr ranks k first, k wins Proof is complete! v1: b > ... > c v2: b > ... > c … vr-1: b > ... > c vr: b > … > c Vr+1: a > ... > c vn: a > … > c V7 V8 shift b back V9 f(V7) {k, b} (by shifting lemma) f(V8) = k (by step 2) If k = b then we’re good! If k ≠ b then… rerun the whole proof for c in the place of b We discover pivotal voter vm for c. b must win in V9 (step 1) Top choice of vm must win in V9 Thus m ≤ r Symmetrically, r ≤ m f(V7) {k, c}
37
Solution: Choose median vote
How to Circumvent G-S? Consider a mayor of a city (which happens to be a line) asking the citizens where the train station should be located. Each citizen suggests the position for the train station. How to aggregate these votes? Solution: Choose median vote
38
Single-Peaked Preferences
> > > > > > > > > > > > Def. Preferences are single-peaked if there is an order S over the candidates such that for every vote v with preference order > it holds that: If (c S d S e) or (e S d S c) then If c > d then d > e left right
39
Median Voter Theorem > > > > > > > >
> > > > > > > > > > > > > > > > > > > > > > > > > > > > left right Theorem If election E = (C,V) is single-peaked and the numer of voters is odd, then The top-ranked candidate of the median voter is a Condorcet winner Choosing the Condorcet winner is strategy-proof median voter
40
Agenda Computational Social Choice Why study elections? Formal model
What are elections? How to model votes? What voting rules to use? Manipulating Elections Example Gibbard-Satterthwaite Theorem Median Voter Theorem Computational Social Choice Winner Determination Exercises
41
Computational issues in elections
Winner determination
42
Who Wins? Condorcet 4 c : a 3 4 c : b 3 4 c : d 3 5 c : v 2 4 c : p 3 C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b b a c p d v
43
Condorcet-Consistent Rules
C = { a, b, c, d, p, v } v1: p > b > a > v > c > d v2: p > b > d > v > a > c v3: p > c > b > d > v > a v4: b > d > a > c > v > p v5: d > c > b > a > v > p v6: c > v > b > d > p > a v7: c > d > a > v > p > b Def. A voting rule is Condorcet-consistent if it always elects the Condorcet winner whenever it exists. Example. Condorcet winner does not always exist (a group of rational people can be irrational; surprise? ) b a c p d v
44
Condorcet-Consistent Rules
C = { a, b, c } v1: a > b > c v2: b > c > a v3: c > a > b Def. A voting rule is Condorcet-consistent if it always elects the Condorcet winner whenever it exists. Example. Condorcet winner does not always exist (a group of rational people can be irrational; surprise? ) Rules Copeland Maximin Dodgson … Pairwise comparisons 2 a : b 1 2 b : c 1 2 c : a 1 a > b > c > a
45
Condorcet-Consistent Rules
Def. A voting rule is Condorcet-consistent if it always elects the Condorcet winner whenever it exists. Notation E = (C, V) – an election NE(c,d) =|{v V | v: c > d}| c defeats d if NE(c,d) > NE(d,c) c ties d if NE(c,d) = NE(d,c) A Condorcet winner defeats everyone else Rules Copeland Maximin Dodgson Copelandα Score: scoreE(c) = |{d C| c defeats d}| + α |{d C| c ties d}| Maximin Score: scoreE(c) = mind C NE(c,d) Dodgson Score: scoreE(c) = smallest number of swaps of adjacent candidates that make c a Condorcet winner
46
Dodgson Score is NP-Complete
Reduction from X3C Election C = {1,2, …, 3k, 1’, 2’, … 3k’, S1, …, Sn, p} X3C votes: 1 > 3 > 4 > S1 > p > … 1 > 3 > 6 > S2 > p > … 2 > 4 > 5 > S3 > p > … … 3 1 Equalizing votes: 1 > 1’ > p > … 4 > 4’ > p > … … 4 6 2 5 ensure that every set element is preferred to p in the same numer of votes
47
Dodgson Score is NP-Complete
Reduction from X3C Election C = {1,2, …, 3k, 1’, 2’, … 3k’, S1, …, Sn, p} X3C votes: 1 > 3 > 4 > S1 > p > … 1 > 3 > 6 > S2 > p > … 2 > 4 > 5 > S3 > p > … … 3 1 Equalizing votes: 1 > 1’ > p > … 4 > 4’ > p > … … 4 6 2 5 Defeating votes: 1 > 2 > … > 3k > 1’ > 2’ > … > 3k’ > p > … … enough to ensure that for each set element i we have NE(i,p) – NE(p,i) = 1
48
Dodgson Score is NP-Complete
Reduction from X3C Election C = {1,2, …, 3k, 1’, 2’, … 3k’, S1, …, Sn, p} X3C votes: 1 > 3 > 4 > S1 > p > … 1 > 3 > 6 > S2 > p > … 2 > 4 > 5 > S3 > p > … … 3 1 Equalizing votes: 1 > 1’ > p > … 4 > 4’ > p > … … 4 6 2 5 Defeating votes: 1 > 2 > … > 3k > 1’ > 2’ > … > 3k’ > p > … … p defeats everyone except for the set elements p has Dodgson score 4k if and only if there is an exact cover
49
Dodgson in Single-Peaked Elections
> > > > > > > > > > > > > > > > > > > > > > > > > > > > left right Theorem If election E = (C,V) is single-peaked and the numer of voters is odd, then the top-ranked candidate of the median voter is a Condorcet winner median voter Theorem Computing Dodgson winners under single-peaked elections is in P
50
Computational issues in elections
Cheating in elections Winner determination Manipulation control bribery Gibbard-Satterthwaite Theorem
51
Complexity Barrier Approach
Model: Represent each cheating strategy as a computational decision problem. Complexity barrier approach: If manipulating elections is hard, then we can ignore the fact that it is in principle possible. Approach initiated by Bartholdi, Tovey, and Trick in the late 80s and the early 90s Outdated!
52
Complexity Barrier: Results
Effects of complexity barrier research Dozens of computational problems identified Multiple standard election systems analyzed Quite thorough understanding of worst case complexity of elections Complications… We would like some of the problems to be efficiently computable Determining winners Organizing a campaign Worst-case analysis seems problematic…
53
Computational issues in elections
Cheating in elections Winner determination Manipulation control Analyzing elections bribery Margin of victory Measures of success Gibbard-Satterthwaite Theorem
54
How to measure candidate performance?
15 10 11 9 15 C = { , , , , } V = (v1, … , v6) V1: V2: V3: V4: V5: V6: Borda
55
How to measure candidate performance?
21 16 17 15 21 Copeland C = { , , , , } V = (v1, … , v6) win = 1, tie = 0.5, lose = 0 V1: :1.5 V2: 1: V3: :1 V4: 3: V5: :3.5 V6: Borda
56
How to measure candidate performance?
21 16 17 15 21 Copeland C = { , , , , } V = (v1, … , v6) win = 1, tie = 0, lose = -1 V1: :-1 V2: -2: V3: :-2 V4: 2: V5: :3 V6: Borda
57
Thank you!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.