Hallo, I recommend Schulze STV. This method is described mainly in section 9 of this paper:
http://m-schulze.9mail.de/verylong.pdf Source codes can be found here: http://m-schulze.9mail.de/schulze3.zip multi01g.cpp is multi-threading for g++. multi01v.cpp is multi-threading for Microsoft Visual C++. singl01g.cpp is single-threading for g++. singl01v.cpp is single-threading for Microsoft Visual C++. ********* When Schulze STV is used, then each voter gets a complete list of all candidates and ranks these candidates in order of preference. The individual voter may give the same preference to more than one candidate and he may keep candidates unranked. ********* Schulze STV is an STV method, in so far as it satisfies Dummett-Droop Proportionality: When strictly more than x Droop Quotas of voters strictly prefer every candidate of a set B of (at least x) candidates, then at least x candidates of set B must be elected. (See section 9.3 of "verylong.pdf".) ********* In single-winner elections, a "Condorcet winner" is a candidate who wins every 2-way contest. The property of being a Condorcet winner is very important because, when some candidate X is a Condorcet winner, then candidate X is also a Condorcet winner when some other candidate is removed. So when some candidate X is a Condorcet winner, we can declare this candidate the winner, knowing that he doesn't owe his win to the presence of some other candidate. Schulze STV has the following property: Suppose M is the number of seats. When some candidate X wins in every (M+1)-candidate contest, then he is also a winner overall. Again, the property of winning in every (M+1)-candidate contest is important because, when some candidate X has this property, then candidate X still has this property when some other candidate is removed. (See section 9.4 of "verylong.pdf".) ********* The analysis of Schulze STV is very short because most of its properties follow directly from the fact that, in the single-winner case, Schulze STV is identical to the Schulze single-winner election method, which is analyzed in sections 2--4 of "verylong.pdf". The Schulze single-winner election method is currently used by SPI. Markus Schulze _______________________________________________ Spi-general mailing list [email protected] http://lists.spi-inc.org/listinfo/spi-general
