Match Performance in Abhängigkeit der Spielstärke des Gegners


Eine in der Computerschach Szene viel diskutierte Frage lautet:

Ist bei einem engine-engine match zwischen zwei engines mit einem deutlichen Spielstärkeunterschied nicht die stärkere engine schon im Vornhinein benachteiligt?

Menschliche Spieler haben aus Angst vor dem Verlust des einen oder anderen Elo-Punktes oft eine Abneigung gegen deutlich schwächere Gegner zu spielen.


Um der Sache aus dem Grund zu gehen haben wir uns die Ergebnisse der CEGT 40/20 Liste etwas genauer angesehen, die Methode ist recht simpel:

Alle Gegner einer engine wurden in Klassen (Klassifizierung, classification) von annähernd gleicher Spielstärke zusammengefasst *1.

Jetzt wurde jede Spielstärkeklasse als ein einziger virtueller Gegner betrachtet und die Elo-Leistung unserer engine für diese Klasse berechnet. Wir bekommen also für jede Elo Klasse einen Elowert. Hier zum Beispiel die Werte für Fritz 9:

Klassenspannweite
in Elo
Anzahl d. Spiel Ø Spielstärke
der Klasse
Elowertung /
Preformance
2327-2640 813 2604 2787
2643-2674 800 2661 2812
2675-2719 830 2697 2776
2724-2771 843 2753 2776
2771-2819 923 2798 2776
2822-3054 1002 2913 2781

Die Tabelle sagt aus:

Aus den Wertepaaren der Durchschnittlichen Spielstärke und der Klassen-Performance lässt sich nun ein Kurve zeichnen:

Die Kurve veranschaulicht nun, wie stark hat Fritz 9 gegen Gegner mit unterschiedlicher Spielstärke abgeschnitten hat ( Elo-Leistung auf der Y-Achse, Spielstärke der Gegner auf der X-Achse).

Aus derartigen Werten lässt sich nun ein Trend (Regression) berechnen (in unserem Fall linear) und als Gerade darstellen. Aus dem Diagramm ist nun leicht erkennbar, Fritz Leistung ist über den gesamten Spielstärkebereich relativ konstant

Wer sich an seine Schulzeit erinnert, dem ist sicher noch die „Steigung einer Geraden“ ein Begriff. Die Steigung der Fritzchen Regressionsgeraden beträgt -0,055. Multipliziert man das mit 100 so beträgt die Steigung -5,55 Elo / 100 elo. Das sagt nichts anderes, als dass Fritz 9 gegen einen um 100 Elo stärkeren Gegner durchschnittlich 5,5 Elo schlechter abschneidet als gegen eine gleichstarken.

Fritz 9 dürfte damit sich etwas anders verhalten wie es sich die meisten Computer Schach Freunde vorstellen.

Auswertung aller engines:

Es kamen nur engine in die Auswertung die mehr als 3000 40/20-Spiele auf ihrem Konto haben und die Klassen wurden so gewählt, dass eine Klasse aus mindestens 800 Partien besteht. Insgesamt kamen so 24 engine zur Auswertung (Naturgemäß sind es nicht die top aktuellen engines, denn bis 3000 Partien zusammen gespielt sind dauert es doch etwa, auch beim CEGT).

In der Tabelle sind alle ausgewerteten engines zusammen gestellt. Der engine-Name ist ein Link zu einer Grafik die das Ergebnis (Regressionsgerade) zeigt.

Erwartungsgemäß verhalten sich die engines nicht einheitlich. Es gibt engines die gegen starke Gegner relative gut abschneiden (stark positive Steigung der R.G.) aber auch welche die gegen schwächere besser punkten und dann die engines denen es relativ egal ist ob ein Gegner nun stärker oder schwächer ist, die immer ihre Leistung bestätigen

Jedoch der Mittelwert aller Steigungen liegt bei ca. -6 Elo / 100 Elo. Das bedeute also, dass die meisten engines gegen schwächere engines besser punkten als gegen stärkere.

Angesichts dieser Ergebnisse bleibt noch viel Raum für Diskussion und Spekulation.

 

Fragen und Anregungen hierzu, bitte im CEGT Forum.

 

Dez 2007