Practical Algorithms for Computing STV and Other Multi

Practical Algorithms for Computing STV
Chunheng Jiang, Sujoy Sikdar, Hejun Wang, Lirong Xia, Zhibing Zhao
Single Transferable vote
β€’ π‘š candidates
β€’ π‘š βˆ’ 1 rounds
β€’ At each round:
οƒ˜ Eliminate a candidate with lowest plurality score
β€’ Last remaining candidate is the winner
Single Transferable Vote: Multi-round voting
2
1
3
≻
≻
≻
≻
≻
≻
≻
plurality
score
4
≻
# votes
4
3
3
4
2
1
3
Winner!
4
6
How should ties be broken?
≻
≻
≻
≻
3
≻
≻
≻
≻
4
3
1
2
4
3
Parallel-Universe-Tiebreaking (PUT) – STV [Conitzer et al. 2009]
Ties are real
β€’ 9.2% of Preflib profiles have more than one STV co-winners.
β€’ On average 1.1 co-winners in Preflib data.
β€’ Greater transparency in voting rule implementation.
β€’ Random elimination of ties not the solution.
β€’ Computing all co-winners for STV, and other rules is NP-hard. [Conitzer et
al. β€˜09, Mattei et al. β€˜14]
When COMSOC starts
β€’ Complexity of Kemeny and Dodgson’s rule [Bartholdi et al. β€˜89]
β€’ Computing Kemeny winners:
β€’ 104 algorithms compared [Ali and Meila, β€˜12]
β€’ STV has been overlooked.
β€’ Used in Australia, Canada, India, UK, US
β€’ Computing winners using Map Reduce [Csar et al. β€˜17]
β€’ P-complete for STV using fixed tie breaking
Main messages
β€’ Winner computation has been overlooked
β€’ STV, ranked pairs, Coombs, Baldwin…
β€’ Standard search algorithms work for small elections
β€’ New frontier: Machine learning for COMSOC
Winner Determination Problem
β€’ Input: Preferences
β€’ Output: co-Winners
β€’ Criteria
β€’ Running time
β€’ Early discovery
Online, high frequency voting
Want: Anytime algorithms
RPI Grand Marshall Week
β€’ The Grand Marshal (GM) is the highest elected
student leader of RPI [wiki]
β€’ Annually since 1865
β€’ 152 GMs
β€’ A full week of events
β€’ active campaigning
β€’ debates
β€’ primary/general elections
Online voting becomes real
β€’ RPI switched to β€œonline” voting in 2015
β€’ Google form
β€’ Long line
β€’ Only vote for top choice
β€’ We can build a better system
β€’ Rank the candidates? Yes
β€’ Complicated mechanism? No
β€’ Live results? Maybe
β€’ Cyber security?
Disclaimer: I am not advocating for online voting
Online Preference Reporting and Aggregation
Live Results
Include picture
As an AI search/exploration problem
≻
≻
≻
≻
3
≻
≻
≻
≻
4
3
1
2
4
3
Standard tricks
…
…
…
…
Store in cache
…
β€’ Caching
β€’ Pruning
β€’ Reduction
β€’ Sampling
X
Prune
Experimental Setup
β€’ Preflib data
β€’ Synthetic data
β€’ Profiles generated i.i.d.
β€’ Only use hard cases: at least one tie in the execution of STV
Caching helps Depth First Exploration
no caching
with caching
Peak in avg. # co-winners around n=20
Early discovery: # co-winners / # states
proportion of co-winners
pruning, caching
plain
π‘š = 30, 𝑛 = 30
Avg. co-winners: 7.4
Exploring more intelligently
β€’ Prioritize states that lead to a new winner
β€’ Priority function:
β€’ To aid early discovery
β€’ Reduce # nodes expanded
β€’ Idea for priority function
β€’ If we had better knowledge of co-winners in each state
𝛼1 βˆ— # 𝑛𝑒𝑀 π‘€π‘–π‘›π‘›π‘’π‘Ÿπ‘  + 𝛼2 βˆ— π‘‘π‘’π‘π‘‘β„Ž + 𝛼3 βˆ— #𝑛𝑒𝑀 π‘€π‘–π‘›π‘›π‘’π‘Ÿπ‘  βˆ— π‘‘π‘’π‘π‘‘β„Ž
estimated by machine learning
Machine Learning for STV
β€’ Features
β€’ Weighted Majority graph
β€’ Positional matrix
β€’ Borda, Copeland, Maximin score
β€’ LP relaxation
β€’ Learning algorithms tried:
β€’ Neural networks
β€’ Logistic
β€’ SVM – linear, rbf
β€’ Deep learning
Machine learning for early discovery
(π‘š = 20, 𝑛 = 20)
Ground truth -48%
NN -35%
Summary and future work
β€’ Winner determination problem revisited
β€’ STV, ranked pairs, Coombs, Baldwin…
β€’ Standard AI algorithms may work
β€’ Machine learning can help
β€’ Deep learning
β€’ Reinforcement learning
β€’ New frontier: Machine learning for COMSOC
β€’ Other multi-round rules
β€’ Other classical COMSOC problems: Kemeny, multi-winner rules, manipulation,
bribery, margin of victory, possible/necessary winners
β€’ Measuring and visualizing consensus: voting blocs
β€’ Designing new rules [Xia β€˜13 AAMAS]
Thank You
Thank You