On Wed, Mar 27, 2002 at 11:38:59AM -0600, Manoj Srivastava wrote:
>       This year we are using a new method of properly determining
>  concordcet ballots using the Cloneproof SSD method. The script that
>  calculates this is appended below.

"Condorcet" ballots. The history's this: way back in the day, some guy
called "Condorcet" invented some nice properties voting systems should
have, then created some ballot counting systems that had them, and was then
promptly ignored. The people who study such things seem to think that
condorcet ballot counting is the way to go, and when the constitution
was proposed it included a system (as far as anyone knows) mistitled
"Concorde" voting that is a hybrid of a condorcet system and an alternate
vote system, which is good, but not as good as some other systems.

After the non-free vote died last year, some of us got together with some
election methods geeks, to try to fix various bugs, and almost got to a
consensus on using a condorcet method called "Cloneproof SSD". I wrote a
script to do this processing, which I think is what Manoj is using, and is
at http://people.debian.org/~ajt/cloneproof_ssd.pl .

Note, though, that Cloneproof SSD is *not* the system given in the
constitution; it'll choose the same result in most cases (including
all the votes we've had so far, I believe), but in some corner case,
it's won't.

>       As far as I can see, this script does handle repeated ranking
>  (I'm sure I'll be corrected post haste if I have misread the
>  script). 

If we're talking about my script, I believe it does cope with equal
rankings, and also with interprets all ranked candidate as being preferred
over all unranked candidate. That is, it interprets "---1" the same as
"2221", and takes that as not expressing any preference between any of
the candidates, but ranking none-of-the-above as better than all of them.

Note that condorcet voting is a full preferential system -- even if
you'd rather none of the candidates become DPL and vote that way, your
vote can still indicate who you dislike less, and that will be used in
the final result.

I'd thought Manoj was planning on running both scripts (the one based
on the constitution and the one implementing Cloneproof SSD) over the
ballots.


For those who care, the Cloneproof SSD (Schwartz Sequential Dropping)
system works like this:

        1. For each pair of candidates A, B; calculate ranking[A,B], the
           number of ballots that indicated a preference for candidate A
           over candidate B. A is said to have beaten B if ranking[A,B] is
           strictly greater than ranking[B,A].

        2. A "defeats" list is setup, listing pairs of candidates
           A,B where candidate A beats candidate B. A defeat (of A over
           B, versus C over D) is considered stronger if ranking[A,B]
           > ranking[C,D], or, if they're equal, ranking[B,A] <
           ranking[D,C].

        3. The Schwartz set of candidates is calculated based on the
           defeats list:
                * An unbeaten set is a set of candidates such that
                  no candidate outside the set defeats any candidate inside
                  the set.
                * An innermost unbeaten set is an unbeaten set that doesn't
                  have a proper subset that is also unbeaten.
                * The Schwartz set is the union of all the innermost unbeaten
                  sets.

           Innermost unbeaten sets will have more than one member in the
           event of cycles, eg 28 people vote Branden > Raphael > Bdale,
           30 people vote Raphael > Bdale > Branden, 32 people vote
           Bdale > Branden > Raphael (which has Bdale beats Branden,
           Branden beats Raphael, and Raphael beats Bdale).

           There can be more than one innermost unbeaten set in the event of
           exact ties between candidates.

        4. If the Schwartz set has just one candidate, that candidate wins.

        5. If not, drop the weakest defeat between candidates in the Schwartz
           set, then recalculate go back to step (3). If there's more than
           one weakest defeat, drop all weakest defeats. If there weren't
           any defeats left to drop, then there is a tie between the
           candidates remaining in the Schwartz set.



Cheers,
aj

-- 
Anthony Towns <[EMAIL PROTECTED]> <http://azure.humbug.org.au/~aj/>
I don't speak for anyone save myself. GPG signed mail preferred.

  ``Debian: giving you the power to shoot yourself in each 
       toe individually.'' -- with kudos to Greg Lehey

Attachment: msg01596/pgp00000.pgp
Description: PGP signature

Reply via email to