Phragmen's voting rules

Phragmén's voting rules are rules for multiwinner voting. They allow voters to vote for individual candidates rather than parties, but still guarantee proportional representation. They were published by Lars Edvard Phragmén in French and Swedish between 1893 and 1899, and translated to English by Svante Janson in 2016.

Background
In multiwinner approval voting, each voter can vote for one or more candidates, and the goal is to select a fixed number k of winners (where k may be, for example, the number of parliament members). The question is how to determine the set of winners?

Phragmén wanted to keep the vote for individual candidates, so that voters can approve candidates based on their personal merits. In the special case in which each voter approves all and only the candidates of a single party, Phragmén's methods give the same results as D'Hondt's method. However, Phragmén's method can handle more general situations, in which voters may vote for candidates from different parties (in fact, the method ignores the information on which candidate belongs to which party).
 * The simplest method is multiple non-transferable vote, in which the k candidates with the largest number of approvals are elected. But this method tends to select k candidates of the largest party, leaving the smaller parties with no representation at all.
 * In the 19th century, there was much discussion regarding election systems that could guarantee proportional representation. One solution, advocated for example by D'Hondt in 1878, was to vote for party-lists rather than individual candidates. This solution is still very common today.

Phragmén's rules for approval ballots
Phragmén's method for unordered (approval) ballots can be presented in several equivalent ways.

Load balancing
Each elected candidate creates a "load" of 1 unit. The load of a candidate must be born by voters who support him. The goal is to find a committee for which the load can be divided among the voters in the most "balanced" way.

Depending on the exact definition of "balanced" several rules are possible:


 * Leximax-Phragmen: Minimizing the maximum load, and subject to that the second-maximum load, etc. (using lexicographic max-min optimization).
 * Leximin-Phragmen: Maximizing the minimum load, and subject to that the second-minimum load, etc..
 * var-Phragmen or Ebert's method: Minimizing the variance of the load.

Each of these variants has two sub-variants:

Phragmen's original method is the sequential method that minimizes the maximum load, which is currently known as Seq-Phragmen.
 * A global optimization variant, which is usually NP-hard to compute;
 * A sequential variant, in which candidates are selected sequentially, and in each turn, the next elected candidate is the one who attains the optimal measure among all candidates (i.e., a greedy algorithm).

In practice, the rules that have the best axiomatic guarantees in the global-optimization category are leximax-Phragmen and var-Phragmen. Among the sequential variants, the best guarantees are given by Seq-Phragmen.

Phragmen illustrated his method by representing each voter as a vessel. The already-elected candidates are represented by water in the vessels. To elect another candidate, 1 liter of water has to be poured into the vessels corresponding to voters who voter for that candidate. The water should be distributed such that the maximum height of the water is as small as possible.

Virtual money
Seq-Phragmen can alternatively be described as the following continuous process:


 * Each voter starts with 0 virtual money, and receives money in a constant rate of 1 per day.
 * At each time t, we define a not-yet-elected candidate x as affordable if the total money held by voters who approve x is at least 1.
 * At the first time in which some candidate is affordable, we choose one affordable candidate y arbitrarily. We add y to the committee, and reset the virtual money of voters who approve y (as they have now "used" their virtual money to fund y).
 * Voters keep earning virtual money and funding candidates until all k committee members are elected.

Examples
The following simple example resembles party-list voting. There are k=6 seats and 9 candidates, denoted a,b,c,d,e,f,g,h,i. There are 63 voters with the following preferences: 31 voters approve a,b,c; 21 voters approve d,e,f; and 11 voters approve g,h,i.

The final committee is a,b,c; d,e; g. Note that each "party" is represented approximately in proportion to its size: 3 candidates for 31 voters, 2 candidates for 21 voters, and 1 candidate for 11 voters.
 * Voters start earning money at a fixed rate of 1 per day. After 1/31 day (~0.0323 day), the 31 abc voters have 0.0323 each, so together they can fund one of their approved candidates. One of a,b,c is chosen arbitrarily; suppose it is a.
 * After 1/21 day (~0.0476 day), the 31 abc voters have only ~0.015 each, but the 21 def voters have 0.0476 each, so together they can fund one of their approved candidates. One of d,e,f is chosen arbitrarily; suppose it is d.
 * After ~0.0646 day, the abc voters again have 0.0323 each, so they buy another one of their approved candidates, say b.
 * After 1/11 day (~0.091 day) the ghi voters have 0.091 each, so together they can fund one of their approved candidates, say g (at this point, the abc voters have only 0.0264 each and the def voters have 0.0434 each, so none of them can by another candidate).
 * After 0.0952 day, the def voters again have 0.0476 each, so they can buy another candidate, say e.
 * After 0.0969 day, the abc voters again have 0.0323 each, so they can buy another candidate, say c.

Here is a more complex example. There are k=3 seats and 6 candidates, denoted by A, B, C, P, Q, R. The ballots are: 1034 vote for ABC, 519 vote for PQR, 90 vote for ABQ, 47 vote for APQ. The winners are elected sequentially as follows:
 * First, we compute for each candidate the required value of t so that the candidate can get a total voting-power of 1. This value is 1/1171 for A (since A appears in 1171 ballots); 1/1124 for B; 1/1034 for C; 1/566 for P; 1/656 for Q; 1/519 for R. Thus, A is elected first.
 * Now, we re-compute for each candidate the required value of t so that the candidate can get a total voting-power of 1, keeping in mind to deduct 1/1171 from each voter who approved A. The required value for B is 1/1124+1/1171, since there are 1124 voters who approve B, and all of them already approved A. Similarly, the required value for C is 1/1034+1/1171; for Q it is 1/656+(137/656)/1171, since 137 out of 656 voters for Q already voted for A; for P it is 1/566+(47/566)/1171; and for R it is 1/519. The value is smallest for Q, so it is elected as the second winner.
 * Similarly, B is elected as the third winner.

Computation
Var-Phragmen and Leximax-Phragmen are NP-hard to compute, even when each agent approves 2 candidates and each candidate is approved by 3 voters. The proof is by reduction from Maximum independent set on cubic graphs.

Leximax-Phragmen can be computed by a sequence of at most 2n mixed-integer linear programs with O(n m + n2) variables each (where n is the number of voters and m the number of candidates); see Lexicographic max-min optimization.

Var-Phragmen can be computed by solving one mixed-integer quadratic program with O(n m) variables.

Seq-Phragmen can be computed in polynomial time. A naive computation shows that the run-time is O(k m n): there are k steps (one for each elected candidate); in each step, we have to check all candidates to see which of them can be funded; and for each candidate, we have to check all voters to see which of them can fund it. However, to be accurate, we need to work with rational numbers, and their magnitude grow up to k log n. Since computations in b bits may require O(b2) time, the total run-time is O(k3 m n log2 n).

Phragmén's rules for Ranked ballots
Phragmén rules are commonly used with approval ballots (that is, multiwinner approval voting), but they have variants using ranked ballots (that is, multiwinner ranked voting). An adaptation for Seq-Phragmen was proposed in 1913 by a Royal Commission on the Proportional Election Method. The method has been used in Swedish elections for the distribution of seats within parties since 1921.

In the adapted version, in each round, each voter effectively votes only for the highest-ranked remaining candidate. Again, when a candidate is elected, his "load" of 1 unit should be distributed among the candidates who vote for him (i.e., rank him first); the load division should minimize the maximum load of a voter.

Party voting
It is possible to use Phragmen's method for parties. Each voter can approve one or more parties. The procedure is the same as before, except that now, each party can be selected several times - between 0 and the total number of candidates in the party.

Participatory budgeting
The Seq-Phragmen rule was adapted to the more general setting of combinatorial participatory budgeting.

Degressive and regressive proportionality
Jaworski and Skowron constructed a class of rules that generalise seq-Phragmen for degressive and regressive proportionality. Intuitively:


 * Degressive proportionality is obtained by assuming that the voters who already have more representatives earn money at a slower rate than those that have fewer;
 * Regressive proportionality is implemented by assuming that the candidates who are approved by more voters cost less than those that garnered fewer approvals.

Using Phragmen's method to rank alternatives
The sequential Phragmen method can be used not only to select a subset, but also to create a ranking of alternatives, according to the order by which they are chosen. Brill and Israel extend this method to dynamic rankings. Motivated by online Q&A applications, they assume that some candidates were already chosen, and use this information in computing the ranking. They suggest two adaptations of Phragmen's rule:


 * Dynamic Phragmen: at each step, loop over the sequence of already-elected candidates, and divide their "cost" among their supporters. This creates, for each user, a potential "debt" - negative balance. Computing the debts can be done in time O(m n2), where m is the number of candidates and n the number of users. Then, users start accruing money as usual, where a user can start buying new candidates only after having paid its "debt". Users buy candidates sequentially, until the new ranking is computed. The new ranking is proportional. Computing the new sequence can be done in time O(m2 n2).
 * Myopic Phragmen: the "debt" of each user is computed as in Dynamic Phragmen. Then, instead of creating a complete ranking by running Sequential Phragmen, the candidates are ranked by the amount of "debt" they will create to the users. That is: the candidates are ranked by their suitability to be elected next. The resulting ranking is not necessarily proportional (in particular, when the sequence is empty, Myopic Phragmen coincides with utilitarian approval voting). Computing the new sequence can be done in time O(m n2).

They analyze the monotonicity and fairness properties of these adaptations, both theoretically and empirically.

Homogeneity
For each possible ballot b, let vb be the number of voters who voted exactly b (for example: approved exactly the same set of candidates). Let pb be fraction of voters who voted exactly b (= vb / the total number of votes). A voting method is called homogeneous if it depends only on the fractions pb. So if the numbers of votes are all multiplied by the same constant, the method returns the same outcome. Phragmén's methods are homogeneous in that sense.

Independence of unelected candidates
If any number of candidates is added to a ballot, but none of them is elected (even if some of them are voted for), then the outcome does not change. This reduces one incentive for strategic manipulation: adding "dummy" candidates to attract votes.

Monotonicity
Seq-Phragmén assign seats one-by-one, so it satisfies the committee monotonicity property: when more seats are added, the set of winners increases (no winner loses a seat).

They also satisfy several other monotonicity criteria.

For Phragmén's approval-ballot method: if some candidate C is elected, and then candidate C earns some approvals either from new voters who vote for C, or from existing voters who add C to their ballots, and no other changes occur, then C is still elected. However, this monotonicity does not hold for pairs of candidates, even if they always appear together. For example, it is possible that candidates C, D appear together in all ballots and get two seats, but if another ballot is added for C, D, then they get together only one seat (so one of them loses a seat). Similarly, monotonicity does not hold in the variant with parties: a party can get more approvals but still get fewer seats. For example:


 * Suppose there are k=3 seats and 3 candidates: a,b,c. The ballots are: 4 for a, 7 for b, 1 for a+b, 16 for a+c, 4 for b+c. Then the elected committee is {a,b,a}. But, if one of the b voters approves a too (so that the ballots are: 4 for a, 6 for b, 2 for a+b, 16 for a+c, 4 for b+c), then the elected committee is {a,c,b}. So party a won an approval but lost a seat.

For Phragmén's ranked-ballot method: if some candidate C is elected, and then candidate C is promoted in some of the ballots, or earns some new votes, and no other changes occur, then C is still elected. However, if some other changes occur simultaneously, then C might lose his seat. For example, it is possible that some voters change their mind, and instead of voting for A and B, they vote for C and D, and this change causes C to lose his seat.

Justified representation
The Sequential Phragmen rule satisfies an axiom known as Proportional Justified Representation (PJR). This makes it one of the only methods satisfying both PJR and monotonicity.

However, it fails a stronger axiom known as Extended Justified Representation (EJR). One example is given here:


 * There are 14 candidates: a, b, c1, ..., c12. There are 12 seats to fill.
 * There are 24 voters: two voters approve {a,b,c1}; two voters approve {a,b,c2}; 6 voters approve {c1,c2,...,c12}; 5 voters approve {c2,c3,...,c12); 9 voters approve {c3,c4,...,c12}.
 * Seq-Phragmen selects c1,...,c12. It violates EJR for the four voters who approve {a,b,c1} and {a,b,c2}: this group has 2 quotas and it is 2-cohesive, but no member has 2 approved winners.

Another example is given here (for the setting of parties):

Seq-Phragmen also fails a different, incompatible axiom called Perfect Representation (PER).
 * There are 3 candidate-parties and 10 seats to fill.
 * There are 10 voters, with approval sets ab,ab,ab; ac,ac,ac,ac; bc,bc; b.
 * Seq-Phragmen chooses a (at time 1/7); then b; then a,b,a,b,a,b,a,b.
 * Voters 1,2,3 approve all 10 candidates, but voters 4,...,10 approve only 5 candidates. However, the group of voters 4,5,6,7,8,9 all agree on party c, so EJR requires that at least one of them should approve 6 candidates, so EJR is violated (note that PJR is not violated for that group, since all 10 candidates are approved by at least one member of the group).

Var-Phragmen satisies PER, but fails PJR and EJR (except for the case L=1).

Leximan-Phragmen satisfies both PJR and PER, but still fails EJR.

Consistency
Phragmén's methods do not satsify the consistency criterion. Moreover, they do not ignore full ballots: adding voters who vote for all candidates (and thus are totally indifferent) might affect the outcome. Consistency criterion

Special cases
When there is a single seat (k=1):


 * Phragmén's approval-ballot method reduces to approval voting - it always selects the candidate with the largest number of approvals.
 * Phragmén's ranked-ballot method reduces to plurality voting - it always selects the candidate ranked first by the largest number of voters.

Implementations and demonstrations

 * Some of Phragmén's voting rules are implemented in the Python package abcvoting.
 * Some of Phragmén's voting rules can be tried online on the pref.tools website.
 * Both the simple and complicated versions are used in the substrate of the cryptocurrency Polkadot.

Generalizations
Motamed, Soeteman, Rey and Endriss present a sequential load balancing mechanism, that generalizes Phragmen's rule to participatory budgeting with multiple resources.