terminus-community / plebiscite

MIT License
0 stars 1 forks source link

Pick a data structure to implement Condorcet voting system #2

Open iokasimov opened 3 years ago

iokasimov commented 3 years ago
6r1d commented 3 years ago

Hey, maybe this will be useful: https://www.debian.org/vote/

Debian uses the Condorcet method

Simplistically, plain Condorcet's method can be stated like so Consider all possible two-way races between candidates. The Condorcet winner, if there is one, is the one candidate who can beat each other candidate in a two-way race with that candidate.

The problem is that in complex elections, there may well be a circular relationship in which A beats B, B beats C, and C beats A. Most of the variations on Condorcet use various means of resolving the tie See Cloneproof Schwartz Sequential Dropping for details. Debian's variation is spelled out in the constitution, specifically, § A.6.

I've looked through Wikipedia article's examples, and there's a Python one which doesn't look unreadable.

iokasimov commented 3 years ago

I think the easiest way we can start with could be a pair-wise poll via Telegram's keyboard like Viktor Gridnevsky or Murat Kasimov: who do you prefer? so that we fill matrix of preferences. I think we can start like that.