How STV Works
Some time ago, I got into an Internet Argument about voting systems. Somebody online made an innocent statement about Single Transferable Vote being a system where, if there are three seats available, the three candidates who have the most votes get elected. I "Well, Actually"ed this statement by writing a big long example, which I will embarrass myself by publishing here.
First, some context: Single Transferable Vote is a voting system. It is used in Ireland, Malta, and the Australian Senate. It is considered a proportional voting system, because it tries to minimize the number of votes that don't get anybody elected.
Because voting nerds like infighting, they tend to cluster around advocacy of one of two families of proportional systems: STV or a system called Mixed Member Proportional (MMPR). STV nerds and MMPR nerds waste so much energy fighting each other that they forget to oppose the existing First-Past-the-Post (FPTP) system, and then attempts at winning electoral reform collapse. For the record: I am an MMPR nerd (specifically list-free MMPR), although I would accept an STV system if the choice was between STV and something non-proportional.
How STV Works
Critics of STV say that it is a complicated system to compute. This is somewhat accurate, but also somewhat irrelevant, because we have computers now. The underlying ideas behind STV are not that complicated to understand:
- Voters are given ballots with lists of names, which may or may not be affiliated with parties.
- The voters rank their preferred candidates in order: 1, 2, 3... Some terrible STV systems require voters to rank all candidates. Better systems allow voters to rank as many or as few candidates as they wish. Even better systems have "No more candidate" options so that people can cast "None of the Above" votes.
- To tally votes, the system first considers the number of votes and number of available seats. This is used to figure out a quota, which is the number of votes a candidate needs to receive in order to be elected.
- Next, the voting system considers all the candidates that ran. Each candidate has a number of active votes. In the first round, a candidate's active votes are determined by the number of ballots in which they have been marked as the first choice.
- The system then asks the critical question: does any candidate
have enough active votes to reach the quota?
- If no candidate has reached quota, then the candidate with the fewest active votes is dropped. That candidate's active votes are transferred to other candidates according to the next choice on the ballot. If a ballot has no next choice (eg a voter selected only one candidate) then that ballot doesn't help anybody get elected, and we cry a little.
- If a candidate has received quota, then that candidate is elected. Hooray! Now comes tricky part: any active votes that the winning candidate received in excess of the quota are considered surplus, and are transferred to other candidates! Figuring out which of the surplus votes get transferred does not seem like a big deal, but it is actually the source of many of the "STV is complex to compute" criticisms.
- If there are more seats to be filled, the system then asks the critical question again: does any candidate have enough active votes to reach quota? The process repeats until all seats are filled.
Okay. Maybe this does seem complicated when I write it out in bullet lists, but if I was less lazy I could draw some pictures that would make it pretty easy to understand. Also I have a worked out example below. If you follow that example using a pad and paper then maybe the system will seem less confusing.
In any case, although computations in STV take some work, they are not the most confusing aspect of the system. For many people, the most confusing thing about STV is that they think their ranked ballot ought to count is different than what STV is trying to achieve. In particular, STV is a system that gives each voter one vote, and then tries to maximize the number of votes that elect somebody.
Unfortunately, our intuitions (or my intuition, anyways) does not grasp this. When I rank candidates I somehow think I am helping ALL of my top candidates get elected. This is not true! I have a SINGLE vote, which can be TRANSFERRED, which means I am helping ONE candidate (which hopefully is one of my top ones) get elected. The example below does not really illustrate this misconception, but it is an important point to mention.
An Example
Here is a moderately-contrived example, which is kind of technical and probably too complicated (as STV examples tend to be), but informative: say that you have an STV election with 3 seats at stake, using what is called a "Droop quota" (#votes / #seats + 1) + 1. People are allowed to rank as many or as few candidates as they wish.
There are a total of 546 votes cast in the election, but curiously enough there are only nine rankings that occur in the election for the nine candidates (Anita, Bashir, Claudia, Declan, Ernesto, Fauzia, Geeta, Hernando, and Irene):
- 100 ballots: Anita, Bashir, Claudia
- 90 ballots: Bashir, Claudia, Anita
80 ballots: Claudia, Anita, Bashir
70 ballots: Declan, Ernesto, Fauzia, Geeta
- 60 ballots: Ernesto, Fauzia, Declan, Geeta
50 ballots: Fauzia, Declan, Ernesto, Geeta
40 ballots: Geeta, Hernando, Irene
- 30 ballots: Hernando, Irene, Geeta
- 26 ballots: Irene, Geeta, Hernando
(In a real election there would probably be many more combinations, which makes tallying votes more difficult. Fortunately, computers can do this pretty well.)
The question is: which three candidates win the election? I calculated that the winners are Declan, then Geeta, then Anita, even though one could argue that Anita, Bashir and Claudia had "the most votes" in the sense of first place votes. (The arithmetic is below.)
This is not a great example in the sense that 24% of the votes do not elect anybody, but it does illustrate that the end results of an STV election can be a little surprising if you are not clear on what it is trying to accomplish.
However, the example is not as unusual as you might think: this kind of ranking pattern would not be that unusual if Anita, Bashir, and Claudia were all members of the same political party that was popular in the riding, Declan, Ernesto, and Fauzia were members of a second party that has some overlap with a fringe party of which Geeta, Hernando and Irene were members.
STV Arithmetic, Scenario 1
Here is the above example, worked out step by step.
There are 546 total ballots, and 3 seats available. For some reason the Droop Quota is defined as almost the number of votes divided by the number of seats, but not quite:
quota = (#votes / #seats + 1) + 1
= (546 / 3 + 1) + 1
= 136.5 + 1
= 137.5
So any candidate that receives 138 votes or more wins a seat.
Round 1
Let's start with the original ballots:
- 100 ballots: Anita, Bashir, Claudia
- 90 ballots: Bashir, Claudia, Anita
80 ballots: Claudia, Anita, Bashir
70 ballots: Declan, Ernesto, Fauzia, Geeta
- 60 ballots: Ernesto, Fauzia, Declan, Geeta
50 ballots: Fauzia, Declan, Ernesto, Geeta
40 ballots: Geeta, Hernando, Irene
- 30 ballots: Hernando, Irene, Geeta
- 26 ballots: Irene, Geeta, Hernando
Nobody has reached quota. Irene has the fewest number of active votes,
so her 26 active votes transfer to Geeta. We will indicate Irene's
departure with square brackets: [Irene]
.
- 100 ballots: Anita, Bashir, Claudia
- 90 ballots: Bashir, Claudia, Anita
80 ballots: Claudia, Anita, Bashir
70 ballots: Declan, Ernesto, Fauzia, Geeta
- 60 ballots: Ernesto, Fauzia, Declan, Geeta
50 ballots: Fauzia, Declan, Ernesto, Geeta
66 ballots: (40 * Geeta, Hernando, [Irene]) + (26 * [Irene], Geeta, Hernando)
- 30 ballots: Hernando, [Irene], Geeta
Round 2
Again, nobody has quota, so poor Hernando gets dropped. By some miracle all the people who ranked Hernando first ranked Irene second, so all of those votes transfer to Geeta:
- 100 ballots: Anita, Bashir, Claudia
- 90 ballots: Bashir, Claudia, Anita
80 ballots: Claudia, Anita, Bashir
70 ballots: Declan, Ernesto, Fauzia, Geeta
- 60 ballots: Ernesto, Fauzia, Declan, Geeta
50 ballots: Fauzia, Declan, Ernesto, Geeta
96 ballots: (40 * Geeta, [Hernando], [Irene]) + (26 * [Irene], Geeta, Hernando) + (30 * [Hernando], [Irene], Geeta)
Round 3
Oh no! We need to drop another candidate. This time poor Fauzia gets the axe. All of her votes transfer to Declan.
- 100 ballots: Anita, Bashir, Claudia
- 90 ballots: Bashir, Claudia, Anita
80 ballots: Claudia, Anita, Bashir
120 ballots: (70 * Declan, Ernesto, Geeta) + (50 * [Fauzia], Declan, Ernesto, Geeta)
60 ballots: Ernesto, Declan, Geeta
96 ballots: (40 * Geeta, [Hernando], [Irene]) + (26 * [Irene], Geeta, Hernando) + (30 * [Hernando], [Irene], Geeta)
Round 4
We still have not filled any of the three seats. That means Ernesto goes into square brackets, with his active votes transferring to Declan.
- 100 ballots: Anita, Bashir, Claudia
- 90 ballots: Bashir, Claudia, Anita
80 ballots: Claudia, Anita, Bashir
180 ballots: (70 * Declan, [Ernesto], Geeta) + (50 * [Fauzia], Declan, [Ernesto], Geeta) + (60 * [Ernesto], Declan, Geeta)
96 ballots: (40 * Geeta, [Hernando], [Irene]) + (26 * [Irene], Geeta, Hernando) + (30 * [Hernando], [Irene], Geeta)
Round 5
Hooray! Declan has beat 138 votes, and so he gets a seat! But he got 180 votes, not 138, so the remaining (180 - 138) = 42 votes get transferred. Ordinarily this would get messy (which votes get transferred, exactly?). In this case a miracle happens, and every single surplus vote happens to list Geeta as the next candidate. Thus, we can do some hand-waving:
- 100 ballots: Anita, Bashir, Claudia
- 90 ballots: Bashir, Claudia, Anita
80 ballots: Claudia, Anita, Bashir
138 ballots: (70 * Declan, [Ernesto]5, Geeta) + (50 * [Fauzia], Declan, [Ernesto], Geeta) + (60 * [Ernesto], Declan, Geeta) - (42 votes transferred to Geeta)
138 ballots: (40 * Geeta, [Hernando], [Irene]) + (26 * [Irene], Geeta, Hernando) + (30 * [Hernando], [Irene], Geeta) + (42 transferred from Declan)
Round 6
What luck! Geeta made quota with not a vote to spare. Thus she wins the second seat. Now poor Claudia gets the boot.
- 180 ballots: (100 * Anita, Bashir, [Claudia]) + (80 * [Claudia], Anita, Bashir)
90 ballots: Bashir, [Claudia], Anita
138 ballots: (70 * Declan, [Ernesto], Geeta) + (50 * [Fauzia], Declan, [Ernesto], Geeta) + (60 * [Ernesto], Declan, Geeta) - (42 votes transferred to Geeta)
138 ballots: (40 * Geeta, [Hernando], [Irene]) + (26 * [Irene], Geeta, Hernando) + (30 * [Hernando], [Irene], Geeta) + (42 transferred from Declan)
Round 7
Anita now has beat quota. There are no more seats to fill, so the election is done.
STV Analysis
Note that STV uses a ranked ballot, but is actually a proportional representation system. Often when people use the term "ranked ballot" they are referring to Instant Runoff Voting (IRV), also known as Alternative Vote. But ranked ballots are not a voting system! They are just a type of ballot! Mixing the two up is a great way to fluster proportional representation advocates.
Obviously, the numbers from this election have been carefully selected, and the results are fragile: try dropping Irene's first place votes from 26 to 20 and do the calculation again. This is MUCH more fragile than we would expect real STV elections to be. But it does illustrate the point that the three top ranked candidates (Antia, Bashir, and Claudia) only managed to get a single candidate elected. It was close, however.
You might think this is similar to an IRV result. It is kind of similar, but the transfer of surplus votes from Declan to Geeta was critical in getting Geeta (who in this scenario might have represented a small party) elected; in contrast, alternative vote almost always works against smaller parties.
This example did not do a great job of illustrating how your vote only helps elect one person under STV. The best way to see that is to conduct an STV election for yourself and see how you feel afterwards.
We can see from this analysis that not everybody elects the person they like the most. We can analyse the position of voters who elected somebody they liked:
210 people (100 for Anita, 70 for Declan, 40 for Geeta) got their first choice, for a percentage of 38.46% . More pessimistically, 42 of the people who voted for Anita cast surplus votes, so maybe they did not elect anybody. In this case 168 people got their first choice, for a percentage of 30.76%. Even more pessimistically, some of the winning votes for Declan were transferred to Geeta, which makes the percentage even lower (but exactly how much depends on exactly which ballots were transferred).
At best, 216 people (80 for Anita via Claudia, 26 for Geeta via Irene, 50 for Declan via Fauzia, and 60 for Declan via Ernesto) got their second choice, for a percentage of 39.56% .
Something like 72 people (30 for Geeta via Hernando, then Irene, 42 transferred from Declan to Geeta) got their third choice, for a percentage of 13.18%.
Finally, 90 people (132 if we are being pessimistic) did not get anybody elected, for a percentage of 16.48% (24.17% if we are being pessimistic).
Obviously I am waving my hands because I did not actually encode this election into STV software. If I had, I would be able to tell you exactly how many votes were wasted, given a certain algorithm. But this should give you a ballpark of what an STV result can look like.
16.48% wasted votes is not great. It still beats the number of wasted votes in a first past the post election by a factor of three.
Conclusion
Single Transferable Vote is not a bad system. You should support it over non-PR systems, in my opinion. Its main disadvantages are that people misinterpret it, and that you need a fairly large number of MPs elected in your riding to get good proportionality (three available seats is too small, particularly for urban areas). I think these disadvantages are significant enough that STV is not the best system for Canada overall, but they are not significant that we would be worse off under STV than we are under FPTP.