Other methods — what this library teaches about but does not promote¶
Standalone demos of the methods outside the equal-vote family: they're here for completeness and honest comparison, not prominence.
The folder has two halves. Methods that earned a folder get one — a README.md, concept pages, and runnable cases/:
| Method | Case (page) | What it shows | src |
|---|---|---|---|
| Choose-One (Plurality) | Team lunch — a dead tie | mark one box, count the marks — and a 2–2 tie the ballots can't break | .yaml |
| RCV-IRV | RCV ballot example | a plain ranked-ballot instant-runoff count | .yaml |
| STV | STV — 3 seats | proportional seats from ranked ballots (compare proportional STAR on score ballots) | .yaml |
| Range / Score | Range / Score 101 | highest total score wins — STAR without the runoff | .yaml |
| Majority Judgment | Majority Judgment | grade in words (To Reject … Excellent); the highest median wins — the same ballot as Range, counted so one enthusiast can't drag it | .yaml |
| 3-2-1 Voting | 3-2-1 Voting | Good/OK/Bad → 3 semifinalists → 2 finalists → 1 winner (Tennessee, blank = Bad) | .yaml |
| Combined Approval (CAV) | The newcomer nobody dislikes | For / abstain / Against, highest net wins — and the same twelve voters reversed end-to-end when a blank counts as the bottom grade instead of the middle | .yaml |
Range overview: Range / Score Voting; engine: Range / Score voting tabulation engine (pref_voting). Majority Judgment has no _tabulated mirrors or generated pages, and deliberately: its grades are words, so its files carry a grades: block rather than ballots: and are counted by grade_methods_report.py — the count lives on the concept page. CAV likewise ships a clean-room engine (Combined_Approval/cav_tabulation.py) — no off-the-shelf tabulator exists, so every count is verified by an internal affine-invariance check and by pref_voting on the equivalent (0,1,2) profile. 3-2-1 has its own clean-room engine (three_two_one/three_two_one_tabulation.py), verified against Jameson Quinn's reference vectors — no off-the-shelf 3-2-1 engine exists.
Methods too thin for a folder share one — other_ranked_methods/ is a shelf, not a method: a concept page apiece for Borda (manufacturing scores from ranks) and agenda voting (where the order of the pairwise votes picks the winner). Neither has runnable cases yet; the day one does, it graduates to its own folder.
Alongside those sit the labs and the engine — not methods, but the tooling that compares them:
simulations/— brute-force, utility-first method-comparison sims (FBC, runoff reversal, STAR-vs-Approval divergence).ballot_style_lab/— a seeded generator of random-but-HUMAN electorates (style-gallery renderings over slanted faction utilities: harsh 0–2 graders, gentle 3–5 souls, cliff voters, bullet brigades) frozen into ten stress cases with ties, cycles and reversals: six single-winner STAR plus a multi-winner wing (a same-ballots Bloc-vs-STAR-PR twin pair, a 2-seat quota stress, and a 7-candidate / 4-seat Bloc run).abcvoting_tabulation_engine/— multi-winner Approval (ABC) rules via Martin Lackner'sabcvoting, the independent cross-check on the LH bloc-Approval count.
Most non-EVC material lives where it teaches best: inside method comparisons, where RCV-IRV and choose-one serve as the foil to the equal-vote methods. Concept docs: RCV-IRV (Hare), Borda, and Agenda voting.