This article is part of the Politics series 
Electoral methods 

Singlewinner 

Multiplewinner 

Random selection 
Social choice theory 
Politics portal 
The Schulze method is a voting system developed in 1997 by Markus Schulze that selects a single winner using votes that express preferences. The method can also be used to create a sorted list of winners. The Schulze method is also known as Schwartz Sequential Dropping (SSD), Cloneproof Schwartz Sequential Dropping (CSSD), Beatpath Method, Beatpath Winner, Path Voting, and Path Winner.
If there is a candidate who is preferred pairwise over the other candidates, when compared in turn with each of the others, the Schulze method guarantees that candidate will win. Because of this property, the Schulze method is (by definition) a Condorcet method.
Currently, the Schulze method is the most widespread Condorcet method (list). The Schulze method is used by several organizations including Wikimedia, Debian, Gentoo, and Software in the Public Interest.
Many different heuristics for computing the Schulze method have been proposed. The most important heuristics are the path heuristic and the Schwartz set heuristic that are described below. All heuristics find the same winner and only differ in the details of the computational procedure to determine this winner.
Contents 
Under the Schulze method (as well as under other preferential singlewinner election methods), each ballot contains a complete list of all candidates and the individual voter ranks this list in order of preference. Under a common ballot layout (as shown in the image to the right), ascending numbers are used, whereby the voter places a '1' beside the most preferred candidate, a '2' beside the secondmost preferred, and so forth.
Each voter may ...
The basic idea of the path heuristic for the Schulze method is the concept of indirect defeats, the socalled paths.
If candidate C(1) pairwise beats candidate C(2), candidate C(2) pairwise beats candidate C(3), candidate C(3) pairwise beats candidate C(4), ..., and C(n1) pairwise beats candidate C(n), then we say that there is a path from candidate C(1) to candidate C(n). The strength of the path C(1),...,C(n) is the weakest pairwise defeat in this sequence.
In other words:
The strength of the strongest path from candidate A to candidate B is the maximum of the strengths of all paths from candidate A to candidate B.
Candidate A pairwise beats candidate B indirectly if either
Indirect defeats are transitive. That means: If candidate A pairwise beats candidate B indirectly and candidate B pairwise beats candidate C indirectly, then also candidate A pairwise beats candidate C indirectly. Therefore, no tiebreaker is needed for indirect defeats.
Let d[V,W] be the number of voters who strictly prefer candidate V to candidate W.
A path from candidate X to candidate Y of strength p is a sequence of candidates C(1),...,C(n) with the following properties:
p[A,B], the strength of the strongest path from candidate A to candidate B, is the maximum value such that there is a path from candidate A to candidate B of that strength. If there is no path from candidate A to candidate B at all, then p[A,B] = 0.
Candidate D is better than candidate E if and only if p[D,E] > p[E,D].
Candidate D is a potential winner if and only if p[D,E] ≥ p[E,D] for every other candidate E.
It is possible to prove that p[X,Y] > p[Y,X] and p[Y,Z] > p[Z,Y] together imply p[X,Z] > p[Z,X].^{[1]}^{:§2.3} Therefore, it is guaranteed (1) that the above definition of "better" really defines a transitive relation and (2) that there is always at least one candidate D with p[D,E] ≥ p[E,D] for every other candidate E.
Example (45 voters; 5 candidates):
d[*,A]  d[*,B]  d[*,C]  d[*,D]  d[*,E]  

d[A,*]  20  26  30  22  
d[B,*]  25  16  33  18  
d[C,*]  19  29  17  24  
d[D,*]  15  12  28  14  
d[E,*]  23  27  21  31 
The graph of pairwise defeats looks as follows:
The strength of a path is the strength of its weakest link. For each pair of candidates X and Y, the following table lists the strongest path from candidate X to candidate Y. The critical defeats of the strongest paths are underlined.
... to A  ... to B  ... to C  ... to D  ... to E  

from A ...  A(30)D(28)C(29)B  A(30)D(28)C  A(30)D  A(30)D(28)C(24)E  from A ...  
from B ...  B(25)A  B(33)D(28)C  B(33)D  B(33)D(28)C(24)E  from B ...  
from C ...  C(29)B(25)A  C(29)B  C(29)B(33)D  C(24)E  from C ...  
from D ...  D(28)C(29)B(25)A  D(28)C(29)B  D(28)C  D(28)C(24)E  from D ...  
from E ...  E(31)D(28)C(29)B(25)A  E(31)D(28)C(29)B  E(31)D(28)C  E(31)D  from E ...  
... to A  ... to B  ... to C  ... to D  ... to E 
p[*,A]  p[*,B]  p[*,C]  p[*,D]  p[*,E]  

p[A,*]  28  28  30  24  
p[B,*]  25  28  33  24  
p[C,*]  25  29  29  24  
p[D,*]  25  28  28  24  
p[E,*]  25  28  28  31 
Candidate E is a potential winner, because p[E,X] ≥ p[X,E] for every other candidate X.
As 25 = p[E,A] > p[A,E] = 24, candidate E is better than candidate A.
As 28 = p[E,B] > p[B,E] = 24, candidate E is better than candidate B.
As 28 = p[E,C] > p[C,E] = 24, candidate E is better than candidate C.
As 31 = p[E,D] > p[D,E] = 24, candidate E is better than candidate D.
As 28 = p[A,B] > p[B,A] = 25, candidate A is better than candidate B.
As 28 = p[A,C] > p[C,A] = 25, candidate A is better than candidate C.
As 30 = p[A,D] > p[D,A] = 25, candidate A is better than candidate D.
As 29 = p[C,B] > p[B,C] = 28, candidate C is better than candidate B.
As 29 = p[C,D] > p[D,C] = 28, candidate C is better than candidate D.
As 33 = p[B,D] > p[D,B] = 28, candidate B is better than candidate D.
Therefore, the Schulze ranking is E > A > C > B > D.
Suppose C is the number of candidates. Then the strengths of the strongest paths can be calculated with the Floyd–Warshall algorithm.^{[1]}^{:§2.4} The following Pascallike pseudocode illustrates the determination of such a path.
for i : = 1 to C
begin
for j : = 1 to C
begin
if ( i ≠ j ) then
begin
if ( d[i,j] > d[j,i] ) then
begin
p[i,j] : = d[i,j]
end
else
begin
p[i,j] : = 0
end
end
end
end
for i : = 1 to C
begin
for j : = 1 to C
begin
if ( i ≠ j ) then
begin
for k : = 1 to C
begin
if ( i ≠ k ) then
begin
if ( j ≠ k ) then
begin
p[j,k] : = max ( p[j,k], min ( p[j,i], p[i,k] ) )
end
end
end
end
end
end
The Schwartz set heuristic for the Schulze method is an iterative heuristic.
At each stage, we proceed as follows:
The procedure ends when all links have been dropped. The winners are the undropped candidates.
Example (30 voters; 4 candidates):
d[*,A]  d[*,B]  d[*,C]  d[*,D]  

d[A,*]  16  17  12  
d[B,*]  14  19  9  
d[C,*]  13  11  20  
d[D,*]  18  21  10 
The graph of pairwise defeats looks as follows:
We get: "A → B", "A → C", "A → D", "B → A", "B → C", "B → D", "C → A", "C → B", "C → D", "D → A", "D → B", and "D → C".
As there is no pair of candidates V and W with "V → W" and "not W → V", no candidate can be dropped.
The weakest undropped link (A:B=16:14) is dropped.
Thus, we get:
We get: "A → B", "A → C", "A → D", "B → A", "B → C", "B → D", "C → A", "C → B", "C → D", "D → A", "D → B", and "D → C".
As there is no pair of candidates V and W with "V → W" and "not W → V", no candidate can be dropped.
The weakest undropped link (A:C=17:13) is dropped.
Thus, we get:
We get: "not A → B", "not A → C", "not A → D", "B → A", "B → C", "B → D", "C → A", "C → B", "C → D", "D → A", "D → B", and "D → C".
As "B → A" and "not A → B", candidate A is dropped and all links, that start or end in candidate A, are dropped.
Thus, we get:
The weakest undropped link (B:C=19:11) is dropped.
Thus, we get:
We get: "not B → C", "not B → D", "C → B", "C → D", "D → B", and "not D → C".
As "C → B" and "not B → C", candidate B is dropped and all links, that start or end in candidate B, are dropped; as "C → D" and "not D → C", candidate D is dropped and all links, that start or end in candidate D, are dropped.
As candidate C is the unique undropped candidate, candidate C is the unique winner.
The Schulze method satisfies the following criteria:
If winning votes is used as the definition of defeat strength, it also satisfies:
If margins as defeat strength is used, it also satisfies:
The Schulze method violates all criteria that are incompatible with the Condorcet criterion, such as:
The Schulze method fails independence of irrelevant alternatives. However, the method adheres to a less strict property that is sometimes called independence of Smithdominated alternatives. It says that if one candidate (X) wins an election, and a new alternative (Y) is added, X will win the election if Y is not in the Smith set. Local IIA implies the Condorcet criterion.
The following table compares the Schulze method with other preferential singlewinner election methods:
Monotonic  Condorcet  Condorcet loser  Majority  Majority loser  Mutual majority  Smith  ISDA  Clone independence  Reversal symmetry  Polynomial time  Participation, Consistency  
Schulze  Yes  Yes  Yes  Yes  Yes  Yes  Yes  Yes  Yes  Yes  Yes  No 

Ranked Pairs  Yes  Yes  Yes  Yes  Yes  Yes  Yes  Yes  Yes  Yes  Yes  No 
KemenyYoung  Yes  Yes  Yes  Yes  Yes  Yes  Yes  Yes  No  Yes  No  No 
MiniMax  Yes  Yes  No  Yes  No  No  No  No  No  No  Yes  No 
Nanson  No  Yes  Yes  Yes  Yes  Yes  Yes  No  No  Yes  Yes  No 
Baldwin  No  Yes  Yes  Yes  Yes  Yes  Yes  No  No  No  Yes  No 
Instantrunoff voting  No  No  Yes  Yes  Yes  Yes  No  No  Yes  No  Yes  No 
Coombs  No  No  Yes  Yes  Yes  Yes  No  No  No  No  Yes  No 
Contingent voting  No  No  Yes  Yes  Yes  No  No  No  No  No  Yes  No 
Sri Lankan contingent voting  No  No  No  Yes  No  No  No  No  No  No  Yes  No 
Supplementary voting  No  No  No  Yes  No  No  No  No  No  No  Yes  No 
Borda  Yes  No  Yes  No  Yes  No  No  No  No  Yes  Yes  Yes 
Bucklin  Yes  No  No  Yes  Yes  Yes  No  No  No  No  Yes  No 
Plurality  Yes  No  No  Yes  No  No  No  No  No  No  Yes  Yes 
Antiplurality  Yes  No  No  No  Yes  No  No  No  No  No  Yes  Yes 
This is the main difference between the Schulze method and the Ranked Pairs method:
The Schulze method was developed by Markus Schulze in 1997. The first times that the Schulze method was discussed in a public mailing list were in 1998 ^{[2]} and in 2000 ^{[3]}. In the following years, the Schulze method has been adopted e.g. by Software in the Public Interest (2003) ^{[4]}, Debian (2003) ^{[5]}, Gentoo (2005), TopCoder (2005), and the French Wikipedia (2005). The first books on the Schulze method were written by Tideman (2006) and by Stahl and Johnson (2006). In the then following years, the Schulze method has been adopted e.g. by Wikimedia (2008), KDE (2008), and the Pirate Party of Sweden (2009).
The Schulze method is not currently used in parliamentary elections. However, it has been used for parliamentary primaries in the Swedish Pirate Party. It is also starting to receive support in other public organizations. Organizations which currently use the Schulze method are:
