Hundert Schach-Endspiele für Computer
.
Die letzte Partie-Phase auf dem Prüfstand
Walter Eigenmann
.
In unserem (Computer)Schach-Zeitalter der riesigen, teils 15- bis 25-zügigen Eröffnungs-Bibliotheken bzw. -Daten-Banken, vor allem aber der mittlerweile für Menschen kaum mehr nachvollziehbaren, extremen taktischen Schlagkraft aller Programme im Mittelspiel, welche die Unterschiede zwischen den Top-Engines in Matches und Turnieren quasi verwischt, kommt (neben dem positionellen Spiel-«Verständnis») v.a. einer Komponente der Performance eine ständig wachsende Bedeutung zu: dem Endspiel.
Ausgehend von der Diskrepanz zwischen dieser Wichtigkeit der letzten Partie-Phase im aktuellen «Engine-Betrieb» einerseits und dem Mangel an geeignetem modernem Test-Material anderseits habe ich eine umfangreiche Aufgaben-Suite zusammengestellt, welche als erster Indikator der Endspielstärke eines (neuen) Schachprogramms fungiert:
Diese Sammlung unter dem Namen E-E-T (= Eigenmann Endspiel Test) setzt sich aus exakt hundert, in den einschlägigen Datenbanken sowie in verschiedenster Literatur aus den vier Bereichen «Computerschach», «Fernschach», «Historische Turniere» und «Studien» recherchierten Endspiel-Positionen zusammen, welche einer Engine je 60 Sekunden lang zur Berechnung unterbreitet werden sollen, wobei schließlich die Anzahl richtiger Lösungen entscheidet.
Der E-E-T als einheitlich-kompakte Suite
…ist folgendermaßen charakterisiert:
1. Die Material-Verteilung des E-E-T orientiert sich einigermaßen an der Häufigkeit, wie sie sich zeigt in großen Partien-Sammlungen wie z.B. der bekannten «Mega-Database» oder v.a. der «COMP2007», womit die Affinität der Suite zum «realen Schachleben» angestrebt wurde. (Turm-Endspiele nehmen beispielsweise also besonders großen Raum ein).
2. Der E-E-T enthält bewusst zahlreiche Positionen aus dem jüngeren und jüngsten internationalen Engine-Engine-Testbetrieb, um schachlich eine weitgehende Nähe dieses Computer-Schach-Tests zu seinem Gegenstand zu gewährleisten. Darüber hinaus räumt die Suite dem eher taktischen Element im Endspiel zwangsläufig eine gewisse Priorität ein, da es (vorläufig noch?) sinnlos ist, Computerprogramme im Hinblick auf strategische Endspiele zu befragen. Der E-E-T honoriert also bis zu einem bestimmten Punkt besonders auch die «Rechenkraft» bzw. Suchtiefe eines Programms. Insgesamt werden aber doch im E-E-T genau wie in anderen guten Stellungstests jene Engines eher reüssieren, die sowohl gut rechnen als auch viel «wissen».
3. Ein beachtlicher Teil der E-E-T-Aufgaben sind sog. Studien. Diese Kompositionen präsentieren, wo sie auf technisch hohem Niveau daherkommen, die «Idee», den thematischen Kern eines Endspieles oft in besonders «reiner», unverschnörkelter Form, womit sie sehr geeignet sind für CS-Tests. Dabei wurde allerdings auf größtmögliche Realitätsnähe geachtet; bis auf wenige Ausnahmen hätten die fraglichen Stellungen problemlos auch in tatsächlich gespielten Computer- oder Menschen-Partien entstanden sein können.
4. In thematischer Hinsicht deckt der E-E-T bewusst ein breites Spektrum ab (ohne natürlich vollständig sein zu wollen): Von der «Ablenkung» bis zum «Zugzwang», vom «Abzug» über den «Entfernten Freibauern» und die «Festung» bis hin zur «Pattfalle» und zum «Zwischenzug» sind zahlreiche Endspiel-relevanten Themata integriert worden. Als CS-Suite geht der Test vereinzelt auch spezifisch Computerschachlichem wie etwa «Nullmove-» oder «Horizont»-Effekten nach. Mit ein paar wenigen Beispielen ist außerdem der Partie-Bereich Mittelspiel-Endspiel-Übergang vertreten; diesem (zumal im Engine-Schach) ebenfalls sehr wichtigen Sektor will sich der Autor aber in einem späteren Stellungstest spezifisch widmen.
5. Der (vorläufige, weil grundsätzlich Hardware-abhängige) Schwierigkeits-Grad des E-E-T ist übers Ganze betrachtet als mittelschwer einzustufen. Um für ein möglichst breites Feld an Schach-Programmen praktikabel zu sein, beinhaltet die Suite ebenso eine Reihe von ziemlich schwierigen wie ziemlich leichen Aufgaben. Keine Rolle spielten bei der Auswahl hingegen ästhetische oder gar historische Gesichtspunkte – wiewohl unter diesen 100 Momentaufnahmen selbstverständlich viele herrlichste Zeugnisse schach-künstlerischen Genies der letzten 200 Jahre zu entdecken sind. Dem «eindeutigen Testcharakter» einer Stellung wurde aber in jedem Falle oberste Priorität eingeräumt.
60 Sekunden pro Stellung
6. Um auch hinsichtlich der zu verwendenden Bedenkzeit im E-E-T den «Bezug zur Realität» herzustellen, wurden 60 Sekunden pro Stellung veranschlagt. Eine Minute pro Zug mag einem «normalen Vereinsspieler» (=Computerschach-Unkundigen?) nicht besonders lange vorkommen. Tatsächlich aber trifft man so viel durchschnittliche Endspiel-BZ im internationalen Programm-Testbetrieb kaum mehr an; der wahrscheinlich weitaus größte Teil aller CS-Matches und -Turniere wickelt sich in den Blitz- und Rapid-Zeitzonen von 1 bis 25 Minuten pro Partie/Engine ab. Insofern seien also diese 60 Sekunden ein Kompromiss zwischen der Turnierschach- (=2Stunden/Engine) und der Blitzschach- (=5Minuten/Engine) Praxis.
7. In der Computerschach-Szene sind spezielle Endspiel-Datenbanken gebräuchlich. Auch für den E-E-T sind diese «3-6-Steiner» nicht ganz irrelevant, aber der «Nalimov-Effekt» dürfte sich (sowohl positiv wie negativ) kaum bemerkbar machen. Wie man an der untenstehenden Schluss-Rangliste sieht, finden sich TB-unterstützende Programme sowohl im vorderen als auch im hinteren Viertel des Ranking-Feldes (wobei übrigens jede Engine mit allen ihr technisch möglichen 3-5- inkl. Shredder-Bases getestet wurde). Und vergleicht man einige Stichproben-Resultate von Top-10-Programmen, wird sofort augenfällig, welche marginale Rolle Endspiel-Tabellen bezüglich des Rankings spielen:
Programm Lösungen Lösungen
mit Bases ohne Bases
1. Shredder 10 68 62
2. Rybka 2.2 64 61
3. Fritz 10 63 61
4. Deep Frenzee 61 61
5. Hiarcs 11.1 59 57
(Betreffend Einfluss der «Nalimovs» auf die Endspielperformance verschiedener Schach-Programme siehe auch hier)
8. Die Zug-Kommentare zu den einzelnen 100 E-E-T-Aufgaben (siehe «Download») übernehmen in der Zeichengebung den internationalen «Informator»-Standard und wurden in monatelanger analytischer Arbeit auch unter Einsatz adäquater Software erstellt. Gleichwohl beschränken sie sich aufs Allerwesentlichste – was gleichbedeutend sei mit der Einladung an die Anwenderschaft, sich auch selbst in die Stellungen zu vertiefen und nicht bloß die Maschine all die Arbeit erledigen zu lassen…;-)
Der Download aller notwendigen Dateien beinhaltet neben den (alphabetisch nach Material sortierten) Stellungen&Analysen (im CBH- und PGN-Format) auch ein EPD-File für den Import in alle gängigen Schach-GUIs sowie eine Excel-Tabelle.
Für Anregungen und Kritik aus der Anwenderschaft, sei es zu schachlichen oder konzeptionellen Elementen dieser Suite, bin ich jederzeit dankbar! Der E-E-T will in Sachen «Endspielfähigkeit eines Schach-Programmes» mitnichten als alleinselig-machende Wahrheit daher-kommen. Aber ich denke, dass er sein oberstes Ziel erfüllen wird, ein schneller Indikator bei (neuen) Engines bezüglich des so wichtigen dritten Partie-Abschnittes zu sein.
Der E-E-T in der Praxis (32bit/1CPU)
Die folgenden E-E-T-Resultate (Stand: 24. September 2007) wurden bei 60 Sekunden/Engine mit einem Athlon64/3000+ (128MB Hash) sowie den 3-5-men-Nalimov-, Shredder- und Bit-Bases bei einem TB-Cache von 64MB unter der «Fritz-10»- und der «Arena-1.99b4»-Oberfläche mit den jeweiligen Default-Einstellungen erspielt. Insgesamt wurden bis heute fast 120 Engines getestet (siehe die detaillierten Lösezeiten aller Engines im Excel-Download-File); die nachstehende Liste enthält nur die je besten Engines.
Programm Lösungen Zeitverbrauch
001. Rybka 2.3.2a 72/100 00:42:26
002. Shredder 10 68/100 00:45:17
003. Hiarcs 11.2 64/100 00:54:17
004. Fritz 10 63/100 00:49:47
005. Deep Frenzee 3.0 61/100 00:54:04
006. Movei 00.8.438 59/100 00:56:20
007. The Baron 2.12 58/100 00:59:48
008. SmarThink 1.00 55/100 01:01:32
009. Chess Tiger 2007 54/100 00:58:55
010. Colossus 2007d 54/100 01:00:51
011. Glaurung 2-epsilon/5 54/100 01:03:18
012. Toga II 1.3×4 54/100 01:03:41
013. Spike 1.2 Turin 53/100 00:59:42
014. SlowChessBlitz WV2.1 53/100 01:02:32
015. Delfi 5.1 51/100 01:05:59
016. Ktulu 8 50/100 01:02:55
017. Pharaon 3.5.1 50/100 01:03:32
018. Yace 0.99.87 50/100 01:04:44
019. LoopMP 12.32 50/100 01:06:02
020. Naum 2.0 50/100 01:06:08
021. Fruit 2.3 50/100 01:07:37
022. Alaric 707 49/100 01:03:57
023. Ruffian 2.1.0 48/100 01:05:41
024. Deep Sjeng 2.7 47/100 01:03:37
025. Crafty 20.14 47/100 01:05:26
026. Junior 10.1 45/100 01:06:14
027. Gandalf 6.0 44/100 01:06:00
028. Scorpio 1.91 43/100 01:07:35
029. Patzer 3.8 42/100 01:06:50
030. WildCat 7 40/100 01:13:10
031. Anaconda 2.0.1 40/100 01:16:26
032. Aristarch 4.50 39/100 01:13:41
033. Nimzo 8 38/100 01:13:14
034. Pepito 1.59 38/100 01:15:16
035. Arasan 10 38/100 01:17:48
036. ProDeo 1.4 38/100 01:18:50
037. Chessmaster 9000 37/100 01:13:21
038. Jonny 2.83 37/100 01:15:06
039. Petir 4.72 37/100 01:18:45
040. Amyan 1.597 35/100 01:16:58
041. Quark 2.35 35/100 01:19:32
042. LGoliath Evolution 34/100 01:14:21
043. Gaia 3.5 34/100 01:17:44
044. Amy 0.87 34/100 01:18:11
045. Tao 5.6 31/100 01:19:42
046. TheCrazyBishop 0052 30/100 01:19:37
047. TwistedLogic 20070915 30/100 01:21:34
048. Feuerstein 0.4.5.2 29/100 01:20:32
049. RomiChess P3j 28/100 01:20:55
050. AnMon 5.60 28/100 01:22:54
051. DanaSah 3.03 27/100 01:21:13
052. Aice 0.99.2 27/100 01:21:23
053. SpiderChess 070525 27/100 01:21:45
054. SOS 5 27/100 01:21:49
055. Zappa 1.1 27/100 01:23:18
056. Hamsters 0.4 26/100 01:22:21
057. GreKo 5.0 24/100 01:25:15
058. Ufim 8.02 23/100 01:24:18
059. Chispa 4.0.3 22/100 01:25:44
060. Resp 0.19 21/100 01:24:04
061. Phalanx 22 21/100 01:24:47
062. Hagrid 0.7.56 21/100 01:25:51
063. Sunsetter C10 20/100 01:26:37
064. Homer 2.0 20/100 01:26:44
065. Asterisk 0.6 20/100 01:26:48
066. Ayito 0.2.994 19/100 01:26:05
067. BeoWulf 2.4 19/100 01:26:31
068. Queen 3.09 19/100 01:26:43
069. Abrok 5.0 19/100 01:28:31
070. Smirf MS-167d 18/100 01:27:44
071. Lime 62 17/100 01:28:33
072. AliChess 4.08 16/100 01:27:46
073. BlackBishop 0.47 16/100 01:30:03
074. BikJump 1.2.1 15/100 01:27:27
075. Mint 2.3 15/100 01:28:13
076. FireFly 2.2.2 15/100 01:28:33
077. Homer 1.1 b3 14/100 01:32:10
078. BigLion 2.23w 13/100 01:29:12
079. BamBam 10/100 01:32:58
Download (EPD-, PGN-, XLS-Files / 195kb)
.
.
.
.
.
.
.
.
leave a comment