Electoral Systems Simulator: An Open Framework for Comparing Electoral Mechanisms Across Voter Distribution Scenarios

Abstract

Here we present electoral\sim, an open-source Python framework for simulating and comparing electoral systems across diverse voter preference distributions. The framework represents voters and candidates as points in a two-dimensional ideological space, derives sincere ballot profiles from Euclidean preference distances, and evaluates several standard electoral mechanisms -- including plurality, ranked-choice, approval, score, Condorcet, and two proportional representation systems -- against a common primary metric: the Euclidean distance between the electoral outcome and the geometric median of the voter distribution. We evaluate these systems across many empirically-grounded scenarios ranging from unimodal consensus electorates to sharply polarised bimodal configurations, reporting both single-run and Monte Carlo stability results across 200 trials per scenario. As a case study in framework extensibility, we implement and evaluate a novel hypothetical mechanism that is not currently implemented in any jurisdiction -- in which each voter's influence is distributed across candidates via a Boltzmann softmax kernel. This system is included as a theoretical benchmark characterising an approximate upper bound on centroid-seeking performance, rather than as a policy proposal. All code is released publicly at https://github.com/mukhes3/electoralsim.

0

Turn this paper into a full lesson

ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…