This repository contains code for the paper following paper:
@inproceedings{garg2022combatting, title={Combatting gerrymandering with social choice: The design of multi-member districts}, author={Garg, Nikhil and Gurnee, Wes and Rothschild, David and Shmoys, David}, booktitle={Proceedings of the 23rd ACM Conference on Economics and Computation}, pages={560--561}, year={2022} }
Full version on arXiv: https://arxiv.org/abs/2107.07083
This repository is organized as follows:
-
optimize/
contains the optimization code that generates optimal multi-member maps for each state, for each objective function. This algorithm is based on the algorithm described in the following paper:@inproceedings{gurnee2021fairmandering, title={Fairmandering: A column generation heuristic for fairness-optimized political districting}, author={Gurnee, Wes and Shmoys, David B}, booktitle={SIAM Conference on Applied and Computational Discrete Algorithms (ACDA21)}, pages={88--99}, year={2021}, organization={SIAM} }
We have uploaded the output maps used in the paper in the following Box folder: https://cornell.box.com/s/xrzcblq4wg7bpe51q26cgpklwjuwz3ph
-
The remainder of the code uses the generated maps to compute the results in the paper, including:
- visualization of various maps
- computing the proportionality and competitiveness results for each state and overall, for each set of maps (fair, random, and optimized for each party)
- setting up and running STV elections for the intra-party results.
data/ description:
- data/voterfile_withscores_noised.csv: a noisy, sampled version of the individual level voter file data used for the intra-party analysis in the paper