[EM] Statistical Condorcet: Combining Schulze STV and Webster
Kristofer Munsterhjelm
km_elmet at t-online.de
Sat Aug 30 09:06:54 PDT 2014
Some days ago, I thought more about the relation of chi-square to the
Sainte-Lague index and Webster as a MLE for the multinomial (for large
seat assemblies), and after considering this further, I think I have
found a way to combine Schulze STV and Webster to make a more fair party
list method. Unfortunately, unless the structure of the thing permits
massive pruning, it will be much too slow to run on a national scale.
But perhaps it could be used in local elections.
The method goes like this: The meta-system is like Schulze STV. Define a
contest function c(sA,sB) where sA and sB are sets of candidates that
differ from each other by just one candidate. Contests between sets that
differ by more than one candidate are handled through strongest path, as
in ordinary Schulze STV.
Since voters vote for parties, a contest may also contain numerous
copies of the same "candidate". For instance, [AAAB] is a set with 3
members from party A and one from B.
The main difference between this method and Schulze STV is in what c(sA,
sB) is. Let sA and sB be council assignments that differ by a single
candidate which we'll call C. C is present in sB but not in sA, so c(sA,
sB) returning a higher score means sA is better than sB.
As in Schulze STV, in a given contest, each voter may give his vote to
any candidate he prefers to C. But how is this assignment to be guided?
Well, that's where the difference comes in. Let x_j be the number of
seats given to the jth party in the set sA.
Let f(x_1, ..., x_n, n; p_1, ..., p_n) be the multinomial pmf for n
draws where the probability of drawing an item from category j is p_j,
and x_j is the number of items drawn. Let p_j be the fraction of the
voters' support that goes to the jth party. Then the voter-party support
assignment is done so as to maximize f. So in this particular contest,
the voters are engaging in a kind of maximum-likelihood cumulative vote
DSV against C.
Some voters may not be able to contribute to this - for instance, if
they rank C on top. Let nv be the number of voters who did contribute.
Then c(sA, sB) = nv * f(x_1, ..., x_n, n; p_1, ..., p_n).
There is one other quirk to iron out. Since parties may have multiple
candidates in the running, C might be a member of a party that's also
present in sA. In that case, since voters directly vote for parties,
they are also allowed to support the party C is a part of if sA contains
at least one member of that party. This doesn't directly help C because
if the supporters of C's party were to dump too much support into that
party, the fit that is optimized by f would decrease. Yet it's only
permitted if at least one candidate of that party is present on the left
side; otherwise, single-winner won't reduce properly. (It can also be
seen by considering party support for A>B>C as
A1>...>An>B1>...>Bn>C1>...>Cn and then using ordinary Schulze STV rules)
====
Note that it's conceptually easy to alter this system to take other
factors into account. Just alter the distribution and the pmf. For
instance, if you want to incorporate that some parties may only have a
few members (not enough to fill the council), then replace the
multinomial with the multivariate hypergeometric distribution.
Also, the method above converges to Sainte-Lague/Webster when everybody
plumps for one party each, and the council size is large. This is
because Sainte-Lague/Webster optimizes the Sainte-Lague index, which,
through its connection to the chi-squared test, finds the council that
optimizes f above when the council size is large enough.
The mathematical simplicity of the thing might mean that one can
optimize it to run on large instances. In particular, dealing with it on
a candidate by candidate basis rather than a party-by-party basis is
designed to make full use of excess votes so they may add up to give a
seat to a compromise party. Perhaps one could determine the number of
safe seats for each party in a per-party manner and then hone the result
afterwards.
One could also imagine an Approval variant of the concept: voters
approve of one or more candidates or parties. Then the method picks the
council that maximizes nv * f as above where each voter's support is
distributed over the candidates or parties he approved, cumulative
voting style. But I have a hunch that such a method would reduce to
Monroe's method or a variant of it.
As for applying MJ to this idea... perhaps robust estimators? I don't know.
I could write something about how to find the optimal vote supports as
well, but this post is long enough. Tell me so if you think I should.
The short of it is that it comes down to optimizing a weighted sum of
logarithms under linear constraints.
More information about the Election-Methods
mailing list