Commit Graph

78 Commits

Author SHA1 Message Date
RunasSudo dde79520a1
Implement dynamic dispatch for different number types 2021-07-14 16:36: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
RunasSudo d34057d03a
Round half away from zero when formatting Fixed/GuardedFixed 2021-06-16 21:51:12 +10:00
RunasSudo 8829fa5a7b
Update documentation 2021-06-16 21:51:12 +10:00
RunasSudo 4ebb6474fd
Implement Meek STV 2021-06-16 18:44:24 +10:00
RunasSudo f395e6f064
Implement guarded fixed-point arithmetic 2021-06-14 22:11:33 +10:00
RunasSudo 3bbef933bb
Refactor and add documentation 2021-06-14 20:43:36 +10:00
RunasSudo 4845ebe52f
Implement --ties random 2021-06-13 03:15:15 +10:00
RunasSudo 266d8e2495
Report when and how ties are broken 2021-06-13 00:56:18 +10:00
RunasSudo daeb706b44
Implement forwards/backwards tie-breaking in web UI 2021-06-13 00:39:49 +10:00
RunasSudo 2dc5ed963b
Implement forwards and backwards tie-breaking 2021-06-13 00:15:14 +10:00
RunasSudo 5d491687b4
Code fixups 2021-06-12 21:16:53 +10:00
RunasSudo e059a6a3d9
Fixes to count description 2021-06-12 16:03:31 +10:00
RunasSudo a89c949315
Fix description of quota options 2021-06-12 15:46:44 +10:00
RunasSudo a038efc8a4
Initial implementation of prompt-based tie breaking 2021-06-12 02:09:39 +10:00
RunasSudo 4c4099ee22
Handle withdrawn candidates 2021-06-12 00:51:31 +10:00
RunasSudo 59539d807a
Implement --normalise-ballots
This, with --sum-surplus-transfers, allows us to fully replicate the Scottish STV result
2021-06-11 21:25:58 +10:00
RunasSudo 96a3eaec84
Implement --sum-surplus-transfers 2021-06-11 21:25:58 +10:00
RunasSudo 9d4cac2e89
Implement Scottish STV test case 2021-06-10 15:47:09 +10:00
RunasSudo 537f1f0011
Fix regression with single stage exclusion 2021-06-09 22:34:44 +10:00
RunasSudo 7ef5ae99b6
Add ERS97 test case 2021-06-09 20:09:20 +10:00
RunasSudo a714ba6a90
Correctly apportion votes in bulk exclusions 2021-06-09 19:43:11 +10:00
RunasSudo 990704a56a
Implement --bulk-exclude and --defer-surpluses in web UI 2021-06-09 12:42:47 +10:00
RunasSudo 79f0f55942
Implement --defer-surpluses 2021-06-09 12:16:25 +10:00
RunasSudo 08cb03d85a
Implement --bulk-exclude 2021-06-08 22:22:43 +10:00
RunasSudo d50af1161e
Implement --quota-mode ers97 2021-06-07 20:52:18 +10:00
RunasSudo 30b68d4992
Fix ceil implementation in NativeFloat64 2021-06-07 20:39:49 +10:00
RunasSudo 62eac6d0a6
Always display ballot weights to at least 2 decimal places 2021-06-06 02:35:40 +10:00
RunasSudo 673149e184
Code clean up 2021-06-05 15:08:07 +10:00
RunasSudo 830362416d
Fix logic error where loss by fraction not updated in multi-stage exclusions 2021-06-04 22:54:26 +10:00
RunasSudo ceba059c53
Implement --numbers fixed 2021-06-04 22:05:48 +10:00
RunasSudo 441e266b17
Implement --numbers in web client 2021-06-04 18:59:50 +10:00