[EM] Implementation of STV with same/duplicate/tied preference/ranking?

Peter Zbornik pzbornik at gmail.com
Thu Jun 2 04:06:33 PDT 2016


Hi Brian,

thanks for the links. I'll have a look and let you know, iin case I will
use it or have questions.

Peter

On 1 June 2016 at 19:28, Brian Olson <bql at bolson.org> wrote:

> Yes, my C implementation of STV does this.
>
> https://bitbucket.org/bodhisnarkva/voteutil/
>
> https://bitbucket.org/bodhisnarkva/voteutil/src/185ebbd922685d9fffe221df4a0ded6d6bdaea83/c/STV.c
>
> ... but not my Java implementation, so, I've been a little inconsistent I
> guess. But I do think it's right to split a voter's vote temporarily when
> they have a tie for first place. Probably one of them will fall out in some
> round, or maybe they both get elected, yay?
>
>
> On Wed, Jun 1, 2016 at 12:53 PM, Peter Zbornik <pzbornik at gmail.com> wrote:
>
>> Dear all,
>>
>> do any one of you know of any implemenation or software package, which
>> deals with tied/same preferences, i.e. a ballot where two candidates have
>> the same preference.
>>
>> Example: Candidates A, B, C, D, E
>> Ballots:
>> 1: A=B>C>D>E
>> 1: A>B>C>D>E
>> 1: A>B=C=D>E
>>
>> The first and the last ballots give the same preference to two candidates.
>>
>> In "standard" STV, where we only follow the number of "first"
>> preferences. after "deleting" elected and eliminated candidates from the
>> ballot, the same preference can be resolved during the count by
>> a) splitting the tied first preferences into n ballots, each with weight
>> 1/n, where n is the number of candidates which at the current stage in the
>> count are all most prefered on the ballot. Each of these ballots will have
>> a different candidate most preferred and the rest with tied second
>> preference.
>>
>> Example: let's return to the example above. We elect two seats: at this
>> point in the count A is elected, none is eliminated. On the last ballot of
>> the three ballots above thus B, C and D are tied and all most preferred.
>> We thus split the ballot into n=3 ballot, each with weight 1/3 of the
>> original weight, with a different candidate most preferred and the rest
>> tied:
>> Thus the ballot 1: A>B=C=D>E, is at this point in the count, after the
>> election of A, treated as three ballots:
>> 1/3 B>C=D>E
>> 1/3 C>B=D>E
>> 1/3 D>B=C>E
>> Thus we resolve the tie by simply adding 1/3 of the to the (currently)
>> "first" preferences of B, C and D in the count.
>>
>> This is the only computationally efficient way to resolve ties in STV as
>> far as i know.
>>
>> Does anyone of you know of any implementation of the algoritm above?
>> It seems to be a useful feature, when the voter does not want to be
>> forced to prefer one candidate over another.
>>
>> I discussed this issue on the EM list several years ago.
>> No implementation was then available, so I give this a try now again.
>>
>> Best regards
>>
>> Peter Zbornik
>>
>> ----
>> 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/20160602/e5720d7a/attachment-0001.htm>


More information about the Election-Methods mailing list