[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