Details zur Vorrunde

Gespielt hat innerhalb der Gruppen A, B, C und D jeder gegen jeden einmal als erster und einmal als zweiter Spieler, und zwar auf den Feldern Nummer 3, 4, 7, 8, 9, 10 (alle Felder befinden sich hier). Die Parameter waren (Gesamtlimit, Einzellimit, Rundenlimit):
FELD10:180000:5000:100
FELD8:180000:5000:100
FELD4:180000:2000:150
FELD3:240000:10000:150
FELD9:240000:10000:150

FELD7:240000:10000:200
Als uns bekannt wurde, daß eine Gruppe schon von der Idee von Feld Nummer 7 wußte, bewerteten wir die 48 Spiele auf diesem Feld nicht. Es bleiben 30 Partien pro Spieler, also insgesamt 240 Partien.

Wir haben hier trotzdem alle Partien archiviert und auch die Auswertung vorgenommen. spiele.log bezieht sich auf alle Felder, Xspiele.log ist die um das Feld 7 verminderte Datei (grep -v feld7 spiele.log >Xspiele.log). (Zum Aufbau dieser Datei siehe hier.) Die Ergebnisse sind (zuerst die offizielle Auswertung ohne Feld 7, dann noch die nicht verwendete mit Feld 7):

awk '{win[$3]++} END{for(i in win)print win[i]" "i}' <Xspiele.log |sort -n
2 Codemasters
2 PPGerch
6 Augustinerburschen
6 PRO-gramming5
7 dell4never
9 MensaWG
9 TetaSenoPecho
9 pp20
11 23
13 hanabit
14 IceCode
17 Wurscht
20 Sosuwayi
21 Team2000
23 epsilon
24 OlympicCoders
47 unentschieden


awk '{win[$3]++;n[$1]++;n[$2]++} END{delete win["unentschieden"];for(i in win)print win[i]/n[i]" "i}' <Xspiele.log |sort -n
0.0666667 Codemasters
0.0666667 PPGerch
0.2 Augustinerburschen
0.2 PRO-gramming5
0.233333 dell4never
0.3 MensaWG
0.3 TetaSenoPecho
0.3 pp20
0.366667 23
0.433333 hanabit
0.466667 IceCode
0.566667 Wurscht
0.666667 Sosuwayi
0.7 Team2000
0.766667 epsilon
0.8 OlympicCoders


awk '$1==$3{f[$4]++} $2==$3{s[$4]++} $3=="unentschieden"{u[$4]++} {x[$4]=1} END{for(i in x)printf "%3i %3i %3i %s\n",f[i],s[i],u[i],i}' <Xspiele.log
 21  19   8 feld8
 19  16  13 feld9
 22  19   7 feld10
 19  19  10 feld3
 22  17   9 feld4


awk '/unentschieden/{n[$1]++;n[$2]++} END{for(i in n)print n[i]" "i}' <Xspiele.log |sort -n
2 Augustinerburschen
2 Codemasters
2 Team2000
2 TetaSenoPecho
2 hanabit
3 OlympicCoders
3 pp20
4 23
4 PRO-gramming5
5 Sosuwayi
8 IceCode
9 Wurscht
12 MensaWG
12 dell4never
24 PPGerch


awk '/true/{t[$1]++;t[$2]++} /false/{f[$1]++;f[$2]++} END{for(i in t)print t[i]" "f[i]" "i}' < Xspiele.log | sort -n
2 28 Team2000
5 25 TetaSenoPecho
5 25 epsilon
7 23 OlympicCoders
8 22 Augustinerburschen
8 22 hanabit
8 22 pp20
10 20 Codemasters
10 20 IceCode
12 18 23
12 18 Sosuwayi
15 15 PRO-gramming5
18 12 MensaWG
18 12 dell4never
26 4 PPGerch
28 2 Wurscht

Hier nun die nicht verwerteten Ergebnisse:
awk '{win[$3]++} END{for(i in win)print win[i]" "i}' <spiele.log |sort -n
2 Codemasters
2 PPGerch
6 PRO-gramming5
7 Augustinerburschen
7 dell4never
9 pp20
11 23
11 TetaSenoPecho
12 MensaWG
16 hanabit
17 IceCode
21 Sosuwayi
22 Wurscht
26 Team2000
27 epsilon
28 OlympicCoders
64 unentschieden


awk '{win[$3]++;n[$1]++;n[$2]++} END{delete win["unentschieden"];for(i in win)print win[i]/n[i]" "i}' <spiele.log |sort -n
0.0555556 Codemasters
0.0555556 PPGerch
0.166667 PRO-gramming5
0.194444 Augustinerburschen
0.194444 dell4never
0.25 pp20
0.305556 23
0.305556 TetaSenoPecho
0.333333 MensaWG
0.444444 hanabit
0.472222 IceCode
0.583333 Sosuwayi
0.611111 Wurscht
0.722222 Team2000
0.75 epsilon
0.777778 OlympicCoders


awk '$1==$3{f[$4]++} $2==$3{s[$4]++} $3=="unentschieden"{u[$4]++} {x[$4]=1} END{for(i in x)printf "%3i %3i %3i %s\n",f[i],s[i],u[i],i}' <spiele.log
 21  19   8 feld8
 19  16  13 feld9
 22  19   7 feld10
 19  19  10 feld3
 22  17   9 feld4
 12  19  17 feld7


awk '/unentschieden/{n[$1]++;n[$2]++} END{for(i in n)print n[i]" "i}' <spiele.log |sort -n
2 hanabit
3 Team2000
4 Augustinerburschen
4 pp20
5 OlympicCoders
5 PRO-gramming5
5 TetaSenoPecho
6 Codemasters
8 23
8 Sosuwayi
10 IceCode
10 Wurscht
14 MensaWG
14 dell4never
30 PPGerch


awk '/true/{t[$1]++;t[$2]++} /false/{f[$1]++;f[$2]++} END{for(i in t)print t[i]" "f[i]" "i}' < spiele.log | sort -n
3 33 Team2000
6 30 epsilon
8 28 TetaSenoPecho
9 27 hanabit
10 26 pp20
11 25 OlympicCoders
12 24 Augustinerburschen
13 23 IceCode
15 21 Codemasters
17 19 PRO-gramming5
17 19 Sosuwayi
18 18 23
20 16 dell4never
21 15 MensaWG
32 4 PPGerch
34 2 Wurscht

Das, worauf es ankommt, sind die amtlichen Punktzahlen (also ohne Feld 7):

awk '/unentschieden/{p[$1]+=1;p[$2]+=1} !/unentschieden/{p[$3]+=3} END{for(i in p)print p[i]" "i}' Xspiele.log |sort -n
8 Codemasters
20 Augustinerburschen
22 PRO-gramming5
29 TetaSenoPecho
30 PPGerch
30 pp20
33 dell4never
37 23
39 MensaWG
41 hanabit
50 IceCode
60 Wurscht
65 Sosuwayi
65 Team2000
69 epsilon
75 OlympicCoders
Wer sich jetzt die Frage stellt, ob Feld 7 überhaupt einen Einfluß auf die Frage hatte, wer in das Viertelfinale kommt, der sei beruhigt: das spielte keine Rolle.

Wer alles nachprüfen will, erhält das Verzeichnis mit allen Verläufen, in dem sich bereits spiele.log und Xspiele.log befinden. Es gibt auch die mit bzip2 komprimierte archivierte Version (ca. 200kB; Entpacken unter Unix mit tar -xjf vorrunde.tbz.)


Ralph Matthes
Last modified: Thu Apr 7 22:43:21 CEST 2005