The latest results in this ongoing research shall be available at http://bolson.org/voting/
A voter's happiness with respect to the outcome of an election is equal to the voter's preference for the candidate that won the election.
In simulations so far, all preferences have been random and independent to the extent that the random() function is random and independent. No bias was introduced to organize a voter to have a coherent set of preferences, or to group the population into any kind of structure. The expected preference of any voter for any candidate is 0.0, no like or dislike. An average election thus simulated is closely contested, with no candidate having a major advantage over another.
To simulate a voter's imperfect self-knowledge of preferences, or equivalently, confusion about what a candidate stood for I introduced an error factor that ranged from 0.0 to 2.0. Before voting, a random value from 0.0 to the error factor with a random sign is added to each preference of each voter for each candidate. The errant preference is still constrained to -1.0 to 1.0. The systems are run on the errant voter preferences, and the happiness of the winner is determined from the original unmodified voter preferences.
I used various numbers of voters from 10 to 100,000. I also varied the number of candidates from 2 to 99. Each combination of numbers of voters and candidates was run on 10,000 sets of voters to collect mean happiness and standard deviation.
Data for determining the effect of error was gathered on simulations over the full range of error, 2 to 99 candidates, and 1,000 voters.
IRV is only barely better than present methods. I believe that the flaw is in that it is still based initially on the present method of only counting one vote from every person. Although it can solve some fractured electorate problems it is still very limited and unexpressive.
Acceptance Voting, while collecting less data then IRV, processes all that data at once to better match the will of the people. It is also simpler to implement and explain to a real electorate.
Condorcet voting, while not the top performer, had a uniquely better response to error in the voters. For this it deserves further study.
Ranked Voting collects the same data as IRV but uses it to better effect because the overall will of the voters is considered at once. The variant where no points are awarded to disliked candidates does not actually aid the voter. That variant is just throwing away data, and if a voter doesn't get a desired candidate they have no influence to get a lesser evil.
The various Rated Voting systems reliably got the highest happiness results. Unfortunately it would require relatively complicated or expensive, almost necessarily computerized, voting equipment. I'm imagining a GUI with a slider next to each candidate's name and image.
Fortunately, ``Rated 1..N'' and 1..10 don't have that problem and get results often identical to and always at least very close to pure Rated Voting.
Based on these findings Acceptance Voting or Rated Voting should be put into practice immediately. Acceptance Voting may be the easiest to implement with present equipment. The IRV advocacy sites I saw claimed that more and more voting equipment was capable of collecting IRV-type candidate rankings, but if such rankings can be collected, Rated Voting should be applied to the data.
An interesting trend in Max Happiness: it increases with more candidates. In a field of otherwise undifferentiated candidates, when there are more candidates there is a better chance that there will be one candidate that more people will agree on preferring. This may be the most important reason to break away from the One Vote system to a system that doesn't punish the voters for the existence of many choices.
It might be an interesting problem to explore systems that effect consensus building. Increase the weight of negative happiness in evaluating which systems make the fewest people the least unhappy. One real world problem with this is that it might be perceived as giving more power to people who chose to object.
Our present one-vote system is the baseline of fairness. Everyone gets one vote, and thus equal representation. The exception is that duopoly is possible and third (and fourth, etc.) parties may go unrepresented. But, at least on a personal expression level we are all equal.
As I said above, Rated Vote gives more opinionated voters more say, so I followed with counterweighted Rated Vote which regains the ideal of everyone having equal expressive power. In favor of pure Rated Vote, at present everyone has equal expressive power but a disgraceful percentage of eligible voters don't bother to express themselves, so the more opinionated people wind up having more say anyhow. Given the better mathematical results for pure Rated Vote, it should be used because it doesn't really change the status quo.
Acceptance voting is bad if you don't want to accept any of the choices, I guess. But, that's a deeper problem than voting mechanics can solve.
IRV, Condorcet and Ranked voting operate from the same data, a ranking of the choices. Is it fair to require someone to assign ``1,2,3,4,...''? What about ``1,1,3,4,4,6,...''? Is the algorithm that handles that data fair? My abstract interpretation of the algorithms is that Condorcet and Ranked voting favor electing a consensus choice while IRV plays to more traditional factional politics. Which do we want? Perhaps the consensus building of Ranked and Condorcet explain their results, as more people are more happy.
Firstly, in all my tests, IRV degrades as choices are added beyond 7 choices. It doesn't just fail to give voters the benefit of a wide field of choices, it actually gets worse.
I've heard some IRV proponents claim it's better because it doesn't dilute one's vote for a most preferred choice (a Borda vote is a vote for the enemy). They assume (probably because it's true for themselves) that every voter has a strong single fist choice. When that is not the case, I have shown that any other method is superior. If they can show me a set of voters where IRV gets a better result than Ranked(Borda), Condorcet, and Acceptance, I'll be greatly amused. And then we can quibble about how likely such a set of voters are to occur in the wild.
Mathematically, IRV fails because it doesn't consider all the data at once in fitting the solution (election result) to the constraining data (voter preferences). IRV only considers a voter's first choice out of some (shrinking) field of candidates. This leads to suboptimal iterating through the solution space.
IRV is also hard to hand-recount. It can require counting all the ballots many times. At worst, one fewer times through all the ballots than the number candidates. To invoke the recent election boogeyman, imagine Florida: IRV can't just have a recount in a few counties. All millions of ballots state wide would have to be counted, maybe five or eight times. Of course all that is within the computational capabilities of my home computer, but I think it is still worth having a process that is practical for humans to use.
Preliminary results indicate that maximizing your vote does give you an advantage over honest rated voters. Thus, in anonymous-non-trusted communities, it would be most fair to drop directly to Acceptance Voting. The equal-sum variant of Rated Voting may yet prove to be impervious to this sort of vote distortion, and it generally scored somewhat higher than Acceptance Voting.