Re: Generalized harmonic voting with better proportionality scores
Toby Pereira via Election-Methods <[email protected]>
| Newsgroups | gmane.politics.election-methods |
|---|---|
| Message-ID | <[email protected]> |
Very interesting stuff again Kristofer. I was looking at the graph for non-sequential maxsum to see what the high point was, as I don't think you explicitly said in the text. Visually the centre of the darkest part of the blob seems to be at around 2 for the polynomial degree and a bit under 0.8 (0.75?) for the delta. So that delta would be between D'Hondt (1) and Sainte-Laguë (0.5). But as you say, there's no actual theory behind the optimal polynomial at the moment, and it might change for more seats. Also, something other than polynomial might produce better results.
Aside from that, I have long thought that the KP-transformation (which harmonic voting uses) is the "correct" way to deal with scores and then to use a proportional approval method on the transformed ballot. So it's good to see that challenged.
One symmetry I would demand from a hypothetical "correct" method is a certain type of scale invariance. If all scores are multiplied by a constant and/or if a constant is added to some or all of the ballots (which can be a different constant for each ballot), then the result should remain unchanged. So if you had:
2 voters: A=1; B=01 voter: A=0; B=1
Changing these ballots to:
1 voter: A=9; B=71 voter: A=2; B=01 voter: A=4; B=6
should leave the result unchanged. It should still be a 2:1 A:B seat ratio. (Scores were doubled and different constants added to the scores given by 2 of the voters. You can divide the scores by 10 if a method demands a 0 to 1 scale of course.)
Applying the KP-transformation to a method that passes Independence of Irrelevant Ballots (which Thiele PAV - the approval version of Harmonic - does) should always give this scale invariance. So my question is: what happens when you use a different monotone function? I'm guessing that it would mess up the linearity of the scores and so take away this scale invariance (though I'm not sure I'm visualising it very well). If this is the case, would you see it as a potential problem yourself?
Toby
On Saturday, 8 August 2026 at 02:30:39 BST, Kristofer Munsterhjelm via Election-Methods <[email protected]> wrote:
Since Harmonic seems to be better than psi according to the
proportionality measure I've been using, maybe it'd be useful to try to
figure out what's going on.
What's the difference between the two? Say the winner set is [A, B, C].
Psi doesn't care about whether you really like A and loathe B and C, or
if your opinions are meh about all three. That is,
psi(1+0+0) = psi(1/3+1/3+1/3).
d'Hondt Harmonic gives the former set of ratings a score of 1, and the
latter a score of 1/3 + 1/2 * 1/3 + 1/3 * 1/3 = 1/3 + 1/6 + 1/9 = 11/18,
which is less. It values highly rated candidates more.
Maybe valuing such candidates more is part of what makes its PR better.
-
On his page about "linear PR methods", Warren Smith defined this class
of methods:
Suppose a certain set of candidates are the winners and we want to know
the quality (or score) of that set. One way to do that is to sum up
scores per ballot, so that one ballot doesn't interfere with another. So
let score(winners) = sum over voters v: score(winners, v).
For some voter v, let the jth highest rated candidate among the proposed
winners be have rating R_v,j (my notation) scaled so that 0 is minimum
and 1 is maximum. Then let the voter's contribution to the toal score be
score(winners, v) = F( sum j=1..|W|: R_v,j * A_j )
where F is some function, W is the set of winners (so |W| is the number
of winners), and A_1,... is a (possibly infinite) sequence of constants.
The idea is to set the constants A_j so that if the voting is
approval-style, then F is always some sum of divisors, e.g. for d'Hondt:
1 if the voter approved of one of the winners
1 + 1/2 if the voter approved of two
1 + 1/2 + 1/3 if the voter approved of three, etc.
so F(A_1) = 1, F(A_1 + A_2) = 1 + 1/2, F(A_1 + A_2 + A_3) = 1 + 1/2 +
1/3, etc;
or for Sainte-Laguë: 1 if the voter approved of one, 1 + 1/3 for two, 1
+ 1/3 + 1/5 for three, etc.
The funny part is that for any monotone function that grows to +infinity
(i.e. unbounded positive range), there exist appropriate A values to
realize this kind of approval-style PR. A silly example with d'Hondt and
the standard normal quantile (inverse pdf):
We want A_1 to be set so that q(A_1) = 1
So A_1 = p(1) ~= 0.841
We want A_2 to be set so that q(A_1 + A_2) = 3/2
So A_1 + A_2 = p(3/2) ~= 0.9332
So A_2 = 0.9332 - 0.841 ~= 0.0918
etc.
With harmonic voting, F(x) = x. A_j is just 1, 1/2, 1/3, etc. (for d'Hondt).
So let's consider F(x) = x^k for some exponent k. The lower k is, the
less of a difference there is between a loved/hated arrangement and an
everything-meh one. For something like F(x) = sqrt(x), a rating of 0.5
becomes a Harmonic equivalent of sqrt(0.5) ~= 0.71; while with F(x) =
x^2, the 0.5 becomes 0.25.
This is not *entirely* true since later ratings are scaled by A_j. But
for F(x) = x^k, A_1 = 1.
When I did that, it turned out k ~= 2 gave the best results for two
seats and d'Hondt, with a somewhat smaller value for Sainte-Laguë. I
haven't checked more than two, because I thought it would be interesting
to be piecewise polynomial; it might be that the proper exponent for the
third candidate may be different than the one for the second.
The VSE results I found were, for 2 seats, 10 candidates, 360 voters,
1440 iterations:
Name Proportionality type k VSE
Polynomial d'Hondt (d=1) 0.01 0.322
Polynomial d'Hondt (d=1) 0.5 0.508
Polynomial d'Hondt (d=1) 1.0 0.862
Polynomial d'Hondt (d=1) 1.5 0.936
Polynomial d'Hondt (d=1) 2.0 0.956
Polynomial d'Hondt (d=1) 2.5 0.946
Polynomial d'Hondt (d=1) 3.0 0.926
Polynomial Sainte-Laguë (d=0.5) 0.01 0.322
Polynomial Sainte-Laguë (d=0.5) 0.5 0.671
Polynomial Sainte-Laguë (d=0.5) 1.0 0.922
Polynomial Sainte-Laguë (d=0.5) 1.5 0.952
Polynomial Sainte-Laguë (d=0.5) 1.66 0.953
Polynomial Sainte-Laguë (d=0.5) 2.0 0.946
Polynomial Sainte-Laguë (d=0.5) 2.5 0.924
Polynomial Sainte-Laguë (d=0.5) 3.0 0.903
Sequential P. d'Hondt (d=1) 0.5 0.522
Sequential P. d'Hondt (d=1) 1.0 0.779
Sequential P. d'Hondt (d=1) 2.0 0.868
Sequential P. d'Hondt (d=1) 3.0 0.851
Sequential P. Sainte-Laguë (d=0.5) 0.5 0.622
Sequential P. Sainte-Laguë (d=0.5) 1.0 0.796
Sequential P. Sainte-Laguë (d=0.5) 2.0 0.839
Sequential P. Sainte-Laguë (d=0.5) 3.0 0.816
(Egalitarian/maxmin was much worse, so I haven't included them here;
they reached a maximum of around 0.35.)
I then plotted the VSE results for different values of delta (divisor
method it reduces to) and exponent/polynomial degree. I've attached the
plots to this post - the dotted lines indicate polynomial degree (k) of
1 and delta of 0.5, i.e. Sainte-Laguë harmonic. There's an odd almost
delta-irrelevant increase in VSE for sequential polynomial right above
degree 1. Generally, the sequential methods do somewhat worse than the
global ones, which fits with the pattern for Harmonic itself. Note also
the change of scale for maxmin's gradient - I had to set the max to 0.5
or it'd be near-impossible to see the pattern.
On the one hand, it's interesting that pushing the polynomial above
linear can improve Harmonic. But on the other, I dont't see any obvious
way to describe the maxima theoretically, or any theory that could
explain why they're located there. It kinda feels like a curve fit:
something closer to the best fit of a method to an approach that doesn't
directly align with the method itself. The proportionality metric lends
itself to clustering/assigning groups of voters "their" candidate, and
Harmonic isn't a clustering-like method.
Perhaps there's an explanation, though, and I'm just missing it :-)
-km----
Election-Methods mailing list -- [email protected] - see https://electorama.com/em for list info
----
Election-Methods mailing list -- [email protected] - see https://electorama.com/em for list info