This repository accompanies the paper
The Moderating Effect of Instant Runoff Voting
Kiran Tomlinson, Johan Ugander, and Jon Kleinberg
AAAI '24
Extended version: https://arxiv.org/abs/2303.09734
We have included all code for running simulations, all code for generating plots in the paper, and the results files from our simulations.
plots
: all simulation data plots in the paperresults
: compressed simulation results (526 MB)irv.py
: code for running IRV and plurality simulationsplot.py
: code for plotting simulation resultsvolumes.nb
: Mathematica notebook for generating winner region figures
Simulations run in 15 minutes on 100 cores of a server with Intel Xeon Gold 6254 CPUs and 1.5TB RAM (but would run fine on a more modest machine with more time).
Simulations run with:
- Python 3.8.10
- numpy 1.22.4
- scipy 1.8.1
- tqdm 4.64.0
Plotting code run with:
- Python 3.10.8
- numpy 1.23.5
- scipy 1.9.3
- matplotlib 3.6.2
To uncompress results files and regenerate plots:
gunzip results/*.gz
python3 plot.py
To rerun simulations:
python3 irv.py --threads [THREADS]