@Jack-Waugh, I think that would be welcome.
Best posts made by tec
-
RE: Multiwinner vs. Single-winner
-
RE: Collaborative Coding for Simulation
@jack-waugh on the original question regarding languages, I don't really know FORTH (or its variations) and I have a strong attraction to LISP. But for the simple and practical reasons that simulations have to be run on some system, having JavaScript client code is really the only way to go if you want more than a handful of users running simultaneous simulations.
-
RE: Simulating Voting Strategies
Warren D. Smith's Range Voting paper (2000) and his C code simulation goes over a number of different voting systems and simulates both honest and "rational" ballots for many of the voting systems he covers. The 30 voting system and strategy permutations in the paper are: (In the paper, WDS starts his list with zero and the "as 25" strategy reference is "as 26")
- Honest range voting (scaled utility vote)
- Honest Borda
- Honest Condorcet Least-Reversal (CLR)
- Honest Coombs STV (most least-liked candid eliminated each round)
- Honest Hare Single Transferable Vote STV (least most-liked canddt eliminated)
- Honest Copeland (win most pairwise elections)
- Honest Dabagh point-and-a-half
- Honest Black (if no Condorcet winner use Borda)
- Honest Bucklin
- Honest plurality+runoff for 2 top finishers
- Honest plurality (1 vote for max-util canddt)
- Honest bullet (1 vote against min-util cand)
- Majority vote on random candidate pair
- Random "dictator" voter dictates winner
- Random winner
- Worst-summed-utility winner
- Honest approval (threshhold=avg canddt utility)
- Strategic range/approval (average of 2 frontrunner utils as thresh)
- Rational range/approval (threshhold=moving avg)
- Rational plurality (vote for 1 of 2 frontrnnrs)
- Strategic Borda I (1 frontrunner top, 1 bottom, rest recursively)
- Rational bullet (vote against 1 of 2 frontrnnrs)
- Strategic CLR (strat same as 25)
- Strategic Hare STV (strat same as 25)
- Rational Borda (1 frontrunner max, 1 min, rest using moving avg to decide if max or min vote)
- Strategic Coombs STV (strat same as 25)
- Strategic Borda II (1 frontrunner max, 1 min vote, rest honest)
- Rational Dabagh point-and-a-half (moving avg)
- Strategic Copeland (strat same as 25)
- Strategic Black (same strat as 25)
(A Google search for rangevote.pdf will get you to the paper. His c code is at: https://www.rangevoting.org/WarrenSmithPages/homepage/votetest2.c)
I hope this provides some good options for your strategy simulations.
--tec
-
What Arrow's Impossibility Theorem Really Means
Arrow's impossibility theorem is frequently cited in the discussion between ordinal and cardinal voting systems, with the idea that AIT only applies to ordinal voting systems. It is true that Arrow was only looking at ordinal systems, with the goal of a social welfare function (SWF) that took as input a collection of individual preference orders and returned a collective order. But what Arrow actually proved was his conditions were inconsistent. Specifically, his condition allowing voters to have unrestricted preference orders (citizen sovereignty or CS) is inconsistent with the idea that a majority preference of B over A would somehow be reversed by the introduction of some alternative C.
The Independence of Irrelevant Alternatives (IIA) condition seems reasonable at first glance. Yet there is a real question about what is meant by irrelevant. Ignoring ties, there are four possible states for an electorate preferring B over A created by the introduction of C, and at least two of them are highly relevant to the collective choice.
- When both B and A are preferred over C, there is no problem, and B remains the collective choice.
- When B is preferred over C and C is preferred over A, there is still no problem because B remains the collective choice.
- When C is preferred over both A and B, it can be argued that C is anything but irrelevant, and the collective choice should now be C.
- When A is preferred over C and C is preferred over B, the introduction of C creates a majority cycle. This is also extremely relevant because the cycle creates something like an equivalence class. This is a problem because the selection of any one of the three alternatives requires the SWF to reverse a known majority preference.
It is easy to come up with preference profiles that result in majority cycles, such as this one:
|-----------------+-------+-------+---------------+-------+-------| | voter region | order | count | voter region | order | count | |-----------------+-------+-------+---------------+-------+-------| | left top | A>B>C | 15 | right top (B) | B>A>C | 19 | | left middle (A) | A>C>B | 18 | right middle | B>C>A | 15 | | left bottom (C) | C>A>B | 15 | right bottom | C>B>A | 18 | |-----------------+-------+-------+---------------+-------+-------|
In this preference profile A is preferred over C by 52 to 48, C is preferred over B by 51 to 49, and B is preferred over A by 52 to 48. But just coming up with a preference profile doesn't really help us understand why the voters would have these preferences, or how common they might be in a real election.
To get a better sense of this type of cycle, it helps to put the election in some type of context. In this case, consider a group of 100 voters in a small community trying to determine a location for a common resource such as a cell tower. Each voter has an ideal location (gray dot) and their utility of the resource is inversely proportional to the distance the single tower will be from their ideal. The locations are indicated by labeled locations (black dots) A, B, and C. In the two images, the voters are positioned identically, and the indifference lines (perpendicular bisectors between each pair of alternatives) are also identical. The only difference is the alternatives in the right image have been moved closer to the center.
The first point I want to drive home here is that majority cycles are real and are the result of real voter utilities for the specific alternatives in the cycle. The voting method is irrelevant to the existence of cycles. When there is a cycle, the use of a cardinal voting method does not magically make that cycle go away.
The second point I'd like to make is that no voting system that tries to do everything in one or two rounds can pick a good collective alternative when all the alternatives are collectively bad. The differences between the alternatives in the left image and those in the right image are what drove me to work on iterative voting systems.
-
RE: If there are only two candidates, could FPTP be improved upon?
@rob Your question was answered by Ken Arrow (of Arrow's impossibility theorem fame). AIT is more formally called Arrow's general possibility theorem, and is the second theorem in his Social Choice and Individual Values. His theorem 1 (Possibility Theorem for Two Alternatives) covers exactly this situation, and unlike his General Possibility theorem, the answer is affirmative. It is possible for a society to choose between two alternatives without violating any of his desirable conditions. The method to use is simple majority rule.
After Arrow published his book, Kenneth May published an article in Econometrica (1952) titled, A Set of Independent Necessary and Sufficient Conditions for Simple Majority Decision. That paper augmented Arrow's result and states that not only does simple majority rules satisfies Arrow's conditions, but every voting system that satisfies those conditions is equivalent to simple majority rule.
In essence, choosing between two alternatives is easy. The problem comes when you try to expand beyond two alternatives. That's what AIT shows and what Gibbard and Satterthwaite expanded upon.
So when limited to two alternatives simple majority decision works, and any other reasonable voting system devolves into simple majority decision when restricted to two alternatives.
-
RE: What Arrow's Impossibility Theorem Really Means
@BlainCellars the code I use is what I cobbled together since I started looking at voting systems and trying to figure out what worked best. Much of my work was done without consulting the (somewhat vast) literature on voting theory, and the tools and processes I used to help me think about things are all either free/open source or my own coding. This specific graphic was originally developed using Gnu Emacs with the svg package. Since the discussion code on this forum does not accept svg files, I used inkscape to convert the svg image into a png file.
More generally, when I started looking into the problem of voting I started with NetLogo because it provides an easy graphic display for agent-based models. Using NL, I could create and display 100 voter-agents randomly distributed in a 2D field, then create some alternatives for them to vote for under whatever system I was looking at. It worked great for a while, but as my questions got more involved, and my code-base became more extensive I realized I needed something a little more robust. I switched to Python because it allowed me to write tests for my code and make it more reliable.
At the moment my code is not well documented and is in need of refactoring. So while I can get it do to a number of interesting things I'm not sure how useful it would be to anyone else. On the other hand, I think it might be very useful for voting theorists to have easy access to spatial models. There is a data hierarchy to the various electorate models I've seen in recent voting theory papers. Tournaments have the least amount of data and have essentially eliminated the electorate altogether. Preference profiles have an electorate but lump voters together based on preference orders without any indication of the relative strength of individual voter preferences. Lists of individual voters with randomized utilities for each alternative allow some comparisons, but are still limited in that they really can't handle the addition of alternatives. Spatial models allow just about everything and are known to cover all possible tournaments, preference profiles, and utility models.
I'm assuming you have something in mind with your inquiry about programs. What are you looking for? Are you looking for images of electorates? Or do you want an election simulation environment for running tests and evaluations? I am thinking of putting my code on GitHub, but it will take a lot of work before it is ready for someone else to use. Are you looking for an answer to a specific need? Or are you willing to be an alpha-tester for a generic voting system evaluation framework? And more generally, would people such as the folks on this forum be interested in such an evaluation framework?
(This was a bigger answer than I suspect you wanted, but perhaps it will get us further in our collective quest for better collective decisions.)
-
RE: RCV IRV Hare
@jack-waugh, the main argument against instant runoff voting (IRV) in my mind is that it seems very easy to eliminate a Condorcet winner. The story line starts with an existing plurality system with two major parties (Duverger's law). Over time, the two parties will tend to converge to the center along any issue that is in play in an election. This leads to party members not being very happy with the results even when they win. This leads to challenges to both party establishments from their extreme wings. Under plurality, this can lead to parties losing due to the spoiler effect. Some of the arguments in favor of IRV claim it solves this problem because voters can vote for their extreme wing as their first choice and the party establishment alternative as their second choice, and the implicit assumption is the extreme alternative is eliminated in the first round and support flows to the "more electable" of the parties' offerings.
The problem with this argument is that IRV is being proposed in order to allow multiple alternatives, and the more choices their are, the fewer first place votes there will be on average for any individual alternative, and the greater the likelihood that alternatives in a crowded middle will be eliminated. Once that happens, we start seeing IRV electing fringe alternatives instead of moderates, which is almost exactly what we have now with plurality.
Note that this argument is against the standard IRV in which if there is no winner, the alternative with the fewest first-place votes is eliminated. The dynamic is much better in a variation of IRV called the Coombs method, which successively eliminates the alternative with the most last-place votes. (The fact that a single alternative can have both the most first-place votes and the most last-place votes seems to have made it a hard sell, but that's a different issue.)
A different argument against IRV [that was actually presented as an argument in favor of IRV, (Bartholdi, 1991)] is that strategic voting under IRV is so complicated that it is nearly impossible to determine the best strategic vote. The author's argument is that faced with the computational difficulties of determining the best strategic vote, voters will instead choose to vote honestly. To me, this line of thinking seems unsound, and I thus take it as just one more reason to avoid IRV.
I hope this helps you in your discussions.