[EM] PR approval voting

Ted Stern araucaria.araucana at gmail.com
Mon Oct 3 11:45:26 PDT 2011


I'd like to stick my oar in here, to point out that I have an
implementation of Range Transferable Vote, which can be used with
Droop or other quotas, that implements PR.

Code for it is located here:

     https://github.com/dodecatheon/range-transferable-vote

It reduces to Approval Transferable Vote in the case of range(0,1).

I had to make one change to it recently to fulfill the Droop
proportionality criterion, which states that if a faction distributes
its votes among L candidates, and has enough votes to elect K <= L
quotas, then the method will elect K candidates from the set of L
candidates.

For RTV, this meant that I had to find a way to elevate range
preferences in the event that no candidate achieves a quota.

The way I implement this is to increase non-zero ratings incrementally
(up to maximum score) until at least one candidate makes quota.

This pushes RTV into the territory of Bucklin-style methods, and
therefore it does not satisfy the Independence from Irrelevant
Alternatives criterion, even in the single-winner case.

Ted

On 01 Oct 2011 09:25:45 -0700, Toby Pereira wrote:
>
> Presumably this could also be used for range voting with a fairly
> simple modification. It would just set a limit on the fraction of
> someone's vote that could be used for each candidate. If you scored
> a candidate 3 out of 10, then no more than 0.3 of your vote could go
> to that candidate, regardless of whether the rest remained unused.
>
>
> From: Ross Hyman <rahyman at sbcglobal.net>
> To: election-methods at lists.electorama.com
> Sent: Saturday, 1 October 2011, 5:07
> Subject: [EM] PR approval voting
>
> The following PR approval voting procedure is an approval limit of Schulze STV
>
> A score for each candidate set is determined in the following way: ?? The vote of each ballot is distributed amongst the ballot's approved candidates in the candidate set.? The score for each candidate set is the largest possible vote for the candidate in the set with the smallest vote.? The candidate set with the highest score wins the election.
>
> example: 2 seats 
> approval voting profile
> 10 a 
> ? 6 a b
> ? 2 b 
> ? 5 a b c
> ? 4 c
> The possible candidate sets are: {a b}, {a c}, and {b c}.
>
> score for {a b} determined from
> 10 a
> ?11 a b
> ? 2 b
> score for {a b} = 11.5
>
> score for {a c} determined from
> 16 a 
> ? 5 a c
> ? 4 c
> score for {a c} = 9
>
> score for {b c} determined from
> ?8 b
> ?5 b c
> ?4 c
> score for {b c} = 8.5
>
> set {a b} wins.
>
>
> Schulze uses a maximum flow algorithm to distribute the votes optimally on each ballot for each candidate set.? Here is another algorithm.
>
> v_i,a is the vote assigned to candidate a from the ith ballot.? The optimal v_i,a is determined iteratively.
>
> 1) Initially, the vote for each ballot is distributed equally between all the candidates in the candidate set that are approved by that ballot.? 
>
> 2) The total vote for a candidate in the set is determined from v_a = sum_i v_i,a.? The lowest vote is a lower bound for the candidate score.
>
> 3) Form the adjusted vote w_i,a =? v_i,a/v_a.? 
>
> 4) The adjusted vote for each ballot is w_i = sum_a w_i,a.
>
> 5) The new v_i,a = w_i,a / w_i.? Proceed to step 2.
>
>
>
> ?? ? ? ?? 
>
>
>
> ?
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>>  ----Election-Methods mailing list - see http://electorama.com/em for list info
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.electorama.com/pipermail/election-methods-electorama.com/attachments/20111001/f96f97c4/attachment-0001.htm>

-- 
araucaria dot araucana at gmail dot com



More information about the Election-Methods mailing list