VoteSim

Methods and model

Election methods

Scottish STV uses stvpoll, implementing the Scottish Local Government Elections Order 2007.

STAR-PR (Allocated Score) uses Equal Vote’s starpy. See STAR Voting for explanations. The STAR-PR tabulator uses Allocated Score.

Borda Count awards N−1 points to the first candidate on a complete ranking, down to zero for the last. The highest scoring candidates fill the seats.

Voters, slates and popularity

Each run draws every candidate’s underlying popularity uniformly from 10 to 90. Each voter then draws personal preferences from a Beta distribution with that mean and the selected standard deviation, on a 0–100 scale. Spread is clamped when needed so both Beta parameters are at least 1.05, keeping distributions unimodal.

Faction voters rank their whole slate first, in one shared order of underlying popularity. Other candidates follow in personal popularity order. In polarized scenarios, Red and Blue rank the opposing faction last. Independent voters rank everyone by personal popularity.

Faction voters score their candidates 5 stars, enemies 0, and everyone else 0–4 stars. Independent voters score everyone 0–5 stars. Scores use absolute bins, rounded half up. Every voter completes both a full ranking and a score ballot.

Expected candidates are ceil(vote share × seats). Normal groups nominate ceil(1.5 × expected); spamming factions nominate min(3 × expected, ceil(1.5 × seats)). Every positive-share group has at least one candidate. Custom overrides replace these counts. Yellow faction and Independents are mutually exclusive.

Group voter counts are rounded, with the final group receiving the remainder. Population shares therefore describe expected proportional targets rather than guaranteed seat outcomes.

Seeds and result statistics

A seed generates an independent child seed for each run. All three methods see the same electorate. STV ties use seeded randomness; Allocated Score candidate columns and Borda tie priorities are shuffled with the seeded generator. Results do not depend on worker scheduling.

Boxes show the distribution across runs; diamonds mark proportional targets. The table reports population standard deviation and the proportion of runs with strictly more than half the seats. Results describe the specified simulation model.