Go back

Implementing Quadratic Voting

An investigation into how to make Quadratic Voting work in practice.

There is a lot of interesting material available online explaining the theoretical aspects of Quadratic Voting, but I was missing some practical steps on how to go about implementing it. In order to advance the field of political and economic institutional design it is important to implement easy experiments, to measure the results and to educate people about the benefits and risks. This article hopes to fill that gap by explaining in which situations and using which software one may go about using Quadratic Voting today.

Disclaimer: I am not an expert in voting systems. Yet. If you find anything which may be incorrect or incomplete, I welcome your feedback!

What is Quadratic Voting?

Quadratic Voting is a voting mechanism which has the potential to more accurately reflect people's preferences in their votes. It is an improvement not only over "1 person 1 vote" (1p1v), but also over Ranked Voting. Whereas Ranked Voting allows participants to indicate their preferences in a more granular fashion compared to 1p1v, Quadratic Voting allows them to indicate a relative importance between options. On top of this, in Quadratic Voting the n'th vote for a single option will cost the participant n votes, voting multiple times for a single option therefore becomes quadratically more expensive. For an intuitive explanation of why this is useful, I recommend this excellent Primer written by Vitalik Buterin.

Voting systems in the wild

Before looking at how one might successfully implement Quadratic Voting, let's have a look at how easy it is to deploy normal voting procedures nowadays.

Some of the key theoretical requirements of secure voting systems is that they should offer secrecy and that they should be easy to audit (see 1 and 2). Apart from the theoretical requirements, voting systems should also be easy to use and secure (and therefore open source).

Fully paper-based systems work great on all fronts, they've been used successfully for over thousands of years. Partially digital processes which still relay on paper have also been implemented, sometimes with success and sometimes with discovered vulnerabilities.

Many IT security experts believe that it will take some time still before fully digital voting systems can be deployed in a secure way. One ambitious system with some adoption is, Helios. Unfortunately it is based on the deprecated Python 2 which discards it as an option to use for the near future. Building and maintaining cryptographic software is a costly endeavour and requires substantial adoption or support. As of today, only a select few regions implement widespread digital voting, most notably Estonia. They even open sourced their system, although I'm not sure if this reveals the full system. Various vulnerabilities have been found over the years, and time will tell whether this system can be securely deployed in other places.

Fortunately, we don't always need to adhere to the full theoretical requirements of a perfect voting system. There are actually many votes which are held in public, think of shareholder meetings or parliamentary votes! In these situations, fully digital solutions may be relatively easy to implement (or at least harder to screw up in a disastrous way). Open source maintained polling and survey projects such as LimeSurvey are out there, and can be adjusted to match the requirements of alternative voting systems.

How can Quadratic Voting be implemented?

Fully Paper based systems

Although paper-based systems work great for normal voting, Quadratic Voting poses some unique usability problems. Most importantly, in paper based systems it is difficult to convey the increasing cost of votes and it is impossible to give the user dynamic feedback on their decisions.

Semi Paper based systems

Using a digital aid, the usability issues of paper-based voting can be resolved. For example, image recognition software can be used to visualise decisions, or votes which are cast on a digital screen can be printed, verified by the voter, and submitted.

Fully digital systems

Athough the progress of Estonia is promising, fully digital systems where the privacy of voters is important still poses a risk. Therefore current experiments with alternative voting systems should rather be tested in places where voting is done publicly. One such example is the Democratic Caucus of the Colorado House of Representatives which recently ran an experiment in Quadratic Voting using a digital system. In the current setup of that system, users do have to go through an arduous registration procedure. If decentralisation is not of prime concern during the vote, one can easily make an adaptation of existing surveying software in order to add the right authentication and form logic. Do reach out to me if you're interested to work on this. Quadratic Voting can then soon be easily deployed by anyone!