Algorithmic Analysis of Elections: Voting Rules and Manipulability (minicourse) Piotr Faliszewski AGH University Kraków, Poland.

Slides:



Advertisements
Similar presentations
Computational Game Theory Amos Fiat Spring 2012
Advertisements

Chapter 10: The Manipulability of Voting Systems Lesson Plan
6.896: Topics in Algorithmic Game Theory Lecture 18 Constantinos Daskalakis.
On the Robustness of Preference Aggregation in Noisy Environments Ariel D. Procaccia, Jeffrey S. Rosenschein and Gal A. Kaminka.
Ioannis Caragiannis, Jason A. Covey, Michal Feldman, Christopher M. Homan, Christos Kaklamanis, Nikos Karanikolask, Ariel D. Procaccia, Je ff rey S. Rosenschein.
The Computational Difficulty of Manipulating an Election Tetiana Zinchenko 05/12/
Common Voting Rules as Maximum Likelihood Estimators Vincent Conitzer (Joint work with Tuomas Sandholm) Early version of this work appeared in UAI-05.
Presented by: Katherine Goulde
Voting and social choice Vincent Conitzer
1 EC9A4 Social Choice and Voting Lecture 3 EC9A4 Social Choice and Voting Lecture 3 Prof. Francesco Squintani
Algorithmic Game Theory Uri Feige Robi Krauthgamer Moni Naor Lecture 9: Social Choice Lecturer: Moni Naor.
Voting and social choice Looking at a problem from the designers point of view.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. CHOOSING.
Mark Wang John Sturm Sanjeev Kulkarni Paul Cuff.  Basic Background – What is the problem?  Condorcet = IIA  Survey Data  Pairwise Boundaries = No.
How “impossible” is it to design a Voting rule? Angelina Vidali University of Athens.
IMPOSSIBILITY AND MANIPULABILITY Section 9.3 and Chapter 10.
CS 886: Electronic Market Design Social Choice (Preference Aggregation) September 20.
Complexity of manipulating elections with few candidates Vincent Conitzer and Tuomas Sandholm Carnegie Mellon University Computer Science Department.
Computing Kemeny and Slater Rankings Vincent Conitzer (Joint work with Andrew Davenport and Jayant Kalagnanam at IBM Research.)
Arrow’s impossibility theorem EC-CS reading group Kenneth Arrow Journal of Political Economy, 1950.
The Complexity of Elections: A New Domain for Heuristic Computation Piotr Faliszewski AGH University of Science and Technology, Kraków, Poland
Socially desirable approximations for Dodgson’s voting rule Ioannis Caragiannis (University of Patras) Christos Kaklamanis (University of Patras) Nikos.
Complexity of Computing the Margin of Victory for Various Voting Rules CAEC, Nov. 18, 2011 Ronald L. RivestEmily ShenLirong Xia.
Using computational hardness as a barrier against manipulation Vincent Conitzer
Edith Elkind Nanyang Technological University, Singapore Piotr Faliszewski AGH Univeristy of Science and Technology, Poland Arkadii Slinko University of.
Approximating Optimal Social Choice under Metric Preferences Elliot Anshelevich Onkar Bhardwaj John Postl Rensselaer Polytechnic Institute (RPI), Troy,
Ties Matter: Complexity of Voting Manipulation Revisited based on joint work with Svetlana Obraztsova (NTU/PDMI) and Noam Hazon (CMU) Edith Elkind (Nanyang.
Alex Tabarrok Arrow’s Theorem.
CPS Voting and social choice
Social choice theory = preference aggregation = voting assuming agents tell the truth about their preferences Tuomas Sandholm Professor Computer Science.
Campaign Management via Bribery Piotr Faliszewski AGH University of Science and Technology, Poland Joint work with Edith Elkind and Arkadii Slinko.
Social Choice Theory By Shiyan Li. History The theory of social choice and voting has had a long history in the social sciences, dating back to early.
Common Voting Rules as Maximum Likelihood Estimators Vincent Conitzer and Tuomas Sandholm Carnegie Mellon University, Computer Science Department.
Complexity of unweighted coalitional manipulation under some common voting rules Lirong XiaVincent Conitzer COMSOC08, Sep. 3-5, 2008 TexPoint fonts used.
Social choice theory = preference aggregation = truthful voting Tuomas Sandholm Professor Computer Science Department Carnegie Mellon University.
Social choice (voting) Vincent Conitzer > > > >
Overview Aggregating preferences The Social Welfare function The Pareto Criterion The Compensation Principle.
An efficient distributed protocol for collective decision- making in combinatorial domains CMSS Feb , 2012 Minyi Li Intelligent Agent Technology.
Voting Geometry: A Mathematical Study of Voting Methods and Their Properties Alan T. Sherman Dept. of CSEE, UMBC March 27, 2006.
CPS Voting and social choice Vincent Conitzer
An Algorithm for the Coalitional Manipulation Problem under Maximin Michael Zuckerman, Omer Lev and Jeffrey S. Rosenschein (Simulations by Amitai Levy)
Elections and Strategic Voting: Condorcet and Borda E. Maskin Harvard University.
Chapter 10: The Manipulability of Voting Systems Lesson Plan An Introduction to Manipulability Majority Rule and Condorcet’s Method The Manipulability.
Math for Liberal Studies.  We have seen many methods, all of them flawed in some way  Which method should we use?  Maybe we shouldn’t use any of them,
Great Theoretical Ideas in Computer Science.
Social choice theory = preference aggregation = voting assuming agents tell the truth about their preferences Tuomas Sandholm Professor Computer Science.
Empirical Aspects of Plurality Elections David R. M. Thompson, Omer Lev, Kevin Leyton-Brown & Jeffrey S. Rosenschein COMSOC 2012 Kraków, Poland.
Social Choice Lecture 16 John Hey. More Possibility/Impossibility Theorems Sen’s Impossibility of a Paretian Liberal Gibbard’s theory of alienable rights.
Arrow’s Impossibility Theorem
Model n voters, m candidates
Arrow’s Impossibility Theorem: A Presentation By Susan Gates
Chapter 10: The Manipulability of Voting Systems Lesson Plan
Introduction to Social Choice
Social choice theory = preference aggregation = voting assuming agents tell the truth about their preferences Tuomas Sandholm Professor Computer Science.
Applied Mechanism Design For Social Good
Impossibility and Other Alternative Voting Methods
Introduction If we assume
Alex Tabarrok Arrow’s Theorem.
Computational Social Choice and Moral Artificial Intelligence
Manipulation Lirong Xia Fall, Manipulation Lirong Xia Fall, 2016.
The Combinatorics of Voting Paradoxes
Voting systems Chi-Kwong Li.
Social choice theory = preference aggregation = voting assuming agents tell the truth about their preferences Tuomas Sandholm Professor Computer Science.
Voting and social choice
MAT 105 Fall 2008 More Voting Methods.
Introduction to Social Choice
CPS 173 Voting and social choice
Approximability of Manipulating Elections
Computational Social Choice (Part II: Bribery and Friends)
CPS Voting and social choice
Presentation transcript:

Algorithmic Analysis of Elections: Voting Rules and Manipulability (minicourse) Piotr Faliszewski AGH University Kraków, Poland

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

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

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.

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)

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

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 1 0 0 0 0 0

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 5 4 3 2 1 0

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 1 1 1 1 1 0

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

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

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

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!

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.

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

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? 

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.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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}

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

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

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

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

Computational issues in elections Winner determination

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

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

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

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

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

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

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

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

Computational issues in elections Cheating in elections Winner determination Manipulation control bribery Gibbard-Satterthwaite Theorem

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!

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…

Computational issues in elections Cheating in elections Winner determination Manipulation control Analyzing elections bribery Margin of victory Measures of success Gibbard-Satterthwaite Theorem

How to measure candidate performance? 15 10 11 9 15 C = { , , , , } V = (v1, … , v6) 4 3 2 1 0 V1: V2: V3: V4: V5: V6: Borda

How to measure candidate performance? 21 16 17 15 21 Copeland C = { , , , , } V = (v1, … , v6) win = 1, tie = 0.5, lose = 0 5 4 3 2 1 V1: :1.5 V2: 1: V3: :1 V4: 3: V5: :3.5 V6: Borda

How to measure candidate performance? 21 16 17 15 21 Copeland C = { , , , , } V = (v1, … , v6) win = 1, tie = 0, lose = -1 5 4 3 2 1 V1: :-1 V2: -2: V3: :-2 V4: 2: V5: :3 V6: Borda

Thank you!