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

Brian Olson bql at bolson.org
Wed Jun 1 10:28:37 PDT 2016


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/20160601/325f5951/attachment.htm>


More information about the Election-Methods mailing list