Utilitarian Sum vs Monroe Selection

I was going to post the results in the loomio group for the Wolf Committee but the formatting here is better. This is intended to be a next step from my unitary reweighted cardinal system. We have been toying with using the public name sequentially subtracted score. Anyway, the basic idea is that it is a sequential score system where after selecting a winner you achieve proportionality by subtracting off the score they voted for the winner with. This thread is not to debate that topic.

What I want to try to improve is winner selection. The original method was proposed with taking the default utilitarian method which is just the candidate with the highest sum of score. It was suggested that using the winner selection from Sequential Monroe could be better. This method is to take a winner as the candidate with the highest sum of score in a Hare Quota. There was some debate on the original thread about reasons why this might be better.

OK so results are in. I started from this and tried to make it more representative of the real world. I simulated 3 equidistant but very polarized groups as Gaussian. A 2D political spectrum is best for visualization.

The there are 8 candidates there in black, you may have to zoom in. To get a better idea of the population density in the political compass here are 3D plots.

From this I decided that the distance to the candidate was the best metric for how voters would score. I used a simple “score = 5 - distance” and then rounded. It is a 5 score scale so anybody further than 5 units gets a 0.

Running the methods gives.

Utilitarian Winner set is:
[‘B2’, ‘G2’, ‘R2’, ‘A’, ‘R2’]
Monroe Winner set is:
[‘G2’, ‘B2’, ‘R2’, ‘A’, ‘B3’]

It should be noted that due to symmetry interchanging the colours does not matter. What matters is that the Utilitarian method selected another level 2 colour. This is a moderate. The Monroe method selected an extremist. Opinions welcome on what is better.

The scoring method I used is naive. The simplest improvement I could think of was to make the candidate closest to the voter set to a score of 5. I think this is a standard strategy almost everybody would use. Adding this gives

Utilitarian Winner set is:
[‘G2’, ‘B2’, ‘R2’, ‘A’, ‘G3’]
Monroe Winner set is:
[‘G2’, ‘B2’, ‘R2’, ‘A’, ‘G3’]

So the exact same results from both methods. This means that the extremist would be the natural choice.

The level of polarization in this simulation is too extreme to be realistic. I could move the groups closer together and reproduce what is seen in polls. But instead, I think it is more interesting to add centerist voters since this way we can track the differences to what we already have. I added a new group with the same Gaussian shape at (0,0). I made it a 30% smaller group to still keep on the really polarized end. Density plots look like

The results are now

Utilitarian Winner set is:
[‘G1’, ‘B2’, ‘R2’, ‘G2’, ‘Z’]
Monroe Winner set is:
[‘G2’, ‘B2’, ‘R2’, ‘A’, ‘R3’]

Again I am not sure what is better but I am leaning towards Monroe.

Anyway, this was just a few hours coding to try and sort out this issue. Please let me know if you have some specific scenarios you think would be insightful. I can’t seem to post code here, which is a shame because I intentionally wrote it in an accessible way.


Could we see “scaled honesty” (your favorite gets a 5, your least favorite gets a 0, and all other scores are scaled in between?

Try GitHub.

By Z do you mean A?

Overall, I think it is quite odd that Monroe picks very similar winners to Utilitarian Winner. Do you mind trying Apportioned Score Voting to see how extreme that would be in comparison (that or STV seem like the benchmark for how extreme a method should get.)

1 Like

Here is a scenario:
4 distributions of equal spread arranged in a square. The chance of a point belonging to a particular distribution is:
40% 15%
20% 25%
3 seats

In your first set of results you say:

Utilitarian Winner set is:
[‘B2’, ‘G2’, ‘R2’, ‘A’, ‘R2’]

You’ve duplicated R2 there.

I do not think that is honest. Many people would be listed as zero not just your least favorite. Anybody below some threshold.

No, Z is there between red and blue. Look closely.

Do you mean allocation of whole ballots for the top Hare quota. This is actually sort of annoying to code due to the issues with surplus handling needing to be random in some way. I was thinking of adding RRV.

I think I see what you are trying to do here. More distinct groups than winners. This is the same as the three group with two winners case. Just look at the first who selected above. They are shown in the order of selection.

If we want to try having different group sizes then sure. It is not really hard for me to even make the four group version. Can you give me Cartesian coordinates for the groups and their number of voters. Also, give me the Cartesian coordinates of the candidates.

It might just be best to give out the code. It is better for you guys to play with it. You can be running in 15min. Just install the canopy editor with python 3.5

Yes this was intentional. I could have put a bunch of similar candidates in the same place. I wanted to have “types” of candidates. This is a 5 winner district so you would expect 5 candidates from each party at a minimum.

1 Like

GitHub is great for development but I am not sure I really want to manage this simple script. I put it here. Please try for yourself. As I suggested already Canopy is the best way to get started quick if you are new.

To be honest, seeing how good both Monroe and Utilitarian Winner are at picking a consensus or at least cooperative majority, I am happy to go with either one.

I think I am intuiting now why Sequential Monroe doesn’t pick extremists, as Apportioned Score Voting does. It looks for intensity of preference, yes, but it is also looking for a Hare Quota of points, rather than voters, allowing for utilitarian-style compromise.

I guess the coordinates and proportion of voters in each group could be
(-1.5,-1.5) 40%
(-1.5,1.5) 15%
(1.5,-1.5) 20%
(1.5,1.5) 25%
And the standard deviations would be 1.

What would you want for candidates? Are you happy with score being score = 5-distance? This would put the center of one group giving non-zero scores for the center of all other groups. Even the diagonally opposed.

For candidates, I was thinking 2 at each group center. And the 5-score is fine.

red = (-1.5,1.5) 4000 voters
green = (-1.5,-1.5) 1500 voters
blue = (1.5,1.5) 2000 voters
yellow = (1.5,-1.5) 2500 voters


            ['R1',-0.5, 0.5],
            ['R2',-1.5, 1.5],
            ['R3',-2.5, 2.5],
            ['G1',-0.5, -0.5],
            ['G2',-1.5, -1.5],
            ['G3',-2.5, -2.5],
            ['B1',0.5, 0.5],
            ['B2',1.5, 1.5],
            ['B3',2.5, 2.5],
            ['Y1',0.5, -0.5],
            ['Y2',1.5, -1.5],
            ['Y3',2.5, -2.5]

Utilitarian Winner set is:
[‘R1’, ‘A’, ‘A’]
Monroe Winner set is:
[‘R2’, ‘Y2’, ‘R2’]

Monroe looks clearly better. The second R2 in Monroe looked weird so I added some red/blue candidates.


But that changed the results to [‘R2’, ‘Y2’, ‘Z3’]

This was a very well thought out example. I am sure the winner set you were going for was [‘R2’, ‘Y2’, ‘B2’]. In any case I would say that the Monroe results is better as it has no centerist bias and does not elect A. With A removed Utilitarian Winner set is [‘R1’, ‘R1’, ‘Y1’]

Does this settle the argument for sequential cardinal systems?

Monroe > Utility
And from before
Unitary subtraction > RRV Reweigting > Allocation

Aside from optimal systems are there other competitors? Free riding is still an issue but I suspect that it is minimal in this case over the others given the unbiased selection.

1 Like

The five winner set makes it even clearer.

Utilitarian Winner set is:
[‘R1’, ‘Z1’, ‘A’, ‘A’, ‘A’]
Monroe Winner set is:
[‘R2’, ‘Y2’, ‘R3’, ‘B3’, ‘G2’]

We do not want a bunch of centerists.

My only thoughts are that this is still taking a Hare quota of voters to select. Not a Hare quota of score which is how we reweight…

1 Like

Do you have the Droop-STV results? [R2, Y2, B2] was indeed a mistake I was watching for, and I’d be somewhat surprised if STV avoids it. When you did get this winner set with the Score-PR methods, was one more prone to than the other?
If electing the candidate with the greatest Monroe score is indeed superior to electing the sum score leader, then 1) this also suggests that sequential KP-transform methods are of limited quality, since as a general rule, sequential approval methods always elect the approval winner first.
2) It will be very difficult to avoid formally incorporating quotas into a good method. I doubt this bothers you since Vote Unitarity is tied to the Hare quota, but I am concerned that having a method depend on quotas increases its vulnerability to free riding.

It is not clear to me why this is bad.

Only happened in Monroe selection.

This could be a real break though. Keep in mind that this is a pretty simplistic simulation.

Not really sure how it could. Can you explain?

If you post it on GitHub or gist.github.com then other people can fork and modify it much more easily


If you treat the X and Y dimensions as two different issues, and consider the legislature’s stance on each issue to be that of the median legislator, then [R2, Y2, G2] leaves G2 as the median legislator on both issues, whereas the electorate is probably closer to R1. The [R2, Y2, R1] set output by Monroe with 3 winners was fine by this standard.

Yes - gists have lots of advantages over other pastebins, and can even be converted later to a normal repo if desired.

1 Like

The most recent code is here. It is debugged and pretty clean. You can add it to github or wherever.

It was just a quick toy model but it does show that Monroe is better than Utilitarian. I would quantify this better in the sense of Rawlsian Maximin. You do not want to maximize total score spent but minimize the score remaining for voters who have spent less than the max. Voters who get 5 or more score spent are satisfied.