the complexity of llull’s thirteenth-century election system

42
The Complexity of Llull’s Thirteenth-Century Election System Piotr Faliszewski University of Rochester Jörg Rothe Institute für Informatik Heinrich-Heine-Univ. Düsseldorf Lane A. Hemaspaandra University of Rochester Edith Hemaspaandra Rochester Institute of Technology The Hebrew University of Jerusalem, June 17, 2009 Henning Schnoor Rochester Institute of Technology

Upload: andres

Post on 16-Feb-2016

24 views

Category:

Documents


1 download

DESCRIPTION

The Complexity of Llull’s Thirteenth-Century Election System . Piotr Faliszewski University of Rochester. Edith Hemaspaandra Rochester Institute of Technology. Lane A. Hemaspaandra University of Rochester. J ö rg Rothe Institute f ü r Informatik Heinrich-Heine-Univ. D ü sseldorf. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: The Complexity of Llull’s Thirteenth-Century Election System

The Complexity of Llull’s Thirteenth-Century Election System

Piotr FaliszewskiUniversity of Rochester

Jörg RotheInstitute für InformatikHeinrich-Heine-Univ.

Düsseldorf

Lane A. HemaspaandraUniversity of Rochester

Edith HemaspaandraRochester Institute of

Technology

The Hebrew University of Jerusalem, June 17, 2009

Henning Schnoor Rochester Institute of

Technology

Page 2: The Complexity of Llull’s Thirteenth-Century Election System

Outline Introduction

Computational study of elections Bribery and control

Llull/Copeland Elections Model of elections Representation of votes Llull/Copeland rule

Results Bribery and microbribery Control of elections Manipulation

Hi, I am Ramon Llull. I have come

up with the election that these guys now study!

Page 3: The Complexity of Llull’s Thirteenth-Century Election System

Introduction Computational study of elections

Applications in AI Multiagent systems Multicriterion decision making Meta search-engines Planning

Applications in political science Computational barrier to cheating in elections

Manipulation Bribery Control

Computational agents can systematically

analyze an election to find optimal behavior

Page 4: The Complexity of Llull’s Thirteenth-Century Election System

Introduction Many ways to affect the result of election

Evildoer wants to make someone a winner or prevent someone from winning

Evildoer knows everybody else’s votes

Manipulation Coalition of agents changes their vote

to obtain their desired effect

Bribery External agent, the briber, chooses a group

of voters and tells them what votes to cast The briber is limited by budget

Control Organizers of the election modify their

structure to obtain the desired result

In my times it was enough that we all

promised we would not cheat...

Page 5: The Complexity of Llull’s Thirteenth-Century Election System

Introduction Manipulation versus

bribery and control Control attempted by the

chair Bribery attempted by

some outside agent Manipulation attempted

by the voters themselves

Self-interested voters Bribed voters might choose

to not follow what the briber said (unless the voting is public, or maybe not even then)

Okay… I can take the money, but I will vote as I like

anyway!

Page 6: The Complexity of Llull’s Thirteenth-Century Election System

Outline Introduction

Computational study of elections Bribery and control

Llull/Copeland Elections Model of elections Representation of votes Llull/Copeland rule

Results Bribery and microbribery Control of elections Manipulation

Let me tell you a bit about my system....

Page 7: The Complexity of Llull’s Thirteenth-Century Election System

Voting and Elections Candidates and voters

C = {c1, ..., cn} V = {v1, ..., vm}

Each voter vi is represented via his or her preferences over C. Assumption: We know all the

preferences Strengthens negative results Can be justified as well

Voting rule aggregates these preferences and outputs the set of winners.

Hi v7, I hope you are not one of those awful people who support c3!

Hi, my name is v7.

How will they aggregate

those votes?!

Page 8: The Complexity of Llull’s Thirteenth-Century Election System

C = { , , }

Representing Preferences

Rational voters Preferences are strict total

orders No cycles in single voter’s

preference list

Example

> >

Page 9: The Complexity of Llull’s Thirteenth-Century Election System

C = { , , }

Representing Preferences

Rational voters Preferences are strict total

orders No cycles in single voter’s

preference list

Not all voters are rational though! People often have

cyclical preferences! Irrational voters are

represented via preference tables. Example

> >

Page 10: The Complexity of Llull’s Thirteenth-Century Election System

C = { , , }

Representing Preferences

Rational voters Preferences are strict total

orders No cycles in single voter’s

preference list

Irrational preferences

Example

> >

Page 11: The Complexity of Llull’s Thirteenth-Century Election System

C = { , , }

Representing Preferences

Rational voters Preferences are strict total

orders No cycles in single voter’s

preference list

Irrational preferences

Example

> >

Page 12: The Complexity of Llull’s Thirteenth-Century Election System

C = { , , }

Representing Preferences

Rational voters Preferences are strict total

orders No cycles in single voter’s

preference list

Irrational preferences

Example

> >

Page 13: The Complexity of Llull’s Thirteenth-Century Election System

C = { , , }

Representing Preferences

Rational voters Preferences are strict total

orders No cycles in single voter’s

preference list

Irrational preferences

Example

> >

Page 14: The Complexity of Llull’s Thirteenth-Century Election System

C = { , , }

Representing Preferences

Rational voters Preferences are strict total

orders No cycles in single voter’s

preference list

Irrational preferences

> > >

Example

> >

Page 15: The Complexity of Llull’s Thirteenth-Century Election System

Llull/Copeland Rule The general rule

For every pair of candidates, ci and cj, perform a head-to-head plurality contest.

The winner of the contest gets 1 point The loser gets zero points.

At the end of the day, candidates with most points are the winners

Difference between various flavors of the Llull/Copeland rule? What happens if the head-to-head contest ends with a tie? Llull: Both get 1 point

Copeland0: Both get 0 pointsCopeland0.5: Both get half a point

Page 16: The Complexity of Llull’s Thirteenth-Century Election System

Outline Introduction

Computational study of elections Bribery and control

Llull/Copeland Elections Model of elections Representation of votes Llull/Copeland rule

Results Bribery and microbribery Control of elections Manipulation

Mr. Llull. Let us see just how

resistant your system is

Page 17: The Complexity of Llull’s Thirteenth-Century Election System

Bribery E-bribery (E – an election

system) Given: A set of candidates

C, a set of voters V specified via their preference lists, p in C, and budget k

Question: Can we make p win via bribing at most k voters?

E-$bribery As above, but voters have

prices and k is the spending limit.

E-weighted-bribery, E-weighted-$bribery As the two above, but the

voters have weights.

Hmm... I seem to have trouble with finding the

right guys to bribe...

Page 18: The Complexity of Llull’s Thirteenth-Century Election System

Bribery E-bribery (E – an election

system) Given: A set of candidates

C, a set of voters V specified via their preference lists, p in C, and budget k

Question: Can we make p win via bribing at most k voters?

E-$bribery As above, but voters have

prices and k is the spending limit.

E-weighted-bribery, E-weighted-$bribery As the two above, but the

voters have weights.

Result Llull/Copeland rule is

resistant (NP-hard; warning: a worst-case formalism) to all forms of bribery, both for irrational and rational voters

Mr. Agent. My system is resistant to

bribery!

Page 19: The Complexity of Llull’s Thirteenth-Century Election System

Microbribery Microbribery

We pay for each small change we make

If we want to make two flips on the preference table of the same voter then we pay 2 instead of 1

Comes in the same flavors as bribery

Limitations Could be studied for

rational voters... ... But we limit ourselves to

the irrational case.

We do not really need to change

each vote completely... Yeah... It’s easier

to work with the preference Matrix™ ...

Preference table, I mean…

Page 20: The Complexity of Llull’s Thirteenth-Century Election System

Microbribery Microbribery

We pay for each small change we make

If we want to make two flips on the preference table of the same voter then we pay 2 instead of 1

Comes in the same flavors as bribery

Limitations Could be studied for

rational voters... ... But we limit ourselves to

the irrational case.

Results Both Llull and Copeland0 are

vulnerable to microbribery

Uh oh... How did they do that?!?!?

Page 21: The Complexity of Llull’s Thirteenth-Century Election System

Microbribery in Copeland Elections Setting

C = {p=c0, c1,..., cn} V = {v1, ..., vm} Voters vi are irrational

For each two candidates ci, cj: pij – number of flips that

switch the head-on-head contest between them

Approach If possible, find a bribery that

gives p at least B points, ... ... and everyone else at most

B points

Try all reasonable B’s

Validate B via min-cost flow problem

Page 22: The Complexity of Llull’s Thirteenth-Century Election System

Proof Technique: Flow NetworksNotation:s(ci) – ci score before briberyB – the point boundK – large number

capacity/cost

c1

cn

c2

p

s t

Page 23: The Complexity of Llull’s Thirteenth-Century Election System

Proof Technique: Flow NetworksNotation:s(ci) – ci score before briberyB – the point boundK – large number

capacity/cost

c1

cn

c2

p

s t

source sinkmesh

source – models pre-bribery scores

mesh – models bribery cost

sink – models bribery success

Page 24: The Complexity of Llull’s Thirteenth-Century Election System

Proof Technique: Flow NetworksNotation:s(ci) – ci score before briberyB – the point boundK – large number

capacity/cost

c1

cn

c2

p

s t

s(c1)/0

s(c2)/0

s(cn)/0

s(p)/0 B/0

B/K

B/K

B/K

source sinkmesh

source – models pre-bribery scores

mesh – models bribery cost

sink – models bribery success

Page 25: The Complexity of Llull’s Thirteenth-Century Election System

Proof Technique: Flow NetworksNotation:s(ci) – ci score before briberyB – the point boundK – large number

capacity/cost

c1

cn

c2

p

s t

s(c1)/0

s(c2)/0

s(cn)/0

s(p)/0 B/0

B/K

B/K

B/K

source sinkmesh

1/p10

1/p21

1/p20

1/p2nsource – models pre-

bribery scores

mesh – models bribery cost

sink – models bribery success

Page 26: The Complexity of Llull’s Thirteenth-Century Election System

Proof Technique: Flow NetworksNotation:s(ci) – ci score before briberyB – the point boundK – large number

capacity/cost

c1

cn

c2

p

s t

s(c1)/0

s(c2)/0

s(cn)/0

s(p)/0 B/0

B/K

B/K

B/K

source sinkmesh

1/p10

1/p21

1/p20

1/p2nsource – models pre-

bribery scores

mesh – models bribery cost

sink – models bribery success

Page 27: The Complexity of Llull’s Thirteenth-Century Election System

Proof Technique: Flow NetworksNotation:s(ci) – ci score before briberyB – the point boundK – large number

capacity/cost

c1

cn

c2

p

s t

s(c1)/0

s(c2)/0

s(cn)/0

s(p)/0 B/0

B/K

B/K

B/K

source sinkmesh

1/p10

1/p21

1/p20

1/p2nsource – models pre-

bribery scores

mesh – models bribery cost

sink – models bribery success

Page 28: The Complexity of Llull’s Thirteenth-Century Election System

Proof Technique: Flow NetworksNotation:s(ci) – ci score before briberyB – the point boundK – large number

capacity/cost

c1

cn

c2

p

s t

s(c1)/0

s(c2)/0

s(cn)/0

s(p)/0 B/0

B/K

B/K

B/K

source sinkmesh

1/p10

1/p21

1/p20

1/p2nsource – models pre-

bribery scores

mesh – models bribery cost

sink – models bribery success

Page 29: The Complexity of Llull’s Thirteenth-Century Election System

Proof Technique: Flow NetworksNotation:s(ci) – ci score before briberyB – the point boundK – large number

capacity/cost

c1

cn

c2

p

s t

s(c1)/0

s(c2)/0

s(cn)/0

s(p)/0 B/0

B/K

B/K

B/K

source sinkmesh

1/p10

1/p21

1/p20

1/p2nsource – models pre-

bribery scores

mesh – models bribery cost

sink – models bribery success

Page 30: The Complexity of Llull’s Thirteenth-Century Election System

Proof Technique: Flow NetworksNotation:s(ci) – ci score before briberyB – the point boundK – large number

capacity/cost

c1

cn

c2

p

s t

s(c1)/0

s(c2)/0

s(cn)/0

s(p)/0 B/0

B/K

B/K

B/K

source sinkmesh

1/p10

1/p21

1/p20

1/p2nsource – models pre-

bribery scores

mesh – models bribery cost

sink – models bribery success

Cost = K(n(n+1)/2 - p-score) + cost-of-bribery

Page 31: The Complexity of Llull’s Thirteenth-Century Election System

Microbribery: Application Round-robin tournament

Everyone plays with everyone else

Bribery in round-robin tournaments For every game there we

know Expected (default) result The price for changing it

We want a minimal price for our guy having most points

Round-robin tournament example FIFA World Cup, group

stage 3 points for win 1 point for tie 0 points for loss

Microbribery?

Page 32: The Complexity of Llull’s Thirteenth-Century Election System

Microbribery: Application Round-robin tournament

Everyone plays with everyone else

Bribery in round-robin tournaments For every game there we

know Expected (default) result The price for changing it

We want a minimal price for our guy having most points

Round-robin tournament example FIFA World Cup, group

stage 3 points for win 1 point for tie 0 points for loss

Microbribery? Applies directly!! Given the table of expected

results and prices … … simply run the

Microbribery algorithm

For FIFA: Simply use 1/3 as the tie value.

Page 33: The Complexity of Llull’s Thirteenth-Century Election System

Outline Introduction

Computational study of elections Bribery and control

Llull/Copeland Elections Model of elections Representation of votes Llull/Copeland rule

Results Bribery and microbribery Control of elections Manipulation

How will your system deal with my attempts to

control, Mr. Llull...?

Page 34: The Complexity of Llull’s Thirteenth-Century Election System

Control Control of elections

The chair of the election attempts to influence the result via modifying the structure of the election

Constructive control (CC) or destructive control (DC)

Candidate control Adding candidates (AC) Deleting candidates (DC) Partition of candidates (PC/RPC)

with or without the runoff

Voter control Adding voters (AV) Deleting voters (DV) Partition of voters (PV)

My system is resistant to all types

of constructive control!!

Okay, almost all.

Page 35: The Complexity of Llull’s Thirteenth-Century Election System

Flavors of control AC – adding candidates DC – deleting candidates (R)PC – (runoff) partition of

candidates AV – adding voters DV – deleting voters PV – partition of voters

Results: Control

Llull / Copeland0  Plurality

Control CC DC CC DC

AC R V R R

DC R V R R

(R)PC-TP R V R R

(R)PC-TE R V R R

PV-TP R R V V

PV-TE R R R R

AV R R V V

DV R R V V

CC – constructive control TP – ties promoteDC – destructive control TE – ties eliminate

R – NP-completeV – P membership

Page 36: The Complexity of Llull’s Thirteenth-Century Election System

Outline Introduction

Computational study of elections Bribery and control

Llull/Copeland Elections Model of elections Representation of votes Llull/Copeland rule

Results Bribery and microbribery Control of elections Manipulation

My coalition of agents must be

able to somehow manipulate the

system!!

Page 37: The Complexity of Llull’s Thirteenth-Century Election System

Manipulation Manipulation problem

Given: Set of candidates Set of honest voters

(with their preferences) Set of manipulators Preferred candidate p

Question: Can the manipulators

set their votes so as to guarantee p’s victory?

Can’t avoid manipulation! Gibbard-Satterthwaite Dugan-Schwarz

There Llull! By Gibbard-Satterthwaite result I know I can sometimes

manipulate your system. Finally math gets useful!

Page 38: The Complexity of Llull’s Thirteenth-Century Election System

Results: Manipulation Unweighted manipulation

NP-complete for all rational tie-handling values except0, 0.5, 1

Even for two manipulators!

Proof ideas

Almost a microbribery instance

The two manipulators can only switch head-to-head results from tie to a victory

Reduce from X3C,1-in-3-SAT

Can’t use microbribery to solve the problem because the two voters might not be able to implement the solution we would get

Haha Mr. Agent! Gibbard-Satterthwaite say that you may be able to influence my system, but you won’t

know when or how!

Page 39: The Complexity of Llull’s Thirteenth-Century Election System

Results: Manipulation Unweighted manipulation

NP-complete for all rational tie-handling values except0, 0.5, 1

Even for two manipulators!

Aren’t we missing exactly the interesting values?

What is magic about the values we miss?

1 no point in causing ties 0.5 switching the result of a head-to-head contest from tie to win

affect both candidates in a symmetric way 0 makes “transferring points” difficult

So… maybe there is hope

for me…

Page 40: The Complexity of Llull’s Thirteenth-Century Election System

Results: Manipulation Weighted manipulation

Completely resolved for three candidates

Issues with for and more candidates

Unique vs. non-unique winner

Tie-value 1 is hard to account for.

Strange things happen for four candidates.

Weighted, three candidates

= 0 0< <1

= 1

winner NPC NPC Puniquewinner

NPC P PWork in progress

Page 41: The Complexity of Llull’s Thirteenth-Century Election System

Summary Copeland/Llull elections

Broad resistance to bribery Constructive/Destructive Rational/Irrational

Broad resistance to control Constructive candidate control Constructive/Destructive voter control Rational/Irrational

Vulnerability Microbribery (irrational case)

Arrgh! Llull, my agents are practically helpless against your

system!

Page 42: The Complexity of Llull’s Thirteenth-Century Election System

Thank you!

I will happily answer your questions!