"Condorcet" voting method that passes favorite betrayal

35 views
Skip to first unread message

parker friedland

unread,
Nov 29, 2018, 12:31:57 PM11/29/18
to The Center for Election Science

While I prefer utilitarian methods, if I had to chose a Condorcet method, I would prefer a Condorcet method that at least passes FBC.

Warren, as you describe on your site (https://www.rangevoting.org/VenzkePf.html), Kevin Venzke proved why it is impossible for even Condorcet methods that include equal preferences to pass the favorite betrayal criterion.

However, there is a loophole. He did not prove that all Condorcet methods that include strategically omitted preferences to pass the favorite betrayal criterion. There is a difference between an equal preference, and a strategically omitted preference.

The definition of a Condorcet winner is a candidate that will win a head to head runoff to any other candidate. This means that if voters vote as such:

A > B
A > B
A = B
B = A
B > A

A would be the Condorcet winner because in a head to head runoff, A would get 2 votes, B would get 1 vote, and 2 voters would abstain. However, if voters voters instead voted this way:

A > B
A > B
A ? B
B ? A
B > A

Then A is no longer guaranteed to be a Condorcet winner because we don't know how A ? B voters would vote in a head to head runoff between A and B.

By using ballots in which voters can omit preferences instead of submitting equal preferences, we can give a semi-Condorcet method enough flexibility to pass the favorite betrayal criterion.

Consider the fallowing 3 candidate voting method:

Compare(A, B) = voters who rank A higher then B + voters who omit a preference between A and B but rank both of them above the third candidate C - voters who omit a preference between A and B but rank both of them below the third candidate C - voters who rank B higher then A.

Note that Compare(A, B) ≠ -1 * Compare(B, A)

Elect the candidate with the maximum minimum value produced from comparing that candidate to other candidates with the compare function.

This method is essentially mini-max but with a twist: when determining what candidate X's worst defeat is, all ballots that that list X as a possible favorite are temporally converted into ballots in which X is a definitive favorite, and all ballots that that list X as a possible least favorite are temporally converted into ballots in which X is a definitive least favorite.

So, when calculating A's worst defeat

A ? B > C
and
A ? C > B

ballots are temporarily converted into

A > B > C
and
A > C > B

ballots. Similarly,

C > B ? A
and
B > C ? A

ballots are temporarily converted into

C > B > A
and
B > C > A

ballots.

Because voters who prefer A but don't want to hurt B can omit their preferences between A and B such that ranking A higher then B doesn't help A defeat any non-B candidate anymore then omitting a ranking between the two would help A defeat that candidate, this method passes the favorite betrayal criterion. It also passes the anti-favorite betrayal criterion for similar reasoning.

But is it a Condorcet method? Well, technically it isn't because approval voting also has omitted preferences and it isn't a Condorcet method. However unlike approval voting, it does not require the user to submit omitted preferences, so I shall refer to it as a semi-Condorcet.

While it passes some impressive criteria for a rank ordinal method (fav betrayal and anti fav betrayal), it is not yet defined however for elections with more then 3 candidates, because in those elections, the current algorithm breaks down. Consider that a voter votes:

A > B ? C > D

How shall this vote be counted when calculating B's minimum maximum defeat?

Like this? A > B > C > D

Or like this? A > C > B > D

It is not clear whether the voter wants to maximize or minimize B's minimum maximum defeat. If we define it one way, we lose the favorite betrayal criterion, and if we define it the other way, we loose the anti-favorite betrayal criterion.

So in order to not lose FBC or anti-FBC, we need an entirely new algorithm that reduces to the old algorithm in the 3 candidate case. Consider the fallowing n candidate voting method:

Quality(candidate X, [list of candidates], ballots)
{
1. If there are only 2 candidates in the list of candidates, return the number of X > Y (other candidate) and X ?+ Y ballots minus the number of X < Y and X ?- Y ballots.

2. ballots = clone(ballots)

3. remove all the candidates not in the list of candidates from the ballot

4. for each ballot, replace the ? signs between candidates tied for possible favorite on a given ballot with ?+ signs

5. for each ballot, replace the ? signs between candidates tied for possible least favorite on a given ballot with ?- signs

6. return min( Quality(X, [list of all candidates from previous list except the first non-X candidate], ballots), Quality(X, [all but the second non-X candidate], ballots), ... )
}

Elect the candidate with the highest value of Quality(that candidate, [list of all candidates in the race], ballots)

parker friedland

unread,
Nov 29, 2018, 12:32:27 PM11/29/18
to The Center for Election Science
I realized that there is a simpler and more intuitive way of defining the method for when score ballots are used

Quality(candidate X, [list of candidates], ballots)
{
1. ballots = clone(ballots)

2. normalize the ballots that can be further normalized (a ballot cannot be further normalized if all of the remaining candidates are given the same score on that ballot)

3. if no ballots can be further normalized, return the sum of scores for X on all of the ballots

4. return min( Quality(X, [list of all candidates from previous list except the first non-X candidate], ballots), Quality(X, [all but the second non-X candidate], ballots), ... )
}

Elect the candidate with the highest value of Quality(that candidate, [list of all candidates in the race], ballots).

parker friedland

unread,
Nov 29, 2018, 1:34:18 PM11/29/18
to The Center for Election Science
What would be a good name for this method?

Omission mini-max?

Any suggestions?
Reply all
Reply to author
Forward
0 new messages