Brilliant Correspondence Chess Moves BCCM (01)

Ungefähre Lesezeit für diesen Beitrag: 4 Minuten

In der Top-Etage des Fernschachs (01)

von Walter Eigenmann

Der Computer veränderte und verändert noch immer bekanntlich alle Bereiche des privaten und öffentlichen Lebens – und geradezu dramatisch dokumentierte sich diese Veränderung u.a. im Bereich der Unterhaltungsindustrie. Hier genauer gemeint: des Schachspiels.
Denn seit dem in den letzten Jahren die sog. Chess Engines (= die eigentlich rechnenden „Motoren“, eingebettet in diverse verfügbaren Schach-User-Interfaces GUI) eine derart hohe Spielstärke erreicht haben, dass jeder menschliche Großmeister (der amtierende Weltmeister Magnus Carlsen inklusive) absolut chancenlos ist, hat das Schach seinen einstigen Nimbus des zauberhaften Königlichen Spiels, des unerschöpflichen Meeres an genialen Kombinationen und seiner vielhundertjährigen Kulturgeschichte für viele seiner Adepten verloren.

Legendäre Schachkombinationen entzaubert

Einer der Urväter des modernen Computerschachs: Der IBM-Großrechner Deep Blue von 1996 (Match-Sieger 1997 gegen Weltmeister Garry Kasparow)
Einer der Urväter des modernen Computerschachs: Der IBM-Großrechner Deep Blue von 1996 (Match-Sieger 1997 gegen Weltmeister Garry Kasparow)

Die buchstäblich unmenschliche Präzision und Tiefe des maschinellen Berechnens ist denn auch heutzutage nicht mehr dazu angetan, irgend einen Zauber des menschlichen Geistes zu beschwören, der auf (zwangsläufiges) Patzen in den Turniersälen (gestern und heute) oder auf jahrzehntelang hochgelobte Zugkommentare in Schachbüchern voller grober Fehler und Ungenauigkeiten basiert. Schätzungsweise 90% aller vor der letzten Jahrhundertwende geschriebenen Schachbücher dürften im Lichte des modernen Computerschachs betrachtet inzwischen Makulatur sein – Kult-Bücher einst legendärer Schach-Genies von Steinitz bis Karpow eingeschlossen. Die damals weltweit gefeierten Super-Kombinationen von Bobby-Fischer & Co. entpuppen sich heute unterm Mikroskop von Houdini & Co. als sekundenschnell gefundene Simplizitäten, wo sie nicht überhaupt gar unkorrekt sind. Dass dies der schachgeschichtlichen Leistung der damaligen Genies allerdings nichts anhaben kann, muss nicht extra betont werden. Trotzdem: Das Schachspiel mag nach wie vor (gemäß Goethe) „ein Prüfstein des Gehirns“ sein – aber nicht für Computer…

Das Fernschach als Labor des schachlichen Erkenntnisgewinns

20 Jahre nach Deep Blue: Der amtierende Computerschach-Weltmeister Komodo
20 Jahre nach Deep Blue: Der amtierende Computerschach-Weltmeister Komodo

Wenn also der (frühere wie heutige) menschliche Turnier-Schachbetrieb (ob online oder on-the-board) unergiebig geworden ist, wenn es darum geht, nach wirklich „tiefen“, nach besonders „schwierigen“ Kombinationen zu fahnden, so verhält es sich mit dem modernen Fernschach FS (Correspondence Chess CC) mittlerweile anders. Denn hier sind die Topspieler der internationalen FS-Szene längst dazu übergegangen, den Computer in ihre (oft tagelangen) Stellungsanalysen einzubeziehen.
Und die interaktive Verbindung von menschlichem „Planen“ bzw. Lenkung des „Mainstreams“ einer Schachpartie mit der ungeheuren Akkuratesse der heutigen Engines zeitigt inzwischen wirklich bewunderswerte Schachzüge, die nicht nur in ästhetischer Hinsicht faszinierend sind, sondern auch quasi schach-„erkenntnistheoretisch“ großartige Leistungen darstellen, die das Fernschach ausweisen als regelrechtes Forschungslabor.

Wer unter den Schachfreunden der "Glarean"-Leserschaft eine (noch unveröffentlichte) Fernschach-Stellung kennt, die in unsere BCCM-Reihe passen könnte, ist gerne eingeladen, die entspr. PGN an die Redaktion zu senden. Vielleicht kann sie unter Namensnennung des "Finders" hier veröffentlicht werden.
Wer unter den Schachfreunden der „Glarean“-Leserschaft eine (noch unveröffentlichte) Fernschach-Stellung kennt, die in unsere BCCM-Reihe passen könnte, ist gerne eingeladen, die entspr. PGN an die Redaktion zu senden. Vielleicht kann sie dann unter Namensnennung des „Finders“ hier vorgestellt werden!

Die neue Reihe „Brilliant Correspondence Chess Moves“ BCCM will genau solche Fernschach-Kombinationen präsentieren, die zwar frappant, aber auch korrekt, zwar schwierig zu finden, aber nicht „unlösbar“ sind. Züge also, die vom menschlichen Meisterspieler erst nach langer Analyse aufspürbar sind – mithilfe des Computers… ♦

Das erste Exemplar der BCCM-Serie ist einem weitsichtigen Bauernopfer gewidmet, das in einer ICCF-Email-Partie 2004 zwischen Jose Barrios und Arild Haugen geschah. Barrios entdeckte den Damenzug also vor 13 Jahren – in einer Zeit, da die Schach-Engines zwar schon beachtliche Stärke hatten, aber noch längst nicht als die heutigen Überflieger dastanden, die inzwischen (fast) jede Schachaufgabe in Sekundenschnelle knacken…

Brilliant Correspondence Chess Moves BCCM – 01

FEN-String: 2r2rk1/pp1qnn1p/4p1pP/3pPp2/3P3Q/P2PBN2/5PP1/2R2RK1 w

Ein Mausklick auf eine Stelle in der Partie-Notation öffnet ein neues Partie-Fenster; dort lassen sich die Züge nachspielen und die Partie als PGN-Datei downloaden. Um die Aufgaben selber schnell (mittels copy&paste) in ein Programm bzw. in ein Schach-Interface laden zu können, ist jeder Stellung auch der zugehörige FEN-String beigegeben.

Lesen Sie im Glarean Magazin zum Thema Correspondence Chess auch das Interview mit Fernschach-Großmeister Arno Nickel

 

Computerschach: Godzilla Endgame Chess Puzzles (2)

Ungefähre Lesezeit für diesen Beitrag: 4 Minuten

Die Grenzen der Schachprogramme

von Walter Eigenmann

Die „Godzilla Endgame Chess Puzzles“ (GECP) sind eine neue Serie von extremen Monster-Endspiel-Aufgaben für Schachprogramme. Diese für die (meisten) Engines nicht innerhalb „nützlicher Frist“ (= ca. eine Minute) lösbaren Puzzles zeigen schonungslos die Grenzen auf, die das schier unerschöpfliche Königliche Spiel immer noch auch den modernen und vielgerühmten Schach-Engines zieht.

Für den 40-jährigen „Fidelity Chess Challenger 1“ (Chicago Januar 1977) viel zu schwierig: Die Godzilla Endgame Chess Puzzles 2017
Für den 40-jährigen „Fidelity Chess Challenger 1“ (Chicago Januar 1977) viel zu schwierig: Die Godzilla Endgame Chess Puzzles 2017

Denn sie legen den Finger auf all die strukturellen Wunden, die Schachsoftware trotz ausgefeilter Programmierung nach wie vor aufweist: Zugzwang, Horizonteffekt, Endspiel-Wissen, Tablebase-Anbindung, Festung, Blockade und Mattfindung sind hier die Stichworte.

Endspiel-Knowhow der Engines gefordert

Der Begriff des Endspiels wurde dabei recht weit gefasst: Bewusst wurden vereinzelte Aufgaben auch aus der Partiephase Übergang ins Endspiel aufgenommen, um gerade in diesem Bereich den Einfluss der diversen Endgame-Tablebases zu minimieren bzw. das Endspiel-Knowhow der Engines zu fordern.

Die Godzilla Stellungen 5-8

Ein Mausklick auf eine Stelle in der Partie-Notation öffnet ein neues Partie-Fenster; dort lassen sich die Züge nachspielen und die Partie als PGN-Datei downloaden. Um die Aufgaben selber schnell (mittels copy&paste) in ein Programm bzw. in ein Schach-Interface laden zu können, ist jeder Stellung auch der zugehörige FEN-String beigegeben.

FEN-String: 8/p3N3/1n3N1p/2n5/pkP3PP/8/3P4/K7 w

Anmerkung: Verschiedene Anwender aus der Leserschaft wiesen zurecht darauf hin, dass 1. g5 ebenfalls nur zum Remis führt

FEN-String: k5b1/5p2/2K5/1p1B3N/3rp1p1/1pRp4/8/7n w

FEN-String: 6K1/5p2/6p1/1N2qk1p/p6R/7P/Pp2N3/2B5 w

FEN-String: Nk3n2/1n4N1/2P5/6p1/5p2/6p1/8/4K3 w

Studien und Fernschach-Stellungen

Die Serie veröffentlicht in unregelmäßigen Abständen jeweils ein Quartett von besonders „monströsen“ Exemplaren. Ein großer Teil der Sammlung stammt aus dem Genre der Schach-Studie (wobei auf eine gewisse Nähe zur „realen Partie“ geachtet wurde), andere Stellungen sind der Meisterpraxis des Fernschachs sowie Analysen von aktuellen Engine-Turnieren selber entnommen worden. Weniger ergiebig sind hingegen (historische oder moderne) Großmeister-Turniere, da deren Partien mit zu vielen taktischen Fehlern behaftet sind und darum der tiefenanalytischen Untersuchung mit heutiger Software nicht mehr standhalten.
Ein Mausklick auf eine Stelle in der Partie-Notation öffnet ein neues Partie-Fenster; dort lassen sich die Züge nachspielen und die Partie als PGN-Datei downloaden. Um die Aufgaben selber schnell (mittels copy&paste) in ein Programm bzw. in ein Schach-Interface laden zu können, ist jeder Stellung auch der zugehörige FEN-String beigegeben. ♦

Hier finden sich alle bisherigen GECP-Staffeln

Lesen Sie im Glarean Magazin auch über einen weiteren
Engine-Test mit „Monster“-Aufgaben: Die Schach-Suite „Nightmare 2“

Computerschach: Godzilla Endgame Chess Puzzles (1)

Ungefähre Lesezeit für diesen Beitrag: 4 Minuten

Die Grenzen der Schachprogramme

von Walter Eigenmann

Die „Godzilla Endgame Chess Puzzles“ (GECP) sind eine neue Serie von extremen Monster-Endspiel-Aufgaben für Schachprogramme. Diese für die (meisten) Engines nicht innerhalb „nützlicher Frist“ (= ca. eine Minute) lösbaren Puzzles zeigen schonungslos die Grenzen auf, die das schier unerschöpfliche Königliche Spiel immer noch auch den modernen und vielgerühmten Schach-Engines zieht.

Fidelity Chess Challenger 1 (Chicago Januar 1977)
Für den 40-jährigen „Fidelity Chess Challenger 1“ (Chicago Januar 1977) viel zu schwierig: Die Godzilla Endgame Chess Puzzles 2017

Die „Godzilla“-Endspielaufgaben legen den Finger auf all die strukturellen Wunden, die Schachsoftware trotz ausgefeilter Programmierung nach wie vor aufweist: Zugzwang, Horizonteffekt, Endspiel-Wissen, Tablebase-Anbindung, Festung, Blockade und Mattfindung sind hier die Stichworte.

Endspiel-Knowhow der Engines gefordert

Der Begriff des Endspiels wurde dabei recht weit gefasst: Bewusst wurden vereinzelte Aufgaben auch aus der Partiephase Übergang ins Endspiel aufgenommen, um gerade in diesem Bereich den Einfluss der diversen Endgame-Tablebases zu minimieren bzw. das Endspiel-Knowhow der Engines zu fordern.

Die Godzilla Stellungen 1-4

Ein Mausklick auf eine Stelle in der Partie-Notation öffnet ein neues Partie-Fenster; dort lassen sich die Züge nachspielen und die Partie als PGN-Datei downloaden. Um die Aufgaben selber schnell (mittels copy&paste) in ein Programm bzw. in ein Schach-Interface laden zu können, ist jeder Stellung auch der zugehörige FEN-String beigegeben.

FEN-String: Nn6/8/6r1/8/K7/1P6/1R6/3k2N1 w

FEN-String: 1B1K1k2/4N2p/3pP1pP/6p1/p7/3N2b1/2r2p2/8 w

FEN-String: k3K3/P3N3/8/ppp4p/4p1p1/6R1/rn1PP2B/8 w

FEN-String: 7k/3q4/1p3P2/3pP1N1/7N/6p1/1P4P1/3n1KBn w

Studien und Fernschach-Stellungen

Die Serie veröffentlicht in unregelmäßigen Abständen jeweils ein Quartett von besonders „monströsen“ Exemplaren. Ein großer Teil der Sammlung stammt aus dem Genre der Schach-Studie (wobei auf eine gewisse Nähe zur „realen Partie“ geachtet wurde), andere Stellungen sind der Meisterpraxis des Fernschachs sowie Analysen von aktuellen Engine-Turnieren selber entnommen worden. Weniger ergiebig sind hingegen (historische oder moderne) Großmeister-Turniere, da deren Partien mit zu vielen taktischen Fehlern behaftet sind und darum der tiefenanalytischen Untersuchung mit heutiger Software nicht mehr standhalten.
Ein Mausklick auf eine Stelle in der Partie-Notation öffnet ein neues Partie-Fenster; dort lassen sich die Züge nachspielen und die Partie als PGN-Datei downloaden. Um die Aufgaben selber schnell (mittels copy&paste) in ein Programm bzw. in ein Schach-Interface laden zu können, ist jeder Stellung auch der zugehörige FEN-String beigegeben. ♦

Lesen Sie im Glarean Magazin auch über einen weiteren Engine-Test mit „Monster“-Aufgaben: Die Schach-Suite „Nightmare 2“

… sowie zum Thema Fernschach-Testaufgaben: Brilliant Correspondence Chess Moves BCCM (07)

Computerschach: Testaufgaben für Programme (ERET)

Ungefähre Lesezeit für diesen Beitrag: 14 Minuten

Der „Eigenmann Rapid Engine Test“ (ERET)

von Walter Eigenmann

(Update: 21. Mai 2020)

Der sog. Eigenmann Rapid Engine Test (ERET) ist eine neue Sammlung von 111 Aufgaben für Schach-Programme. Er wurde konzipiert, um schnell einen ersten Eindruck von der Spielstärke einer neuen Engine ausmachen zu können. Die Computerschach-Anwenderschaft erhält mit diesem ERET erstmals eine Test-Suite an die Hand, deren Ergebnisse innert einer halben Stunde eine grobe, aber recht verlässliche Einschätzung eines (neuen) Programms erlauben.

Die 111 Stellungen bzw. ihre Hauptvarianten können nachstehend einzeln interaktiv nachgespielt und als PGN-Datei rungeladen werden. Downloadbar ist ausserdem der Test im CBH-Format (für Chessbase-Software) sowie als EPD-Datei für den Import in diverse Schach-GUI’s.

Die Vorzüge des ERET gegenüber älteren Sammlungen sind namentlich:

  • Grosse Bandbreite der Schachmotivik
  • Eindeutigkeit der Lösungen
  • Ausgewogenheit der Partiephasen
  • Mittlerer bis hoher Schwierigkeitsgrad
  • Schnelle Programm-Resultate
  • Auch für zukünftige Engine-Generationen tauglich


Die Axiomatik des ERET-Stellungstests

Eine ambitionierte Aufgaben-Sammlung wie der ERET-Stellungstest für Schachprogramme basiert auf einer eigenen Axiomatik.

Diese lässt sich in den folgenden sechs Punkten zusammenfassen:

  1. Die 111 Aufgaben des ERET decken einen grossen Bereich der (computer-)schachlichen Realität ab.
  2. Diese abgestimmte Kompaktheit der Zusammenstellung ist weder durch Hinzufügungen noch Wegstreichungen antastbar.
  3. Für Computerprogramme (anders als für Menschen) ist eine Schachpartie grundsätzlich eine Sammlung von Einzel-Aufgabenstellungen unter definierten Bedingungen – ein Stellungstest also.
  4. Die Denk- bzw. Rechengeschwindigkeit beim Schachspielen ist eine maßgebliche Komponente der „Spielstärke“.
  5. Das vom Test-Autor empfohlene Test-Setting ist ein integraler Bestandteil des Stellungstests.
  6. Unter Wahrung der Punkte 2 & 5 garantiert der ERET keine 100%ige, aber eine weitgehende Übereinstimmung seiner Testergebnisse mit den durchschnittlichen Resultaten des praktischen Engine-Turnierbetriebes.

Das Test-Setting

Das empfohlene ERET-Test-Setting sieht folgendermaßen aus:

eret-rochadeangriff-carlsen
Der ERET-Schachtest für Computer-Programme deckt ein weites Spektrum an Eröffnungs-, Mittelspiel- und Endspiel-Elementen ab. Namentlich enthält er exemplarische Beispiele der folgenden taktischen und positionellen Motive (alphabetisch): Ablenkung – Abtausch – Damenopfer – Entlastung – Entwicklung – Festung – Freibauer – Initiative – Königsangriff – Königssicherheit – Läuferopfer – Linienöffnen -Mobilität – Offene Linien – Positionelles Opfer – Qualitätsopfer – Räumung – Rochadeangriff – Springeropfer – Starke Felder – Unterverwandlung – Vergifteter Bauer – Verteidigung – Zentralisierung – Zentrum – Zugzwang – Zwischenzug (Bild: Die Brennpunkte des weißen Rochadangriffs in einer Fernschachpartie Copie-Patrici 1986)
  • 15 Sekunden pro Aufgabe
  • Engine-Einstellungen: Default
  • Prozessoren/Threads/Cores: 1-16
  • Hash-Memory: 512-1024Mb
  • Eröffnungsbücher: keine
  • Endgame-Tablebases: beliebig
  • Extra Halbzüge: 99
  • Multivarianten-Modus: off

Das Design des Testes ist auf diese Einstellungen fokussiert, diese zeitigen die aussagekräftigsten Resultate. Deutlich davon abweichende Settings können die Ergebnisse verfälschen.

Die Test-Auswertung

Die Anzahl Lösungen einer Engine ergibt deren wichtigstes Testergebnis; dieses erlaubt bereits einen groben Vergleich mit anderen Programmen. Um die Resultate mehrerer Engines noch zu differenzieren, empfiehlt der Autor das Interface „Fritz“ ab Version 11, dessen Testergebnisse – aus der CBH- in eine PGN-Datei konvertiert – dann mit dem Freeware-Tool EloStatTS104 von Dr. Frank Schubert werden sollten. Diese mathematisch-statistisch fundierte Methode der Test-Auswertung ist wenn immer möglich vorzuziehen. Außerdem ist bei einer Verwendung des Testes mit „Fritz“ die von EloStatTS104 mitgelieferte „Offset“-Test-File zu berücksichtigen: Mit ihm lassen sich die unterschiedlichen Reaktions- bzw. Initialisierungszeiten der Engines unter diesem Interface eruieren, womit nochmals genauere Ergebnisse generiert werden können (siehe hierzu die entspr. Readme-Datei).

Die „Fritz“-Alternative „Arena“

Eine Alternative zum „Fritz“-GUI ist die Freeware-Oberfläche „Arena“, die mit zusätzlichen Features beim Automatisierten Stellungstesten aufwartet und auch einen Output der Engine-Berechnungen bietet, allerdings auf jegliche Ranglisten-Generierung verzichtet bzw. nur die Anzahl Lösungen angibt, so dass keine weitergehende Differenzierung der Testergebnisse möglich ist bzw. manuell erfolgen müsste.
Andere Benutzeroberflächen bieten ebenfalls nur rudimentäre Optionen bezüglich Stellungstests und sind deshalb für den ERET nur bedingt zu empfehlen. Einen verhältnismäßig differenzierten Output beim Stellungstesten liefert schließlich noch die in Mitteleuropa kaum verbreitete GUI-Software ChessAssistant.
Die technische Durchführung des Tests ist einfach und bei den verschiedenen Schach-Interfaces wie z.B. Arena, Shredder, ChessAssistant oder Fritz grundsätzlich ähnlich.

Zufallsfaktor Multi-Prozessoren

Moderne Rechner mit Multi-Prozessoren- bzw. -Hyperthread-Techniken neigen zu Fluktuationen in ihrer Zug-Generierung. Deren Auswirkung in der Praxis wird zwar generell sehr überschätzt, aber wer auf Nummer sicher gehen will, macht pro Engine drei bis fünf Test-Durchläufe und nimmt den Durchschnitt oder die kürzeste der jeweiligen Lösungszeiten. (Hierzu mehr im Absatz Einzel-Threat vs Multi-Thread) –

Um Software-übergreifende Vergleiche zu ermöglichen, sollten die Engines mit ihren Default-Parametern getestet werden. Die Verwendung von Opening-Books ist dabei irrelevant; die meisten ERET-Aufgaben sind „out of books“. Trotzdem wird grundsätzlich ein Verzicht auf Engine-Eröffnungsbücher empfohlen, um den Einfluss von ggf. hochselektiven, bis weit ins Mittelspiel hinein reichenden Book-Varianten auszuschliessen.

Relationen entscheiden, nicht absolute Zahlen

Anzeige Amazon: Millennium Chess Genius PRO by Chess Genius
Anzeige

Bei der Generierung von Ranglisten mit dem ERET sollten nicht die absoluten Zahlen-Ergebnisse, sondern vielmehr die Engine-Relationen beachtet werden – so wie bei den Rankings der verschiedenen bekannten Engine-Turnieren auch. Diese können bekanntlich (je nach Turnier-Settings und Berechnungsgrundlage) überraschend unterschiedlich ausfallen – siehe die einschlägigen Engine-Ranglisten CEGT, CCRL, FCP, OHCR, SPCC, FGRL u.a.

Hier findet sich ein Vergleich von fünf häufig zitierten Ranglisten im Internet mit den ERET-Ergebnissen (Stand März 2017). Dabei zeigte sich, wie überraschend genau die Ergebnisse des ERET-Stellungstestes mit den übrigen „regulären“ Rankings übereinstimmen (natürlich von ein paar üblichen „Ausreißern“ abgesehen, die in allen Ranglisten zu finden sind).

Breite Quellen-Recherche

Die einzelnen Stellungen hat der Autor über viele Monate hinweg aus verschiedensten Quellen zusammengetragen und hauptsächlich mit den drei Programmen Deep-Shredder 11/12, Critter 1.6 und RybkaWinFinder 2.2 im Hinblick auf ihre taktische Korrektheit untersucht. Ansonsten hat er auf weiteres Einzeltesten bewusst verzichtet, um den Test möglichst objektiv und nicht „geeicht“ auf bestimmte Programme gestalten zu können. (Über entsprechende Resultat-Meldungen aus der Leser- bzw. Anwenderschaft – privat oder via „Kommentar“-Funktion – würde sich der Autor freuen).

ERET-Computerschach-Testsammlung - Salai-Studie - Glarean Magazin
Welche Komplexität eine Schach-Stellung mit nur wenigen Steinen haben kann, zeigt diese Studie von L. Salai: Den Lösungszug 1.f4!! finden auch starke Computerprogramme die längste Zeit nicht

Trotz der relativ kurzen Zeit-Vorgabe von 15 Sekunden/Stellung sind die ERET-Aufgaben keineswegs trivial. Viele der Aufgaben dürften sogar ganz besondere Knacknüsse auch für heutige Engines sein. Die umfangreichen persönlichen Analysen mithilfe der obengenannten Programme legen den Schluss nahe, dass dieser Test eher im oberen Schwierigkeitsbereich angesiedelt ist. Der Autor ist deshalb zuversichtlich, dass der ERET auch noch in fünf oder zehn Jahren nützlich sein wird…

Die internationale Computerschach-Anwenderschaft widmete sich eingehend dem ERET-Stellungstest und generierte mehrere Ranking-Listen auf je unterschiedlicher Hardware. Beispielhaft seien hier die ERET-Testergebnisse des deutschen Fernschach-Meisters Andreas Strangmüller erwähnt, der auf seiner viebeachteten Schach-Webseite FastGMs Rating Lists (FGRL) seit Jahren Engine-Resultate dokumentiert. Auch in den diversen Computerschach-Foren fand der ERET-Test grosse Resonanz. Stellvertretend hier ein paar Einzelergebnisse im CSS-Forum.

Die aktuelle ERET-Rangliste

Der Autor des Tests selber hat die 111 ERET-Aufgaben im Laufe der Jahre ebenfalls mehrmals von div. Programmen berechnen lassen.
Die nachfolgende Rangliste stammt vom Mai 2020 und enthält nicht weniger als 31 der aktuell stärksten Engines, wie sie von den einschlägigen Turnier-Statistik-Portalen wie z.B. den bekannten Computer Chess Rating Lists (CCRL) aufgeführt werden.
Dabei kam das folgende Hard- und Software-Equipment zum Einsatz:
AMD-Ryzen7-2700x  •  3,7Mhz-64bit  •  16Cores  •  1024MB Hash  •  5-men-Szyzygy-Tablebases  •  Fritz17-GUI

Bezüglich der Auswertung der Lösungsergebnisse fand das bereits erwähnte Tool EloStatTS104 Verwendung; dazu unten mehr.

   Program                          Elo   +/-  Matches  Score   Av.Op.   Solutions

01 Bluefish XR7FD (16Cores)       : 2975    5   2885    61.3 %   2895    93/111
02 Crystal 140520 (16Cores)       : 2967    5   2846    60.2 %   2895    91/111
03 Black Diamond XI (16Cores)     : 2965    5   2801    59.9 %   2896    90/111
04 CorChess 6.0 (16Cores)         : 2962    5   2791    59.5 %   2896    90/111
05 Stockfish 140520 (16Cores)     : 2960    5   2804    59.1 %   2896    89/111
06 Eman 5.50 (16Cores)            : 2956    5   2776    58.5 %   2896    88/111
07 SugaR-NN 260120 (16Cores)      : 2956    5   2706    58.5 %   2896    87/111
08 Chimera 2 BF-Lc0-SF (16Cores)  : 2950    5   2708    57.6 %   2896    85/111
09 Komodo 13.3 (16Cores)          : 2946    5   2734    57.0 %   2897    85/111
10 Lc0 0.25.1 t60-3044 (1Core)    : 2943    6   2785    56.5 %   2898    84/111
11 FatFritz 1.1 (1Core)           : 2941    6   2748    56.1 %   2898    78/111
12 Houdini 6.03 (16Cores)         : 2940    5   2685    56.1 %   2897    83/111
13 Booot 6.4 (16Cores)            : 2919    6   2576    52.9 %   2899    74/111
14 Schooner 2.2 (16Cores)         : 2910    6   2617    51.4 %   2900    76/111
15 Xiphos 0.6 (16Cores)           : 2910    6   2573    51.4 %   2900    73/111
16 Ethereal 12 (16Cores)          : 2904    6   2596    50.6 %   2900    75/111
17 Fritz 17 (16Cores)             : 2890    6   2553    48.4 %   2901    70/111
18 Fizbo 2 (16Cores)              : 2889    6   2511    48.1 %   2902    65/111
19 Laser 1.7 (16Cores)            : 2885    6   2522    47.6 %   2902    69/111
20 RofChade 2.202 (16Cores)       : 2885    6   2505    47.6 %   2902    67/111
21 Critter 1.6a (16Cores)         : 2882    7   2653    47.0 %   2903    68/111
22 DeepShredder 13 (16Cores)      : 2878    6   2512    46.4 %   2903    68/111
23 Andscacs 0.95 (16Cores)        : 2872    6   2463    45.6 %   2903    65/111
24 Arasan 22.0 (16Cores)          : 2853    7   2436    42.6 %   2905    59/111
25 Wasp 3.75(16Cores)             : 2844    7   2467    41.3 %   2905    57/111
26 Fire 7.1 (16Cores)             : 2844    7   2402    41.2 %   2905    54/111
27 DeepRybka 4.1 (16Cores)        : 2842    7   2482    40.7 %   2907    53/111
28 Naum 4.6 (16Cores)             : 2815    7   2451    36.9 %   2908    47/111
29 Chiron 4 (16Cores)             : 2813    7   2429    36.7 %   2908    48/111
30 Deep Junior Yokohama (16Cores) : 2797    7   2391    34.5 %   2909    41/111
31 ProDeo 2.92 (1Core)            : 2697    7   2240    22.4 %   2913    16/111

BF-Lc0-SF = Brainfish & LeelaChessZero & Stockfish
Lc0 & FatFritz = RTX2080-GPU

Weiterführende Links

Für jene Leser, die sich näher mit der Thematik Computerschach & Stellungstests befassen möchten, nachfolgend ein paar weiterführende Links:

„ELO-Formel für Stellungstests“

  • Dr. Frank Schubert: Lösung eines alten Problems – Autor Schubert untersucht zuerst die seinerzeit gängigen Auswerteverfahren verschiedener bekannter Stellungstests und stellt dann einen mathematisch neuen, dem FIDE-Elo-Verfahren ähnlichen Ansatz zur Differenzierung von Test-Ergebnissen vor. In einem historischen Exkurs wird auch Bezug genommen auf noch vor einigen Jahren gebräuchliche Tests von Autoren wie Bednorz, Schumacher, Gurevich oder Scheidl. Zum Schluss stellt Schubert seine eigene Methode vor, „welche die Schwächen der bisherigen Formeln beseitigt und erstmalig auf einer soliden schachlichen Theorie basiert.“ Dabei zählt das Tool nicht einfach die Anzahl richtiger Lösungen ab, sondern setzt die Ergebnisse je nach Lösungsverhalten bei den einzelnen Stellungen zueinander in Bezug; es wird also nicht nur berücksichtigt, wie viele, sondern auch welche Engines welche Aufgaben gelöst haben.

„Was Stellungstests testen“

  • Anzeige AMAZON: 100 brillante Schachzüge - Geniale Kombinationen - Verblüffende Strategien - Walter Eigenmann
    Anzeige

    Lars Bremer: Was Stellungstests testen – IT-Journalist und Programmierer Bremer repliziert darin auf den seinerzeit heftig umstrittenen CSS-WM-Test von M. Gurevich, wobei er ebenso unverhohlen wie amüsant in die Trick-Kiste greift, um seine Test-kritische These zu untermauern: Er löschte mit einem eigens dafür geschriebenen Tool in dem als Gesamtheit konzipierten Test jeweils so lange einzelne Aufgaben, bis immer wieder Top-Resultate der zufällig gewählten (ggf. schwachen) Engine resultieren, womit Bremer den zufälligen Charakter von Test-Ergebnissen beweisen möchte.
    Dahinter steckt allerdings ein grober Denkfehler. Denn da selbstverständlich ein umfangreicher und durchdachter Stellungstest immer kompakt gemeint ist, seine Aufgaben aufeinander abgestimmt sind und also nicht willkürlich zusammengestrichen werden dürfen, ist Bremers Artikel wissenschaftlich nicht wirklich ernst zu nehmen und deshalb ein einziger „Quatsch“ (Zitat) – aber dennoch witzig zu lesen 🙂

„Chaos-System Deep Engine“

  • Lars Bremer: Chaos-System Deep Engine – Ein seriöserer und informativer Artikel des obigen Autors zur Problematik des „Zufälligen Zuges“ bei Deep-Engines. Mit seinem „Fazit“ bezüglich der Aussagekraft von Stellungstests bei MP-Rechnern ist der Schreibende zwar nicht einverstanden: Ausgedehnte Untersuchungen könnten sehr wohl dokumentieren, dass ein durchdachtes Design eines Stellungstestes diesen „MP-Effekt“ zwar nicht restlos ausschalten, aber entscheidend abfedern kann, so dass er bezüglich Ranking schliesslich auch statistisch irrelevant wird. Doch Bremer erklärt das Phänomen aus der Sicht des Programmierers äusserst anschaulich und auch für Laien nachvollziehbar. Es wird erklärt, warum sich moderne „Deep“-Programme zuweilen völlig nicht-deterministisch, ja „chaotisch“ verhalten beim Ausspielen von Zügen.

„Einzel-Threat vs Multi-Threats“

  • Tord Romstad (Stockfish): Eine kurz zusammengefasste Erklärung dieses „MP-Effektes“ findet sich auch in einem Interview, das Frank Quisinsky vor Jahren mit Tord Romstad, dem verantwortlichen Stockfish-Programmierer, sowie dessen Co-Autoren geführt hat. Zitat: „Wenn ein Schachprogramm eine Position, irgendwo tief innerhalb des Suchbaums, untersucht, macht es Gebrauch bzw. erinnert sich an frühere bereits untersuchte Positionen der gleichen Suche. Die Zugbeschneidung, Verkürzung oder Verlängerung hängen davon ab, welche Positionen vorher überprüft wurden und wie die Ergebnisse der Untersuchung dieser Positionen waren. Der Großteil der Informationen, der für eine Entscheidung verwendet wird, liegt im Arbeitsspeicher. Der Arbeitsspeicher steht allen Prozessoren zur Verfügung.
    Solange es nur einen Thread gibt, ist alles zu 100% reproduzierbar. Aber bei mehreren Threads beginnen seltsame Dinge zu geschehen, weil diese Threads nie synchron mit gleicher Geschwindigkeit aktiv sein können. Immer wieder wird eine CPU für ein paar Millisekunden eine Pause einlegen müssen und das Betriebssystem weist dann sofort eine andere Aufgabe zu. Das geschieht zufällig und ist nicht vorhersehbar, eine Kontrolle gibt es hierfür nicht. Als Konsequenz erreicht jeder Prozessor eine bestimmte Position eher zufällig und das wirkt sich dann auf die Suche nach Entscheidungen zur aktuellen Position aus.“
  • Chess Programming Wiki: Hier finden sich einige „klassische“ Stellungstests (inkl. Stellungsdiagramme), die allerdings heute eher historische denn schachliche Bedeutung haben.

Der ERET-Stellungstest als EPD-/FEN-Liste

r1bqk1r1/1p1p1n2/p1n2pN1/2p1b2Q/2P1Pp2/1PN5/PB4PP/R4RK1 w q – – bm Rxf4; id „ERET 001 – Entlastung“;
r1n2N1k/2n2K1p/3pp3/5Pp1/b5R1/8/1PPP4/8 w – – bm Ng6; id „ERET 002 – Zugzwang“;
r1b1r1k1/1pqn1pbp/p2pp1p1/P7/1n1NPP1Q/2NBBR2/1PP3PP/R6K w – – bm f5; id „ERET 003 – Linienoeffnen“;
5b2/p2k1p2/P3pP1p/n2pP1p1/1p1P2P1/1P1KBN2/7P/8 w – – bm Nxg5; id „ERET 004 – Endspiel“;
r3kbnr/1b3ppp/pqn5/1pp1P3/3p4/1BN2N2/PP2QPPP/R1BR2K1 w kq – – bm Bxf7; id „ERET 005 – Laeuferopfer f7“;
r2r2k1/1p1n1pp1/4pnp1/8/PpBRqP2/1Q2B1P1/1P5P/R5K1 b – – bm Nc5; id „ERET 006 – Springeropfer“;
2rq1rk1/pb1n1ppN/4p3/1pb5/3P1Pn1/P1N5/1PQ1B1PP/R1B2RK1 b – – bm Nde5; id „ERET 007 – Laeuferpaar“;
r2qk2r/ppp1bppp/2n5/3p1b2/3P1Bn1/1QN1P3/PP3P1P/R3KBNR w KQkq – bm Qxd5; id „ERET 008 – Zentrum“;
rnb1kb1r/p4p2/1qp1pn2/1p2N2p/2p1P1p1/2N3B1/PPQ1BPPP/3RK2R w Kkq – bm Ng6; id „ERET 009 – Springeropfer“;
5rk1/pp1b4/4pqp1/2Ppb2p/1P2p3/4Q2P/P3BPP1/1R3R1K b – – bm d4; id „ERET 010 – Freibauer“;
r1b2r1k/ppp2ppp/8/4p3/2BPQ3/P3P1K1/1B3PPP/n3q1NR w – – bm dxe5, Nf3; id „ERET 011 – Rochadeangriff“;
1nkr1b1r/5p2/1q2p2p/1ppbP1p1/2pP4/2N3B1/1P1QBPPP/R4RK1 w – – bm Nxd5; id „ERET 012 – Entlastung“;
1nrq1rk1/p4pp1/bp2pn1p/3p4/2PP1B2/P1PB2N1/4QPPP/1R2R1K1 w – – bm Qd2, Bc2; id „ERET 013 – Zentrum“;
5k2/1rn2p2/3pb1p1/7p/p3PP2/PnNBK2P/3N2P1/1R6 w – – bm Nf3; id „ERET 014 – Endspiel“;
8/p2p4/r7/1k6/8/pK5Q/P7/b7 w – – bm Qd3; id „ERET 015 – Endspiel“;
1b1rr1k1/pp1q1pp1/8/NP1p1b1p/1B1Pp1n1/PQR1P1P1/4BP1P/5RK1 w – – bm Nc6; id „ERET 016 – Pos. Opfer“;
1r3rk1/6p1/p1pb1qPp/3p4/4nPR1/2N4Q/PPP4P/2K1BR2 b – – bm Rxb2; id „ERET 017 – Koenigsangriff“;
r1b1kb1r/1p1n1p2/p3pP1p/q7/3N3p/2N5/P1PQB1PP/1R3R1K b kq – bm Qg5; id „ERET 018 – Entwicklung“;
3kB3/5K2/7p/3p4/3pn3/4NN2/8/1b4B1 w – – bm Nf5; id „ERET 019 – Endspiel“;
1nrrb1k1/1qn1bppp/pp2p3/3pP3/N2P3P/1P1B1NP1/PBR1QPK1/2R5 w – – bm Bxh7; id „ERET 020 – Laeuferopfer h7“;
3rr1k1/1pq2b1p/2pp2p1/4bp2/pPPN4/4P1PP/P1QR1PB1/1R4K1 b – – bm Rc8; id „ERET 021 – Prophylaxe“;
r4rk1/p2nbpp1/2p2np1/q7/Np1PPB2/8/PPQ1N1PP/1K1R3R w – – bm h4; id „ERET 022 – Freibauer“;
r3r2k/1bq1nppp/p2b4/1pn1p2P/2p1P1QN/2P1N1P1/PPBB1P1R/2KR4 w – – bm Ng6; id „ERET 023 – Rochadeangriff“;
r2q1r1k/3bppbp/pp1p4/2pPn1Bp/P1P1P2P/2N2P2/1P1Q2P1/R3KB1R w KQ – am b3; id „ERET 024 – Entwicklung“;
2kb4/p7/r1p3p1/p1P2pBp/R2P3P/2K3P1/5P2/8 w – – bm Bxd8; id „ERET 025 – Endspiel“;
rqn2rk1/pp2b2p/2n2pp1/1N2p3/5P1N/1PP1B3/4Q1PP/R4RK1 w – – bm Nxg6; id „ERET 026 – Springeropfer“;
8/3Pk1p1/1p2P1K1/1P1Bb3/7p/7P/6P1/8 w – – bm g4; id „ERET 027 – Zugzwang“;
4rrk1/Rpp3pp/6q1/2PPn3/4p3/2N5/1P2QPPP/5RK1 w – – am Rxb7; id „ERET 028 – Vergifteter Bauer“;
2q2rk1/2p2pb1/PpP1p1pp/2n5/5B1P/3Q2P1/4PPN1/2R3K1 w – – bm Rxc5; id „ERET 029 – Qualitaetsopfer“;
rnbq1r1k/4p1bP/p3p3/1pn5/8/2Np1N2/PPQ2PP1/R1B1KB1R w KQ – bm Nh4; id „ERET 030 – Initiative“;
4b1k1/1p3p2/4pPp1/p2pP1P1/P2P4/1P1B4/8/2K5 w – – bm b4; id „ERET 031 – Endspiel“;
8/7p/5P1k/1p5P/5p2/2p1p3/P1P1P1P1/1K3Nb1 w – – bm Ng3; id „ERET 032 – Zugzwang“;
r3kb1r/ppnq2pp/2n5/4pp2/1P1PN3/P4N2/4QPPP/R1B1K2R w KQkq – bm Nxe5; id „ERET 033 – Initiative“;
b4r1k/6bp/3q1ppN/1p2p3/3nP1Q1/3BB2P/1P3PP1/2R3K1 w – – bm Rc8; id „ERET 034 – Laeuferpaar“;
r3k2r/5ppp/3pbb2/qp1Np3/2BnP3/N7/PP1Q1PPP/R3K2R w KQkq – bm Nxb5; id „ERET 035 – Qualitaetsopfer“;
r1k1n2n/8/pP6/5R2/8/1b1B4/4N3/1K5N w – – bm b7; id „ERET 036 – Endspiel“;
1k6/bPN2pp1/Pp2p3/p1p5/2pn4/3P4/PPR5/1K6 w – – bm Na8; id „ERET 037 – Zugzwang“;
8/6N1/3kNKp1/3p4/4P3/p7/P6b/8 w – – bm exd5; id „ERET 038 – Endspiel“;
r1b1k2r/pp3ppp/1qn1p3/2bn4/8/6P1/PPN1PPBP/RNBQ1RK1 w kq – bm a3; id „ERET 039 – Entwicklung“;
r3kb1r/3n1ppp/p3p3/1p1pP2P/P3PBP1/4P3/1q2B3/R2Q1K1R b kq – bm Bc5; id „ERET 040 – Koenigssicherheit“;
3q1rk1/2nbppb1/pr1p1n1p/2pP1Pp1/2P1P2Q/2N2N2/1P2B1PP/R1B2RK1 w – – bm Nxg5; – id „ERET 041 – Springeropfer“;
8/2k5/N3p1p1/2KpP1P1/b2P4/8/8/8 b – – bm Kb7; id „ERET 042 – Endspiel“;
2r1rbk1/1pqb1p1p/p2p1np1/P4p2/3NP1P1/2NP1R1Q/1P5P/R5BK w – – bm Nxf5; id „ERET 043 – Springeropfer“;
rnb2rk1/pp2q2p/3p4/2pP2p1/2P1Pp2/2N5/PP1QBRPP/R5K1 w – – bm h4; id „ERET 044 – Linienoeffnen“;
5rk1/p1p1rpb1/q1Pp2p1/3Pp2p/4Pn2/1R4N1/P1BQ1PPP/R5K1 w – – bm Rb4; id „ERET 045 – Initiative“;
8/4nk2/1p3p2/1r1p2pp/1P1R1N1P/6P1/3KPP2/8 w – – bm Nd3; id „ERET 046 – Endspiel“;
4kbr1/1b1nqp2/2p1p3/2N4p/1p1PP1pP/1PpQ2B1/4BPP1/r4RK1 w – – bm Nxb7; id „ERET 047 – Entlastung“;
r1b2rk1/p2nqppp/1ppbpn2/3p4/2P5/1PN1PN2/PBQPBPPP/R4RK1 w – – bm cxd5; id „ERET 048 – Starke Felder“;
r1b1kq1r/1p1n2bp/p2p2p1/3PppB1/Q1P1N3/8/PP2BPPP/R4RK1 w kq – bm f4; id „ERET 049 – Entwicklung“;
r4r1k/p1p3bp/2pp2p1/4nb2/N1P4q/1P5P/PBNQ1PP1/R4RK1 b – – bm Nf3; id „ERET 050 – Koenigsangriff“;
6k1/pb1r1qbp/3p1p2/2p2p2/2P1rN2/1P1R3P/PB3QP1/3R2K1 b – – bm Bh6; id „ERET 051 – Verteidigung“;
2r2r2/1p1qbkpp/p2ppn2/P1n1p3/4P3/2N1BB2/QPP2PPP/R4RK1 w – – bm b4; id „ERET 052 – Starke Felder“;
r1bq1rk1/p4ppp/3p2n1/1PpPp2n/4P2P/P1PB1PP1/2Q1N3/R1B1K2R b KQ – bm c4; id „ERET 053 – Pos. Opfer“;
2b1r3/5pkp/6p1/4P3/QppqPP2/5RPP/6BK/8 b – – bm c3; id „ERET 054 – Endspiel“;
r2q1rk1/1p2bpp1/p1b2n1p/8/5B2/2NB4/PP1Q1PPP/3R1RK1 w – – bm Bxh6; id „ERET 055 – Laeuferopfer h6“;
r2qr1k1/pp2bpp1/2pp3p/4nbN1/2P4P/4BP2/PPPQ2P1/1K1R1B1R w – – bm Be2; id „ERET 056 – Zwischenzug“;
r2qr1k1/pp1bbp2/n5p1/2pPp2p/8/P2PP1PP/1P2N1BK/R1BQ1R2 w – – bm d6; id „ERET 057 – Abtausch“;
8/8/R7/1b4k1/5p2/1B3r2/7P/7K w – – bm h4; id „ERET 058 – Endspiel“;
rq6/5k2/p3pP1p/3p2p1/6PP/1PB1Q3/2P5/1K6 w – – bm Qd3; id „ERET 059 – Endspiel“;
q2B2k1/pb4bp/4p1p1/2p1N3/2PnpP2/PP3B2/6PP/2RQ2K1 b – – bm Qxd8; id „ERET 060 – Koenigsangriff“;
4rrk1/pp4pp/3p4/3P3b/2PpPp1q/1Q5P/PB4B1/R4RK1 b – – bm Rf6; id „ERET 061 – Koenigsangriff“;
rr1nb1k1/2q1b1pp/pn1p1p2/1p1PpNPP/4P3/1PP1BN2/2B2P2/R2QR1K1 w – – bm g6; id „ERET 062 – Starke Felder“;
r3k2r/4qn2/p1p1b2p/6pB/P1p5/2P5/5PPP/RQ2R1K1 b kq – bm Kf8; id „ERET 063 – Verteidigung“;
8/1pp5/p3k1pp/8/P1p2PPP/2P2K2/1P3R2/5r2 b – – am Rxf2; id „ERET 064 – Endspiel“;
1r3rk1/2qbppbp/3p1np1/nP1P2B1/2p2P2/2N1P2P/1P1NB1P1/R2Q1RK1 b – – bm Qb6; id „ERET 065 – Zwischenzug“;
8/2pN1k2/p4p1p/Pn1R4/3b4/6Pp/1P3K1P/8 w – – bm Ke1; id „ERET 066 – Endspiel“;
5r1k/1p4bp/3p1q2/1NpP1b2/1pP2p2/1Q5P/1P1KBP2/r2RN2R b – – bm f3; id „ERET 067 – Raeumung“;
r3kb1r/pbq2ppp/1pn1p3/2p1P3/1nP5/1P3NP1/PB1N1PBP/R2Q1RK1 w kq – bm a3; id „ERET 068 – Offene Linie“;
5rk1/n2qbpp1/pp2p1p1/3pP1P1/PP1P3P/2rNPN2/R7/1Q3RK1 w – – bm h5; id „ERET 069 – Koenigsangriff“;
r5k1/1bqp1rpp/p1n1p3/1p4p1/1b2PP2/2NBB1P1/PPPQ4/2KR3R w – – bm a3; id „ERET 070 – Starke Felder“;
1r4k1/1nq3pp/pp1pp1r1/8/PPP2P2/6P1/5N1P/2RQR1K1 w – – bm f5; id „ERET 071 – Ablenkung“;
q5k1/p2p2bp/1p1p2r1/2p1np2/6p1/1PP2PP1/P2PQ1KP/4R1NR b – – bm Qd5; id „ERET 072 – Zentralisierung“;
r4rk1/ppp2ppp/1nnb4/8/1P1P3q/PBN1B2P/4bPP1/R2QR1K1 w – – bm Qxe2; id „ERET 073 – Mobilitaet“;
1r3k2/2N2pp1/1pR2n1p/4p3/8/1P1K1P2/P5PP/8 w – – bm Kc4; id „ERET 074 – Endspiel“;
6r1/6r1/2p1k1pp/p1pbP2q/Pp1p1PpP/1P1P2NR/1KPQ3R/8 b – – bm Qf5; id „ERET 075 – Festung“;
r1b1kb1r/1p1npppp/p2p1n2/6B1/3NPP2/q1N5/P1PQ2PP/1R2KB1R w Kkq – bm Bxf6; id „ERET 076 – Entwicklung“;
r3r1k1/1bq2ppp/p1p2n2/3ppPP1/4P3/1PbB4/PBP1Q2P/R4R1K w – – bm gxf6; id „ERET 077 – Rochadeangriff“;
r4rk1/ppq3pp/2p1Pn2/4p1Q1/8/2N5/PP4PP/2KR1R2 w – – bm Rxf6; id „ERET 078 – Freibauer“;
r1bqr1k1/3n1ppp/p2p1b2/3N1PP1/1p1B1P2/1P6/1PP1Q2P/2KR2R1 w – – bm Qxe8; id „ERET 079 – Damenopfer“;
5rk1/1ppbq1pp/3p3r/pP1PppbB/2P5/P1BP4/5PPP/3QRRK1 b – – bm Bc1; id „ERET 080 – Raeumung“;
r3r1kb/p2bp2p/1q1p1npB/5NQ1/2p1P1P1/2N2P2/PPP5/2KR3R w – – bm Bg7; id „ERET 081 – Koenigsangriff“;
8/3P4/1p3b1p/p7/P7/1P3NPP/4p1K1/3k4 w – – bm g4; id „ERET 082 – Endspiel“;
3q1rk1/7p/rp1n4/p1pPbp2/P1P2pb1/1QN4P/1B2B1P1/1R3RK1 w – – bm Nb5; id „ERET 083 – Abtausch“;
4r1k1/1r1np3/1pqp1ppB/p7/2b1P1PQ/2P2P2/P3B2R/3R2K1 w – – bm Bg7; id „ERET 084 – Koenigsangriff“;
r4rk1/q4bb1/p1R4p/3pN1p1/8/2N3P1/P4PP1/3QR1K1 w – – bm Ng4; id „ERET 085 – Abtausch“;
r3k2r/pp2pp1p/8/q2Pb3/2P5/4p3/B1Q2PPP/2R2RK1 w kq – bm c5; id „ERET 086 – Qualitaetsopfer“;
r3r1k1/1bnq1pbn/p2p2p1/1p1P3p/2p1PP1B/P1N2B1P/1PQN2P1/3RR1K1 w – – bm e5; id „ERET 087 – Raeumung“;
8/4k3/p2p2p1/P1pPn2p/1pP1P2P/1P1NK1P1/8/8 w – – bm g4; id „ERET 088 – Endspiel“;
8/2P1P3/b1B2p2/1pPRp3/2k3P1/P4pK1/nP3p1p/N7 w – – bm e8N; id „ERET 089 – Unterverwandlung“;
4K1k1/8/1p5p/1Pp3b1/8/1P3P2/P1B2P2/8 w – – bm f4; id „ERET 090 – Endspiel“;
8/6p1/3k4/3p1p1p/p2K1P1P/4P1P1/P7/8 b – – bm g6, Kc6; id „ERET 091 – Endspiel“;
r1b2rk1/ppp3p1/4p2p/4Qpq1/3P4/2PB4/PPK2PPP/R6R b – – am Qxg2; id „ERET 092 – Vergifteter Bauer“;
2b1r3/r2ppN2/8/1p1p1k2/pP1P4/2P3R1/PP3PP1/2K5 w – – bm Nd6; id „ERET 093 – Endspiel“;
2k2Br1/p6b/Pq1r4/1p2p1b1/1Ppp2p1/Q1P3N1/5RPP/R3N1K1 b – – bm Rf6; id „ERET 094 – Damenopfer“;
r2qk2r/ppp1b1pp/2n1p3/3pP1n1/3P2b1/2PB1NN1/PP4PP/R1BQK2R w KQkq – bm Nxg5; id „ERET 095 – Damenopfer“;
8/8/4p1Pk/1rp1K1p1/4P1P1/1nP2Q2/p2b1P2/8 w – – bm Kf6; id „ERET 096 – Endspiel“;
2k5/p7/Pp1p1b2/1P1P1p2/2P2P1p/3K3P/5B2/8 w – – bm c5; id „ERET 097 – Endspiel“;
8/6pp/5k2/1p1r4/4R3/7P/5PP1/5K2 w – – am Ke2; id „ERET 098 – Endspiel“;
3q1r1k/4RPp1/p6p/2pn4/2P5/1P6/P3Q2P/6K1 w – – bm Re8; id „ERET 099 – Endspiel“;
rn2k2r/3pbppp/p3p3/8/Nq1Nn3/4B1P1/PP3P1P/R2Q1RK1 w k – bm Nf5; id „ERET 100 – Initiative“;
r1b1kb1N/pppnq1pB/8/3p4/3P4/8/PPPK1nPP/RNB1R3 b q – bm Ne5; id „ERET 101 – Entwicklung“;
N4rk1/pp1b1ppp/n3p1n1/3pP1Q1/1P1N4/8/1PP2PPP/q1B1KB1R b K – bm Nxb4; id „ERET 102 – Koenigsangriff“;
4k1br/1K1p1n1r/2p2pN1/P2p1N2/2P3pP/5B2/P2P4/8 w – – bm Kc8; id „ERET 103 – Zugzwang“;
r1bqkb1r/ppp3pp/2np4/3N1p2/3pnB2/5N2/PPP1QPPP/2KR1B1R b kq – bm Ne7; id „ERET 104 – Entwicklung“;
r3kb1r/pbqp1pp1/1pn1pn1p/8/3PP3/2PB1N2/3N1PPP/R1BQR1K1 w kq – bm e5; id „ERET 105 – Starke Felder“;
r2r2k1/pq2bppp/1np1bN2/1p2B1P1/5Q2/P4P2/1PP4P/2KR1B1R b – – bm Bxf6; id „ERET 106 – Koenigssicherheit“;
1r1r2k1/2pq3p/4p3/2Q1Pp2/1PNn1R2/P5P1/5P1P/4R2K b – – bm Rb5; id „ERET 107 – Verteidigung“;
8/5p1p/3P1k2/p1P2n2/3rp3/1B6/P4R2/6K1 w – – bm Ba4; id „ERET 108 – Endspiel“;
2rbrnk1/1b3p2/p2pp3/1p4PQ/1PqBPP2/P1NR4/2P4P/5RK1 b – – bm Qxd4; id „ERET 109 – Entlastung“;
4r1k1/1bq2r1p/p2p1np1/3Pppb1/P1P5/1N3P2/1R2B1PP/1Q1R2BK w – – bm c5; id „ERET 110 – Freibauer“;
8/8/8/8/4kp2/1R6/P2q1PPK/8 w – – bm a3; id „ERET 111 – Festung“;

Lesen Sie im GLAREAN MAGAZIN zum Thema „Teststellungen für Engines“ auch:Nightmare 2″ – 30 Albträume für Schachprogramme
… sowie aus der Reihe Brilliant Correspondence Chess Moves den 3. „Brillanten“ (BCCM) vom Dezember 2017

Computerschach: Der Engine-Test „Nightmare 2“

Ungefähre Lesezeit für diesen Beitrag: 19 Minuten

30 Albträume für Schachprogramme

von Walter Eigenmann

Vor ca. einer Dekade veröffentlichte der Autor auf seiner damaligen Website und in div. Internet-Foren eine Datensammlung namens „Nightmare“, die 30 Teststellungen für Schach-Computer-Programme beinhaltete. Diese vornehmlich taktisch geprägten Aufgaben aus den Bereichen Eröffnung, Mittelspiel und Endspiel avancierten aufgrund ihres hohen Schwierigkeitgrades schnell zu einer damals recht häufig genutzten Sammlung, wenn es darum ging, neue Schachprogramme im Hinblick auf ihre Schlagkraft beim Aufspüren anspruchsvoller Kombinationen zu prüfen.
Heute, mehr als zehn Jahre später, zeigt sich die Spielstärke der modernen Schach-Engines so deutlich verbessert, dass eine Nachfolge-Suite „Nightmare II“ angezeigt war, welche den Schwierigkeitsgrad der Aufgaben nach oben korrigierte: Alle Teststellungen wurden nun durch noch komplexere ersetzt, insgesamt beinhaltet die neue „Nightmare“-Suite erneut 30 Puzzles des höchsten Schwierigkeitsgrades.

Recherchen in vielen Datenbanken

Vorbei die schönen Anfangsjahre des Computerschachs in den 1970er und -80er Jahren, als jeder Amateur die Blechkisten - hier ein früher
Vorbei die schönen Anfangsjahre des Computerschachs in den 1970er und -80er Jahren, als jeder Amateur die Blechkisten – hier ein früher „Chess Challenger“ von Fidelity Electronics – mit einfachen Bauernopfern bezwingen konnte…

Als Quellen dienten dabei v.a. meine eigenen umfangreichen (teils früheren) Recherchen in verschiedenen Datenbanken, hie und da wurde auch eine besonders interessante Stellung in einschlägigen Computerschach-Foren entdeckt. Weiters durchforstete ich einige neuere Buchpublikationen – darunter namentlich Veröffentlichungen von John Nunn und John Watson – sowie internationale Schach-Magazine. Die schwierigsten, spricht tiefsten Kombinationen finden sich aber naturgemäß in modernen Studien-Sammlungen sowie in den Datenbanken der aktuellen Fernschach-Server.

... während heutzutage ein kleines 2-MB-Programm wie der amtierende Weltmeister
… während heutzutage ein kleines 2-MB-Programm wie der amtierende Weltmeister „Komodo“ mit fast der gesamten menschlichen Grossmeister-Gilde aufräumt

Meine persönliche Einschätzung der neuen „Nightmare“-Aufgaben als besonders anspruchsvolle beruht im wesentlichen auf Stichproben mit einigen führenden Engines im Computerschach-Bereich. Die Analysen erarbeitete ich vorwiegend mit dem Freeware-Programm „AsmFish“ (einem schnellen Assembler-Derivat von „Stockfish“), dessen Stellungsbewertung meines Erachtens zu den momentan zuverläßigsten der aktuellen Engine-Szene gehört, sowie mit dem (bereits etwas älteren) Interface „Deep Shredder“. Dieses weist ein besonders nützliches Feature auf, nämlich die sog. „Computerassistierte Partieanalyse“: Für jeden bereits untersuchten Varianten-Zug lässt sich dessen „Stellungswert“ abspeichern, womit die interaktive Analyse bzw. die Eliminierung unproduktiver Variantenzweige merklich beschleunigt werden kann.

15-30 Sekunden Zeit pro Stellung

Das menschliche Vorstellungsvermögen zu reproduzieren ist für Maschinen oft unmöglich, und wenn dann noch Glanzzüge eines Schachgenies wie Garry Kasparov gefunden werden sollen, ist meist Endstation für Programme - wie z.B. in der obigen Stellung (aus Kasparov-Andersson, Reykjavik 1988), wo ein absoluter Winner versteckt ist. Weiß zieht und gewinnt - findet Ihr Lieblingsprogramm die Lösung innerhalb einer Minute?
Das menschliche Vorstellungsvermögen zu reproduzieren ist für Maschinen oft unmöglich, und wenn dann noch Glanzzüge eines Schachgenies wie Garry Kasparov gefunden werden sollen, ist meist Endstation für Programme – wie z.B. in der obigen Stellung (aus Kasparov-Andersson, Reykjavik 1988), wo ein absoluter Winner versteckt ist. Weiß zieht und gewinnt – findet Ihr Lieblingsprogramm die Lösung innerhalb einer Minute?

Es gibt heutzutage nicht mehr allzu viele Stellungstypen, die von modernen Schachprogrammen grundsätzlich nicht innerhalb von ca. 30 Sekunden gelöst werden könnten – auch ohne dass man mittels „Special-Tuning“ ihrer Voreinstellungen ( = Rumschrauben an ihren Parametern) extra „schummeln“ müsste.
Gleichwohl ist es gerade anhand von solchen Stellungstests interessant herauszufinden, welches Programm bei welchen Positionen auf Anhieb reüssiert oder nicht – Erkenntnisse, die dann wiederum z.B. in der taktischen Nachbearbeitung von eigenen Turnierpartien oder als Unterstützung im Fernschach zugute kommen können.

Die modernen Engines mögen noch so tief rechnen - der sog.
Die modernen Engines mögen noch so tief rechnen – der sog. „Horizont-Effekt“ holt sie doch immer wieder ein: Dass in der obigen Stellung (aus einer Fernschach-Partie Smith-Gach 1999) der Weiße einfach nur die Damen tauschen und dann das Bauern-Endspiel nach Hause schaukeln kann, sehen auch viele Spitzenprogamme (noch) nicht.

Meine subjektive Vorgabe an eine moderne Engine ist darum: Wenn ein Programm (mit den implentierten Default-Einstellungen ihres Programmierers) auf aktueller Durchschnitts-Hardware eine korrekte Teststellung nicht innerhalb einer halben Minute lösen kann, hat sie Verbesserungspotential…
Jenen Schachfreunden, die mit „Nightmare II“ eigene Engine-Tests durchführen wollen, empfehle ich also eine Bedenkzeit von 15-30 Sekunden pro Stellung mit ca 1-2 GB Hash auf einem Rechner mit mind. 2 Cores (64-Bit) und mind. 2.1-GHz-Prozessor (optional zuzüglich Endspiel-Tablebases). Für starke moderne Prozessoren sollte die BZ maximal 15 Sek. betragen. –

Alle 30 Aufgaben interaktiv nachspielen

English Summary
In 2005 I published a collection of test positions for chess engines, called „Nightmare“. It was a set of 30 very difficult Puzzles. Today, more than ten years later, the modern engines are much stronger. So I created a new collection with 30 new hard positions. I found them in books, in chess forums, in studies databases a.o. (You can download all 30 positions as a EPD-File for your own experiments; with a fairly fast CPU, you should try 60 seconds per puzzle/engine ). Have fun with „Nightmare II“ !

Ich habe die ganze Sammlung als EPD-File aufbereitet (siehe Download-Link unten); dieses kann man bei eigenen Experimenten in die entspr. Schachoberfläche kopieren und dann von den Engines zum Lösen abarbeiten. Besonders geeignete Schach-Interfaces hierzu sind u.a. „Arena“, „Fritz“ und „Shredder“.

Die Analysen für alle 30 Positionen finden sich oben explizit aufgelistet. Ein Mausklick auf einen Zug oder eine Variante öffnet ein Analysefenster, in dem die Stellungen/Verzweigungen interaktiv nachgespielt werden können, Download-Option als PGN-File inklusive.

Extreme Herausforderungen für die Schachprogrammierung

Test-Empfehlung
♦ Bedenkzeit pro Stellung/Engine: 15-30 Sekunden ♦ Hash-Memory: mind. 1 GB ♦ Prozessor: mind. 2 CPU/Cores & mind. 2.1-GHz-Prozessor

Die Teststellungen von „Nightmare II“ sind nicht prinzipiell unlösbar für Computer, und bei jeder Stellung dürfte wohl irgend eine Engine irgendwann fündig werden. Aber „Nightmare II“ ist mit Sicherheit für Schachprogramme insgesamt ein einziger Albtraum, weil alle Puzzles den Finger in die vier größten, sich gegenseitig bedingenden, ja quasi genetischen Defizite des computergestützten Schachs legen: Zugzwang, Horizonteffekt, Berechnungstiefe und Stellungsbewertung.
Den beiden letzteren Baustellen ist die heutige Schachprogrammierung bereits sehr fortgeschritten zu Leibe gerückt; insbesondere die taktische Durchschlagskraft sorgt schon längst dafür, dass der Mensch gegen die Maschine inzwischen chancenlos ist. Ein paar letzte Bastionen bleiben noch – wie eben „Nightmare II“ recht eindrücklich dokumentiert…
Der Autor wünscht viel Spaß bei eigenen Engine-Experimenten! ♦

(Mausklick auf einen Zug oder eine Variante öffnet ein Anlayse-Fenster mit der Option zum Partien-Download (Button rechts unten).

Alternativ lässt sich hier die ganze Sammlung downloaden als PGN-Datei

PS: Ursprünglich suchte diese Aufgabe nur nach der Lösung 1.h4!! Leider fand ich zu spät heraus, dass die Teststellung eine Nebenlösung hat mit Lb3!! Diese wird von den meisten Engines in kürzester Zeit entdeckt…

Die 30 Aufgaben als EPD/FEN-Strings

r4rk1/1bq1bppp/p1npp3/2nB1NP1/1p2P3/2N1B3/PPP1QP1P/2KR2R1 w – – bm Qh5; id „Nightmare II-01 – Koenigsangriff“;
5nr1/2Pp2pk/3Pp1p1/4P1P1/6P1/5K2/8/7n w – – bm c8=N; id „Nightmare II-02 – Springerumwandlung“;
1rb2r1k/3p1pp1/p3p2p/1p2P3/4q3/1N2B1R1/PPP1N1P1/2KR1B2 w – – bm Nf4; id „Nightmare II-03 – Initiative“;
r2qrb1k/3n2p1/p2p3p/1p1b4/Pnp1N1N1/5R1P/1P3PP1/1BBQR1K1 w – – bm Nxh6; id „Nightmare II-04 – Springeropfer“;
6k1/bpR5/8/7K/8/3p4/1Rb2rpB/8 w – – bm Rbxb7; id „Nightmare II-05 – Endspiel T&T&L vs T&L&L&B“;
8/4kpp1/1pQq3p/p7/P7/3P2P1/2P2P1P/6K1 w – – bm Qxd6+; id „Nightmare II-06 – Endspiel D vs D“;
6r1/6r1/2p1k1pp/p1pbP2q/Pp1p1PpP/1P1P2NR/1KPQ3R/8 b – – bm Qf5; id „Nightmare II-07 – Festung“;
2r1k1r1/3q4/p1nBpp1p/8/B5p1/4RbK1/PP1Q1P1P/2R5 w – – bm h4, Bb3; id „Nightmare II-08 – Offene Linie“;
7k/1p5p/2qpn1PP/Pp1p4/8/3B2p1/3B1pP1/R4K2 w – – bm a6; id „Nightmare II-09 – Patt“;
2b1r3/r2ppN2/8/1p1p1k2/pP1P4/2P3R1/PP3PP1/2K5 w – – bm Nd6+; id „Nightmare II-10 – Endspiel T&S&B vs T&T&L“;
r5k1/p1pb2bp/3p3r/P1pPp1p1/2B1Pq2/1R2QPp1/1P4PP/5RBK b – – bm Rxh2+; id „Nightmare II-11 – Koenigsangriff“;
4K2k/1pQp3p/1R4p1/1P4P1/8/3P3P/1q3r2/8 w – – bm Qd8; id „Nightmare II-12 – Endspiel D&T vs D&T“;
2k2Br1/p6b/Pq1r4/1p2p1b1/1Ppp2p1/Q1P3N1/5RPP/R3N1K1 b – – bm Rf6; id „Nightmare II-13 – Koenigsangriff“;
r1bqr1k1/3n1ppp/p2p1b2/3N1PP1/1p1B1P2/1P6/1PP1Q2P/2KR2R1 w – – bm Qxe8+; id „Nightmare II-14 – Damenopfer“;
4K1k1/8/1p5p/1Pp3b1/8/1P3P2/P1B2P2/8 w – – bm f4, Bd1; id „Nightmare II-15 – Endspiel L vs L“;
2r2k2/8/8/3Rp1N1/2P3K1/8/2p4B/8 w – – bm Ne6+; id „Nightmare II-16 – Endspiel T&L&S vs T&B“;
8/4nk2/1p3p2/1r1p2pp/1P1R1N1P/6P1/3KPP2/8 w – – bm Nd3; id „Nightmare II-17 – Endspiel T&S vs T&S“;
r1b2rk1/2q1bppp/p2pp3/2n3PQ/1p1BP3/1BN5/PPP2P1P/2KR2R1 w – – bm Bf6; id „Nightmare II-18 – Koenigsangriff“;
5B2/1p1nNp2/8/1P2R3/3p3q/8/p1K1P1Q1/k3b3 w – – bm Ng6; id „Nightmare II-19 – Springeropfer“;
r3r1k1/pp1q1p2/2p2npb/PPPp4/3Pp3/2NNPpP1/1R1B1P1K/3Q3R b – – bm Kg7; id „Nightmare II-20 – Starke Felder“;
1r6/4k3/r2p2p1/2pR1p1p/2P1pP1P/pPK1P1P1/P7/1B6 b – – bm Rxb3+; id „Nightmare II-21 – Endspiel T vs T“;
r1q2rk1/ppp1bp2/6p1/3pNPn1/7p/2PP3P/P6B/1R1Q1RK1 w – – bm f6; id „Nightmare II-22 – Bauernopfer“;
1k6/bPN2pp1/Pp2p3/p1p5/2pn4/3P4/PPR5/1K6 w – – bm Na8; id „Nightmare II-23 – Zugzwang“;
7q/P3RP2/2p2n2/8/N7/p7/2B5/k1K2b2 w – – bm a8=Q; id „Nightmare II-24 – Endspiel T&L&S vs D&L&S“;
r1q2k2/pppb3r/2n1pBp1/3pPp1p/3P1Q1P/P2B4/2P2PP1/R3K2R w KQ – bm g4; id „Nightmare II-25 – Linienoeffnen“;
r5k1/6b1/2Nq4/2pP1p2/p1P1pPr1/Pp6/3R2PQ/1K3R2 b – – bm e3; id „Nightmare II-26 – Raeumung“;
r3kb1r/4Pp2/pn3P2/1pp3B1/2p5/2N3P1/PP3P1P/3RKB1b w kq – bm h4; id „Nightmare II-27 – Initiative“;
N7/8/2KQ2rp/6k1/3p3p/2p4P/4PP2/5N2 w – – bm f4+; id „Nightmare II-28 – Endspiel D&S vs T&B“;
Nn6/8/6r1/8/K7/1P6/1R6/3k2N1 w – – bm Ka3; id „Nightmare II-29 – Endspiel T&S&S vs T&S“;
r3rnk1/1bq1bpp1/pp2p3/3pP2Q/P4p2/1NNB1R2/1PP4P/2KR4 w – – bm Rg1; id „Nightmare II-30 – Koenigsangriff“;

EPD-Download (zip)

Lesen Sie im Glarean Magazin zum Thema „Testaufgaben für Schachprogramme“ auch über den Endspiel-Stellungstest von Walter Eigenmann (E-E-T)

… und lesen Sie ausserdem den großen Report: Die besten Online-Schach-Portale

Computerschach: Die Endspiel-Tabellen in der Praxis

Ungefähre Lesezeit für diesen Beitrag: 5 Minuten

Nutzen und Schaden der Endgame-Tablebases

von Walter Eigenmann

Seit der amerikanische Informatiker Ken Thompson vor über 20 Jahren erstmals seine Datenbanken mit kompletten Lösungen von Schach-Wenigsteine-Positionen generierte, reißt die Diskussion unter den Computerschach-Experten nicht ab darüber, ob bzw. in welchem Ausmaße solche Endspiel-Tabellen (Endgame-Tablebases) die Performance eines Schachprogrammes positiv beeinflussen. Inzwischen haben Thompsons russischer Berufskollege Jewgeni Nalimov und andere (z.B. Meyer-Kahlen: Shredderbases/SB; Pfister&Shawul: Bitbases/EGBB) die Indizierung der 3-6-Steiner-Endspiele soweit vorangetrieben, dass sie den Programmen bzw. Interfaces praktisch vollständig und (heutzutage) fast in Echtzeit zur Verfügung stehen. Am häufigsten in der Computerschach-Praxis eingesetzt wird dabei die Nalimov-Datenbank (EGTB), welche sämtlichen 3-5-Steiner umfasst, und die mittlerweile von den meisten führenden Schach-Engines unterstützt wird.

Von Engine zu Engine unterschiedliches Zugriff-Handling

Unix-Entwickler und Computerschach-Pionier: Ken Thompson (*1943)
Unix-Entwickler und Computerschach-Pionier: Ken Thompson (*1943)

Nun werden bei der Anbindung dieser Datenbanken in die Engine-Struktur von Programmierer zu Programmierer unterschiedliche und darum auch unterschiedlich effiziente Wege beschritten. Wo manches Programm schon früh im Endspiel exzessiv auf diese Bases zugreift, rechnen andere Engines noch lange selbstständig, und während gewisse Engines sehr viel Endspiel-Knowhow einfach an die „Nalimovs“ zu delegieren scheinen, erreichen andere Programme ohne jegliche EGTB-Hilfe ebenso gute oder gar bessere Endspiel-Resultate. Welche Schachprogramme profitieren also wie sehr von diesen „sagenumwobenen“ Endspiel-Datenbanken? Oder wird deren Einfluss grundsätzlich überschätzt? Mehr noch: Können Engines sogar „ausgebremst“ werden durch EGTB?
Um ein wenig (praktisch vielleicht nutzbares) Licht in dieses (theoretisch ziemlich umkämpfte) Performance-Dunkel zu bringen, hat der Autor eine Testreihe mit über zwei Dutzend Schachprogrammen durchgeführt. Letztere hatten einmal mit, einmal ohne Bases (alle 3-5-Steiner) die 100-teilige, in der Computerschach-Szene recht verbreitete Endspiel-Aufgaben-Sammlung E-E-T zu durchlaufen. Die Auswahl der Programme wurde dabei mehr oder weniger zufällig vorgenommen, wiewohl alle verwendeten Engines heute auch in den einschlägigen CS-Turnieren eingesetzt werden: Single- und Dual-Core-, alte und neue, Freeware- und kommerzielle Engines (was halt gerade sich so auf der Festplatte des Autors tummelte…) Die Programme hatten (auf einem gewöhnlichen Intel-Dual-Core6400-Rechner unter dem Fritz10-Interface mit 128MB Hash & 64MB TB-Hash auf Harddisk) für jede Aufgabe jeweils exakt 60 Sekunden Zeit.

100 Prüfsteine für die Programme: Der E-E-T  („Eigenmann-Endspiel-Test“)

Der E-E-T entstand 1997 und wurde bewusst als Sammlung konzipiert, die nicht Tablebases-sensitiv sein sollte: Die 100-teilige Suite enthält kaum 7- und keine 6- oder gar 5-Steine-Positionen; der E-E-T fragt also nicht in erster Linie die Güte der technischen EGTB-Anbindung ab, sondern die beiden Computerschach-relevanten Parameter „Endspielwissen“ und „Rechentiefe“. Über das schachtheoretische Design des E-E-T ist unter obigem Link das Nähere zu erfahren; bezüglich des reinen Tablebase-Aspektes enthält der E-E-T Beispiele aller vier wichtigen Abteilungen:

A) Endspiel-strategische Aufgaben, die für Schachprogramme, ob mit oder ohne EGTB, schwierig zu lösen sind – beispielsweise:

Kategorie A) VanScheltinga 1941_E-E-T Nr.65

Königswanderung (E-E-T 065): 1.Kc2! a2 2.Kb2 Ta3 3.Ka1 Ta4 4.a7 Ta6 5.f5 exf5 6.e6 f4 7.Th8 f3 8.a8D Txa8 9.Txa8 f2 10.Ta7+ +-

B) Endspiel-taktische Aufgaben, die für Schachprogramme, ob mit oder ohne EGTB, (fast) immer lösbar sind – beispielsweise:

Kategorie B) Chispa-Gothmog 2003_E-E-T Nr.20

Zu vermeidender taktischer Reinfall (E-E-T 020): 57…g3? 58.hxg3 fxg3 59.Ld6 g2 60.Lh2 Kf6 61.a5 Kf5 62.Kxb7 +-

C) Aufgaben, die von Schachprogrammen mit EGTB meist schneller lösbar sind – beispielsweise:

Kategorie C) Weichert 1968_E-E-T Nr.78

Forcierte Abwicklung in die 5-Steiner (E-E-T 078): 1.Tf6+! Ke7 2.Ta6 bxa2 3.Txa3 Sb3+ 4.Kb2 a1D+ 5.Txa1 Sxa1 6.Le4 =

D) Aufgaben, deren Berechnung die Schachprogramme meist verlangsamt, wenn EGTB im Einsatz sind – beispielsweise:

Kategorie D) Reti 1929_E-E-T Nr.07

Weitzügiges Tempo-Spiel (E-E-T 007): 1.Kd3! Kg3 2.Ke3 Kh4 3.Kd4 Kg4 4.Ke4 Ld8 5.Ke5 g6 6.d6 La5 7.f5 Kxg5 8.f6 +-

Die Test-Resultate

1. Sie bestätigen insgesamt, dass der Einfluss der Endspiel-Datenbanken offensichtlich überschätzt wird. Denn bei den meisten Programmen sind durchaus leicht, aber statistisch vernachlässigbar positive Resultate durch den EGTB-Einsatz nachweisbar.

2. Es sind allerdings deutliche Ausnahmen zu verzeichnen.
Ein überdurchschnittlich besseres Ergebnis mit EGTB erzielen die Programme Hiarcs, Fritz, Colossus, SmarThink und ChessTiger.

3. Ein schlechteres Ergebnis mit EGTB resultierte bei den (Uralt-)Engines Gandalf, Nimzo und AnMon sowie massiv bei WildCat, (während das „Schlusslicht“ Homer grundsätzlich mit der Partiephase Endspiel nicht viel am Hut hat…) – –

Engine                             Gelöste    Differenz
                                   Aufgaben
Rybka3(2CPU)__Mit EGTB             75
Rybka3(2CPU)__Ohne EGTB            74         1
Zappa MexicoII(2CPU)__Ohne EGTB    71
Zappa MexicoII(2CPU)__Mit EGTB     71         0
Colossus2008b__Mit EGTB            69
Colossus2008b__Ohne EGTB           63         6
Hiarcs11.2__Mit EGTB               68
Hiarcs11.2__Ohne EGTB              59         9
Movei00.8.438__Mit EGTB            66
Movei00.8.438__Ohne EGTB           62         4
Fritz11__Mit EGTB                  64
Fritz11__Ohne EGTB                 58         6
Naum3.1(2CPU)__Mit EGTB            66
Naum3.1(2CPU)__Ohne EGTB           62         4
SmarThink1.00__Mit EGTB            61
SmarThink1.00__Ohne EGTB           55         6
ChessTiger2007.1__Mit EGTB         60
ChessTiger2007.1__Ohne EGTB        52         8
DeepShredder11(2CPU)__Mit EGTB     58
DeepShredder11(2CPU)__Ohne EGTB    57         1
Fruit05/11/03__Mit EGTB            57
Fruit05/11/03__Ohne EGTB           55         2
WildCat8__Ohne EGTB                56
WildCat8__Mit EGTB                 48         8
Yace0.99.87__Mit EGTB              56
Yace0.99.87__Ohne EGTB             53         3
Pharaon3.5.1(2CPU)__Mit EGTB       55
Pharaon3.5.1(2CPU)__Ohne EGTB      53         2
The Baron1.8.1__Mit EGTB           53
The Baron1.8.1__Ohne EGTB          50         3
Gandalf6.0__Ohne EGTB              51
Gandalf6.0__Mit EGTB               47         4
Crafty23.00(2CPU)__Mit EGTB        48
Crafty23.00(2CPU)__Ohne EGTB       47         1
Junior10.1__Mit EGTB               47
Junior10.1__Ohne EGTB              43         4
Anaconda2.0.1__Mit EGTB            46
Anaconda2.0.1__Ohne EGTB           43         3
Nimzo8__Ohne EGTB                  45
Nimzo8__Mit EGTB                   42         3
Quark2.35__Mit EGTB                39
Quark2.35__Ohne EGTB               37         2
SOS5__Mit EGTB                     36
SOS5__Ohne EGTB                    35         1
AnMon5.60__Ohne EGTB               29
AnMon5.60__Mit EGTB                28         1
Delphil1.9__Mit EGTB               26
Delphil1.9__Ohne EGTB              23         3
Homer2.0__Ohne EGTB                24
Homer2.0__Mit EGTB                 22         2

(Gegegebenfalls wird die Liste nächstens mit zusätzlichen Programmen erweitert. Im übrigen ließe sich natürlich der Test auch auf andere Formate wie z.B. die Bitbases ausdehnen, das experimentelle Feld ist hier ein großes. Weiters wäre zu testen, welche Ergebnisunterschiede zwischen der langsameren Festplatten- und der schnelleren USB-Stick-Verwendung beim Einsatz der Bases bestehen.)

Download einer Excel-Tabelle mit allen Einzel-Resultaten: Die Nalimov-EGTB im Endspiel-Test

Lesen Sie im Glarean Magazin zum Thema Endspiele auch über Karsten Müller: Schachendspiele für Kids

Computerschach: 4. Version des Swiss-Test

Ungefähre Lesezeit für diesen Beitrag: 7 Minuten

Der Schach-Swiss-Test mit „avoid moves“

von Walter Eigenmann

Großmeister können es, Weltmeister tun es, Amateure möchten es, und Patzer sollten es – nämlich das, was im Schach die Klasse von der Masse unterscheidet: Das Vermeiden schlechter Züge. Genau dieses für jede Schach-Performance Fundamentale liegt auch dem Swiss-Test, einer 64-teiligen Computerschach-Test-Sammlung zugrunde, welche insofern ungewohnte Wege geht, als ihre Stellungen jeweils nicht nach dem einzigen richtigen Zug fragen, sondern mit einem verführerischen falschen locken.

Der vorletzte Fehler gewinnt

Ein praktizierender Schachspieler – gleich welcher Stärke – erfährt bei jedem Turnier (oft schmerzlich) von neuem, dass der Erfolg keineswegs (nur) von seinen gefundenen guten, sondern vielmehr (auch) von den vermiedenen schlechten Zügen bestimmt wird. Kaum je die Tops, sondern mindestens ebenso sehr die Flops entscheiden über den Ausgang von Partien – von der Welt des Blitz- und Rapid-Schachs noch gar nicht geredet.
Selbstverständlich, es gibt sie durchaus, jene Genie-Blitze der Aljechins und Kasparows, die quasi aus heiterem Himmel mit Donnergetöse die feindliche Stellung in Schutt und Asche legen. Aber man schaue sich in der Schachliteratur der großen Kommentatoren von Keres bis Karpow mal genau an, was diesen ach so fetten Doppel-Ausrufezeichen in vielen Fällen vorausgeht. Man ahnt es: ein ebenso dickes Fragezeichen für den Verlierer. In aller Munde ist ja unter Schachspielern auch das treffende Bonmot Tartakowers: „Der vorletzte Fehler gewinnt“.
Was in der Schach-Welt des Menschen gilt, ist nicht wesentlich anders im Maschinen-Schach. Hier die Fehler bzw. die zweit- bis viertklassigen Züge herauszufischen ist allerdings sehr viel aufwändiger, als in (gut kommentierten) Büchern bzw. Datenbanken mit „humanoiden“ Partien zu stöbern. Denn Schach-Programme sind längst zu taktisch omnipotenten Kombinations-Aliens mutiert, deren „Fehler“ nur noch nachzuweisen sind mit Hilfe von – Schach-Programmen…

SwissTest4, Rybka22-Naum21, CompGame 2007
11.axb4? Lxb4 12.Db3 Tc8 13.Tc1 Da5 14.Kd2 0-0 15.Ld3 Tc7 16.Sg1 f6 17.exf6 e5 -+ (SwissTest4, Rybka22-Naum21, CompGame 2007)

Gleichwohl findet, wer geschickt (und hartnäckig genug) sucht, auch in der modernen Software-Gewinnpartie jenen berühmten „Knick“, der die „ausgeglichene“ Remis-Stellung zur Schwarz- oder Weiß-lastigen Problem-Position kippen lässt. Wobei man sich bei der entspr. Recherche keinesfalls auf die – von den GUI’s in die Partien geschriebenen – automatischen Engine-Bewertungs-Outputs der Programme selber verlasse! Diese sind selten präzis oder auch nur realistisch, vielmehr meist zufällig bzw. willkürlich, weil sie weniger mit Stellungseinschätzung denn mit programmiertechnisch begründeter Zug-Generierung zu tun haben. An der oft zeitintensiven interaktiven Analyse mit Hilfe hierfür besonders geeigneter Engines führt leider kein Weg vorbei…

Für Anwender und Programmierer…

Von Anfang an – der SwissTest liegt mittlerweile hier in seiner vierten, stark erweiterten Fassung vor – schwebten mir zwei Zielsetzungen vor:
1. Dem Anwender ein schnelles Instrument an die Hand zu geben, mit welchem die ungefähre Leistungsgegend eines neuen Programms in dem mittlerweile hunderte von Engines umfassenden (und noch immer ständig wachsenden) Feld eruiert werden könne;
2. Dem Programmierer behilflich zu sein beim Verbessern seiner Engine, indem der Test Engine-Fortschritte zu dokumentieren vermöge.

Swiss Test_4_Asauskas-Malisauskas
18…Lb7?; 18…Tb8?; 18…Ld7?; 18…Ta7? 19.Df6+ Lxf6 20.gxf6+ Dxf6 (Var) 21.exf6+ Kxf6 22.Lxc5 +- (SwissTest4: Asauskas-Malisauskas, Vilnius 2004)

Dazu trägt wesentlich bei, dass die 64-teilige Suite eine spezifische Computerschach-relevante Palette der thematischen Schwerpunkte aufweist. Namentlich sind es die Schach-Motive (welche in einer gegebenen Stellung natürlich ineinanderfließen können):
– Vergifteter Bauer – Königssicherheit – Verteidigung – Grundreihe – Springermanöver – Läuferopfer – Springeropfer – Turmopfer – Qualitätsopfer – Damenopfer – Königsangriff – Entwicklung – Initiative – Linienöffnen – Prophylaxe – Starke Felder – Türme vs Dame – Vorposten – Endspiel

Drei spezielle Defizit-Bereiche bei Schachprogrammen, an denen auch modernste Engines immer noch am häufigsten kranken, erfuhren dabei eine stärkere Berücksichtigung: Die „Verteidigung“ (= der Widerstand in schlechter Stellung), die „Königssicherheit“ (involviert: der „Königsangriff“) sowie der „Vergiftete Bauer“ (= „Materialismus“).

…und für Schwache wie Starke

Bewusst beinhaltet der SwissTest (neben „klassischen“ Stellungen) vorwiegend Positionen aus der jüngeren und jüngsten internationalen Computerschach-Szene, wo die „Silikanten“ entscheidend danebenhauten, denn die Kollektion ist explizit für den Gebrauch mit Schach-Software ausgelegt. (Inwiefern sich übrigens Mensch und Maschine hinsichtlich der „Qualität“ ihrer Fehler unterscheiden, wäre ein speziell interessantes Untersuchungsfeld!)

Allen „Lösungszügen“ im SwissTest ist jedenfalls eines gemeinsam: Sie sollen nicht „gefunden“ werden. Denn diese zu vermeidenden Züge (im CS-Jargon: avoid moves bzw. „am“) führen entweder forciert zum Verlust oder sind zumindest die nachweislich schlechtesten unter mindestens zwei, oft auch drei oder noch mehr vernünftig spielbaren Zug-Alternativen. (Letztere müssen dabei keineswegs in jedem Falle eine radikale Umbewertung der gg. Stellung bedeuten, sondern können in Einzelfällen auch „nur“ eine deutliche Verstärkung des Widerstandes darstellen, ohne das Partie-Resultat letztendlich zwingend zu beeinflussen). Gleichwohl ist eben die Pointe dieser Sammlung, dass die falschen Züge äußerst verführerisch sind, zumal für Schachprogramme. Stichproben haben jedenfalls gezeigt, dass jede Aufgabe von so mancher (in entspr. Turnieren) genutzter Engine falsch „gelöst“ wird. Insgesamt ist der SwissTest aber bewusst eher bei der leichten Muse angesiedelt, denn er soll nicht nur für starke Profi-Programme, sondern auch für schwächere (Amateur-)Engines aussagekräftige Relationen liefern.

60 Sekunden pro Stellung

Swiss Test_4_Fischer-Uhlmann
30.Dxh1? e3+ 31.Kg1 Txh1+ 32.Kxh1 e2 -+ (SwissTest4: Fischer-Uhlmann, BuenosAires 1960)

Das Konzept des SwissTest wurde betont praxisrelevant gehalten:
1. Die empfohlene Bedenkzeit pro Stellung beträgt 60 Sekunden und ist damit der gängigen Praxis zahlloser internationaler Engine-Tester angenähert
2. Es wurden bewusst vorwiegend Stellungen aus dem Computerschach verwendet, um einen grösstmöglichen Bezug des Testes zu seinem Gegenstand zu gewährleisten
3. Eher „taktische“ und eher „strategische“ Positionen sind einigermaßen ausgewogen vertreten (wobei diese im Human-Schach übliche Unterscheidung im Computer-Schach nur beschränkt Sinn macht…)
4. Für die Generierung einer Rangliste ist einfach die Anzahl richtiger Lösungen einer Engine zu verwenden

(Der Name dieser mit 64 Mittel- und Endspielstellungen bestückten Test-Suite hat übrigens rein private Gründe und leitet sich aus der chronischen Verärgerung des Autors über manche Spitzenpolitiker seines Schweizer Heimatlandes ab, welche in ihrer Angst vor Fehlentscheiden lieber gleich gar nichts mehr machen… 😉

Die mitgelieferten Analysen (siehe Download) wurden sorgfältig u.a. mit starker Schach-Software erstellt, streben allerdings nicht Vollständigkeit an, sondern wollen nur das Wesentliche skizzieren und schachlich weniger versierten Programmierern die Hauptstränge aufzeigen, wobei jede Stellung im Header thematisch grob eingeordnet wurde.

Der SwissTest in der Praxis

Der deutsche Schachfreund, Computerschach-Experte, Engine-Tester und ehemalige Moderator des bekannten Computerschach-Forums CSS Manfred Meiler hat inzwischen über 80 alte und neue Programme über den je rund einstündigen SwissTest4-Parcours geschickt und dabei die folgende Engine-Rangliste generiert:

     Programm                 CPU      Lösungen

001. RobboLito 0.085e4         1       55
002. Rybka 3                   2       52
     Rybka 3 Dynamic           2       52
     Rybka 3 Human             2       52
005. Rybka 3                   1       51
006. Rybka 3 Dynamic           1       50
007. Rybka 3 Human             1       49
     Ryba 2.3.2a               1       49
009. Stockfish 1.5.1           2       48
010. Fritz 12                  1       46
     Protector 1.3.2           2       46
     Zappa Mexico II           2       46
     Cyclone xTreme            2       46
014. Glaurung 2.2              2       44
     Rybka 2.2n2               2       44
     Toga II 1.4.2JD           2       44
017. Fritz 11                  1       43
     Shredder 12 UCI           1       43
     Spark 0.3                 1       43
     LoopMP 12.32              2       43
     Zappa Mexico II           1       43
022. Bright 0.4a               2       42
     Frenzee feb08             1       42
     Hiarcs 11.2               1       42
025. Shredder 11 UCI           1       41
     Rybka WinFinder 2.2       2       41
     Fruit 05/11/03            1       41
     Movei00_8_438             1       41
029. Bright 0.3a               2       40
     Toga II 1.3.1             1       40
     Protector 1.3.1           2       40
032. Glaurung 2.1              2       39
     Fruit 2.3.1               1       39
034. Fritz 10                  1       38
     Critter 0.42              1       38
     Strelka 2.0 B             1       38
037. LoopMP 12.32              1       37
     Doch 09.980               1       37
039. Twisted Logic 20080620    1       36
     Spike 1.2 Turin           1       36
     ProDeo 1.6                1       36
042. Twisted Logic 20090922    1       35
     Naum 2.0                  1       35
     Alfil 8.1.1               1       35
045. Scorpio 2.0               1       34
     The King 3.50             2       34
     Delfi 5.4                 1       34
048. Chess Tiger 15.0 aggr.    1       33
     SOS 5.1                   1       33
050. The Baron 2.23            1       32
     Ktulu 4.2                 1       32
     Crafty 23.1 (WB)          2       32
053. Ruffian 2.1.0             1       31
     Crafty 22.01 (CB)         2       31
     Cyrano 0.6b17             1       31
     Scorpio 2.3               1       31
     Gandalf 6.0               1       31
     Alaric 707                1       31
059. Little Goliath Evolution  1       30
     Comet B68 (CB)            1       30
061. Tornado 3.42a             2       29
     Colossus 2007d            1       29
     Pharaon 3.5.1             2       29
064. Yace 0.99.87              1       28
     Arasan 10.4 SP            1       28
     Quark 2.35                1       28
     SlowChess Blitz WV2.1     1       28
     Ufim 8.02                 1       28
069. Homer 2.01                1       27
     Anaconda 2.0.1            1       27
     Aristarch 4.50            1       27
     Jonny 2.83                1       27
073. Hamsters 0.7.1            1       26
     Nimzo 8                   1       26
     WildCat 8                 1       26
     AnMon 5.75                1       26
077. Chess Tiger 15.0 normal   1       25
078. Queen 4.03                1       24
079. BamBam                    1       23
     AnMon 5.66                1       23
081. Amyan 1.72                1       22
082. Doctor? 3.0               1       21
     AnMon 5.60                1       21
084. Monarch 1.7               1       20
 (Stand: 4.Dezember 2009)
- Hardware: Intel Core2Duo 6400 mit 2,13GHz und 2 GB RAM
- OS:       Windows Vista Home 32-Bit (mit SP1)
- GUI:      Fritz11 bzw. CB-Rybka3 mit der Funktion "Testsuite lösen",
            60 Sekunden je Aufgabe (ExtraPly=99)
- Engines:  128 MB Hash und Zugriff auf die 5-Steiner-TableBases
            (Shredder auch auf die 5men-ShredderBases)

Download (CBH – PGN – EPD / Zip-File 23KB) – (Für jene Anwender, welche neben Chessbase-GUIs noch andere Schach-Oberflächen (z.B. „Arena“,  „Shredder“ oder „Aquarium“) nutzen, ist im Download neben den CBH-Files und einer PGN-Datei auch ein EPD-Text-File integriert, womit der SwissTest problemlos portiert werden kann)

Excel-Datei (mit den detaillierten Ergebnissen aller 84 bisherigen Engine-Tests / 82KB)

Lesen Sie zum Thema Computerschach auch über den 111-teiligen Stellungstest von Walter Eigenmann: Der ERET-Test für Schachprogramme

Palmer G. Keeney: Das verrückte Schachproblem

Ungefähre Lesezeit für diesen Beitrag: < 1 Minute

Matt in 5 Zügen

von Walter Eigenmann

Sie kennen die „Unsterbliche“ (Anderssen-Kieseritzky 1851), auch die „Immergrüne“ (Anderssen-Dufresne 1853), womöglich gar die „Jahrhundertpartie“ (Byrne-Fischer 1956) oder vielleicht die „Fantastische“ (Kasparov-Topalov 1999) – aber nicht das Verrückte Schachproblem?
Hier ist es: So nannten nämlich die Richter eines bekannten Problem-Wettbewerbes der „Cincinnati Times“ den folgenden Fünf-Züger, welchen der amerikanische Schachkomponist P. G. Keeney im Jahre 1927 einreichte, und den die Richter preisgekrönt publizierten, weil er „an Verrücktheit alles in den Schatten stelle!“

Das verrückte Schachproblem

Matt in 5 Zügen – von Palmer G. Keeney

1927

Das verrückte Schachproblem
qnbn1K2/bprk1p2/p1rppP2/pPP5/B3P3/B2N4/8/8 w – – 0 1

Setzen Sie diese „Verrücktheit“ ruhig mal Ihren Schachprogrammen vor. Aber Vorsicht: Wenn sie nicht gerade von der allerneuesten Sorte sind, könnten sie verrückt werden…

Die Lösung des Schachproblems —> weiterlesen

Weiterlesen

Computerschach: 100 Endspiel-Puzzles für Programme

Ungefähre Lesezeit für diesen Beitrag: 7 Minuten

Der Schach-Endspiel-Test E-E-T

von 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. Ein neuer, spezifisch für Engines konzipierter Stellungstest mit 100 Endspiel-Puzzles ordnet die Programme auf diesem Gebiet ein.

Der E-E-T als erster Indikator der Endspielstärke

Studie von Queckenstadt (aus Walter Eigenmann: Hundert Schach-Endspiele für Computer)
Studie von Queckenstadt

Ausgehend von der Diskrepanz zwischen der Wichtigkeit der letzten Partie-Phase im aktuellen „Engine-Betrieb“ einerseits und dem Mangel an geeignetem modernem Test-Material anderseits hat der Autor 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.

Eine einheitlich-kompakte Suite

Studie von Kondratjev (aus Walter Eigenmann: Hundert Schach-Endspiele für Computer)
Studie von Kondratjev

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“ mit Computerschach-Partien, 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“.

Die Studie als Repräsentant einer Endspiel-„Idee“

Studie von Salov (aus Walter Eigenmann: Hundert Schach-Endspiele für Computer)
Studie von Salov

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.

Mittelschwere Aufgaben und thematisch breites Feld

Studie von Sämisch (aus Walter Eigenmann: Hundert Schach-Endspiele für Computer)
Studie von Sämisch

5. Der (vorläufige, weil ja 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.

Studie von Van Sheltinga (aus Walter Eigenmann: Hundert Schach-Endspiele für Computer)
Studie von Van Sheltinga

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           64          61
 4. Deep Frenzee       61          61
 5. Hiarcs 11.1        59          59
(siehe auch hier betreffend Einfluss der "Nalimovs" auf die Endspielperformance verschiedener Schach-Programme)

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…;-)

Download-Möglichkeiten für div. Anwendungssoftware

Der Download aller notwendigen Dateien beinhaltet neben den (alphabetisch nach Material sortierten) Stellungen&Analysen im PGN-Format auch ein EPD-File für den Import in alle gängigen Schach-GUIs sowie eine Excel-Tabelle. Hier lässt sich eine CBH-Datei (gepackt als CBV) für Chessbase-Anwender runterladen.

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

Nachtrag 2016

Die obigen Resultate stammen aus dem Jahre 2007. Heute, fast 10 Jahre später, zeigt sich – mit neuen, moderneren Programmen und auf deutlich schnellerer Hardware – ein ganz anderes Bild (siehe untenstehende Tabelle). Die 100 Aufgaben des EET sind für heutige Engines keine wirkliche Herausforderung mehr, manche von ihnen lösen vier Fünftel aller Puzzles oder noch mehr.

Was hingegen gleich geblieben ist, ist die recht hohe Übereinstimmung der EET-Rangliste mit den aktuellen Ranglisten, wie sie sich präsentieren bei den beiden bekanntesten Computerschach-Testreihen CEGT und CCRL. Ein Beweis u.a. auch dafür, dass ein deutlicher Zusammenhang besteht zwischen der Performance im Turnier-Betrieb einerseits und den Endspiel-Fähigkeiten eines Programmes andererseits.

  1. Stockfish 7 ......... 88/100
  2. Komodo 10.1 ......... 85/100
  3. Houdini 4 ........... 80/100
  4. Fritz 15 ............ 80/100
  5. NirvanaChess 2.3 .... 80/100
  6. Critter 1.6 ......... 77/100
  7. Rybka 4.1 ........... 77/100
  8. Equinox 3.30 ........ 76/100
  9. Andscacs 0.87 ....... 73/100
  10. Gull 3.0.1 .......... 68/100

(15 sec. pro Stellung auf Intel (4Cores) – 3GHz – 64bit – 512 Mb Hash)

Lesen Sie im Glarean Magazin zum Thema Computerschach auch über den ERET-Stellungstest (Neue Testaufgaben für Programme)

Computerschach: Die Aufgaben-Sammlung „The Nightmare“

Ungefähre Lesezeit für diesen Beitrag: 19 Minuten

Extreme Herausforderungen für Schachprogramme

von Walter Eigenmann

Troitzky 1928 - Chess Puzzle - Schachaufgabe - Nightmare - Le2
„The Nightmare“ Nr. 5: Weiss am Zuge gewinnt

„The Nightmare“ ist eine Sammlung von 30 extrem schwierigen Schach-Aufgaben, die zu lösen auch für moderne Software ein ganz besonderer „Albtraum“ darstellen dürfte.
Denn diese Mittel- und Endspiel-Stellungen sind nicht einfach „nur“ schwierig, sondern sie legen den Finger jeweils gezielt in die quasi „strukturellen“ Wunden der Schachprogrammierung. Die entspr. Stichworte sind z.B. Horizonteffekt, Nullmove, Stellungsbewertung, Positionelles Verständnis.

Schwierig, aber nicht unmöglich

Trotzdem sind die 30 Chess Puzzles nicht grundsätzlich unlösbar für Schach-Engines, und für die Programmierer dürfte es dementsprechend aufschlussreich sein, wie lange die eigene Engine jeweils zu knabbern hat.

Anwendern, welche die Sammlung als Test-Suite für ihren persönlichen Engines-Park verwenden möchten, empfehle ich (unter flotter Hardware) eine Bedenkzeit von mindestens 30, ansonsten mindestens 60-90 Sekunden Bedenkzeit pro Stellung.
Die Kommentierungen wurden in besonders sorgfältiger häuslicher Analyse-Arbeit erstellt; gleichwohl können/wollen sie nicht erschöpfend sein, sondern verstehen sich angesichts der komplexen Stellungen nur als Skizzierungen.

Hier geht’s zum Download aller 30 Testaufgaben als PGN-Datei. ♦

(Mausklick auf einen Zug oder eine Variante öffnet ein Analyse-Fenster)

FEN-String: 1qrrbbk1/1p1nnppp/p3p3/4P3/2P5/1PN1N3/PB2Q1PP/1B2RR1K w – – 0 21

FEN-String: 8/3Pk1p1/1p2P1K1/1P1Bb3/7p/7P/6P1/8 w – – 0 1

FEN-String: 2rqr1k1/1p3pbp/p2p1np1/3P4/7P/2N2P1R/PPPQ2P1/2KR1B2 b – – 0 16

FEN-String: 2r3k1/6pp/3pp1P1/1pP5/1P6/P4R2/5K2/8 w – – 0 1

FEN-String: 8/2p1q3/p3P3/2P4p/1PBP2kP/2N3P1/7K/8 w – – 0 1

FEN-String: 2rq1rk1/5pbp/b2p1np1/pN1Pp1B1/1pP1P3/3Q4/R3NPPP/5RK1 b – – 0 23

FEN-String: n1QBq1k1/5p1p/5KP1/p7/8/8/8/8 w – – 0 1

FEN-String: 2b1r3/5pkp/6p1/4P3/QppqPP2/5RPP/6BK/8 b – – 0 39

FEN-String: r1b1qrk1/ppp4p/8/3Nb1Bn/2P1p3/7P/PP1Q1PP1/R3R1K1 w – – 0 17

FEN-String: 4b3/6p1/P3pp2/2p1p3/1k6/3PP3/1PK3P1/5B2 w – – 0 2

FEN-String: r2qr1k1/pp1nbppp/3p1n2/2pP2N1/2B2B2/3P4/PPP1Q1PP/4RRK1 w – – 0 14

FEN-String: 8/5b2/p7/1k6/1p6/1p1NK3/1P6/8 w – – 0 2

FEN-String: r1bqk1r1/1p1p1n2/p1n2pN1/2p1b2Q/2P1Pp2/1PN5/PB4PP/R4RK1 w q – 0 15

FEN-String: 8/8/R7/1b4k1/5p2/1B3r2/7P/7K w – – 0 1

FEN-String: 2r2rk1/p3npp1/1p2p2p/n2pPP2/q2p2PN/2PQ4/2P4P/2B1RRK1 w – – 0 20

FEN-String: 5K2/kp3P2/2p5/2Pp4/3P4/r7/p7/6R1 w – – 0 1

FEN-String: 3R4/1kr2pp1/2p1p3/1pP1PnBP/pP3K2/8/P4P2/8 w – – 0 46

FEN-String: r2r2k1/pq2bppp/1np1bN2/1p2B1P1/5Q2/P4P2/1PP4P/2KR1B1R b – – 0 18

FEN-String: r2q1r2/1b2bpkp/p3p1p1/2ppP1P1/7R/1PN1BQR1/1PP2P1P/4K3 w – – 0 19

FEN-String: 8/6pp/1K6/N5P1/3N4/8/npn1P3/k7 w – – 0 1

FEN-String: 5k2/4bp2/2B3p1/1P4p1/3R4/3P2PP/2r2PK1/8 b – – 0 53

FEN-String: 4rrk1/pp4pp/3p4/3P3b/2PpPp1q/1Q5P/PB4B1/R4RK1 b – – 0 24

FEN-String: 2r1k2r/1p2bppp/pBb1qn2/P3p3/1n2P3/1NN2B2/1PP1Q1PP/R4R1K w k – 0 18

FEN-String: R7/4kp2/P3p1p1/3pP1P1/3P1P2/p6r/3K4/8 w – – 0 1

FEN-String: r1b2r1k/4qp1p/p2ppb1Q/4nP2/1p1NP3/2N5/PPP4P/2KR1BR1 w – – 0 18

FEN-String: r3r1kb/p2bp2p/1q1p1npB/5NQ1/2p1P1P1/2N2P2/PPP5/2KR3R w – – 0 20

FEN-String: 3R3B/8/1r4b1/8/4pP2/7k/8/7K w – – 0 1

FEN-String: r1b1r1k1/2q1bppp/p1npp3/1pn3PQ/3NP3/1BN1B3/PPP2P1P/2KR2R1 w – – 0 15

 

FEN-String: 1n1q1rk1/1r2bpp1/p2pb2p/4p3/Pp2PP2/1N2B3/1PPQB1PP/3R1R1K b – – 0 20

FEN-String: k6r/8/1R6/8/1pK2p2/8/7N/3b4 w – – 0 1

Lesen Sie im GLAREAN MAGAZIN zum Thema Testaufgaben für Schachengines auch über den 64-teiligen Swiss Test mit „Avoid Moves“

Asterix-Schach-Knacknüsse: Die Unbeugsamen

Ungefähre Lesezeit für diesen Beitrag: 4 Minuten

Die Unbeugsamen

von Walter Eigenmann

Wir befinden uns im Jahre 2007 n. Chr.

Das ganze Schach ist von den Programmierern besetzt… Das ganze Schach? Nein! Ein von unbeugsamen Studien bevölkertes Dorf hört nicht auf, dem Eindringling Widerstand zu leisten. Und das Leben ist nicht leicht für die Programmierer, die als Besatzung in den befestigten Lagern Rybka, Hiarcs, Fritz und Shredder liegen…

Asterix-Schach-Die-Unbeugsamen-Glarean-Magazin
Das Dorf der Unbeugsamen, umzingelt von übermächtigen Programmen… (Zeichnung nach dem Comic Asterix)

Einige Unbeugsame

(Mausklick auf einen Zug oder eine Variante öffnet das Analyse-Fenster mit Download-Möglichkeit der betr. PGN-Datei)

Springix

FEN: 3k4/8/3N4/P7/6pb/8/6P1/2K1n3 w – – 0 1

Turmix

FEN: 8/2b5/1p6/Rp6/8/3Np3/2KpP1pp/2BB2kq w – – 0 1

Opferix

FEN: 8/2N4r/1p3pkp/8/5K1p/2P4N/P3Bn2/8 w – – 0 1

Strategix

FEN: R7/4kp2/P3p1p1/3pP1P1/3P1P2/p6r/3K4/8 w – – 0 1

Ungleichfarbix

FEN: 8/3Pk1p1/1p2P1K1/1P1Bb3/7p/7P/6P1/8 w – – 0 1

Zugzwangix

FEN: 8/1Q3r2/1p6/1p6/6N1/7k/6pN/1K5b w – – 0 1

Lesen Sie im GLAREAN MAGAZIN zum Thema Studien auch über András Mészáros: 1000 Schach-Endspiel-Studien

… sowie aus der Reihe Das Schach-Alphabet: Buchstabe H