[EM] Generalized Bucklin 2.2
John B. Hodges
jbhodges at usit.net
Wed Aug 13 07:34:30 PDT 2003
One of the common criticisms of IRV/STV is that it is not monotonic.
I recalled reading somewhere that any procedure that eliminates
candidates before selecting a winner fails monotonicity. The
following is a non-elimination method for filling one or more seats
that may satisfy monotonicity.
Credit for the basic idea of this method goes to Chris Benham. The
following is intended to be a description of his proposed method,
written in the form of an algorithm. Call this Generalized Bucklin 2.2
Voters submit ranked ballots, equal preferences ok. The ballot will
offer space for as many ranks as there are candidates. The voter may
list as many candidates, or as few, as they wish, but only one vote
per candidate. (Ranks left empty will all be moved to the bottom of
the ballot, so skipping ranks has no significance.)
Sort the ballots into groups with identical rankings. Tally each group.
(1) Set Candidate tallies to zero. Calculate the Winning Threshold
(Do subroutine Q).
(2) Count the ballots, each ballot being added to the tally of the
highest-ranked candidate still in the race. Equal preferences are
counted in the style of Approval voting, as a full vote for each
candidate.
(3) Does any candidate's tally exceed the WT?
If not, count voter's next-ranked choices, and add these
counts to the candidate's tallies. (If there is no candidate ranked
next, the ballot counts as an abstention. If there are no ballots
with anyone ranked next, go to (2).) Go to (3).
If so, award one seat to the candidate with the highest
tally. (If there is a tie, do subroutine T.)
(4) Do any seats remain to be filled?
If so, Reduce the ballots contributing to the tally of the
last victorious candidate (Do subroutine R.) Go to (1).
If not, you are finished.
Subroutine Q: Calculate the Winning Threshold WT. Count the ballots
to find the total number, count S = the seats yet to be filled. Droop
quota DQ = ( #ballots / #seats+1 ) , Hare quota HQ = ( #ballots /
#seats ).
Option A: (favored by Chris Benham) Set WT = DQ.
Option B: (favored by John Hodges) Set WT = HQ - (1/S)(HQ-DQ). In
English, the winning threshold is the Hare quota minus 1/S of the
difference between the Droop and Hare quotas. If WT is within one
vote of the Hare quota, round down to the nearest whole ballot;
otherwise round up.
Subroutine T: Breaking ties. Look at the ballots contributing to the
tally of each of the tied candidates. Whichever candidate has the
greater number of first-rank votes wins the tie. If they are tied in
first-rank votes, then whichever has the greater number of
second-rank votes wins the tie, and so forth. If they are tied all
the way down, flip a coin.
Subroutine R: Reducing ballots after a candidate wins a seat. Count
the ballots that contributed to the victory of the candidate = CB.
(These should already be sorted into groups with identical rankings,
as mentioned above.) Multiply the tally of each contributing group by
R= (CB-WT)/(CB).
(Optional) Round off the tally of each group to the nearest whole
ballot. The intent is to reduce the total tally of the contributing
ballots by a number equal to the Winning Threshold, which is a whole
number.
--
----------------------------------
John B. Hodges, jbhodges@ @usit.net
Do Justice, Love Mercy, and Be Irreverent.
More information about the Election-Methods
mailing list