Commit Graph

215 Commits

Author SHA1 Message Date
RunasSudo e7bae376e9
Fix error with forwards/backwards tiebreaking on first stage 2021-08-20 02:06:45 +10:00
RunasSudo 85b695c133
Improve performance of Scottish STV
Remove reliance on normalising ballot papers
2021-08-19 20:11:42 +10:00
RunasSudo b9e66fde73
Correct number of ballot papers reported to be transferred in exclusive Gregory method 2021-08-17 01:56:43 +10:00
RunasSudo baffdce9e3
Implement print view for ballots+votes report 2021-08-17 01:37:40 +10:00
RunasSudo 8a3361f20d
Implement papers+votes report 2021-08-17 01:14:05 +10:00
RunasSudo c9faa2ef01
Update documentation 2021-08-16 18:47:38 +10:00
RunasSudo 94787e7677
Store vote values at the parcel level rather than the vote level
~50% increase in performance
2021-08-16 00:46:05 +10:00
RunasSudo 7341522ba8
Update web UI defaults 2021-08-11 21:34:42 +10:00
RunasSudo eb3c7d0f53
Fix STVOptions::describe for --min-threshold 2021-08-09 23:27:58 +10:00
RunasSudo b1f2e42ce6
Update documentation 2021-08-09 19:56:51 +10:00
RunasSudo 9f1476da63
Complete ERS76 implementation and add test case 2021-08-09 19:50:49 +10:00
RunasSudo 5024496f61
Add new ERS97 test 2021-08-09 19:02:51 +10:00
RunasSudo 764ebd98e6
Various tidyups
Use "Droop" as default quota (since same as "Droop (exact)" when quota not rounded)
Rename ers97.blt
Update documentation
2021-08-09 17:58:05 +10:00
RunasSudo 46e895ee5a
Correct handling of exhausted votes during random sample surplus distribution 2021-08-09 00:17:14 +10:00
RunasSudo ae0d1d8411
Implement dynamic quotas 2021-08-08 21:41:10 +10:00
RunasSudo ee1008b509
Prepare for dynamic quota: independent flag for completion of surplus transfers/exclusions 2021-08-08 21:35:03 +10:00
RunasSudo 0581571440
Update documentation 2021-08-08 18:59:36 +10:00
RunasSudo dc78692c72
Use new names for STVOptions::describe 2021-08-07 23:27:11 +10:00
RunasSudo b58922c57b
WIP: no immediate election? 2021-08-07 22:34:55 +10:00
RunasSudo 7eb3b46628
Remove Minneapolis STV preset for now
Minneapolis STV is complicated by unusual procedures which are not currently implemented
2021-08-06 14:36:09 +10:00
RunasSudo f706d7423b
Fix interaction between --exclusion parcels_by_order and --min-threshold when excluding candidates with 0 votes 2021-08-06 01:33:31 +10:00
RunasSudo 0af8d8a4d6
Update documentation on Minneapolis STV 2021-08-06 01:33:04 +10:00
RunasSudo 8a4219303a
Implement Minneapolis STV 2021-08-05 21:47:34 +10:00
RunasSudo 429191dc81
With --sample-per-ballot, terminate immediately on electing the required number 2021-08-05 20:23:54 +10:00
RunasSudo 33594c110e
Implement stratified and by-order sampling 2021-08-05 18:41:39 +10:00
RunasSudo f3e4071886
Refactor tests specification using builder pattern 2021-08-05 01:13:54 +10:00
RunasSudo 0800701960
Implement configurable --sample-per-ballot 2021-08-04 13:46:32 +10:00
RunasSudo 0efc1e6eab
Complete implementation of Cambridge STV
Implement --min-threshold
Add test
2021-08-03 23:42:59 +10:00
RunasSudo f182ca02bd
Implement Cambridge STV - Cincinnati/Hare methods of surpluses 2021-08-03 18:38:45 +10:00
RunasSudo 6da51837a5
Rename --round-tvs to --round-surplus-fractions and --round-weights to --round-values 2021-08-03 16:46:21 +10:00
RunasSudo 77fe5effb2
Update documentation on bulk exclusion 2021-08-03 16:44:26 +10:00
RunasSudo c4fab9dc75
Correct description of backwards tie breaking algorithm 2021-08-02 20:14:03 +10:00
RunasSudo a2915b034b
Fix bug with attempted bulk exclusion during exclusion of doomed candidates 2021-08-02 00:24:41 +10:00
RunasSudo ea8c452737
Prevent bulk election and bulk exclusion violating constraints 2021-08-02 00:10:17 +10:00
RunasSudo 116ff39fa5
Change tiebreaking prompt according to nature of tie 2021-07-31 17:51:09 +10:00
RunasSudo 32e89312fa
Show stage progress during tie that occurs in the middle of a stage 2021-07-31 17:42:33 +10:00
RunasSudo 83d0a9bb80
Better error messages 2021-07-31 15:24:23 +10:00
RunasSudo bfeec6f839
Give information on BLT syntax errors 2021-07-29 17:34:34 +10:00
RunasSudo 3801d30527
Switch to handwritten BLT parser 2021-07-29 03:24:51 +10:00
RunasSudo 470f1e550e
Simplify stack unwinding logic 2021-07-28 16:03:34 +10:00
RunasSudo 49feb09bf8
Prefer election by quota/VRE to early bulk election 2021-07-28 00:12:57 +10:00
RunasSudo a5a61731b5
Use Asyncify to process ties in web UI 2021-07-27 23:31:37 +10:00
RunasSudo a64110b6a1
Update documentation 2021-07-26 18:50:51 +10:00
RunasSudo 5f48a88bbe
Validated against 2019 NSW Senate election
Disable bulk election for Senate STV
Update documentation
2021-07-23 20:30:14 +10:00
RunasSudo efbcfd7f6c
Simply BLT grammar specification 2021-07-23 17:07:03 +10:00
RunasSudo 4312bf89f6
Tweak layout of presets menu 2021-07-23 17:00:45 +10:00
RunasSudo e3419b6462
Add comments to supplied BLT files 2021-07-23 16:58:46 +10:00
RunasSudo cca097f943
Use Pest-based parser for BLT files
Support comments, optional newlines, etc.
2021-07-23 16:45:54 +10:00
RunasSudo 3b8ccd097e
Extend early bulk election to multiple vacancies if the leading candidates cannot be overtaken 2021-07-23 01:38:37 +10:00
RunasSudo 4690c32607
Fix unnecessary recursion in ERS97 algorithm 2021-07-23 00:42:15 +10:00