I don't know about voting simulations, but for the mathematics of voting I can recommend a few good books.
"Geometry of Voting" and "Basic Geometry of Voting" by Donald Saari cover the basic theory (the books are similar, but both cover some different things; one is aimed at a graduate-level audience, but I can't remember which. Neither uses very heavy math, but they are definitely math books). "Voting Paradoxes and How to Deal with Them" by Hannu Nurmi talks about various fairness criteria, how they fail, and what that means for voting. This may be getting off-topic, but you'll find that approval voting isn't a panacea. Since it contains plurality and anti-plurality voting as a subset it is still subject to many of the problems of both systems. One in particular is the "reversal paradox" where a candidate is elected even though a majority of the voters disapprove of that candidate. I'd find it interesting to have various vote counting systems implemented in Factor. Perhaps one could do some sort of automated test of fairness criteria. Cheers, Justin On May 26, 2009, at 21:48 , Hugh Aguilar wrote: > My symtab program was somewhat boring. I am working on another > program now > that should hopefully be more interesting. This is a simulation of > voting > systems, derived from the book: "Mathematics and Democracy" (Steven > Brams). > Brams is a long-time proponent of Approval Voting. This is a system > where a > voter can cast more than one vote (but only one vote per candidate). > For > example, a person who prefers the Democrat but would be okay with the > Libertarian, can vote for both the Democrat and the Libertarian, but > not the > Republican (who he disapproves of). Similarly, a person who prefers > the > Republican but would be okay with the Libertarian, can vote for both > the > Republican and the Libertarian, but not the Democrat (who he > disapproves > of). Such a system would (hopefully) break the Democrat/Republican > dichotomization that we have in America today. As it is, die-hard > Democrats > won't vote for a Libertarian because they believe (correctly) that > they are > "wasting" their vote, and that a vote cast for anybody other than the > Democrat is effectively a vote for the Republican. Similarly, the > Republicans also believe that the Libertarians are "stealing" the > Republican > votes and throwing the election to the Democrats, so they won't vote > Libertarian either. This is why the Libertarians get about 1% of the > vote, > despite the fact that almost everybody in America would be > comfortable with > a Libertarian winning, even if this isn't their first choice. > > I have heard that voting-system simulation programs have been > written (I > think in Common LISP), but I haven't been able to find them. Can any > of you > provide links to any such programs that have already been written? The > system that we use here in America (one vote per citizen) is > actually just > one of several systems that have been suggested. It is called > Preferential > Voting and it is a bad system --- it tends to reward extremist > candidates > (left-wing or right-wing), and to punish moderates. Have any of you > read > Brams book mentioned above, or any other books on voting-system > design? > > The book also discusses voting-systems that could be used for > elections of > several candidates (such as for membership in a ruling committee), > and also > fair division of limited resources. Simulation of these systems > could also > be done, but I am just working on the winner-take-all election right > now, as > this is what is on my mind --- as we have just come away from our > Presidential election. > > > ------------------------------------------------------------------------------ > Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT > is a gathering of tech-side developers & brand creativity > professionals. Meet > the minds behind Google Creative Lab, Visual Complexity, Processing, & > iPhoneDevCamp as they present alongside digital heavyweights like > Barbarian > Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com > _______________________________________________ > Factor-talk mailing list > Factor-talk@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/factor-talk ------------------------------------------------------------------------------ Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT is a gathering of tech-side developers & brand creativity professionals. Meet the minds behind Google Creative Lab, Visual Complexity, Processing, & iPhoneDevCamp as they present alongside digital heavyweights like Barbarian Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com _______________________________________________ Factor-talk mailing list Factor-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/factor-talk