One thing that always bothered me about RRV is that somebody who gave a full score of 9 to the winning candidate in the first round still gets to influence subsequent rounds. In the next round their scores are reduced by half following the formula w = 1/(1+sum/9) where “sum” is the score given to elected candidates. To me this seems wrong since a voter who gets a candidate elected should influence further rounds by an amount proportional to the amount they are left unsatisfied. A voter who has elected a candidate they scored with 9 would then be fully satisfied and out of further rounds.
If a voter got a candidate elected in the first round who they scored 5 then they have 9-5=4 score remaining to be satisfied. This, 9 - sum, formula should keep track of the amount they voter has yet to be satisfied. Additional, This is the current maximum amount that they should be allowed to influence the election. So instead of reweigting by a factor after each round the scores are adjusted to min(S,9-sum) where S is the original score. The property I am trying to maintain is the “one person, one vote” concept. I call this “Vote Unitarity” and to the best of my knowledge I have invented it. It is also a multi winner generalization of Bayesian Regret. Minimizing the amount of score points left to be satisfied would minimize this sort of regret.
Aside from this reweigting change to RRV I have to make one more change to keep Proportional Representation. The only time this method would break down is when a candidate wins in surplus as define by a Hare Quota
sum(score/9)> (# voters)/(# seats)
In this case the voter need not “spend” as much of their score to meet the quota so each voter has their scores reduced by just the amount needed to produce an exact Hare Quota. ie it gets divided by W= sum(score/9) x (# seats)/(# Voters)
in summary the method would work like this
- All voters start with 9 score points, P
- When a candidate they scored, S, is elected their points are reduced
- For a non surplus win it is reduce by the score itself ie P_new = P_old - S
- For a surplus it is reduce less so that the Hare Quota is just met ie P_new = P_old - S/W
where W= sum(score/9) x (# seats)/(# Voters)
- After each round, all remaining scores on the ballot are adjusted to the minimum of the ballot score and the current points P remaining
I realize that this is more complicated than RRV but I really think that the concept of “Vote Unitarity” is worth preserving. The surplus handling feels awkward but it works. STV does a similar thing with its surplus handling. In fact it is even less elegant since you can’t scale a rank.