The method of equal shares[1][2][3][4] is a proportional method of counting ballots that applies to participatory budgeting,[2] to committee elections,[3] and to simultaneous public decisions.[4][5] It can be used when the voters vote via approval ballots, ranked ballots or cardinal ballots. It works by dividing the available budget into equal parts that are assigned to each voter. The method is only allowed to use the budget share of a voter to implement projects that the voter voted for. It then repeatedly finds projects that can be afforded using the budget shares of the supporting voters. In contexts other than participatory budgeting, the method works by equally dividing an abstract budget of "voting power".[1]
In 2023, the method of equal shares was being used in a participatory budgeting program in the Polish city of Wieliczka.[6] The program, known as Green Million (Zielony Milion), was set to distribute 1 million złoty to ecological projects proposed by residents of the city. It was also used in a participatory budgeting program in the Swiss city of Aarau in 2023 (Stadtidee).[7]
Use in academic literature
The method of equal shares was first discussed in the context of committee elections in 2019, initially under the name "Rule X".[1][3][4] From 2022, the literature has referred to the rule as the method of equal shares, particularly when referring to it in the context of participatory budgeting algorithms.[2][8] The method can be described as a member of a class of voting methods called expanding approvals rules introduced earlier in 2019 by Aziz and Lee for ordinal preferences (that include approval ballots).[9]
Motivation
The method is an alternative to the knapsack algorithm which is used by most cities even though it is a disproportional method. For example, if 51 percent of the population support 10 red projects and 49 percent support 10 blue projects, and the money suffices only for 10 projects, the knapsack budgeting will choose the 10 red supported by the 51 percent, and ignore the 49 percent altogether.[10] In contrast, the method of equal shares would pick 5 blue and 5 red projects.
The method guarantees proportional representation: it satisfies a strong variant of the justified representation axiom adapted to participatory budgeting.[2] This says that a group of X percent of the population will have X percent of the budget spent on projects supported by the group (assuming that all members of the group have voted the same or at least similarly).
Intuitive explanation
In the context of participatory budgeting the method assumes that the municipal budget is initially evenly distributed among the voters. Each time a project is selected its cost is divided among those voters who supported the project and who still have money. The savings of these voters are decreased accordingly. If the voters vote via approval ballots, then the cost of a selected project is distributed equally among the voters; if they vote via cardinal ballots, then the cost is distributed proportionally to the utilities the voters enjoy from the project. The rule selects the projects which can be paid this way, starting with those that minimise the voters' marginal costs per utility.
Example 1
The following example with 100 voters and 9 projects illustrates how the rule works. In this example the total budget equals $1000, that is it allows to select five from the nine available projects. See the animated diagram below, which illustrates the behaviour of the rule.
There are 9 projects. For example, the third group of 11 voters voted for D and G. The total budget of $1000 is divided equally among 100 voters. Each voter is given 10. Click on the arrow above the image in order to see the next steps of the method.
Project D obtained most votes. If we divided the cost of D equally among its supporters, each voter would pay $3.03. D is the project that minimises the maximal voter payment and so it is selected.
Project A obtained 60 votes. Analogously to the previous step: if we divided the cost of A equally among its supporters, each voter would pay at most $3.33. Project A minimises the maximal voter payment and so is selected.
Project C obtained 56 votes and is selected in the third round. Each supporter of C needs to pay $3.64, and this is the minimal possible payment. At this point the first 46 voters run out of their money.
In the fourth step project G is selected. Some voters do not have enough money to participate equally in the purchase, so they pay all money left. The maximal payment for this candidate equals $6.97.
In the last step, project H is selected. Now, only the fourth group of voters has money. They have enough money to afford the project they voted for. The maximal payment for the selected project is now $10.
The budget is first divided equally among the voters, thus each voters gets $10.
Project received most votes, and it is selected in the first round. If we divided the cost of equally among the voters, who supported , each of them would pay . In contrast, if we selected, e.g., , then the cost per voter would be . The method selects first the project that minimises the price per voter.
Note that in the last step project was selected even though there were projects which were supported by more voters, say . This is because, the money that the supporters of had the right to control, was used previously to justify the selection of , , and . On the other hand, the voters who voted for form 20 percent of the population, and so shall have right to decide about 20 percent of the budget. Those voters supported only , and this is why this project was selected.
We have a set of projects , and a set of voters . For each project let denote its cost, and let denote the size of the available municipal budget. For each voter and each project let denote the 's cardinal ballot on , that is the number that quantifies the level of appreciation of voter towards project .
The method of equal shares works in rounds. At the beginning it puts an equal part of the budget, in each voter's virtual bank account, . In each round the method selects one project according to the following procedure.
For each not-yet-selected project the method tries to spread the cost of the project proportionally to the cardinal ballots submitted by the voters, taking into account the fact that some voters might have already run out of money. Formally, for , we say that a not-yet-selected project is -affordable if
Intuitively, if a project is -affordable then, the cost of the project can be spread among the voters in a way that each voter pays the price-per-utility of at most .
If there are no -affordable projects then the method of equal shares finishes. This happens when for each not-yet selected project the remaining amount of money in the private accounts of those voters who submitted a positive ballot on is lower than the cost of :
It might happen that when the method finishes, there is still some money left that would allow to fund a few more projects. This money can be spent using the simple greedy procedure that select the remaining projects starting from those with the lowest ratio , until the budget is exhausted. Yet, the method of equal shares keeps most of its properties independently of how the remaining budget is spent.
If there is at least one not-yet-selected -affordable project, the method selects the project that is -affordable for the lowest value of (the project that minimises the price-per-utility that the voters need to pay). The voters' budgets are updated accordingly: for each the method sets .
Example 2
The following diagram illustrates the behaviour of the method.
There are 8 available projects and 250 voters. For example, the first 65 voters assign value 30 to project B and value 10 to projects E and G. The total budget of $2500 is divided equally among 250 voters. Each voter is given $10. Click on the arrow above the image in order to see the next steps of the method.
Project B is selected first, and its cost is divided proportionally to the values that the voters assigned to the project. In this case, this means it is divided equally among the voters from the first and the second group. Each such voter pays $2, and for those $2 they get the utility of 30. Thus the maximal payment-per-utility equals . If a different project was selected, the maximal payment-per-utility would be higher.
Consider project G and the payments presented in the picture. The payments are not equal, but they are still proportional to the values that the voters' assigned to G. The maximal voter's payment-per-utility for project G equals and this value is minimal across all projects. Consequently, G is selected. After this round the voters from the fourth group have run out of money.
In the third round project F is selected. Every supporter of F pays an equal part of the price - except for voters from the fourth group, who have no money. If they had any, they would also need to participate. Nevertheless, the maximal payment-per-utility for project F is minimal (it equals 0.2), hence F is elected.
In the fourth round, project E is elected. Consider the payments presented in the picture, and note that the voters from the third group have too little money to participate in paying proportionally to their utilities, yet they all still have $4 left. In such case, they pay all money they still have. The maximal payment-per-utility (paid by the voters from the first group) is minimal, and equals circa 0.54.
In the last step, project C is elected. The voters from the second and the sixth group have too little money to participate in paying proportionally to their utilities, hence they pay as much as possible. The maximal payment-per-utility is paid for the fifth group of voters and equals 0.7.
The rule spent $2380 out of $2500 in the budget. While the voters from the first and the fifth group have positive savings, no project can be afforded by their supporters. Hence the algorithm stops. The outcome can be further completed. According to the utilitarian strategy project H would be selected as its cost per utility equals and is maximal across the projects that would fit within the budget constraint.
Discussion
This section provides a discussion on other variants of the method of equal shares.
Other types of ballots
The method of equal shares can be used with other types of voters ballots.
Approval ballots
The method can be applied in two ways to the setting where the voters vote by marking the projects they like (see Example 1):
Setting if project is approved by voter , and otherwise. This assumes that the utility of a voter equals the total amount of money spent on the projects supported by the voter. This assumption is commonly used in other methods of counting approval ballots for participatory budgeting, for example in the knapsack algorithm, and typically results in selecting fewer more expensive projects.
Setting if project is approved by voter , and otherwise. This assumes that the utility of a voter equals the number of approved selected projects. This typically results in selecting more but less expensive projects.
Ranked ballots
The method applies to the model where the voters vote by ranking the projects from the most to the least preferred one. Assuming lexicographic preferences, one can use the convention that depends on the position of project in the voter's ranking, and that , whenever ranks as more preferred than .
Formally, the method is defined as follows.
For each voter let denote the ranking of voter over the projects. For example, means that is the most preferred project from the perspective of voter , is the voter's second most preferred project and is the least preferred project. In this example we say that project is ranked in the first position and write , project is ranked in the second position (), and in the third position ().
Each voter is initially assigned an equal part of the budget . The rule proceeds in rounds, in each round:
For each not-yet-selected project we say that is -affordable if the remaining budget of the voters who rank at position or better is greater than or equal to :
If no project is affordable the rule stops. This happens when the total remaining budget of the voters is lower than the cost of each not-yet-selected project.
If there are affordable projects, then the rule picks the not-yet-selected project that is -affordable for the lowest value of . The budgets of the voters are updated accordingly. First, the cost is equally spread among the voters who rank at the first position. If the budgets of these voters are insufficient to cover the cost of the project, the remaining part of the cost is further spread equally among the voters who rank at the second position, etc. Formally we start with and , and proceed in the loop:
If then we find such that and for each voter with we set .
Otherwise, we update the cost: . We charge the voters:
for each voter with we set , and move to the next position .
Committee elections
In the context of committee elections the projects are typically called candidates. It is assumed that cost of each candidate equals one; then, the budget can be interpreted as the number of candidates in the committee that should be selected.
Unspent budget
The method of equal shares can return a set of projects that does not exhaust the whole budget. There are multiple ways to use the unspent budget:
The utilitarian method: the projects are selected in the order of until no further project can be selected within the budget limit.
Adjusting initial budget: the initial budget can be adjusted to the highest possible value which makes the method select projects, whose total cost does not exceed the unadjusted budget.
The method of equal shares (MES) is computable in polynomial-time, and PAV is NP-hard to compute. The sequential variant of PAV is computable in polynomial-time, but does not satisfy Justified Representation.
MES is priceable. This means that[3] it is possible to assign a fixed budget to each voter, and split each voter's budget among candidates he approves, such that each elected candidate is 'bought' by the candidates who approve him, and no unelected candidate can be bought by the remaining money of the voters who approve him. MES can be viewed as an implementation of Lindahl equilibrium in the discrete model, with the assumption that the customers sharing an item must pay the same price for the item.[12]
MES is similar to the Phragmen's sequential rule. The difference is that in MES the voters are given their budgets upfront, while in the Phragmen's sequential rule the voters earn money continuously over time.[13][14] The methods compare as follows:
Both methods are computable in polynomial time, both are priceable,[3] and both may fail Pareto-optimality.[1]
MES with adjusting initial budget, PAV and Phragmen's voting rules can all be viewed as extensions of the D'Hondt method to the setting where the voters can vote for individual candidates rather than for political parties.[15][3] MES further extends to participatory budgeting.[2]
Implementation
Below there is a Python implementation of the method that applies to participatory budgeting. For the model of committee elections, the rules is implemented as a part of the Python package abcvoting.
importmathdefmethod_of_equal_shares(N,C,cost,u,b):"""Method of Equal Shares Args: N: a list of voters. C: a list of projects (candidates). cost: a dictionary that assigns each project its cost. b: the total available budget. u: a dictionary; u[c][i] is the value that voter i assigns to candidate c. an empty entry means that the corresponding value u[c][i] equals 0. """W=set()total_utility={c:sum(u[c].values())forcinC}supporters={c:set([iforiinNifu[c][i]>0])forcinC}budget={i:b/len(N)foriinN}whileTrue:next_candidate=Nonelowest_rho=float("inf")forcinC.difference(W):if_leq(cost[c],sum([budget[i]foriinsupporters[c]])):supporters_sorted=sorted(supporters[c],key=lambdai:budget[i]/u[c][i])price=cost[c]util=total_utility[c]foriinsupporters_sorted:if_leq(price*u[c][i],budget[i]*util):breakprice-=budget[i]util-=u[c][i]rho=price/util \
ifnotmath.isclose(util,0)andnotmath.isclose(price,0) \
elsebudget[supporters_sorted[-1]]/u[c][supporters_sorted[-1]]ifrho<lowest_rho:next_candidate=clowest_rho=rhoifnext_candidateisNone:breakW.add(next_candidate)foriinN:budget[i]-=min(budget[i],lowest_rho*u[next_candidate][i])return_complete_utilitarian(N,C,cost,u,b,W)# one of the possible completionsdef_complete_utilitarian(N,C,cost,u,b,W):util={c:sum([u[c][i]foriinN])forcinC}committee_cost=sum([cost[c]forcinW])whileTrue:next_candidate=Nonehighest_util=float("-inf")forcinC.difference(W):if_leq(committee_cost+cost[c],b):ifutil[c]/cost[c]>highest_util:next_candidate=chighest_util=util[c]/cost[c]ifnext_candidateisNone:breakW.add(next_candidate)committee_cost+=cost[next_candidate]returnWdef_leq(a,b):returna<bormath.isclose(a,b)
Extensions
Fairstein, Meir and Gal[16] extend MES to a setting in which some projects may be substitute goods.
Empirical support
Fairstein, Benade and Gal[17] compare MES to greedy aggregation methods. They find that greedy aggregation leads to outcomes that are highly sensitive to the input format used, and the fraction of the population that participates. In contrast, MES leads to outcomes that are not sensitive to the type of voting format used. This means that MES can be used with approval ballots, ordinal ballots or cardinal ballots, without much difference in the outcome. These outcomes are stable even when only 25 to 50 percent of the population participates in the election.
Fairstein, Meir, Vilenchik and Gal[18] study variants of MES both on real and synthetic datasets. They find that these variants do very well in practice, both with respect to social welfare and with respect to justified representation.
External links
Website explaining and discussing the method of equal shares in several languages