Voting Systems: from Method to Algorithm
Total Page:16
File Type:pdf, Size:1020Kb
Voting Systems: From Method to Algorithm A Thesis Presented to The Faculty of the Com puter Science Department California State University Channel Islands In (Partial) Fulfillment of the Requirements for the Degree M asters of Science in Com puter Science b y Christopher R . Devlin Advisor: Michael Soltys December 2019 © 2019 Christopher R. Devlin ALL RIGHTS RESERVED APPROVED FOR MS IN COMPUTER SCIENCE Advisor: Dr. Michael Soltys Date Name: Dr. Bahareh Abbasi Date Name: Dr. Vida Vakilian Date APPROVED FOR THE UNIVERITY Name Date Acknowledgements I’d like to thank my wife, Eden Byrne for her patience and support while I completed this Masters Degree. I’d also like to thank Dr. Michael Soltys for his guidance and mentorship. Additionally I’d like to thank the faculty and my fellow students at CSUCI who have given nothing but assistance and encouragement during my time here. Voting Systems: From Method to Algorithm Christopher R. Devlin December 18, 2019 Abstract Voting and choice aggregation are used widely not just in poli tics but in business decision making processes and other areas such as competitive bidding procurement. Stakeholders and others who rely on these systems require them to be fast, efficient, and, most impor tantly, fair. The focus of this thesis is to illustrate the complexities inherent in voting systems. The algorithms intrinsic in several voting systems are made explicit as a way to simplify choices among these systems. The systematic evaluation of the algorithms associated with choice aggregation will provide a groundwork for future research and the implementation of these tools across public and private spheres. Contents 1 Introduction 1 1.1 Contribution of this Thesis ............................................................ 11 2 Background 14 3 Algorithms for Voting Systems 22 3.1 Approval v otin g ................................................................................ 22 3.2 Baldwin Method ............................................................................ 24 3.3 Borda Count ................................................................................... 27 3.4 Bucklin m eth od ................................................................................ 29 3.5 C on d orcet......................................................................................... 30 3.6 Coombs R u l e ................................................................................... 32 3.7 Exhaustive B a llot............................................................................ 35 3.8 Instant Runoff Voting...................................................................... 37 3.9 K em eny-Young................................................................................ 40 3.10 Majority Judgement ...................................................................... 43 3.11 Nanson's Method ............................................................................ 45 3.12 Plurality............................................................................................ 49 3.13 Range Voting ................................................................................... 50 3.14 Tideman method ............................................................................ 52 3.15 Schulze Method ................................................................................ 56 3.16 Veto System ...................................................................................... 61 i 4 Conclusion and future work 62 4.1 Conclusion......................................................................................... 62 4.2 Future W ork...................................................................................... 66 Appendices 67 ii List of Figures 1 Approval Voting Algorithm ......................................................... 23 2 Approval Voting Example............................................................ 23 3 Baldwin Method Algorithm ......................................................... 25 4 Baldwin Method Example ............................................................ 26 5 Borda Count Algorithm ................................................................ 28 6 Borda Count E x a m p le ................................................................... 28 7 Bucklin Method Algorithm............................................................ 29 8 Bucklin Method Example ............................................................ 30 9 Condorcet A lgorithm ...................................................................... 31 10 Condorcet Exam ple......................................................................... 32 11 Coombs R u l e ................................................................................... 33 12 Coombs Example ............................................................................ 34 13 Exhaustive Ballot Algorithm......................................................... 35 14 Exhaustive Ballot Example ............................................................ 36 15 Instant Runoff Voting...................................................................... 38 16 Instant Runoff Voting E x a m p le ................................................... 39 17 Kemeny-Young Algorithm ............................................................ 41 18 Kemeny-Young E xam ple................................................................ 42 19 Kemeny-Young Ranking S c o r e s ................................................... 43 20 Majority Judgment A lgorithm...................................................... 44 21 Majority Judgment Exam ple......................................................... 45 iii 2 2 N a n s o n ’ s M e t h o d A l g o r i t h m ............................................................................................. 4 7 2 3 N a n s o n ’ s M e t h o d E x a m p l e .................................................................................................. 4 8 2 4 P l u r a l i t y A l g o r i t h m ...................................................................................................................... 4 9 2 5 P l u r a l i t y E x a m p l e ........................................................................................................................... 5 0 2 6 R a n g e V o t i n g A l g o r i t h m ....................................................................................................... 5 1 2 7 R a n g e V o t i n g E x a m p l e ............................................................................................................ 5 2 2 8 T i d e m a n M e t h o d A l g o r i t h m ............................................................................................. 5 4 2 9 T i d e m a n M e t h o d E x a m p l e .................................................................................................. 5 5 3 0 T i d e m a n G r a p h ................................................................................................................................ 5 6 3 1 S c h u l z e M e t h o d A l g o r i t h m : S t a g e 1 [ 2 6 ] ................................................................ 5 8 3 2 S c h u l z e M e t h o d A l g o r i t h m : S t a g e 2 [ 2 6 ] ................................................................ 5 9 3 3 S c h u l z e M e t h o d A l g o r i t h m : S t a g e 3 [ 2 6 ] ................................................................ 6 0 3 4 S c h u l z e M e t h o d E x a m p l e ....................................................................................................... 6 0 iv 1 Introduction This thesis will examine common voting systems and restate them as algo rithms for the purpose of clarity and transparency. The necessity of this stems from the ubiquitous presence of algorithms in general in modern life and in creating an understanding between the application of these algorithms and end users. The use of preference aggregation has applications beyond the well known political sphere and is increasingly used in artificial intelli gence and multiagent systems. In situations where a group of people needs to decide between several alternatives there will generally be disagreements on which alternatives are the most and least desirable. This will necessitate the aggregation of individual preferences into a preference that is most accept able the largest number of stakeholders. The importance of this rests on the idea that all voting stakeholders feel that their preferences were considered and dealt with fairly. The use of voting in terms of politics covers not only who will wield the powers of the state but also how they will be allowed to allocate the vast sums of money and other resources. It seems then only natural to expect, and this is born out by history, that some groups will seek to manipulate or control the outcome of elections. As a formal rule, manipulation, also called strategic voting, exists when a voter has the ability to unilaterally change their ballot to secure a desired outcome [1]. This rule also assumes that the voter in question has perfect knowledge of how all others have or 1 will vote and that this voter will mark their choices in an insincere manner to secure their own preferred result. Control, as an alternative, is the use of election procedures by those running the election to change the outcome without changing who individuals may choose to vote for. Often this control is used to decide who can vote or run for office in the first