[EM] Condorcet How?

Dave Ketchum davek at clarityconnect.com
Thu Apr 8 11:02:32 PDT 2010


On Apr 7, 2010, at 8:29 PM, robert bristow-johnson wrote:
> On Apr 7, 2010, at 6:25 PM, Dave Ketchum wrote:
>
>> This is some thought about keeping it simple, yet doable.
>>
>> I will lean toward Ranked Pairs with margins,
>
> not sure what "with margins" does.  i'll read below...

vs comparing per winning votes - each has backers.
>
>
>> 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).

My thoughts are that supporting write-ins is worthy and doable, but am  
not excited about how.
>
>
> no sweatsky.  and if some amazing political event is happening and  
> some write-in may be winning, hand recount, examining the write-in  
> entry and sorting is necessary in any case presently.  this is so  
> improbable, but if it were to happen, it would likely be common  
> knowledge locally who the write-in insurgent candidate is.   
> nonetheless, rules could be drawn such as: in the case that the  
> aggregate "write-in" wins with the machine count, each precinct digs  
> out the paper ballots (i think everyone should use optical scan  
> which has "paper backup" inherent) and begins to examine and count  
> who "write-in" is.  as soon as, say, 10 write-ins that are for the  
> same named candidate (say "Joe Schmoe"), then all ballots with write- 
> in marked are separated as those for that named candidate and those  
> that are not.  so then you get a pile for "write-in A" who has a  
> name, a pile for "write-in B" who need not be the same name, and a  
> pile for all other ballots (with no write-in marked).  Combine the  
> first and last piles so now you have two piles: the first is just  
> like a machine countable ballot but we know that "write-in" is "Joe  
> Schmoe".  the second pile has "write-in" ranked, but the name  
> written in is not "Joe Schmoe".
>
> then the two piles can be run through the optical scan machine  
> separately with the counters reset (zeroed) between each run.  it  
> would be like two sub-precinct subtotals, where tallies for every  
> candidate pair (not involving write-in) can be summed, but not those  
> involving "write-in A" and "write-in B" which are now treated as two  
> separate candidates.  but like all race pairs, the precinct  
> subtotals for candidate pairs involving "write-in A" can summed,  
> because (as Kathy would like) Condorcet is precinct summable.  what  
> would be *really* unlikely is that "write-in B" wins, and then you  
> would have to likewise examine the pile of ballots with "write-in B"  
> marked and repeat the write-in recount mess.
>
> the above is an idea for language dealing with the very unlikely  
> case that "write-in" becomes the CW.  otherwise, we don't care (but  
> Freedom of Information Act should apply and the media should be able  
> to examine the ballots to find out who that loser write-in candidate  
> was).
>
>> 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.
>
> already this is complicated and someone in the "One person, one  
> vote" crowd (the anti-IRVers) in Burlington would say that you're  
> trying to pull one over on them.
>
> Ranked pairs need not be that complicated.

So far we are just doing counting.  After that, time to think of CW  
and cycles, and for methods such as ranked pairs mattering.

Think of 10 candidates and a bunch of bullet voters.  For each ballot  
its candidate needs counting in each of its 9 pairs.  I would have the  
counters count such in its element in the N array, with all of the N  
array added into the N*N matrix in one step later.

Try a voter ranking two of the 10 (should be common for those not  
doing bullet).  Stepping two entries in the N array will get 16  
entries in the matrix properly stepped.  One entry will get stepped as  
if each ranked higher, so I have the counters adjusting for this as  
part of counting that ballot.
>
>> For pairs w/winner and loser,
>
> every pair has a winner and loser, unless they tie
>
>> give loser a negative count to adjust;
>
> no, just leave him alone.

Explained above.
>
>
>> for ties you can leave both winning; or mark both losing via  
>> negative counts.
>
> you don't need to be adjusting any other counts in the N*(N-1)/2  
> pairs, which is my preference of expressing the "N*N matrix".  i  
> still find the "N*N matrix" to be a useless visual tool.  i want to  
> see N*(N-1)/2 pairs of numbers.  that's how you visualize in a  
> glance how Condorcet decides an election.  this "N*N matrix", such  
> as it is, is just useless.

Your preference over the matrix is interesting, provided you keep your  
location of pairs understandable and get the same winner as the matrix  
would achieve.
>
> the N*(N-1)/2 pairs is all of the numerical information you need,  
> and all you need to do is compute, for each pair, the abs value of  
> the difference of vote counts. so you have 3 numbers for each of the  
> pairs.  then there are N*(N-1)/2 - 1 scans, each identifying and  
> removing the remaining pair with the highest abs(diff).  then, with  
> each of these removed pairs in order of their removal, construct the  
> "who beats who" paths out of nodes starting with the highest  
> abs(diff), and as Tideman sez, ignoring pairs that are  
> contradictions, resulting in a cycle after "committing" (i would use  
> that word instead of "locking") to the race pairs previously accepted.
>
> that is simpler.  both as language of law, and to program into a  
> computer.

Your many scans are something I would avoid.

For some of this computers vs humans matters - counting the bullet  
votes is easier for humans to get right by doing a single entry in the  
N array vs 9 in the matrix for each such ballot, while a computer only  
needs simple programming.

In looking for the CW I eliminate a candidate via each carefully  
selected comparison - 9 comparisons if 10 candidates.  That does not  
tell if there is a CW, so scan that candidate's pairs - if any losers  
that is a cycle member and we now know all the cycle members it loses  
to.  Scan those members' pairs for the other members they lose to,  
continuing until we know all the interesting pairs.

Most cycles only have three members.  Anyway, we have the pairs that  
compose the cycle and can use whatever method we choose to sort them  
out.
>
>
>>    (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.
>
> whew!  already you lost me, here or earlier, Dave.

For here copying from the array to the matrix can put noise in these  
diagonals, so prettying seems nice, though of no real value.
>
>
>> 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.
>
> it sure seems to me that the existing Tideman RP is simpler and at  
> least as "meaningful" in reflecting voter preference.

Most methods only care about cycle members and their relationships.  I  
find the members and only consider methods interested in such - and do  
not argue here about which of such methods to actually use.
>
> sorry Dave, if i'm not resonating with this idea of yours.  i  
> certainly am for Condorcet.  i think that it's likely that in the  
> worst case of a goddamn cycle, that probably Markus's method would  
> better reflect the will of the voters than Tideman, but the two  
> don't disagree with a cycle of 3 in the Smith set, and i think that  
> if either were adopted, it would be a few millennia before there  
> would be a Condorcet-decided election that would be decided  
> differently between Tideman and Schulze.  so Markus, despite your  
> concise English language for how this could be legislated, i still  
> think Tideman is more transparent.  but i think, if we could get the  
> yahoo's here in the hinterland to understand and trust the Schulze  
> method (presently, these yahoos don't trust anything other than  
> "simple majority" which is really "simple plurality", because they  
> don't seem to understand anything else), i think that would be better.

Anyway, thanks for digging.
>
>
> these "candidate elimination" schemes i earlier brought up as a way  
> to resolve a Condorcet cycle, was only to come up with something the  
> "yahoo's" could understand and that meaningfully dealt with the  
> cycle.  and i'm still thinking (using the Burlington 2009 data) that  
> cycles would be so rare (the 2009 case had an unambiguous Condorcet  
> ordering of all 5 candidates, all the way from the CW to the  
> Condorcet Loser), that any decent and sensible method for resolving  
> the cycle would be fine with me.  but, if i were king of the world,  
> it would be Schulze (but, then, if i were king of the world, we  
> wouldn't be doing elections, at least not for king).
>
> but Markus, i still think Tideman would be an easier sell.  and  
> right now, after the bruising IRV battle we had in Burlington, all  
> this is just a pipe dream.  looks like, for the time being, we just  
> need to accept that God herself ordained the "traditional ballot"  
> where we mark just one candidate.  it was a pretty close election,  
> too.  the bastards.
>
> oh well.
>
> bestest,
>
> --
>
> r b-j                  rbj at audioimagination.com





More information about the Election-Methods mailing list