Computational Democracy: Algorithms, Game Theory, and Elections Steven Wolfman 2011/10/27
Computational Democracy:Algorithms, Game Theory, and Elections
Steven Wolfman
2011/10/27
A voting system is software.
2001 BC General Election
Liberal NDP Green
Seats 77 2 0
Popular Vote
57.62% 21.56% 12.39%
Some other oddities:
- 1926 MB Federal- 1992 and 2000 US Presidential- 2008 Vancouver Municipal
Liberal NDP Green
Seats 77 2 0
Popular Vote
57.62% 21.56% 12.39%
MANY Other Algorithms
Approval (hand-raising in class, often), Range (IMDB), Party List Proportional (Germany), Cumulative (??), Block (Vancouver municipal), Condorcet (UBC AMS, “ranked pairs” flavour), ...
But.. what do we really want out of a voting system?
“Independence of Irrelevant Alternatives”
(Intuition. Thanks to Sidney Morgenbesser.)
We have apple and blueberry.I’ll take the apple.
Oh, wait! We have cherry, too!
In that case, I’ll take the blueberry
Formally: Independence of Irrelevant Alternatives
If under one set of votes, A beats B, then...
A still beats B under another set of votes with the same relative rankings of A and B.
1CADEB2BADCE3ACDEB4AEBCD5DECBA
SA...B
1EACBD2CEBAD3ABCDE4CAEBD5DBECA
S.A..B
General Definition: “Pareto (In)Efficient”
If a change in the solution can make everyone better off, then the solution is “Pareto inefficient”.
GFEDCBA
Candidate (“option”) VoterKey:
Question: Which of these is Pareto Inefficient?
Formal: Pareto Efficient
For any two candidates A and B, if all voters prefer A to B, A must beat B.
BA
Candidate (“option”) VoterKey:
Formal: Dictator
d is a dictator iff for any set of votes, the outcome precisely matches d’s vote.
1CADEB2BADCE3ACDEB4AEBCD5DECBA
SAEBCD
1EACBD2CEBAD3ABCDE4CAEBD5DBECA
SCAEBDAll hail 4!
Arrow’s Impossibility Theorem(Kenneth Arrow, 1951 Nobel Prize)
PE
IIA
+ Dictatorship
Let’s prove it.We assume: no ties in votes or outcome.
This assumption is unnecessary.We assume: finite #voters, at least three candidates, election is a function.
All three are necessary.
1 CADEB2 BADCE3 ACDEB4 AEBCD5 DECBA
S ACDBE
Let’s play with votes.1. Run the election.2. Go back in time and change the votes.3. Rerun the election.
(AKA: explore the result of the election function on various inputs.)
Scenario: move all B votes to the top
1 BCADE2 BADCE3 BACDE4 BAECD5 BDECA
S BACDE
PE and all B at top B wins top
1 CADEB2 BADCE3 ACDEB4 AEBCD5 DECBA
S ACDBE
Scenario: all B at bottom1. Run election2. Change votes3. Rerun election
1 CADEB2 ADCEB3 ACDEB4 AECDB5 DECAB
S ACDEB
PE and all B at bottom B “wins” bottom
1 CADEB2 BADCE3 ACDEB4 AEBCD5 DECBA
S ACDBE
Scenario: B at top or bottom
Here, A > B and B > C.
Generally, if B is in the middle, something beats B and some-thing loses to B. (Key results will always apply to the general case.)
1 CADEB2 BADCE3 ACDEB4 AECDB5 BDECA
S ABCDE
Can B end up in the middle like this? Let’s play!
1 CADEB2 BADCE3 ACDEB4 AECDB5 BDECA
S ABCDE
Scenario: C just above A
1 CADEB2 BCADE3 CADEB4 CAEDB5 BDECA
S ABCDE
PE C beats AIIA A (still) beats BIIA B (still) beats CCONTRADICTION
Remember:A beats BB beats C
B at top or bottom in all votes B wins top or bottom
1 CADEB2 ADCEB3 ACDEB4 AECDB5 DECAB
S ACDEB
Scenario: find who moves B up
Reminder: if every voter puts B at top or bottom,B wins top or bottom.
1 BCADE2 BADCE3 BACDE4 BAECD5 BDECA
S BACDE
PE left side has B at bottom, right side has B at top
1 CADEB2 ADCEB3 ACDEB4 AECDB5 DECAB
S ACDEB
Scenario: find who moves B up
Reminder: if every voter puts B at top or bottom,B wins top or bottom.
1 BCADE2 ADCEB3 ACDEB4 AECDB5 DECAB
S ACDEB
At some point as we flip B up, it will move to the top.
1 BCADE2 ADCEB3 ACDEB4 AECDB5 DECAB
S ACDEB
Scenario: find who moves B up
Reminder: if every voter puts B at top or bottom,B wins top or bottom.
1 BCADE2 BADCE3 ACDEB4 AECDB5 DECAB
S ACDEB
At some point as we flip B up, it will move to the top.
1 BCADE2 BADCE3 ACDEB4 AECDB5 DECAB
S ACDEB
Scenario: find who moves B up
Reminder: if every voter puts B at top or bottom,B wins top or bottom.
1 BCADE2 BADCE3 BACDE4 AECDB5 DECAB
S BACDE
At some point as we flip B up, it will move to the top.
1 BCADE2 BADCE3 ACDEB4 AECDB5 DECAB
S ACDEB
Scenario: find who moves B up
Reminder: if every voter puts B at top or bottom,B wins top or bottom.
1 BCADE2 BADCE3 BACDE4 AECDB5 DECAB
S BACDE
At some point as we flip B up, it will move to the top.
Let’s focus on the voter who “controls” B.(3 in this case, but someone in general.)
Starting with the right side.
1 BCADE2 BADCE3 ABCDE4 AECDB5 DECAB
S ABCDE
Scenario: 3 moves A above B
1 BCADE2 BADCE3 BACDE4 AECDB5 DECAB
S BACDE
Why is A at the top? Compare to when we discovered 3...
1 BCADE2 BADCE3 ACDEB4 AECDB5 DECAB
S ACDEB
Scenario: find who moves B up
Reminder: if every voter puts B at top or bottom,B wins top or bottom.
1 BCADE2 BADCE3 BACDE4 AECDB5 DECAB
S BACDE
At some point as we flip B up, it will move to the top.
Let’s focus on the voter who “controls” B.(3 in this case, but someone in general.)
This time we want the left side.
1 BCADE2 BADCE3 ACDEB4 AECDB5 DECAB
S ACDEB
Look at the A/B rankings here versus...our “3 puts A above B” scenario.
1 BCADE2 BADCE3 ABCDE4 AECDB5 DECAB
S ABCDE
IIA, left says A > B A > B
1 BCADE2 BADCE3 ACDEB4 AECDB5 DECAB
S ACDEB
1 BCADE2 BADCE3 ABCDE4 AECDB5 DECAB
S ABCDE
In fact, all but 3 can rearrange their votes, if they don’t move B...
1 BCADE2 BADCE3 ABCDE4 AECDB5 DECAB
S ABCDE
Scenario: free up all but B and 3’s A
As long as we keep voters’ A/B ordering the same, A > B, by IIA.
1 BDEAC2 BCDEA3 ABEDC4 ACEDB5 DACEB
S ABDEC
B beats C. Must it? Compare to when we discovered 3...
1 BCADE2 BADCE3 ACDEB4 AECDB5 DECAB
S ACDEB
Scenario: find who moves B up
Reminder: if every voter puts B at top or bottom,B wins top or bottom.
1 BCADE2 BADCE3 BACDE4 AECDB5 DECAB
S BACDE
At some point as we flip B up, it will move to the top.
Let’s focus on the voter who “controls” B.(3 in this case, but someone in general.)
Back to the right side.
1 BCADE2 BADCE3 BACDE4 AECDB5 DECAB
S BACDE
1 BCADE2 BADCE3 BACDE4 AECDB5 DECAB
S BACDE
Scenario: free up all but B and 3’s A
1 BDEAC2 BCDEA3 ABEDC4 ACEDB5 DACEB
S ABDEC
But, must B > C? Yes, by IIA, since B/C rankings match.
1 BDEAC2 BCDEA3 ABEDC4 ACEDB5 DACEB
S ABDEC
Scenario: free up the B’s
Reminder: As long as we keep voters’ A/B ordering the same, A > B and B > C by IIA.
Now, everyone moves their Bs around, and 3 moves its A around but keeps it above C.
1 BDEAC2 BCDEA3 ABEDC4 ACEDB5 DACEB
S ABDEC
1 DEBAC2 CDEAB3 BAEDC4 ACEDB5 BDACE
S BDACE
IIA A > C, but the only fixed ranking is 3’s A > C!
Brief pause for formality:
In general, A and C are arbitrary options other than B.
So, 3 is a dictator with respect to all relative orderings except those involving B.
1 BDEAC2 BCDEA3 ABEDC4 ACEDB5 DACEB
S ABDEC
1 DEBAC2 CDEAB3 BAEDC4 ACEDB5 BDACE
S BDACE
All (but B) hail 3!
Rest of proof is a repeat with different candidate for B; skipping...
Arrow’s Impossibility Theorem(Kenneth Arrow, 1951 Nobel Prize)
PE
IIA
+ Dictatorship
More algorithms/game theory
rangevoting.org
Ka-Ping Yeezesty.ca
Some Other Contexts of Use
• Usability and interface design• Security and voter verifiability• District creation and member allocation
(and gerrymandering)• Design specifications and standards• Election auditing and fraud detection• Voter files/databases• Voter registration systems
Extra Slides(just in case)
Scenario: what about B
Repeat proof, except with C at top/bottom rather than B.
We find a dictator over B vs A (and B vs all but C), but remember...
1 BADEC2 ADBEC3 ABDEC4 AEBDC5 DEBAC
S ABDEC
1 CBADE2 CADBE3 CABDE4 CAEBD5 CDEBA
S CABDE
1 BCADE2 BADCE3 ABCDE4 AECDB5 DECAB
S ABCDE
Scenario: 3 moves A above B
Because 3 moves A to the top, A > B.So, 3 is that dictator as well.
And any candidate but B can “play” A. So, 3 is the dictator. All hail 3!
1 BCADE2 BADCE3 BACDE4 AECDB5 DECAB
S BACDE
Canada’s Algorithm, Roughly
1. Start counts for each candidate and for “rejected” at 0.
2. For each ballot:a) If the ballot does not show a single candidate
choice or has stray marks that might identify the voter, add one to the “rejected” total.
b) Else, add one to the marked candidate’s total.
3. Report the results of all counts. After recounts, ties are do-overs: “deemed by-election” for
the “deemed vacant” seat.
Based on the Canada Elections Act.(Ties specified in the Parliament of Canada Act.)
A Harder Case: STV
In Single-Transferable Voting, voters rank the candidates, a single election results in multiple candidates elected, and votes are transferred among candidates during the count based on preference order...