DavidMoritz / rcv

Ranked Choice Voting app for free use.
https://rankedchoices.com
MIT License
67 stars 14 forks source link

Invalid tie-breaking methodology #1

Closed paul-lockett closed 8 years ago

paul-lockett commented 8 years ago

The tie-breaking methodology is not a valid approach for single transferable vote, as it violates the principle that a later preference should not be able to disadvantage an earlier preference.

DavidMoritz commented 8 years ago

The approach I have seems like an improvement over random chance. Can you explain how this disadvantages earlier preferences? Perhaps you could offer an alternative that fits the principles of STV and also represents the voters well.

paul-lockett commented 8 years ago

At first look, it does appear to be an improvement over random chance, but it introduces an incentive to vote tactically, rather than honestly, which is a key feature of STV.

As a simple example, if we had three votes with the following order of preference, in a one seat election:

  1. abc
  2. bac
  3. cba with a three-way tie in first preferences, if second preferences were taken into account, c would be excluded and b would be elected in the second round.

However, if the first vote had reversed the second and third preferences:

  1. acb
  2. bac
  3. cba the result would have had to have been decided randomly, so a would have had a one in three chance of winning. As such, the first voter would have had an incentive to vote tactically. That is why, in general use, subsequent votes are not used to break ties in STV elections.
DavidMoritz commented 8 years ago

Well, I got to say, I'm impressed by your explanation. That is a very good argument. Thanks for pointing that out

DavidMoritz commented 8 years ago

With the latest adjustment to the code, an algorithm has been put in place to randomize the outcome of any tie-breakers. Thank you, Paul Lockett, for your attention to detail and explaining the value of this change. Code: https://github.com/DavidMoritz/stvcalculator/blob/d2cbd64f8404b408cd5ee3560f616dfccddba6b2/src/js/services/VoteFactory.js#L157-L182

paul-lockett commented 8 years ago

No problem.