Generalized Single Transferable Vote

One of the interesting things I’ve noticed with my recent work on deterministic Hare Clark is that this method generalises to let you take any ranked voting system and turn it into a single transferable vote variant. I’m unsure how useful this is, but I think it’s at least notable.

(Note: I’ve never seen this before, but it’s sufficiently obvious now that I have that I would be surprised if it was truly original to me)

There is a caveat though: Although it takes any ranked voting system, the n=1 case does not correspond to the winner for that ranked voting system. Instead it corresponds to what I’m going to call the instant runoff variant of that voting system. Normal instant runoff voting is then the instant runoff variant of plurality voting.

Lets see how this works.

Instant Runoff Variants

Suppose people cast votes in some unspecified manner – scores, rankings, etc. All we need to be able to tell about these votes is if for a given candidate what other candidates the voter strictly prefers to this candidate (ties are OK and we don’t care about them). We also need to be able to take a vote and restrict it to a subset of the candidates.

Suppose we then have some voting system that takes these votes and produces a total ordering of the candidates (this will need some tie breaker).

The normal version of this system is to output the highest ranked candidate. The instant runoff version of this system instead aims to produce a candidate with broader majoritarian support, and proceeds as follows:

A vote supports a candidate if there are no other (non-disqualified) candidates that it strictly prefers. We disqualify candidates until there is some candidate that is supported by a strict majority of votes (clearly this must be possible – if we disqualify all but one candidate that candidate is supported by 100% of the votes).

We repeatedly iterate the following process:

Run the voting procedure on all votes with all remaining candidates. Now, starting from the highest ranked candidate and working downwards check if this candidate is supported by a strict majority of votes. If it is, that candidate is elected. Stop and return it.

If we get to the end with no candidates elected, disqualify the lowest ranked candidate and start again.

Normal IRV voting is just this construction applied to plurality voting on the highest ranked non-disqualified candidate (the ordering step is a red herring there because at most one candidate can be supported by a majority of first preference votes, but the drop-out is the same once you account for tie breaking).

This will in general produce quite different results from the original voting system – the difference between IRV and plurality shows that, but here’s another example with Majority Judgement. Suppose we’re running majority judgement with four grades (Reject, Tolerate, Accept, Support) and supposed we have three candidates and three voters who grade as follows:

  • Accept A, Reject B, Support C
  • Reject A, Reject B, Tolerate C
  • Support A, Reject B, Reject C

The first median grades are Accept A, Reject B, Tolerate C, so A wins the majority judgement immediately.

But it doesn’t win the runoff version (even without any dropout steps!), because a majority supports C and does not support A: The first two voters both support C as their best option, so C wins despite the relatively lower grade.

Unsurprisingly this will tend to destroy a lot of the character of the underlying voting system and make it behave significantly more like IRV than the original system does, but I still think it retains some of the interesting underlying character because it both prioritises winners who are ranked higher in the underlying system and drops out losers from the underlying system.

Generalised Single Transferable Vote

The above then generalises directly to single transferable vote as follows:

Instead of looking for support from a strict majority we look for support merely from a quota worth of support. When we find it, we remove a quota worth of votes from the set of available votes (either randomly or using a prioritisation mechanism of some sort), mark the candidate as elected and start the process again with those votes and that candidate excluded. We repeat until we have elected a full house of candidates.

In the same way that IRV results from applying the above construction to plurality voting, Hare-Clark STV is what you get if you apply this construction to plurality voting.

All of the adjustments in my previous post – prioritisation, reallocation, etc – apply just as well in this case, but I’ll omit them here for the sake of brevity. Given those adjustments though, what I described is essentially applying this construction to plurality voting with a tie breaker defined by another voting system.


I don’t know how significant this is or how useful this is, but I’ve been wondering for a while how to turn non-ranked, or better ranked, systems into an analogue to STV (which I’m generally of the opinion that it’s a bit of a rubbish system but for the niche it fills it’s also the best system we currently have).

There’s Reweighted Range Voting, which I only came across recently, but I think it’s a less than ideal system. In particular it lacks the coalition forming property that I’ve only recently been convinced is a good idea: It always elects the winner of the single-winner version as one of the winners (this may be bad because that winner might win as a compromise between two coalitions who would each be able to get their own seat in a larger house). I’m also fairly ambivalent on the subject of range voting (and will moderate out the inevitable comments that come from its advocates trying to tell me I’m an idiot for not thinking it’s the best thing ever), but this approach would work just as well for range voting and will probably produce a better result than RRV.

I’m far from convinced that this will prove to be the ideal way to produce more general proportional representation systems though, because I think the result is still too similar to STV and will likely inherit many of the failure modes of it.

In particular it will certainly sometimes turn monotonic systems into non-monotonic ones, because if you take plurality voting (a monotonic system, for all its faults) and apply the construction then you get IRV (a non-monotonic system, among its faults). I don’t in general think non-monotonicity is the worst thing ever, but it’s certainly pretty bad.

Still, it seems likely that for some choices of ranked voting system this will prove to be a strict improvement on STV. e.g. if you apply a Condorcet ranking system then in many cases you are likely to get a better result. It also opens the door for more interesting classes of ballots being cast in proportional multi-seat elections, which is promising.

This entry was posted in voting on by .