[EM] Divisor-based individual PR method?
Kristofer Munsterhjelm
km-elmet at broadpark.no
Wed Feb 4 14:06:20 PST 2009
Here's a method I constructed today - it works by the concept of a
divisor method, except that instead of using parties, it uses solid
coalitions in the DSC/DAC sense.
First, define the score for a potential council. The score is the error
measure between the desired fraction of a coalition and the actual
fraction of a coalition, for all such coalitions that exist.
The desired fraction is simply the number of voters that support this
coalition (or set), divided by a specified constant which we'll call the
divisor. The actual fraction of a coalition is the number of candidates
in the potential council that also exist in the coalition in question.
This definition gives some leeway, since the divisor is not actually
specified. The score for a potential council is the error when the
divisor is chosen so that the error is minimized, subject to that the
desired fraction of the coalition consisting of all the candidates is
equal to the council size.
The council that has the best score (lowest minimal error) wins.
Different error measures may be used - most natural would be root mean
square error or the Sainte-Laguë index. If the Sainte-Laguë index is
used, one should not round the desired fractions.
-
Let's show an example. I'll use an election from the PSC-CLE post:
33 A>D>B>C
33 B>D>A>C
32 C>D>A>B
2 D>A>B>C
which gives
100: A B C D
68: A B D
32: A C D
34: A D
33: B D
32: C D
33: A
33: B
32: C
2: D
(2,4) election. Let's say we want to find out the score of the council
{B, D} with a divisor of 41, and the error metric is root mean square
error. The line marked with L is the limit (constraint): since the
coalition consists of all the candidates, the desired fraction must be
equal to the number of seats, which it is in this case.
r(x) is the ordinary rounding function.
We get
desired actual diff
100: A B C D r(100/41) = 2 2 (B and D) << L 0
68: A B D r(68/41) = 2 2 (B and D) 0
32: A C D r(32/41) = 1 1 (D) 0
34: A D r(34/41) = 1 1 (D) 0
33: B D r(33/41) = 1 2 (B and D) 1
32: C D r(32/41) = 1 1 (D) 0
33: A 1 0 1
33: B 1 0 1
32: C 1 0 1
2: D 0 1 1
The squared error is 5, and so the RMSE is sqrt(0.5) ~ 0.7. This is,
incidentally, the best score for BD.
Another example, this time with the council {B, C} and divisor 47:
desired actual diff
100: A B C D r(100/47) = 2 2 (B and C) << L 0
68: A B D r(68/47) = 1 1 (B) 0
32: A C D r(32/47) = 1 1 (C) 0
34: A D r(34/47) = 1 0 1
33: B D r(33/47) = 1 1 (B) 0
32: C D r(32/47) = 1 1 (C) 0
33: A 1 0 1
33: B 1 1 0
32: C 1 1 0
2: D 0 0 0
The squared error is 2, so the RMSE is sqrt(0.2), ~ 0.45. This is also
the best score for BC.
For this particular election, the method evaluates as this:
AB 0.447214 at 41
BC 0.447214 at 46
AC 0.547723 at 46
BD 0.632456 at 41
AD 0.707107 at 41
CD 0.707107 at 46
As one can see, it doesn't elect the compromise candidate D anywhere;
instead it ties AB and BC. Using the Sainte-Laguë index gives
AB 1.99788 at 41
BC 2.26691 at 44
AC 4.11046 at 41
BD 22.264 at 41
AD 23.9981 at 41
CD 24.4542 at 41
and thus picks AB.
-
Is this method any good? It clearly takes a very long time to calculate,
especially for large councils, unless it shares Webster's monotonicity
criteria, in which case it outputs a proportional ordering, meaning that
one can first do a single-winner election, then lock the winner and only
test councils including the weinner for a two-winner election, and so on
down.
It does seem to do so at least in this particular election with the
Sainte-Laguë index as error measure.
Single-winner returns
B 3.6688 at 68
A 3.7051 at 67
C 4.9064 at 67
D 35.2989 at 67
thus electing B (showing the method is not Condorcet, by the way).
Two winners elect AB (retaining B), and three winners return:
ABC 0.9993 at 30
ABD 15.9226 at 29
BCD 15.9776 at 29
ACD 18.4313 at 29
thus electing ABC (retaining AB).
More information about the Election-Methods
mailing list