Systems

RankChoiceVoting.Borda — Type
Borda <: VotingSystem

A Borda count voting system object. The Borda count system assigns a score to each vote according to the following rule:

s = n - r + 1

where s is the score, n is the number of candidates and r is the rank. Effectively, the score reverse codes the rank votes.

source
RankChoiceVoting.compute_ranks — Method
compute_ranks(system::Borda, rankings::Ranks)

Ranks candidates using Borda count system.

Arguments

  • system: a Borda voting system object
  • rankings::Ranks: an object containing counts and unique rank orders
source
RankChoiceVoting.evaluate_winner — Method
evaluate_winner(system::Borda, rankings::Ranks)

Returns the id of the winning candiate in Borda count system.

Arguments

  • system: a Borda voting system object
  • rankings::Ranks: an object containing counts and unique rank orders
source
RankChoiceVoting.Bucklin — Type
Bucklin <: VotingSystem

A Bucklin voting system object.In the Bucklin voting system, points are added for each candidate in an iterative manner until the point value of a candidate exceeds 50% of the number of voters. In the first round, each candidate recieves a point for each first rank preference. If the candidate with the most points does not exceed 50%, the candidates recieve a point for each second rank vote, and so forth until a candidate exceeds the 50% point threshold.

source
RankChoiceVoting.compute_ranks — Method
compute_ranks(system::Bucklin, rankings::Ranks)

Ranks candidates using the Bucklin system.

Arguments

  • system: a Borda voting system object
  • rankings::Ranks: an object containing counts and unique rank orders
source
RankChoiceVoting.evaluate_winner — Method
evaluate_winner(system::Bucklin, rankings::Ranks)

Returns the id of the winning candiate using the Bucklin voting system.

Arguments

  • system: a Bucklin voting system object
source
RankChoiceVoting.InstantRunOff — Type
InstantRunOff <: VotingSystem

An instant runoff voting system object.An instant runoff voting system iteratively eliminates the candidate with the minimum first preferences until one canidate reaches 50% first preferences.

source
RankChoiceVoting.compute_ranks — Method
compute_ranks(system::InstantRunOff, rankings::Ranks)

Ranks candidates using the InstantRunOff system.

Arguments

  • system: an InstantRunOff voting system object
  • rankings::Ranks: an object containing counts and unique rank orders
source
RankChoiceVoting.evaluate_winner — Method
evaluate_winner(system::InstantRunOff, rankings::Ranks)

Returns the id of the winning candiate in an instant runoff election.

Arguments

  • system: an instant runoff system object
  • rankings::Ranks: an object containing counts and unique rank orders
source