[EM] Condorcet How?

Dave Ketchum davek at clarityconnect.com
Wed Apr 7 15:25:29 PDT 2010


This is some thought about keeping it simple, yet doable.

I will lean toward Ranked Pairs with margins, but amending toward  
other types of Condorcet should be doable.

Voting:  Voter can rank one or more candidates.  Equal ranking  
permitted.  Counters care only which of any pair of candidates ranks  
higher, not how voter decides on ranking.  Write-ins permitted (if few  
write-ins expected, counters may lump all such as if a single  
candidate - if assumption correct the count verifies it; if incorrect,  
must recount).

Counting:  Besides the N*N matrix, I would add an N array to optimize  
this.  Count each ranked candidate in the array.  Later the array will  
be added into the matrix rows as if the ranked candidates won in every  
one of their pairs.  This is correct for pairs with no ranking, and  
for pairs with one ranked.  For pairs w/winner and loser, give loser a  
negative count to adjust; for ties you can leave both winning; or mark  
both losing via negative counts.
     (For example, a ballot with 3 ranks gets 3 counts in N, and  
adjustments for 3 pairs in N*N - even if there are a dozen pairs on  
the ballot)

Completing matrix:
      I had thought of doing adjustments if N was different in  
different matrices.  Having trouble with picking a need for this, but  
it is doable - add an empty element to N and an empty row and column  
to N*N.
      Shortest path is to sum all the matrices and all the arrays.   
Then add each array element into its matrix row as wins by its  
candidate in each of its pairs.
      Can want a matrix for a district - same idea as above.
      Either way the diagonals (A,A thru N,N) should be zero - make  
them thus.

Find the winner.  What I read below sounds like an excessive amount of  
labor, especially if many candidates - so, for candidates A-N (I have  
not specified response for ties):
      A single loss disqualifies a candidate from being CW, so start  
with A vs B.  If A loses, B continues; if B loses A continues.  Check  
final row when all but one have lost.  If no losers found we have the  
CW; else we have a cycle member.
      Cycle members lose to other cycle members.  Based on this, make  
a list of all such.
      There are many methods for resolving cycles.  For RP I see  
deleting the smallest margins from the list until what remains is not  
a cycle, but does identify a winner.

Dave Ketchum

On Mar 10, 2010, at 12:54 AM, Chris Benham wrote:
Re: [EM] Burlington Vermont repeals IRV 52% to 48%
> ...
>
> I think the name "Ranked Pairs" normally applies to the Margins  
> version.
>
> http://en.wikipedia.org/wiki/Ranked_Pairs
>
> "The RP procedure is as follows:
> 	1. Tally the vote count comparing each pair of candidates, and  
> determine the winner of each pair (provided there is not a tie)
> 	2. Sort (rank) each pair, by the largest margin of victory first to  
> smallest last.
> 	3. "Lock in" each pair, starting with the one with the largest  
> number of winning votes, and add one in turn to a graph as long as  
> they do not create a cycle (which would create an ambiguity). The  
> completed graph shows the winner. "
>
> Chris Benham
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.electorama.com/pipermail/election-methods-electorama.com/attachments/20100407/d65df04e/attachment.htm>


More information about the Election-Methods mailing list