Commit Graph

108 Commits

Author SHA1 Message Date
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
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
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
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
efbcfd7f6c
Simply BLT grammar specification 2021-07-23 17:07:03 +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
RunasSudo
65b1d8e42b
Fix "Ex" display in web UI 2021-07-23 00:10:53 +10:00
RunasSudo
85eda02d4d
Make stage number link to comment 2021-07-23 00:04:43 +10:00
RunasSudo
bea51611b0
Implement Australian Capital Territory STV 2021-07-22 20:31:06 +10:00
RunasSudo
3ea1eef7c5
Implement WA STV and update documentation 2021-07-22 00:41:20 +10:00
RunasSudo
2ef7bf24f2
Correctly compute vote required for election when using different quotas/quota criteria 2021-07-21 13:43:16 +10:00
RunasSudo
b5ee76f159
Further aggressive early bulk election 2021-07-21 10:59:06 +10:00
RunasSudo
ed4a86e699
More aggressive early bulk election 2021-07-21 00:46:32 +10:00
RunasSudo
f80875b583
Implement --exclusion by_source 2021-07-19 23:15:17 +10:00
RunasSudo
7f16090395
Fix crash on attempting segmented exclusion of candidate with no votes 2021-07-19 18:35:23 +10:00
RunasSudo
d144ab0cb4
Implement ERS76 rules 2021-07-18 21:14:37 +10:00
RunasSudo
0d9196a951
Refactoring 2021-06-29 16:48:02 +10:00
RunasSudo
9b73a4adf4
Remove CountStateOrRef 2021-06-29 01:27:10 +10:00
RunasSudo
34545ad179
Check for ties when electing candidates with surpluses
Refactor constraint-related code into constraints module
2021-06-28 00:56:28 +10:00
RunasSudo
d697871414
Also bulk elect based on guarded candidates 2021-06-27 23:20:35 +10:00
RunasSudo
05ec70830f
Fix bug with constraints
Also initialise constraint matrix with total number of seats
2021-06-27 22:36:50 +10:00
RunasSudo
ba3db26263
Describe use of constraints in lead-in text 2021-06-27 22:24:25 +10:00
RunasSudo
1d4036c19e
Implement constraints in web UI 2021-06-27 22:09:34 +10:00
RunasSudo
38eef74e77
Implement constraints (guard-doom method) for CLI 2021-06-27 21:57:24 +10:00
RunasSudo
c563654ace
Implement constraint matrix logic and test case 2021-06-27 17:49:28 +10:00
RunasSudo
ce8b252453
Implement --no-early-bulk-elect 2021-06-23 00:52:25 +10:00
RunasSudo
d46eb69f26
Implement Wright STV 2021-06-22 16:40:37 +10:00
RunasSudo
08821c3c18
Validate option combinations 2021-06-22 14:34:26 +10:00
RunasSudo
2e034d06c8
Fix error with --meek-nz-exclusion, etc. on CLI 2021-06-22 14:29:33 +10:00
RunasSudo
290ddad634
Show updated keep value after exclusion when --meek-nz-exclusion 2021-06-20 01:51:34 +10:00
RunasSudo
1b39b8b138
Implement --meek-nz-exclusion for NZ Meek STV 2021-06-20 01:48:25 +10:00
RunasSudo
13f1885eb5
Implement features required for 2006 Meek STV
viz. --round-{tvs,votes,weights}, --defer-surpluses, --meek-immediate-elect and --meek-surplus-tolerance
2021-06-19 02:05:27 +10:00
RunasSudo
2ea8b4b757
Add tests for Meek STV 2021-06-16 21:51:13 +10:00
RunasSudo
151c9e484e
Calculate loss by fraction in Meek STV 2021-06-16 21:51:13 +10:00
RunasSudo
ca54b94953
Show keep values for elected candidates in Meek STV 2021-06-16 21:51:12 +10:00