Marcus Ogren
2 min readJul 11, 2023

--

Could you describe the exact algorithm used for tactical voting under each voting method? I don't know Haskell so I cant understand it from looking at the source code. Did you do anything to assess the effectiveness of strategies from the perspective of the voters using them? In my opinion, getting the strategy wrong is the easiest was to mess up a voting methods simulation, and it's especially difficult when you're looking at more than just basic honest behavior.

I was able to understand the honest Approval Voting strategy though, and it's suboptimal in a way that is highly unrealistic. This strategy is extremely vulnerable to the "reverse spoiler effect" in which the entry of a widely-disliked candidate causes voters to vote for additional candidates. Using the strategy you do with any reasonable voter model results in the average voter voting for the majority of candidates, which has never been observed in any Approval Voting election in Fargo or St. Louis. I've written about tuning Approval Voting strategies in this post (https://medium.com/@voting-in-the-abstract/expected-strategic-influence-factors-20b3791ecbcd) and Appendix A of this paper (https://arxiv.org/abs/2306.07147).

That said, your simulations seem mostly reasonable, and your voter model makes sense. It greatly oversamples "interesting" elections as compared to real-world IRV data, but shouldn't affect comparisons between voting methods too much (though you probably shouldn't describe the high rates of disagreements between voting methods as realistic). I was especially surprised to see Score and STAR outperform Condorcet by such a wide margin. It could be interesting to see charts for how the metrics you look at vary based on the number of clusters.

--

--

Marcus Ogren
Marcus Ogren

Responses (2)