Different uses for voting
need different types of voting. |
Tally Software |
Hand Tallies for elections and policies. Key:
This easy-to-use software for the best voting rules makes democratic decisions faster, easier and more accurate. It leads to better councils, policies and budgets for schools, clubs, coops, unions, companies and towns. It strengthens civil society and shames politicians who refuse to modernize public decision making. Tallies must avoid corruption and assure voters that their ballots are faithfully counted. Therefore the public has long had a right to observe the tally process in as much detail as possible. For tallies involving software, that right has to include inspection of the software code. So a healthy democracy requires “open source software.” OSS programs have priority on this list. Programmers who adapt some code from an open source program are obliged to salute the work they build on and make their own code available for others. A dozen sites listed here offer software to tally Condorcet or Proportional Representation rules. Those programs can be combined to create centrally-balanced councils. This site also offers free voting tools to allocate fair-share funding for projects and agencies. All these sites distinguish themselves from the hundreds that give away little more than hot air in political rumors, untested schemes, or self-serving opinions. A group can test drive a new rule in a survey. Or they can turn into a “committee of the whole” to vote, tally and report the result to enact by their old rules. Hand TalliesFor groups with 10 to 100 voters: A quick show of hands can tally most rules to decide elections or policies for about 100 voters. (Voters might be easier to count if they are able to move into “preference groups”.) Hand counting paper ballots is easy for a tally with a few dozen votes. But some of the best Condorcet and STV rules cannot be hand counted. Condorcet’s pairwise rule is usually best for enacting one policy and sometimes to select a list of projects. Each voter grades or ranks most proposals on the ballot (A, B, C, or 1st, 2nd, 3rd.) In a hand-tally process, one person enters tick marks in a Pairwise table while two or three people read aloud a ballot's preferences and confirm the tick marks. If ballots include the option "Fund no more." the tally can show which projects have majority support. FairVote explains a hand count of ballot papers for Single Transferable Vote takes some care. But these hand tallies have elected reps in Australia and Ireland and in private organizations for almost 100 years. STV is a form of Proportional Representation. STVAction offers STV Count Calculators to help some steps in a hand count. The Movable-Vote Workshop teaches small groups to use paper cards for quick votes. It offers the best rules for budgets, reps and projects. Ballot Data-Entry FormsMost of the tally programs below can read ballot data typed into a plain text file. A simple spreadsheet to check accuracy can help the data entry clerks. The Australian Capital Territory's electronic voting and tally system uses personal computers as voting terminals linked to a server in each polling location using a secure local area network. The ballot, server, and tally programs were written by Software Improvements, Free, Open source, in C, 2004. The Open Voting Foundation electronic voting and tally system advocates public observation of vote counting. They say tallies by proprietary hidden software make public observation impossible. Promotes adoption of open source voting. The New Haven Advocate has an excellent IRV Ballot for a mock U.S. presidential election 2007. In JavaScript, © 2007. The Smithsonian Museum of American History history of ballot technology from the 1800s to 2012. Online voting services let each user enter their own ballot. But online voting, like mail-in ballots, is susceptible to vote buying, and possible pressure on voters from friends, family and bosses. Online voting if also subject to hacking. Tools for Single-Winner TalliesJeffrey O'Neill’s application includes multi-winner rules, so it is listed there. Kristofer Munsterhjelm’s application also includes multi-winner rules, so it is listed there. FairVote's RankIt.vote is helps users setup, collect, and tally ballots for Ranked Choice Voting. It is free and open source. The Ranked Choice Voting Resource Center's RCV Universal Tabulator helps users setup, collect, and tally ballots for Ranked Choice Voting. It is free and open source; copyright 2020.
Robert LeGrand's Ranked-ballot voting calculator can tally 15 single-winner voting rules: Baldwin, Black, Borda, Bucklin, Carey, Combs, Copeland, Dodgson, Hare (Instant Runoff), Nanson, Raynaud, Schulze method (Beat Path), Simpson, Small, and Tideman's Ranked Pairs.
Blake Cretney offers three programs and their source code at SourceForge:
Selectricity was designed and built in the MIT Media Lab in the Computing Culture group. The team includes Courtland Allen, C. Scott Ananian, John Dong, Benjamin Mako Hill, Justin Sharps and Alyssa Wright. “Voting machinery for the masses!” Schulze Method, Online voting and talllies, Copyleft 2006-2010, Open source available, in Ruby. Brian Olson Better Polls can tally 15 single-winner voting rules: Borda, Bucklin, Combs, Instant Runoff, Schulze (Beat Path), Tideman (Ranked Pairs) and a Normalized Ratings rule similar to Merrill's Standard Score. Copyrighted, free for non-commercial use; in Java, some in C, C++ or Perl. Jochen Voss wrote debian-vote-0.8.tar.gz to tally the Schulze method as used to set policies at Debian. Free, Open source, 2008, Creative Commons Attribution-Share Alike 3.0 License. Rob Lanphier offers an online Condorcet tally in PERL 5, Free Open source, GNU Revision 1.1 1996. and Electowidget Revision 0.1.0, Free Open source, in PHP. Eric Gorr offers online Condorcet tallies for MiniMax, Beatpath and Ranked Pairs. Ranked Pairs; Free, Open source in C++. Michael Clarkson, Stephen Chong and Andrew Myers, of the Cornell University Computer Science Dept. have built a Condorcet internet voting service. The completion rules include Schulze, CIVS Ranked Pairs, Maximize Affirmed Majorities, and CIVS Condorcet Runoff which is the same as David Hill's rule. The programming language is not specified. NOT open source. Wiley offers a "Voting Methods Calculator" to accompany Mathematics Beyond the Numbers by Gilbert and Hatcher. It tallies simple plurality, plurality with runoff, Borda count and Condorcet. in Java NOT open source. Peter A. Taylor offers elect1.pas which "implements a variety of single-seat election systems." Approval, Black, Borda, Condorcet, Dodgeson, IRV, Nansen, Smith set, Young. Free, Open source (GNU) in Pascal. Last modified 12-30-2000. Tally Borda, Condorcet, IRV or plurality with a program from David Lovelock; Department of Mathematics; University of Arizona; Tucson, Arizona. A stable DOS program with simple menus. Copies may be found in the UA archive. Free, version 1.01 © 1992-1993. Archived instructions for this voting program. Stephen Checkoway of ucsd.edu offers Module elections.irv Free, Open source in Python, © 2011, All rights reserved. Alan Johnsrud developed a voting rule from his work in war game simulations which model competing forces as a matrix of vectors. A candidate gets points for each rival she beats, more points for besting a strong rival, fewer for defeating a weak one who wins few comparisons. Free, Open source for QBasic © 2000. Lucien Saumur offered a, "Voting machine with tools for preferential ballots and Condorcet tallies. A copy is in the A.D. archive. Coded in Visual Basic 3 © 1996. Tools for Multi-Winner TalliesAll of these voting tools tally single- and multi-winner elections by Single Transferable Vote. STV is commonly known as Alternative Vote, Choice Voting, Hare rule, Instant Runoff, Preference Vote or Ranked-Choice Voting in various countries.
Jeffrey O'Neill and others programmed OpenSTV-version 2.4.0 to tally most versions of STV including ERS97 and Meek. It also tallies several Condorcet rules: IRV on Smith Set, Borda on Smith Set, and Schulze on Schwartz Set. $5 for individuals, $99 for non-profits with less than 30 employees, to $999 for companies and large non-profits, Open source in Python; installs on MS Windows, Mac OS X, and Linux; GNU © 2011. The last free version is easy to find by searching for “OpenSTV 1.6” or “OpenSTV 1.7”.
Voting Solutions developed ChoicePlus™ Pro primarily to tally STV elections. It is used by the city of Cambridge Massachusetts. It was $15,000, but the newest version, 2.3.4, “is yours to use free of charge, but with no support.” It is open source in Java, © 1993-2009.
Jonathan Lundell worked on OpenSTV, and has started “Droop”, a Python-based package for STV tallies. It compliments his Proportional Representation Foundation website. The design can make it easy to add new versions of STV and new user interfaces. v0.8; © 2010, GNU General Public License v3.
Celect by Kristofer Munsterhjelm tallies multi winner rules: CPO-STV, CFPRM, and D'Hondt (without lists); Condorcet rules: Dodgson, Simpson, Tideman, Copeland, and Schulze; and older single winner rules: plurality, Borda, Hare, and Nanson. It is Open source, written in C++; an initial version, Spring 2005. The Australian Capital Territory's electronic voting and tally system used personal computers as voting terminals linked to a server in each polling location using a secure local area network. The ballot, server, and tally programs were written by Software Improvements, and were Free, Open source, in C, 2004. Electionz offers commercial management of elections, including STV. http://www.electionz.com/home/ Joe Otten and the Electoral Reform Society of Great Britain offered eSTV with clear menus for easy use. It included the ERS97 version of STV. It was free: The trial version was for non-commercial use and was limited to 12 candidates and 60 voters. A version for 50 candidates and 1000 voters was available and required registration with ERS. Windows (32bit), Proprietary code in Delphi (Object Pascal for Windows), © 2000. (Note: their server often does not respond.) Lee Naish offers a program to tally STV with a thousand ballots and over ten candidates. It is Free, Open source, coded in NU-Prolog 1996-97. The Institute of Mathematical Statistics uses STV to elect its board and offers an STV program written in the very high-level programming language of the statistical package S-Plus; Free, Open source; 2002. Cambridge University students programmed Juliet to tally the Newland- Britton version of STV, which they use at Cambridge. Free, Open source in Java; 2001. juliet.tar.gz I. D. Hill, and B. A. Wichmann wrote MEEK and published it in "Algorithm 123 - The Single Transferable Vote by Meek's Method" co-authored by D. R. Woodall in the Computer Journal of the British Computer Society 30 No. 3, 1987. Slight modifications were made later by T. Nicolaus Tideman. MEEK allows for up to 40 candidates and an unspecified number of voters, as long as the product of the number of candidates times (1 plus the average number of preferences specified by voters) is less than 20,000. Free, Open source, in Pascal , © 1987 (updated 2000) A more recent version may be available from the authors. (Note: The link above is to the web archive because it is no longer available at the British Computer Society web site.) PolyVote tallies the same voting rules as PoliticalSim but without menus for research, demonstrations or games. It uses uncommon terms and options. Macintosh and Windows, Free, Open source in Excel 4 through Excel 2001, © 1991-2000. Voting Systems Toolbox is "intended to make implementations of voting systems freely available in Java." Roy Ward has programmed Meek's version of STV: version 0.4, Summer 2002. Hans Aberg offered Election 1.1.2, to tally Voting By Priorities, his blend of STV with the greatest remainder list-PR rule. It uses a new quota and can use Meek's vote transfer method for STV. Macintosh (could be compiled for Windows), free, Open source in C++, © 1997. New Zealand wrote a program to tally Meek's STV for cities and towns that vote to use it. It is not available to other organizations. It is now proprietary code, in Visual Basic 6.0, and is © 2002. [ Dr Mark Porter BSc FRCA STV for Macintosh in C 1996.] [ An MIT site had an online STV ballot and tally limited to 5 candidates.] [ VoteBot pages and software have disappeared.] Multi-Winner Voting OnlineAny online or mail-in voting system is susceptible to vote buying, and possible pressure on voters from their family, friends and bosses. Online voting has added the risk of hacking attacks. Online voting is inherently less secure than online banking and commerce – whose managers often can detect and mitigate small frauds and big cyberattacks because each customer’s account has a unique ID. A company can review the record of a customer’s data as it went through each step in a transaction. But most voting depends on anonymous, secret ballots. So each ballot must not have an identifiable, tracable voter, which would expose how Bob voted and how each vote on his ballot moved through the tally process. In contrast, paper ballots have high degrees of both anonymity and security if they are guarded properly. Most jurisdictions scan their paper ballots so computers can tally the data – and so other computers can recheck those tallies. Brad Beattie offers Modern Ballots, with online preference ballots that allow tied ranks and write-in candidates. It tallies Schulze STV, Schulze PR or “Non-proportional ordering”. His tally software includes Schulze's Condorcet completion method. It is written in Python, Free, Open source, © 2009-2012. Civinomics has prototype Ranked-Choice Ballots and tallies online. “...soon, anyone will be able to set up ranked choice voting polls or ballots on Civinomics.” Retrieved September, 2015. Dave Robinson offers DemoChoice with online preference ballots (with no ties allowed) and online tallies using OpenSTV. You can setup public or private polls for free. It works on web-enabled mobile devices and on facebook. It is written in Python, VBScript and PHP. Free, Open source, GNU © 2001-2012. Jeffrey O'Neill put OpenSTV online as OpaVote It can tally most versions of STV including ERS97 and Meek. It also tallies several Condorcet rules: IRV on Smith Set, Borda on Smith Set, and Schulze on Schwartz Set. $5 for individuals, $99 for non-profits with less than 30 employees, to $999 for companies and large non-profits. Simply Voting can host elections and tallies for several preferential counting methods. All are for profit using proprietary software. Craig Simon moved his ChoiceRanker website to facebook, so it requires users to share their “basic information” with the ballot system. Paul Lockett offers a Single Transferable Vote Counter with an online form for entering in 1 ballot at a time. Ties cannot be entered in this bubble form. Open source in JavaScript; GNU AGPL © 2009. Brian Lack designed Simply Voting to tally the Single Transferable Vote with Droop quota and fractional transfers. The online ballot allows no tied votes. It can also tally Condorcet Ranked Pairs and plurality rules. An election with 100 voters costs $200; one with 1000 voters costs $500. GroupDecision.com says they can provide transparent and secure elections services online. Proprietary code; free for up to 100 voters. Everyone Counts (E1C) offers online elections and surveys that handle ranked ballots. Proprietary code. “FairVote has partnered with E1C to run private sector elections.” Electionz.com Ltd, of New Zealand, offers an online STV demo This software elects the board of the Fonterra Co-operative Group Ltd, a US$6.8 billion company. You must request a login PIN in advance to run a demo. Demokracie 2.1 s.r.o. , of Prague offers its own kind of Cumulative Voting. It was originally intended to fill two seats by giving each voter a ballot allowing four votes, one of which may be a negative vote against a candidate. Multi-Winner Tools Not AvailableBrian Wichman wrote a program to tally Tideman's CPO-STV. In Pascal. T. Nicholas Tideman supervised Yingjia Ding and Xingming Tan at Virginia Tech in programming STV using the Newland- Britton quota. in Pascal for DOS, version 2.2, May 23, 1994. Tools for Funding ProjectsTwin Oaks Community has allocated one-time budgets for projects by Fair Share Voting. Software designed and coded by Dr. Robert Tupelo-Schneck tallies the ballots. Their current version is written in Java and the ballots are written in JavaScript. Ian Little, Adder Oaks, and others update it for each election. History: Each year for ten years, this 100-member cooperative community used FSV. They even used it to adjust their many ongoing budgets up and down. But that made the ballots too complicated for most voters to manage well. The community’s board set the final budgets, based on the tally results. Dr. Schneck wrote the first version in OCaml, then in Python. One version was based on the open source versions of OpenSTV. He and Robert Loring tested it with ballots and results from the Electoral Reform Society and other sources. You can download the code from Code.Google to run in Python on your own computer. You can get the Java code from the author. The Stanford Participatory Budgeting Platform is by the Stanford Crowdsourced Democracy Team at Stanford University. It includes the plain ranked choice voting used for PB in Dieppe, Canada. It may lack the cost-awareness essential to picking the best projects. Simulation and Tally: This simulation of fair-share spending lets users play with election data and see its results all on a "neighborhood map." The Excel file tallies 25 voters and 16 project proposals. Version 2.1, January 2009, current version 524K. This version tallies Movable Money Votes based on 'voting cards'. The workshop on movable votes uses cards as a physical analogy. It helps voters understand the logic and welcome a computer's help with a large tally. Older versions:
The page on project-funding software offers several Excel ballots and tally programs for selecting projects and setting their budgets. Tools for Setting Budgets of
Dr. Schneck's ballot is fun and easy. It lets a voter click or drag candidates onto his own list of favorites, then change their ranks by dragging them up or down his list.
|
Print. |
Accurate Democracy | ||||||
---|---|---|---|---|---|---|
Electoral Systems | Legislative Systems | |||||
Chair | Reps | Council | Policy | Projects | Budgets |
Software
Simulations Printouts Income To Do U.S. Reforms Future rules Voting Glossary Resources |
|