Blake Cretney wrote: > Anyway, I hope I didn't make any errors. If anyone is interested in my > Python code, I'll post it on my web site. I have a feeling not everyone > is going to agree with the assumptions of my model, so let the debate > begin.
I don't know what all of your assumptions are -- particularly, what sort of strategy was used for Approval; I guess for Borda and Condorcet you used sincere rankings only? > I've recently been experimenting with modeling elections. I'm > particularly interested in models that take the view that there is a > right answer, with voters varying in their ability to see the best > solution. This is quite different than looking at the election as an > opportunity for each person to express the utility of an option to them, > in the hopes of maximizing perceived utility. It does sound a little strange. This might be a good model for an election to decide which baseball team is the best -- there should be a right answer (or possibly three or more, since the teams compete pairwise so there can be cycles), and maybe some observers will be more able than others to see which team is best. But political elections aren't like that. I hope my thinking about Majority Potential has some validity in determining the "right answer" for political decisions, because my sims of last year rated the candidates by this measure. Rightness in that context has more to do with meeting the needs of as many voters as possible, and doing so better than as many other candidates as possible. > Here's some example data. The simulation was run for 10,000 rounds, the > score is the average value of the winning candidate. I wouldn't pay > much attention to anything after the first two digits. > > plurality 0.645185742888 > approval 0.631756074554 > borda 0.683807453742 > random 0.597920774971 > condorcet 0.664473653125 Rather than doing an average score, I did a histogram, showing how many times each method picked the highest-MP candidate, second-highest, and so on. I don't have any of the results saved from the longer runs but I just did a short run -- 5 candidates, 49 possible positions in a 2-D issue space, 50 tests: Random Choice: 1: 7 2: 15 3: 6 4: 16 5: 6 Random Ballot: 1: 14 2: 10 3: 7 4: 11 5: 8 Plurality: 1: 13 2: 7 3: 16 4: 8 5: 6 Plurality/NZI: 1: 16 2: 13 3: 12 4: 6 5: 3 IRV: 1: 26 2: 11 3: 12 4: 1 5: 0 Plain Condorcet: 1: 50 2: 0 3: 0 4: 0 5: 0 SSD: 1: 50 2: 0 3: 0 4: 0 5: 0 Borda: 1: 37 2: 8 3: 3 4: 2 5: 0 BordaWV: 1: 50 2: 0 3: 0 4: 0 5: 0 Borda/NZI: 1: 34 2: 8 3: 4 4: 4 5: 0 Approval: 1: 43 2: 6 3: 1 4: 0 5: 0 Approval/NZI: 1: 43 2: 6 3: 1 4: 0 5: 0 Some abbreviations: NZI is non-zero information (based on picking two of the five candidates at random to be "front-runners"); otherwise zero-info strategy was used. BordaWV is Borda calculated with winning votes, which I believe is the best way to do Borda. The other Borda is Borda calculated with margins, which I have seen someone in this group advocate (I forget who). My results seem to be in general agreement with yours. By the way this doesn't support my contention that the AW is often better than the CW when they differ. So perhaps Dave Ketchum is right. Or maybe the MP measurements and the pro-AW argument are based on different axioms: MP is a purely majoritarian concept, after all. Finally, I also don't know how much of this to attribute to the effect I will describe at the end of this post. > Borda does the best. All methods do better than random. One reason > Borda does well is because the model assumes that the candidates (as > well as the voters) are skewed to the good. Since Borda encourages the > running of candidates, and since there are in fact more good candidates, > it isn't surprising that Borda comes out well. To test this, I ran an > example where the standard deviation of the candidate values, but not > the voter values, is changed to 1. This still skews candidates toward > good, but it creates a much greater tail to the curve, which will result > in more low and negatively valued candidates. > > plurality 0.739428387791 > approval 0.358133016904 > borda 0.620321020809 > random 0.204792214674 > condorcet 0.662755661463 > > Condorcet is affected the least. Borda drops behind Condorcet. > Plurality does much better, since the vote rich area at the top of the > curve is split between fewer candidates. Approval and random both > suffer greatly from the change. I think I can explain the drop in Approval performance. Note the following result: > Here's one last one. I went back to the normal distribution, but set > the candidate standard deviation to 0.25, resulting in a candidate field > superior to the voters. > > plurality 0.540424844931 > approval 0.767877868695 > borda 0.747518871757 > random 0.788082777819 > condorcet 0.668325197385 > > Not surprisingly, random candidate becomes the best. In this case Approval got a lot better. Approval seems to be particularly sensitive to candidate distribution in your model, and I observed this in my sims as well. Here's what happens: When candidates are clustered in some local region of issue space, there is a tendency of Approval to skew towards that region in simulations of this sort. After thinking about it a while, I realized that this isn't real-world voter behavior. Imagine two clone candidates in an Approval election. Each voter will either approve both, or disapprove both. But if the clones become the two front-runners, then each one only has a 50% chance. This is then equivalent to the situation where the clones are represented by a single proxy, and if that proxy wins, she will pick one of the clones at random to be the winner. The proxy will not pick up any additional votes by representing two (or any number of) candidates. If they are only near-clones, then the effect will be diminished, but should still be very strong. The more they are separated, the weaker the effect, with the effect vanishing when the candidates are all evenly spread out. The difference between the simulation and the real world is this: A simulated voter will examine its utilities, giving each of the clones the same weight as the other candidates (or in proportion to the weights of the other candidates, if non-ZI), in order to calculate its Approval cutoff point. A simulated voter that opposes the clones will thus go farther in compromising, whereas one that is on the clone's side will compromise less. A real voter *who is aware that the clones are clones* will understand that they can't both win, and will divide that weight by the number of members of the clone set, and thus arrive at a different cutoff point. Of course, this does mean that not recognizing clone candidates could put a voter at a strategic disadvantage. But to some extent most voters do this already: Suppose there "isn't a dime's worth of difference" between the Democrat and the Republican, and that clone set has a 98% chance of winning. Then each of the two candidates has a 49% chance of winning, and this fact isn't lost on the voter who doesn't realize they are clones. Unfortunately, it's a lot more subtle when the clone set has only a 20% chance of winning. -- Richard ---- For more information about this list (subscribe, unsubscribe, FAQ, etc), please see http://www.eskimo.com/~robla/em
