Skip to content

Election simulation models — how voters and ballots are generated for testing

You can't read voters' minds, and you can't run millions of real elections under a dozen methods. So to compare methods (the VSE / Bayesian-Regret studies), you simulate: generate synthetic electorates, cast ballots, tabulate, and score the outcome — thousands of times. This page is the neutral technical menu of the models used to generate those electorates, and a standing caution: every conclusion is conditional on the model.**

→ Level: 301 · deep dive — Curriculum 301.10. Read first: Simulate utilities, not ballots — why you sample preferences (the models below) and derive ballots from them, rather than drawing random ballots directly. Companion: What makes a good winner? · What makes a voting method good?.

The prerequisites (what the math is built from)

Reading the wider literature rather than building a model? Start with the statistics you actually need — mean vs median as a method-defining choice, variance as the meaning of "divisive", and why correlated electorates make impartial culture a stress test rather than a prediction.

  • Combinatorics — N! strict rankings of N candidates (5 → 120); combinations for candidate subsets.
  • Probability distributions — Uniform (Impartial Culture), Normal/Gaussian (spatial clustering around a center), Dirichlet (random bloc mixtures that sum to 1).
  • Distance metrics — Euclidean √Σ(xᵢ−yᵢ)² (the heart of spatial models), and Kendall-Tau (number of pairwise disagreements / adjacent swaps between two rankings — used by Mallows).

Two families of model

A. "Noise" / statistical models (no geometry)

This page is the library's home for these six — the rest of the repo links here for "impartial culture," not outward — so each name below links to its defining source: the Wikipedia article where one exists, the original paper where it doesn't. The deeper treatment stays in the library: why you sample preferences at all, the standing caveat below, and what IC does to a method comparison.

  • Impartial Culture (IC) — every one of the N! rankings is equally likely (each voter is an independent die-roll, prob 1/N!). Simplest and most common in the literature; "nothing up my sleeve." Caveat below on cycles — and a harder one on distortion.
  • Impartial Anonymous Culture (IAC) — every anonymous tally (vote-count profile) is equally likely, via "stars-and-bars" combinatorics. It weights unusual/close configurations more heavily, so it's favored for stress-testing edge cases and paradox rates.
  • Impartial, Anonymous and Neutral Culture (IANC) — IAC with one more symmetry divided out: candidate names are immaterial too, so the object drawn is an equivalence class of tallies under relabelling the candidates (Eğecioğlu and Giritligil call a representative of one a root), and every class is equally likely. That makes the three a single construction under three groups — IC quotients by nothing, IAC by the voter permutations Sₙ, IANC by Sₙ × S_m — and it is the model that matches what an anonymous and neutral rule can actually see, since such a rule cannot tell two relabelled tallies apart in the first place. Classes are not all the same size: a tally with internal symmetry (the perfect Condorcet cycle, an exact three-way tie) sits in a class smaller than m!, so IANC gives those shapes extra weight and reads paradoxes a little higher than IAC on tiny electorates — converging to it as the electorate grows. (Eğecioğlu & Giritligil 2013 — Wikipedia has no separate IANC article, only a section of the IAC entry above.)
  • Mallows (φ-model) — a reference ("true") ranking plus noise: the probability of a ballot decays exponentially in its Kendall-Tau distance from the reference. φ=0 → everyone votes the reference; φ=1 → pure IC; 0<φ<1 → clustered-with-noise. Good for "polarized but correlated" electorates. (Mallows 1957 — there is no Wikipedia article.)
  • Plackett-Luce — each candidate has a "strength" γ; P(A ranked 1st) = γ_A / Σγ, then repeat for 2nd place among the rest. Common in machine-learning "learning-to-rank."
  • Pólya-Eggenberger (urn) models — draw a ballot for A, return it plus an extra A: "the rich get richer." Produces heavy bloc/clustering correlation naturally, modeling social influence — no geometry needed.

You don't have to write any of these samplers: all but IANC ship in pref_voting's profile generators — the same library this repo already leans on for its independent Copeland cross-check, so it's already a dependency. (docs) What those samplers are actually called, what each one's parameter does, and the three that are commonly quoted wrongly: Statistical cultures — which also measures how much the choice moves a result.

B. Spatial (geometric / ideological) models — the realistic "gold standard"

New to the idea? Start with the concept page: The spatial model — voters and candidates as points on a map (the political spectrum, the median voter theorem, and why it predicts center-squeeze). This subsection is the simulation-recipe version — and once you are writing the code, the six Euclidean spaces names and draws the actual shapes the libraries offer (uniform_ball, gaussian_cube, unbounded_gaussian…), including which of them is worth its cost.

Voters and candidates are points in an N-dimensional space (1-D left–right, 2-D adds e.g. libertarian–authoritarian). A voter prefers the candidate closest to them (Euclidean distance); for scored methods, distance is converted to a utility (e.g. utility = 100 − distance × factor, or a Gaussian/decreasing function). Voters are typically drawn from a multivariate Normal (a bell curve centered on the median voter); candidates uniform or clustered. This is what the Ka-Ping Yee diagrams visualize, and what the more sophisticated VSE "hierarchical clusters" model elaborates (issue clusters, identity clusters, varying salience).

The standing caveat: results are conditional on the model

Different generators make different scenarios common or rare, which changes what a study concludes:

  • Impartial Culture produces many near-ties (all candidates ~equal quality), which some theorists (e.g. Tsetlin, Regenwetter & Grofman 2003) call unrealistic — methods never get to show their skill at "ferreting out the best candidate." That objection is now a theorem, not just a worry: under IC, every voting rule — deterministic or randomized — has average distortion Ω(m), while drawing a winner uniformly at random and ignoring the ballots achieves ≤ m. So on this model there is no skill to show, by proof (Caragiannis & Fehrs 2024; worked through here). Treat an IC-computed method comparison as close to information-free.
  • Spatial / n-dimensional models make central candidates genuinely stronger (more realistic), but can make hard cases like Condorcet cycles nearly impossible, so cycle-resolving methods never get tested.
  • Hierarchical-cluster models sit in between — 8.68% of three-candidate elections have no Condorcet winner under IC, against 0.15% under a spatial model — and produce cycles at a plausible ~5–15% rate, which is why the headline VSE numbers use them.

So a method's measured score is only as trustworthy as the voter/strategy model behind it. This is the same evenhandedness point from the method-quality page: VSE is a strong tool, but it is not model-independent.

A correction worth flagging

A common summary says "IC makes ties and cycles vanishingly rare in large elections." Exact ties do vanish as the electorate grows — but cycles do not: under IC the probability of no Condorcet winner converges to a positive limit (≈ 8.8% for 3 candidates, rising with more candidates). And IC vs. IAC runs the opposite way often assumed: for 3 candidates in the large-electorate limit, IC ≈ 8.77% vs. IAC ≈ 6.25% (Gehrlein) — IC yields more cycles, not fewer. The right takeaway is just that the model choice materially changes paradox rates, so it must be stated.

And the model choice bites hardest where the electorate is smallest. Take the smallest interesting case — 3 candidates, 3 voters — small enough that all three models can be counted exactly instead of sampled. Exactly one profile shape has no Condorcet winner: the perfect cycle, one ballot each of A>B>C, B>C>A, C>A>B. It is 12 of IC's 216 labelled profiles, 2 of IAC's 56 tallies, and 1 of IANC's 10 classes — so the probability that a Condorcet winner exists is 94.44% (IC) · 96.43% (IAC) · 90.00% (IANC), three readings of one shape rather than three different findings. (The first two are Gehrlein's published values; the third is the exact count behind the 0.8959 the IANC paper sampled.) The gap then closes fast, and in a way worth knowing: for 3 candidates, IANC and IAC are literally the same distribution whenever the voter count shares no factor with 3! = 6, because every class then has exactly 6 members — and at 4 candidates m! times the class count is within 0.02% of the tally count by twelve voters. Between these models, paradox rates are a small-electorate concern, not a large one.

The second standing caveat: a strategic number needs its sincere baseline

The caveat above is about the electorate. This one is about the ballots, and it bites hardest on exactly the studies that look most sophisticated — the ones that let voters behave strategically.

A simulation that reports one number per method under strategy ("how often does the sincere Condorcet winner still win?") has merged three events that carry opposite weight: the method missing while every ballot is honest, an attack succeeding, and an attack backfiring on the people who cast it. The failure mode is not subtle and it is not hypothetical — on that single merged number, methods converge, and they converge because a method that is bad on sincere ballots has less left for an attacker to take. Plurality ties Ranked Robin on it, having lost nothing to the attack at all, because burial cannot reach a rule that reads one mark.

So: print the sincere column beside the strategic one, always. The gap between them is the quantity the study is actually about; the strategic column alone is not interpretable. Two further columns are worth the trouble whenever a strategy is being modelled — whether the attack paid or backfired for the attackers (a method that punishes manipulation is doing something a hit rate cannot see), and how large a coalition the successful attack needed.

Worked through, with the tables and a five-question checklist for reading anyone else's version: formal compliance vs. strategic preservation of the sincere winner. The sincere baselines themselves, for six methods across these models: Condorcet efficiency, measured.

In this repo

Our test cases are hand-crafted (small, legible elections designed to isolate one behavior), not simulation-generated — the opposite end from VSE. The two are complementary: simulations answer "how often does a method go wrong across many electorates?", while our worked cases answer "how does it go wrong, concretely, on this ballot set?" (see What makes a good winner? and the test-case catalog).

References