Computational Social Choice (Part II: Bribery and Friends)

Slides:



Advertisements
Similar presentations
Manipulation and Control for Approval Voting and Other Voting Systems Jörg Rothe Oxford Meeting for COST Action IC1205 on Computational Social Choice April.
Advertisements

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.
Learning Voting Trees Ariel D. Procaccia, Aviv Zohar, Yoni Peleg, Jeffrey S. Rosenschein.
Voting and social choice Vincent Conitzer
How Hard Is It To Manipulate Voting? Edith Elkind, U. of Warwick Helger Lipmaa, Tartu U.
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.
Sep 22, 2014 Lirong Xia Computational social choice The hard-to-manipulate axiom.
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.)
Complexity Applied to Social Choice Manipulation & Spatial Equilibria John Bartholdi, Michael Trick, Lakshmi Narasimhan, Craig Tovey.
Manipulation Toby Walsh NICTA and UNSW. Manipulation Constructive  Can we change result so a given candidate wins Destructive  Can we change result.
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.
+ Random Tie Breaking Toby Walsh NICTA and UNSW. + Random Tie Breaking Haris Aziz, Serge Gaspers, Nick Mattei, Nina Narodytska, Toby Walsh NICTA and UNSW.
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
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.
Where are the hard manipulation problems? Toby Walsh NICTA and UNSW Sydney Australia LogICCC Day, COMSOC 2010.
The Distortion of Cardinal Preferences in Voting Ariel D. Procaccia and Jeffrey S. Rosenschein.
Speaker: Ariel Procaccia Joint work with: Michael Zuckerman, Jeff Rosenschein Hebrew University of Jerusalem.
Ties Matter: Complexity of Voting Manipulation Revisited based on joint work with Svetlana Obraztsova (NTU/PDMI) and Noam Hazon (CMU) Edith Elkind (Nanyang.
CPS Voting and social choice
Tutorial: Computational Voting Theory Vincent Conitzer & Ariel D. Procaccia.
Campaign Management via Bribery Piotr Faliszewski AGH University of Science and Technology, Poland Joint work with Edith Elkind and Arkadii Slinko.
How Hard Is It To Manipulate Voting? Edith Elkind, Princeton Helger Lipmaa, HUT.
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.
Automated Design of Voting Rules by Learning From Examples Ariel D. Procaccia, Aviv Zohar, Jeffrey S. Rosenschein.
Strategic Behavior in Multi-Winner Elections A follow-up on previous work by Ariel Procaccia, Aviv Zohar and Jeffrey S. Rosenschein Reshef Meir The School.
Preference Aggregation on Structured Preference Domains Edith Elkind University of Oxford.
Introduction complexity has been suggested as a means of precluding strategic behavior. Previous studies have shown that some voting protocols are hard.
Social choice (voting) Vincent Conitzer > > > >
Online Manipulation and Control in Sequential Voting Lane A. Hemaspaandra Jörg Rothe Edith Hemaspaandra.
Historically Interesting Voting Rules: Electing the Doge Lirong Xia Toby Walsh Auckland, Feb 20 th 2012.
Ordinal Preference Representation and Aggregation Game-Theoretic and Combinatorial Aspects of Computational Social Choice EPFL June 15, 2012 Lirong Xia.
CPS Voting and social choice Vincent Conitzer
An Algorithm for the Coalitional Manipulation Problem under Maximin Michael Zuckerman, Omer Lev and Jeffrey S. Rosenschein AAMAS’11.
An Algorithm for the Coalitional Manipulation Problem under Maximin Michael Zuckerman, Omer Lev and Jeffrey S. Rosenschein (Simulations by Amitai Levy)
Projektseminar Computational Social Choice -Eine Einführung- Jörg Rothe & Lena Schend SS 2012, HHU Düsseldorf 4. April 2012.
The Shield that Never Was: Societies with Single-Peaked Preferences are More Open to Manipulation and Control Piotr Faliszewski AGH University of Science.
Mechanism design for computationally limited agents (previous slide deck discussed the case where valuation determination was complex) Tuomas Sandholm.
Incompleteness and incomparability in preference aggregation: complexity results M. Silvia Pini*, Francesca Rossi*, K. Brent Venable*, and Toby Walsh**
Optimal Manipulation of Voting Rules Edith Elkind Nanyang Technological University, Singapore (based on joint work with Svetlana Obraztsova)
11/24/2008CS Common Voting Rules as Maximum Likelihood Estimators - Matthew Kay 1 Common Voting Rules as Maximum Likelihood Estimators Vincent Conitzer,
When Are Elections with Few Candidates Hard to Manipulate V. Conitzer, T. Sandholm, and J. Lang Subhash Arja CS 286r October 29, 2008.
0 Fall, 2016 Lirong Xia Computational social choice The easy-to-compute axiom.
Mechanism design for computationally limited agents (previous slide deck discussed the case where valuation determination was complex) Tuomas Sandholm.
Mechanism design for computationally limited agents (last lecture discussed the case where valuation determination was complex) Tuomas Sandholm Computer.
Multiwinner Elections Applications, Axioms, and Algorithms (tutorial)
Chapter 10: The Manipulability of Voting Systems Lesson Plan
Multiwinner Elections Applications, Axioms, and Algorithms (tutorial)
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
A Brief Introductory Tutorial on Computational Social Choice
Algorithmic Analysis of Elections: Voting Rules and Manipulability (minicourse) Piotr Faliszewski AGH University Kraków, Poland.
A Crash Course on Computational Social Choice and Fair Division
Computational Social Choice and Moral Artificial Intelligence
Manipulation Lirong Xia Fall, Manipulation Lirong Xia Fall, 2016.
Voting and social choice
Introduction to Social Choice
CPS 173 Voting and social choice
Approximability of Manipulating Elections
Computational social choice
CPS Voting and social choice
The Complexity of Bribery in Elections
Presentation transcript:

Computational Social Choice (Part II: Bribery and Friends) Piotr Faliszewski AGH University Kraków, Poland faliszew@agh.edu.pl Recent Advances in Parametrized Complexity – Tel Aviv 2017

Computational Social Choice (voting) Plurality Borda t-Approval scoring rules Bucklin other ideas (iterative etc.) election formalism (single winner) STV ordinal approval-based Copeland Condorcet rules (graphs!) Maximin Dodgson

Formal Setting Elections C = { , , , , } V = (v1, … , v6) E = (C, V) f – voting rule f( E ) = W – tied winners Examples of voting rules: Plurality C = { , , , , } V = (v1, … , v6) 1 0 0 0 0 V1: V2: V3: V4: V5: V6:

Formal Setting Elections C = { , , , , } V = (v1, … , v6) E = (C, V) f – voting rule f( E ) = W – tied winners Examples of voting rules: Plurality Borda C = { , , , , } V = (v1, … , v6) 4 3 2 1 0 V1: V2: V3: V4: V5: V6:

Computational Social Choice winner determination #voters winner prediction election size possible and necessary winners #candidates margin of victory budget / cost campaign management problem families special features bribery parameters strategic voting (manipulation) changing the result control Computational Social Choice (voting) Plurality Borda t-Approval scoring rules Bucklin other ideas (iterative etc.) election formalism (single winner) STV ordinal approval-based Copeland Condorcet rules (graphs!) Maximin Dodgson

Computational Social Choice winner determination #voters winner prediction election size possible and necessary winners #candidates margin of victory budget / cost campaign management problem families special features bribery parameters strategic voting (manipulation) changing the result control Computational Social Choice (voting) Plurality Borda t-Approval scoring rules Bucklin other ideas (iterative etc.) election formalism (single winner) STV ordinal approval-based Copeland Condorcet rules (graphs!) Maximin Dodgson

Bribery and Friends p = Manipulation (strategic voting) Setting V1: Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? p = V1: V2: V3: Manipulation (strategic voting) V4: V5: V6:

Bribery and Friends p = Manipulation ? ? ? ? ? ? ? ? ? ? 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 Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? p = Gibbard-Satterthwaite Theorem For every voting rule, there exists an election where for some voters there is an incentive to vote strategically V1: V2: V3: Manipulation (strategic voting) V4: V5: ? ? ? ? ? Action: Fixed voters (the manipulators) can change their votes as they like V6: ? ? ? ? ?

Bribery and Friends p = Complexity Barrier! Manipulation ? ? ? ? ? Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? J. Bartholdi, C. Tovey, M. Trick, The computational difficulty of manipulating an election, SC&W 1989 J. Bartholid, J. Orlin, Single Transferable Vote Resists Strategic Voting, SC&W 1991 V. Conitzer, T. Sandholm, J. Lang, When are elections with few candidates hard to manipulate? J.ACM 2007 p = Gibbard-Satterthwaite Theorem For every voting rule, there exists an election where for some voters there is an incentive to vote strategically V1: V2: V3: Manipulation (strategic voting) V4: Complexity Barrier! V5: ? ? ? ? ? Action: Fixed voters (the manipulators) can change their votes as they like V6: ? ? ? ? ?

Bribery and Friends p = Manipulation ? ? ? ? ? ? ? ? ? ? Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? p = V1: V2: V3: Manipulation (strategic voting) V4: V5: ? ? ? ? ? Action: Fixed voters (the manipulators) can change their votes as they like V6: ? ? ? ? ?

Bribery and Friends p = $Bribery Manipulation $10 $5 $8 $15 $1 $4 Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? P. Faliszewski, E. Hemaspaandra, L. Hemaspaandra, How Hard is Bribery in Elections?, JAIR 2009 p = $Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget $10 V1: $5 V2: $8 V3: Manipulation (strategic voting) $15 V4: $1 V5: Action: Fixed voters (the manipulators) can change their votes as they like $4 V6:

Bribery and Friends p = Bribery Manipulation $1 $1 $1 $1 $1 $1 Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? P. Faliszewski, E. Hemaspaandra, L. Hemaspaandra, How Hard is Bribery in Elections?, JAIR 2009 p = Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget $1 V1: $1 V2: $1 V3: Manipulation (strategic voting) $1 V4: $1 V5: Action: Fixed voters (the manipulators) can change their votes as they like $1 V6:

Bribery and Friends p = $Bribery Manipulation $10 $5 $8 $15 $1 $4 Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? p = $Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget $10 V1: $5 V2: $8 V3: Manipulation (strategic voting) $15 V4: $1 V5: Action: Fixed voters (the manipulators) can change their votes as they like $4 V6:

Bribery and Friends p = $Bribery Manipulation $100 $100 $100 $100 $0 Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? p = $Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget $100 V1: $100 V2: $100 V3: Manipulation (strategic voting) $100 V4: $0 V5: Action: Fixed voters (the manipulators) can change their votes as they like $0 V6:

What is the (parametrized) complexity of Borda-Bribery? Who cares?! Complexity barier? Not so much…

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

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

The amount of bribery needed to make a candidate win says how well he/she did P. Faliszewski, P. Skowron, N. Talmon, Bribery as a Measure of Candidate Success: Complexity Results for Approval-Based Multiwinner Rules, AAMAS 2017

The amount of bribery needed to prevent a candidate’s victory says if it is likely that the election was manipulated T. Magrino , R. Rivest , E. Shen , D. Wagner, Computing the margin of victory in IRV elections, EV/WOTE 2011 D. Cary, Estimating the margin of victory for instant-runoff voting, EV/WOTE 2011 L. Xia, Computing the Margin of Victory for Various Voting Rules, EC 2012

What is the (parametrized) complexity of Borda-Bribery? Yeah!

Borda-$Bribery: Para-NP-hardness! Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? $Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget N. Betzler, R. Niedermeier, G. Woeginger, Unweighted Coalitional Manipulation under the Borda Rule Is NP-Hard, IJCAI 2013 J. Davies, G. Katsirelos, N. Narodytska, T. Walsh, L. Xia, Complexity of and algorithms for the manipulation of Borda, Nanson's and Baldwin's voting rules, Artificial Intelligence 2014 M. Zuckerman, A. Procaccia, J. Rosenschein, Algorithms for the coalitional manipulation problem, Artificial Intelligence 2009 Manipulation (strategic voting) NP-hard for 2 manipulators and 3 nonmanipulators Action: Fixed voters (the manipulators) can change their votes as they like

Borda-$Bribery: Para-NP-hardness! Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? $Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget NP-hard for 5 voters and budget 2 Manipulation (strategic voting) NP-hard for 2 manipulators and 3 nonmanipulators Action: Fixed voters (the manipulators) can change their votes as they like

Borda-Bribery: FPT for #candidates Setting Given: E = (C,V) – election (voters have prices) p – preferred cand. B – budget Question: Is it possible to ensure p’s victory by bribing voters of total cost at most B? 𝑝1, 𝑝2, … , 𝑝𝑚! – all possible preference orders 𝑛𝑖 – how many voters with preference 𝑝𝑖 are there? (const) 𝑥𝑖𝑗 – how many votes do we move from 𝑝𝑖 to 𝑝𝑗? 𝑠𝑐𝑜𝑟𝑒(𝑐,𝑖) – how many points candidate 𝑐 gets from vote 𝑝𝑖? Solve the ILP in FPT time using Lenstra! Form ILP: For each 𝑖,𝑗: 𝑥 𝑖𝑗 ≥0  cannot cheat  For each 𝑖: 𝑗 𝑥 𝑖𝑗 = 𝑛 𝑖  bribe only as many people as there are For each cand. 𝑐: 𝑗 𝑖 𝑥 𝑖𝑗 𝑠𝑐𝑜𝑟𝑒 𝑐,𝑗 ≤ 𝑗 𝑖 𝑥 𝑖𝑗 𝑠𝑐𝑜𝑟𝑒 𝑝,𝑗  p wins with everyone 𝑗 𝑖≠𝑗 𝑥 𝑖𝑗 ≤𝐵  we bribe at most B voters

Borda-$Bribery: FPT for #candidates Setting Given: E = (C,V) – election (voters have prices) p – preferred cand. B – budget Question: Is it possible to ensure p’s victory by bribing voters of total cost at most B? What is voters have prices? 𝑝1, 𝑝2, … , 𝑝𝑚! – all possible preference orders 𝑛𝑖 – how many voters with preference 𝑝𝑖 are there? (const) 𝑥𝑖𝑗 – how many votes do we move from 𝑝𝑖 to 𝑝𝑗? 𝑠𝑐𝑜𝑟𝑒(𝑐,𝑖) – how many points candidate 𝑐 gets from vote 𝑝𝑖? Form ILP: For each 𝑖,𝑗: 𝑥 𝑖𝑗 ≥0  cannot cheat  For each 𝑖: 𝑗 𝑥 𝑖𝑗 = 𝑛 𝑖  bribe only as many people as there are For each cand. 𝑐: 𝑗 𝑖 𝑥 𝑖𝑗 𝑠𝑐𝑜𝑟𝑒 𝑐,𝑗 ≤ 𝑗 𝑖 𝑥 𝑖𝑗 𝑠𝑐𝑜𝑟𝑒 𝑝,𝑗  p wins with everyone 𝑗 𝑖≠𝑗 𝑥 𝑖𝑗 ≤𝐵  we bribe at most B voters

Borda-$Bribery: FPT for #candidates Setting Given: E = (C,V) – election (voters have prices) p – preferred cand. B – budget Question: Is it possible to ensure p’s victory by bribing voters of total cost at most B? What is voters have prices? 𝑝1, 𝑝2, … , 𝑝𝑚! – all possible preference orders 𝑛𝑖 – how many voters with preference 𝑝𝑖 are there? (const) 𝑥𝑖𝑗 – how many votes do we move from 𝑝𝑖 to 𝑝𝑗? 𝑠𝑐𝑜𝑟𝑒(𝑐,𝑖) – how many points candidate 𝑐 gets from vote 𝑝𝑖? Form ILP: For each 𝑖,𝑗: 𝑥 𝑖𝑗 ≥0  cannot cheat  For each 𝑖: 𝑗 𝑥 𝑖𝑗 = 𝑛 𝑖  bribe only as many people as there are For each cand. 𝑐: 𝑗 𝑖 𝑥 𝑖𝑗 𝑠𝑐𝑜𝑟𝑒 𝑐,𝑗 ≤ 𝑗 𝑖 𝑥 𝑖𝑗 𝑠𝑐𝑜𝑟𝑒 𝑝,𝑗  p wins with everyone Oopsie! Need to express a nonlinear function

Encoding Cost of $Bribing xij Voters pi to pj 𝐵𝑖𝑗 – cost of bribing 𝑝𝑖 to 𝑝𝑗 𝐵𝑖𝑗≥ 𝑎 1 𝑥 𝑖𝑗 𝐵𝑖𝑗 Cost 𝑦 = 𝑎1𝑥 1 2 3 4 5 Number of voters bribed (bribe cheapest first)

Encoding Cost of $Bribing xij Voters pi to pj 𝐵𝑖𝑗 – cost of bribing 𝑝𝑖 to 𝑝𝑗 𝐵𝑖𝑗≥ 𝑎 1 𝑥 𝑖𝑗 𝐵𝑖𝑗 𝐵𝑖𝑗≥ 𝑎 2 𝑥 𝑖𝑗 Cost 𝑦 = 𝑎2𝑥 𝑦 = 𝑎1𝑥 1 2 3 4 5 Number of voters bribed (bribe cheapest first)

Encoding Cost of $Bribing xij Voters pi to pj 𝐵𝑖𝑗 – cost of bribing 𝑝𝑖 to 𝑝𝑗 𝐵𝑖𝑗≥ 𝑎 1 𝑥 𝑖𝑗 𝐵𝑖𝑗 𝐵𝑖𝑗≥ 𝑎 2 𝑥 𝑖𝑗 𝑦 = 𝑎3𝑥 𝐵𝑖𝑗≥ 𝑎 3 𝑥 𝑖𝑗 Cost 𝑦 = 𝑎2𝑥 𝑦 = 𝑎1𝑥 1 2 3 4 5 Number of voters bribed (bribe cheapest first)

Encoding Cost of $Bribing xij Voters pi to pj 𝐵𝑖𝑗 – cost of bribing 𝑝𝑖 to 𝑝𝑗 𝑦 = 𝑎4𝑥 𝐵𝑖𝑗≥ 𝑎 1 𝑥 𝑖𝑗 𝐵𝑖𝑗 𝐵𝑖𝑗≥ 𝑎 2 𝑥 𝑖𝑗 𝑦 = 𝑎3𝑥 𝐵𝑖𝑗≥ 𝑎 3 𝑥 𝑖𝑗 Cost 𝑦 = 𝑎2𝑥 𝐵𝑖𝑗≥ 𝑎 4 𝑥 𝑖𝑗 𝑦 = 𝑎1𝑥 1 2 3 4 5 Number of voters bribed (bribe cheapest first)

Encoding Cost of $Bribing xij Voters pi to pj 𝑦 = 𝑎5𝑥 𝐵𝑖𝑗 – cost of bribing 𝑝𝑖 to 𝑝𝑗 𝑦 = 𝑎4𝑥 𝐵𝑖𝑗≥ 𝑎 1 𝑥 𝑖𝑗 𝐵𝑖𝑗 𝐵𝑖𝑗≥ 𝑎 2 𝑥 𝑖𝑗 𝑦 = 𝑎3𝑥 𝐵𝑖𝑗≥ 𝑎 3 𝑥 𝑖𝑗 Cost 𝑦 = 𝑎2𝑥 𝐵𝑖𝑗≥ 𝑎 4 𝑥 𝑖𝑗 𝐵𝑖𝑗≥ 𝑎 5 𝑥 𝑖𝑗 𝑦 = 𝑎1𝑥 1 2 3 4 5 Number of voters bribed (bribe cheapest first)

Borda-$Bribery: FPT for #candidates Setting Given: E = (C,V) – election (voters have prices) p – preferred cand. B – budget Question: Is it possible to ensure p’s victory by bribing voters of total cost at most B? 𝑝1, 𝑝2, … , 𝑝𝑚! – all possible preference orders 𝑛𝑖 – how many voters with preference 𝑝𝑖 are there? (const) 𝑥𝑖𝑗 – how many votes do we move from 𝑝𝑖 to 𝑝𝑗? 𝑠𝑐𝑜𝑟𝑒(𝑐,𝑖) – how many points candidate 𝑐 gets from vote 𝑝𝑖? 𝐵𝑖𝑗 – cost of bribing 𝑝𝑖 to 𝑝𝑗 Solve the MILP in FPT time using Lenstra! Form ILP: For each 𝑖,𝑗: 𝑥 𝑖𝑗 ≥0  cannot cheat  For each 𝑖: 𝑗 𝑥 𝑖𝑗 ≤ 𝑛 𝑖  bribe only as many people as there are For each cand. 𝑐: 𝑗 𝑖 𝑥 𝑖𝑗 𝑠𝑐𝑜𝑟𝑒 𝑐,𝑗 ≤ 𝑗 𝑖 𝑥 𝑖𝑗 𝑠𝑐𝑜𝑟𝑒 𝑝,𝑗  p wins with everyone For each 𝑖, 𝑗, and 𝑡: 𝐵𝑖𝑗≥ 𝑎 𝑡 𝑥 𝑖𝑗 𝑗 𝑖 𝐵 𝑖𝑗 ≤𝐵  stay within budget

Bribery and Friends ($)Bribery Swap Bribery Manipulation Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? ($)Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget Swap Bribery Action: Each pair of candidates in each vote has a price for being swapped; we can swap cand’s when they are adjacent Manipulation (strategic voting) E. Elkind, P. Faliszewski, A. Slinko, Swap Bribery, SAGT 2009. B. Dorn, I. Schlotter, Multivariate Complexity Analysis of Swap Bribery, Algorithmica 2012 Action: Fixed voters (the manipulators) can change their votes as they like

Bribery and Friends ($)Bribery Swap Bribery Manipulation Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? ($)Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget Para-NP-hardness for #voters and budget Swap Bribery Action: Each pair of candidates in each vote has a price for being swapped; we can swap cand’s when they are adjacent Manipulation (strategic voting) Action: Fixed voters (the manipulators) can change their votes as they like FPT for #candidates D. Knop, M. Koutecký, M. Mnich, Voting and Bribing in Single-Exponential Time. STACS 2017

Bribery and Friends ($)Bribery Swap Bribery Manipulation Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? ($)Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget Swap Bribery Action: Each pair of candidates in each vote has a price for being swapped; we can swap cand’s when they are adjacent Manipulation (strategic voting) Action: Fixed voters (the manipulators) can change their votes as they like

Bribery and Friends Shift Bribery Swap Bribery Setting ($)Bribery Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? E. Elkind, P. Faliszewski, A. Slinko, Swap Bribery, SAGT 2009. E. Elkind, P. Faliszewski, Approximation Algorithms for Campaign Management, WINE 2010 R. Bredereck, J. Chen, P. Faliszewski, A. Nichterlein, R. Niedermeier, Prices Matter for the Parametrized Complexity of Shift Bribery, Information and Computation 2016 R. Bredereck, P. Faliszewski, R. Niedermeier, N. Talmon, Complexity of Shift Bribery in Committee Elections, AAAI 2016 ($)Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget Swap Bribery Action: Each pair of candidates in each vote has a price for being swapped; we can swap cand’s when they are adjacent Manipulation (strategic voting) Action: Fixed voters (the manipulators) can change their votes as they like Shift Bribery Action: We can shift p forward in each vote, for a given price

n-Fold IP Bribery and Friends Shift Bribery Swap Bribery Setting Given: E = (C,V) – election, p – preferred cand. Question: Is it possible to ensure p’s victory by a given action, specified in the problem? n-Fold IP FPT for #candidates D. Knop, M. Koutecký, M. Mnich, Voting and Bribing in Single-Exponential Time. STACS 2017 + easier tricks for special cases ($)Bribery Action: Each voter has a price (possibly a unit) for changing his/her vote; we cannot exceed budget Swap Bribery Action: Each pair of candidates in each vote has a price for being swapped; we can swap cand’s when they are adjacent Manipulation (strategic voting) Action: Fixed voters (the manipulators) can change their votes as they like Shift Bribery Action: We can shift p forward in each vote, for a given price

Shift-Bribery Problem Scores 3 2 1 0 v1: > > >  7 v2: > > >  3 v3: > > >  8 v4: > > >  6

Shift-Bribery Problem Scores 3 2 1 0 v1: > > >  7 v2: > > >  3 2 v3: > > >  7  8 v4: > > >  6  8 Shifting our candidate by k position in the i’th vote costs πi(k)

The Complexity of Shift-Bribery Voting rule Worst-Case Approx.ratio Plurality P ― Veto P ― k-approval P ― Borda NP-com 2 Maximin NP-com O(logm) Copeland NP-com O(m) Intuitively… the nature of shift-bribery price functions matters. For example, the 2-approximation algorithm is much faster for unit prices, and NP-hardness proofs use all-or-nothing price functions

Various Types of Price Functions unit prices all-or-nothing prices All these price functions lead to NP-completeness for Borda, Copeland, Maximin… But parametrized compelxity shows difference! convex prices sortable prices `

Parametrized Complexity of Shift Bribery unit prices all-or-nothing convex prices sortable prices `

Parametrized Complexity of Shift Bribery unit prices all-or-nothing convex prices sortable prices `

Borda-Shift-Bribery: FPT (#shifts) Observation 1: We make at most T shifts, so p’s score increases by T Observation 2: Others lose T points. Conclusion: There are at most T candidates with score higher than our new score; others not interesting. Consider an input with parameter T p = 8 7 6 5 4 3 2 1 0 v1: > > > > > > > > v2: > > > > > > > > v3: > > > > > > > > v4: > > > > > > > >

Borda-Shift-Bribery: FPT (#shifts) Observation 1: We make at most T shifts, so p’s score increases by T Observation 2: Others lose T points. Conclusion: There are at most T candidates with score higher than our new score; others not interesting. Consider an input with parameter T p = 8 7 6 5 4 3 2 1 0 v1: > > > > > > > > v2: > > > > > > > > v3: > > > > > > > > v4: > > > > > > > >

Borda-Shift-Bribery: FPT (#shifts) Consider an input with parameter T Observation 1: We make at most T shifts, so p’s score increases by T Observation 2: Others lose T points. Conclusion: There are at most T candidates with score higher than our new score; others not interesting. p = 6 4 3 2 v1: > > > Step 1: Restrict election to the interesting candidates only (careful about prices of sihifts!) Step 2: For each subset A of interesting candidates and each number J of unit shifts, find T voters for whom shifting p by J positions (in the original election) ensures passing guys for A (at lowest cost) 7 6 5 3 v2: > > > 7 4 3 2 v3: > > > 8 7 5 2 v4: > > >

Borda-Shift-Bribery: FPT (#shifts) Consider an input with parameter T Observation 1: We make at most T shifts, so p’s score increases by T Observation 2: Others lose T points. Conclusion: There are at most T candidates with score higher than our new score; others not interesting. p = 6 4 3 2 v1: > > > Step 1: Restrict election to the interesting candidates only (careful about prices of sihifts!) Step 2: For each subset A of interesting candidates and each number J of unit shifts, find T voters for whom shifting p by J positions (in the original election) ensures passing guys for A (at lowest cost) Step 3: Remove the other voters 7 6 5 3 v2: > > > 7 4 3 2 v3: > > > Kernel  8 7 5 2 v4: > > >

Borda-Shift-Bribery: FPT (#shifts) Consider an input with parameter T Observation 1: We make at most T shifts, so p’s score increases by T Observation 2: Others lose T points. Conclusion: There are at most T candidates with score higher than our new score; others not interesting. p = 6 4 3 2 v1: > > > Step 1: Restrict election to the interesting candidates only (careful about prices of sihifts!) Step 2: For each subset A of interesting candidates and each number J of unit shifts, find T voters for whom shifting p by J positions (in the original election) ensures passing guys for A (at lowest cost) Step 3: Remove the other voters 7 6 5 3 v2: > > > 7 4 3 2 v3: > > > Partial kernel  8 7 5 2 v4: > > >

Parametrized Complexity of Shift Bribery unit prices all-or-nothing convex prices sortable prices `

Borda-Shift-Bribery: FPT (#voters) 3 2 1 0 all-or-nothing v1: > > > v2: > > > Guess a subset of voters and shift to the front! (monotonicity warning) v3: > > > v4: > > > O*(2n)

Parametrized Complexity of Shift Bribery unit prices all-or-nothing convex prices sortable prices `

W[1]-hard: #voters Reduction from Multicolor Independent Set Each vertex and Edge needs to lose a point A A (AF)(AH)(xx)(xx) C (CI)(CE)(xx)(xx) B(BE)(BG)(BD)(BI) p … F (BI)(BD)(BG)(BE) B (xx)(xx) (CE)(CI) C (xx)(xx) (AH)(AF) A p … I H G (GB)(GD)(GE)(xx) H (HA)(HD)(xx)(xx) I(IC)(IF)(xx)(xx) p … (xx)(xx) (IF)(IC) I (xx)(xx)(HD)(HA) H (xx) (GE)(GD)(GB) G p … B D (DB)(DG)(DH)(xx) E (EB)(EC)(EG)(xx) F(FI)(FA)(xx)(xx) p … C (xx)(xx) (FA)(FI) F (xx) (EG)(EC)(EB) E (xx) (DH)(DG)(DB) D p … D G E

W[1]-hard: #voters Reduction from Multicolor Independent Set Each vertex and Edge needs to lose a point A A (AF)(AH)(xx)(xx) C (CI)(CE)(xx)(xx) B(BE)(BG)(BD)(BI) p … F (BI)(BD)(BG)(BE) B (xx)(xx) (CE)(CI) C (xx)(xx) (AH)(AF) A p … I H G (GB)(GD)(GE)(xx) H (HA)(HD)(xx)(xx) I(IC)(IF)(xx)(xx) p … (xx)(xx) (IF)(IC) I (xx)(xx)(HD)(HA) H (xx) (GE)(GD)(GB) G p … B D (DB)(DG)(DH)(xx) E (EB)(EC)(EG)(xx) F(FI)(FA)(xx)(xx) p … C (xx)(xx) (FA)(FI) F (xx) (EG)(EC)(EB) E (xx) (DH)(DG)(DB) D p … D G E

FPT Approx.-Scheme (#voters) m – #candidates n – #voters Description of a shift-bribery: (s1, …, sn) – a vector where sj = shift of p in vote j Problem: mn such vectors v1 v2 v3 v4 v5

FPT Approx.-Scheme (#voters) m – #candidates n – #voters Description of a shift-bribery: (b1, …, bn) – a vector where bj = amount of budget spent on vj Problem: Bn such vectors Observation: We have to spend at least 𝐵/𝑛 units of budget on some voter Algorithm: Repeat until you are left with 𝐵/n units of budget: Guess a voter and spend on him/her B/n Spend 𝐵/n on each voter v1 v2 v3 v4 v5

FPT Approx.-Scheme (#voters) m – #candidates n – #voters Description of a shift-bribery: (b1, …, bn) – a vector where bj = amount of budget spent on vj Budget left: 𝐵 Observation: We have to spend at least 𝐵/𝑛 units of budget on some voter Algorithm: Repeat until you are left with 𝐵/n units of budget: Guess a voter and spend on him/her B/n Spend 𝐵/n on each voter v1 v2 v3 v4 v5

FPT Approx.-Scheme (#voters) m – #candidates n – #voters Description of a shift-bribery: (b1, …, bn) – a vector where bj = amount of budget spent on vj Budget left: 𝐵 1− 1 𝑛 Observation: We have to spend at least 𝐵/𝑛 units of budget on some voter Algorithm: Repeat until you are left with 𝐵/n units of budget: Guess a voter and spend on him/her B/n Spend 𝐵/n on each voter v1 v2 v3 v4 v5

FPT Approx.-Scheme (#voters) m – #candidates n – #voters Description of a shift-bribery: (b1, …, bn) – a vector where bj = amount of budget spent on vj Budget left: 𝐵 1− 1 𝑛 2 Observation: We have to spend at least 𝐵/𝑛 units of budget on some voter Algorithm: Repeat until you are left with 𝐵/n units of budget: Guess a voter and spend on him/her B/n Spend 𝐵/n on each voter v1 v2 v3 v4 v5

FPT Approx.-Scheme (#voters) m – #candidates n – #voters Description of a shift-bribery: (b1, …, bn) – a vector where bj = amount of budget spent on vj Budget left: 𝐵 1− 1 𝑛 3 Observation: We have to spend at least 𝐵/𝑛 units of budget on some voter Algorithm: Repeat until you are left with 𝐵/n units of budget: Guess a voter and spend on him/her B/n Spend 𝐵/n on each voter v1 v2 v3 v4 v5

FPT Approx.-Scheme (#voters) m – #candidates n – #voters Description of a shift-bribery: (b1, …, bn) – a vector where bj = amount of budget spent on vj Budget left: 𝐵 1− 1 𝑛 𝑛 ≈𝐵 1 𝑒 Observation: We have to spend at least 𝐵/𝑛 units of budget on some voter Algorithm: Repeat until you are left with 𝐵/n units of budget: Guess a voter and spend on him/her B/n Spend 𝐵/n on each voter v1 v2 v3 v4 v5

FPT Approx.-Scheme (#voters) m – #candidates n – #voters Description of a shift-bribery: (b1, …, bn) – a vector where bj = amount of budget spent on vj Budget left: 𝐵 1− 1 𝑛 𝑛 𝑙𝑛 𝑛  ≈𝐵/𝑛 Observation: We have to spend at least 𝐵/𝑛 units of budget on some voter Algorithm: Repeat until you are left with 𝐵/n units of budget: Guess a voter and spend on him/her B/n Spend 𝐵/n on each voter v1 v2 v3 v4 v5

FPT Approx.-Scheme (#voters) m – #candidates n – #voters Description of a shift-bribery: (b1, …, bn) – a vector where bj = amount of budget spent on vj Budget left: 𝐵 1− 1 𝑛 𝑛 ln⁡( 𝑛  ) ≈𝐵/𝑛 Observation: We have to spend at least 𝐵/𝑛 units of budget on some voter Algorithm: Repeat until you are left with 𝐵/n units of budget: Guess a voter and spend on him/her B/n Spend 𝐵/n on each voter v1 v2 v3 v4 v5 Overpaid < B O*(𝑛𝑛 ln⁡(𝑛/))

Parametrized Complexity of Shift Bribery unit prices all-or-nothing convex prices sortable prices `

Conclusions Bribery  rich family of problems, with many opportunities for results (and many interesting parametrizations) Shift-bribery very neat problem for parameterized study Many interesting parameters Interesting dependency on price functions FPT/W[1]/W[2] results #candidates  FPT? W[1]-hard? Things to look at? Many other voting rules Optimize current results (more FPT approximations?) Thank you!