Tag Archives: election

Wahlen mit alphabetischer Reihenfolge

Es gibt in Deutschland immer noch viele Kammer-, Sozial- und Vorstandswahlen, die aus angeblichen Fairnessgründen die Kandidatenliste alphabetisch reihen. Dabei wissen die meisten Organisationen nicht, wie sie sich damit vor allem selbst, aber auch den Kandidaten schaden.

Wahlen von Kandidatenlisten in alphabetischer Reihenfolge sind nämlich vor allem dann ein Problem, wenn A. die Wähler die Kandidaten nicht kennen, es B. einen großen Überhang von Kandidaten im Verhältnis zu den Gewählten gibt, C. die Reihung als Empfehlung missverstanden wird und D. die Wahlergebnisse relativ nahe beieinander liegen.

In der englischen Literatur ist das alles als “Ballot Order Effect” bekannt und kann auf vielen Blogs nachgelesen werden:
https://daily.jstor.org/ballot-position/
https://www.pulj.org/the-roundtable/avoiding-election-bias
https://www.bbc.com/news/blogs-magazine-monitor-27426319
https://www.cbc.ca/news/politics/grenier-ballot-order-1.4608059
http://www.centerforpolitics.org/newslet_909cb.html

Der Effekt ist enorm, mit einem Buchstaben im vorderen Drittel liegt die Wahlchance bei ca 65%, im mittleren Drittel bei 25%, im letzten Drittel bei 10%. Am Ende der Liste zu stehen ist besonders schlecht, auch bekannt als “voter fatigue” (das ändert sich allerdings wenn die Liste sehr lange ist, dann wird man wieder etwas häufiger gewählt).

Das folgende Beispiel illustriert an einem praktischen Beispiel, wie eine Liste von 20 Kandidaten am besten unter den Wählern verteilt wird, um den “Ballot Order Effect” zu vermeiden.

l <- LETTERS[1:20]
l
[1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T"

# Zuerst wird die alphabetische Reihenfolge aufgelöst
l <- sample(l)
l
[1] "Q" "C" "K" "F" "L" "M" "J" "T" "B" "I" "G" "H" "O" "P" "N" "S" "R" "A" "E" "D"

# Dann wird der jeweils letzte Namen nach vorne gerückt
r &lt;- NULL
for (v in l[20:1]) {
  x <- c( l[grep(v,l):20], l[1:(grep(v,l)-1)] )[1:20]
  r <- rbind (r,x)
}
r

# Jede Zeile gibt nun einen von 20 Wahlvorschlägen aus
  [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14] [,15] [,16] [,17] [,18] [,19] [,20]
x "D"  "Q"  "C"  "K"  "F"  "L"  "M"  "J"  "T"  "B"   "I"   "G"   "H"   "O"   "P"   "N"   "S"   "R"   "A"   "E"  
x "E"  "D"  "Q"  "C"  "K"  "F"  "L"  "M"  "J"  "T"   "B"   "I"   "G"   "H"   "O"   "P"   "N"   "S"   "R"   "A"  
x "A"  "E"  "D"  "Q"  "C"  "K"  "F"  "L"  "M"  "J"   "T"   "B"   "I"   "G"   "H"   "O"   "P"   "N"   "S"   "R"  
x "R"  "A"  "E"  "D"  "Q"  "C"  "K"  "F"  "L"  "M"   "J"   "T"   "B"   "I"   "G"   "H"   "O"   "P"   "N"   "S"  
x "S"  "R"  "A"  "E"  "D"  "Q"  "C"  "K"  "F"  "L"   "M"   "J"   "T"   "B"   "I"   "G"   "H"   "O"   "P"   "N"  
x "N"  "S"  "R"  "A"  "E"  "D"  "Q"  "C"  "K"  "F"   "L"   "M"   "J"   "T"   "B"   "I"   "G"   "H"   "O"   "P"  
x "P"  "N"  "S"  "R"  "A"  "E"  "D"  "Q"  "C"  "K"   "F"   "L"   "M"   "J"   "T"   "B"   "I"   "G"   "H"   "O"  
x "O"  "P"  "N"  "S"  "R"  "A"  "E"  "D"  "Q"  "C"   "K"   "F"   "L"   "M"   "J"   "T"   "B"   "I"   "G"   "H"  
x "H"  "O"  "P"  "N"  "S"  "R"  "A"  "E"  "D"  "Q"   "C"   "K"   "F"   "L"   "M"   "J"   "T"   "B"   "I"   "G"  
x "G"  "H"  "O"  "P"  "N"  "S"  "R"  "A"  "E"  "D"   "Q"   "C"   "K"   "F"   "L"   "M"   "J"   "T"   "B"   "I"  
x "I"  "G"  "H"  "O"  "P"  "N"  "S"  "R"  "A"  "E"   "D"   "Q"   "C"   "K"   "F"   "L"   "M"   "J"   "T"   "B"  
x "B"  "I"  "G"  "H"  "O"  "P"  "N"  "S"  "R"  "A"   "E"   "D"   "Q"   "C"   "K"   "F"   "L"   "M"   "J"   "T"  
x "T"  "B"  "I"  "G"  "H"  "O"  "P"  "N"  "S"  "R"   "A"   "E"   "D"   "Q"   "C"   "K"   "F"   "L"   "M"   "J"  
x "J"  "T"  "B"  "I"  "G"  "H"  "O"  "P"  "N"  "S"   "R"   "A"   "E"   "D"   "Q"   "C"   "K"   "F"   "L"   "M"  
x "M"  "J"  "T"  "B"  "I"  "G"  "H"  "O"  "P"  "N"   "S"   "R"   "A"   "E"   "D"   "Q"   "C"   "K"   "F"   "L"  
x "L"  "M"  "J"  "T"  "B"  "I"  "G"  "H"  "O"  "P"   "N"   "S"   "R"   "A"   "E"   "D"   "Q"   "C"   "K"   "F"  
x "F"  "L"  "M"  "J"  "T"  "B"  "I"  "G"  "H"  "O"   "P"   "N"   "S"   "R"   "A"   "E"   "D"   "Q"   "C"   "K"  
x "K"  "F"  "L"  "M"  "J"  "T"  "B"  "I"  "G"  "H"   "O"   "P"   "N"   "S"   "R"   "A"   "E"   "D"   "Q"   "C"  
x "C"  "K"  "F"  "L"  "M"  "J"  "T"  "B"  "I"  "G"   "H"   "O"   "P"   "N"   "S"   "R"   "A"   "E"   "D"   "Q"  
x "Q"  "C"  "K"  "F"  "L"  "M"  "J"  "T"  "B"  "I"   "G"   "H"   "O"   "P"   "N"   "S"   "R"   "A"   "E"   "D"    
# Diese 20 Wahlvorschläge werden nun in gleicher Stückzahl ausgedruckt und verteilt

# Bei online Wahlen lässt man einen Counter mitlaufen oder noch einfacher, man wirft
# alle 3 Sekunden den nächsten Vorschlag aus
r[ floor(as.numeric(format(Sys.time(), "%S"))/3), ]
[1] "J" "T" "B" "I" "G" "H" "O" "P" "N" "S" "R" "A" "E" "D" "Q" "C" "K" "F" "L" "M"

Es sollte also nicht all zu schwer sein, faire Wahlen durchzuführen.