Schach - Wo stehen wir heute? (Teil 2)

Dr. Erhard Henkes  https://www.twitch.tv/prettyhardy  
26.06.2022


Moderne Eröffnungsstudien

In früheren Zeiten waren Schachzeitungen, Schachbücher sowie nach Eröffnungen geordnete Partiesammlungen, z.B. "Informator" das Mittel der Wahl, mit denen man Eröffnungen kennenlernte und weiter entwickelte. Das Erscheinen elektronischer Datenbanken wie Chessbase erleichterte hier einiges. Man kann mit einer Stellung, mit Spielernamen und weiteren Kriterien gezielt nach Partien suchen. Die Schachengines waren im letzten Jahrhundert noch zu schwach, um bei Eröffnungen echte Impulse zu setzen. In den letzten Jahren sind Engines so stark geworden, dass sie nicht nur die weltbesten Schachmeister blass aussehen lassen, sondern auch zum Eröffnungsstudium auf dem heimischen PC geeignet sind. Heute kann man z.B. mit Stockfish 14 auf liches.org (frei, open-source) oder chess.com (kommerziell, begrenzte kostenlose Version) eine Partie in kürzester Zeit komplett analysieren lassen. Man erhält Hinweise zu Ungenauigkeiten und Fehlern sowie die jeweils beste Möglichkeit, natürlich alles aus Sicht des jeweils aktuellen Stockfish-Programms. Man kann zusätzlich selbst Zug um Zug durch eine Partie gehen und verschiedene Varianten bewerten und anzeigen lassen. Stockfish 14.1 schafft hierbei auf einem aktuellen PC rasch Halbzugtiefen von über 30. Das reicht zu einer ersten Bewertung aus. Heutige Schachbuchautoren prüfen ihre Varianten ebenfalls mit Schachengines, um nicht bessere Möglichkeiten zu übersehen. In taktischer Hinsicht sind die Engines wahre Monster. Kein Schachmatt entgeht ihnen, selbst wenn es 10 volle Züge oder mehr in der Ferne liegt.

Anders sieht es bei der positionellen Bewertung in "flachen" Umgebungen aus, also solchen, die viele etwa gleich bewertete Züge erlauben. Hier ist es möglich, dass man mit der drittbesten Option beste Partien aufs Brett zaubern kann. Man kann in diesem Fall mehrere Engines parallel einsetzen und Meisterpartien bzw. Powerbooks hinzuziehen, um für sich selbst eine Entscheidung zu treffen. Gerade mit lichess.org oder Chessbase geht das hervorragend.

Moderne Eröffnungs-Forschung

Ich möchte hier noch eine weitere Möglichkeit vorstellen, die ich als Moderne Eröffnungs-Forschung (MEF) oder englisch als Modern Opening Research (MOR) bezeichnen möchte. Ich sehe das deswegen als "echte" theoretische Forschung an, weil hierbei künstliche Partien unter Einsatz der stärksten freien Engines erzeugt und analysiert werden.

Was benötigen wir hierfür? Zunächst verwende wir ein Programm mit grafischer Benutzeroberfläche (Graphical User Interface = GUI), das es erlaubt Engine Matches oder Turniere vollautomatisch auszuführen. Die gespielten Partien sollen hierbei zur weiteren Untersuchung im pgn-File-Format gespeichert werden. Als freie Software habe ich hier Cute Chess gefunden und erfolgreich getestet.

Nun benötigen wir noch möglichst starke freie Engines, die wir in unsere GUI mittels UCI einbinden können. Für meine Forschungs-Turniere setze ich z.B. folgende leistungsfähige Engines ein:

Stockfish 14.1
RubiChess 2021
Leela Chess Zero 0.28.2
Berserk 8.5.1
Koivisto 7.0

Die Spielstärke all dieser Engines liegt über 3300 ELO. Man kann das aktuelle Rating in der CCRL 40/15 Rating List nachschlagen. Bei Stockfish finde ich aktuell 3542, Berserk 3464, Koivisto 3443, Rubichess 3430. Lediglich Lc0 wirkt mit 3377 etwas abgeschlagen. Diese Wertungen liegen ca. 500 bis 700 ELO über dem menschlichen Weltmeister Magnus Carlsen (2864).

Ich verwende einen PC mit Intel Core i9-10900X CPU @3,7 GHz und einer NVIDIA GeForce RTX 2080 SUPER Grafikkarte. Die Nutzung der Grafikkarte zum Rechnen findet nur bei Leela Chess Zero statt. Alle anderen Engines lassen ihre neuronalen Netzwerke (NN) als NNUE auf der CPU laufen, ein großer technischer Schritt der letzten Jahre.

Treten diese Engines basierend auf einer vorgegeben Stellung (FEN-Code) einrundig gegeneinander an, so erhält man 10 Partien, die man in einem Rutsch in eine lichess-Studie o.ä. in 10 Kapiteln importieren kann. In weiteren Kapiteln kann man dann das eigene Repertoire (incl. wichtiger Nebenvarianten) basierend auf diesen hochwertigen Partien und gespielten Meisterpartien definieren. Als Zeitmodus verwende ich mindesens 3 Minuten für die gesamte Partie plus 2 Sekunden Inkrement pro Zug. Dabei kann man als Kiebitz noch halbwegs mitdenken, falls man diesen Software Super-Großmeistern zuschauen möchte.  

Wir testen diese Vorgehensweise an konkreten Beispielen:

 

Zukertort-Eröffnung mit 5.g4


Dies ist eine ausgefallene Vorgehensweise in der ansonsten "ruhigen" Zukertort-Eröffnung (A 05, Zukertort, Quiet System). Die Engine Stockfish 14 in lichess.org plädiert für ein -0,6. Sollte man also eher die Finger lassen von dieser für Weiß nachteiligen Variante? Die Master Database umfasst gerade mal 10 von insgesamt 2.422.172 Partien. Wir befinden uns also im Bereich < 5 ppm (parts per million). Unser 5.g4 ?! würde den Gegner somit überraschen.

Wir merken uns den FEN Code: rnbqk2r/ppp1bppp/4pn2/3p4/2P3P1/2N1PN2/PP1P1P1P/R1BQKB1R b KQkq - 0 5

In Cute Chess fügen wir unter dem Menüeintrag Tools - Settings - Engines mit dem Plus-Symbol die von uns gewünschten Engines hinzu und richten diese bezüglich ihrer Parameter ein. Dies muss man nur einmalig durchführen. Ich verwende und empfehle die oben genannten fünf freien Engines, wobei ich Cute Chess mit dem verbreiteten Betriebssystem Windows 10 einsetze. Jetzt sind wir bereit.

Mit "New Tournament", unserem FEN-Code und der Ausgabe-Datei "Zukertort_g4.pgn" starte ich ein Round Robin (jeder gegen jeden) Turnier mit "3 min, 2 sec increment" als Zeitvorgabe.

 

Nach Bestätigen mit OK startet das Turnier. Bei Round Robin werden bei einfacher Begegnung n * (n-1) / 2 Partien gespielt. Mit fünf Engines sind das 10 Partien. In eine Lichess-Studie kann man zurzeit max. 16 Spiele per pgn importieren, sodass man max. 6 Engines (15 Partien) einsetzen sollte. Man kann, muss aber nicht, bei den Spielen zuschauen. Nachstehend ein Screenshot:

 


 

Ich stelle die Engines bei meiner CPU auf 5 Threads ein. Damit erreiche ich eine CPU-Auslastung (siehe Task Manager) von ca. 30-35% (10 Kerne, 20 logische Prozessoren). Koivisto ist eine ziemlich angriffslustige Engine. Deshalb ist die erste Partie zwischen Koivisto 7.0 (ELO ca. 3450) und Stockfish 14.1 (ELO ca. 3550) recht interessant. Sie endete bei mir mit Remis, ein positives Zeichen für die gesamte Variante. 

Ich finde es vorteilhaft, eine bestimmte Position (via FEN-Code) mit echten oder künstlichen Partien zu untersuchen. Der Vorteil besteht heute darin, dass man diese künstlichen Engine-Partien auf dem eigenen PC mit selbst gewählten Parametern durchführen und beobachten kann. Erreicht Stockfish, zurzeit die stärkste Engine, als Gegner in der Variante weitgehend Remis, dann sehe ich den gewählten Zug als "spielbar" an. Die mögliche weitere Zugfolge erhält man aus Meister- und Engine-Partien. In der Lichess Studie kann man interessante Nebenvarianten zusätzlich mit Stockfish analysieren oder bei fraglichen Positionen ein erneutes Turnier aufsetzen. Ich sehe dies als "echte" Theorie-Forschung an, vielleicht im Gegensatz zu den empirischen "Buchzügen", wobei man beliebig mischen kann. Theorie und Praxis können heute Hand in Hand gehen.        

Die zehn Partien meines Turniers habe ich in dieser Lichess Studie zusammengefasst. Man erstellt diese Studie, indem man bei "Neues Kapitel" den Reiter "pgn" auswählt und bei "Datei auswählen" das von Cute Chess exportierte pgn-File wählt. Ich setze den Partien ein Kapitel voran, das ich für meine Zusammenfassung nutze. Hier ein Screenshot vom ersten Eindruck:

Spielt Schwarz den stärksten Zug 5....c5 und 6....Se4, dann erreicht diese seltene g4-Variante keinen Vorteil.
 

Panov-Angriff mit 13.Dc5+

Vorteilhaft ist diese MEF-Methode bei "unklaren" Varianten einer Eröffnung. Es folgt als Beispiel die Variante mit 13.Dc5+ im Panov-Angriff des Caro-Kann. Die Hauptlinie setzt hier mit 13.Dxb5+ fort.


FEN: r2q1b1r/p3kppp/4p3/1nQn4/8/2N2P2/PP3P1P/R1B1K2R b KQ - 3 13
Lichess-Studie: https://lichess.org/study/nUsRrrYM (2 Gewinnpartien für Weiß, 8 Remis)
Bei beiderseitig gutem Spiel ergibt sich eine ausgeglichene Stellung.



Einfluss der Engines auf moderne Meisterpartien

Wie das Stockfish (und vielleicht auch andere Engines) die Eröffnungswahl der Meister beeinflusst, erkennt man m.E. exemplarisch an der Partie GM Jan-Krzysztof Duda gegen Richard Rapport in der ersten Runde des Kandidatenturniers am 17.06.2022 in Madrid. Duda wählte den in Meisterpartien eher ausgefallenen Zug 5.Lf4 anstelle der üblichen Züge 5.Sc3 oder 5.Sb5. Der Zug 5.Lf4 taucht in der Lichess Master Database erst an zehnter Stelle auf mit lediglich 16 Partien. Bei der Analyse mit Stockfish 14 (oder 15) sieht das völlig anders aus. Hier rangiert 5.Lf4 je nach Rechentiefe unter den ersten zwei oder drei Zügen. Damit empfiehlt sich dieser Zug für am Brett überraschende Varianten.


Auch der weitere Verlauf der Partie von Duda mit den weißen Steinen hätte von Stockfish (der "eigentliche" Schach-Weltmeister mit seinen über 3500 ELO) selbst sein können:

5. Lf4 d6 6. Sxc6 bxc6 7. Ld3 Se7 8.c4 g6 9. c5 e5 10. Lg5 Lg7 11. cxd6 Dxd6 12. 0-0 Le6

Der fünfte Zug ist auf Rang 2 oder 3 bei Stockfish und damit eine hervorragende, überraschende Abweichung. Zug sechs bis zwölf sind jeweils auf Rang 1 bei Stockfish. Das könnte eine geschickte engine-gestützte Vorbereitung sein. GM Duda steht nach dem 12. ... Le6 mit +2,4 Wertungspunkten laut SF14+ (Halbzug-Tiefe 32) besser da. Diese Wertung der Engine ist dynamischer Natur, und dieser Stellungsvorteil kann nur durch perfektes Spiel gehalten werden:

Die grünen Pfeile sind die vier "Ideen" von Stockfish, die den Vorteil (ca. +2,4) halten. In der Partie erfolgte 5. Sa3, das nur mit ca. +1,6 abgeschätzt wird. So gab Duda seinen Vorteil Stück für Stück ab. Am Schluss erfolgte ein Remis. Es ist alles andere als leicht, die vorgegebenen Pfade von Stockfish als menschlicher Spieler am Brett zu  Ende zu gehen. Dennoch ist diese Eröffnungswahl ein Beispiel, wie der Einsatz von Engines die Vorlieben in Eröffnungen verschiebt. Aus schachlichem Neuland wird dann bei häufiger Wiederholung (empirische) "Theorie", die sogenannten Buch-Züge. 

Fazit: Es kann interessant sein, sehr starken Engines eine Eröffungsstellung vorzugeben und diese dann eine ganze Partie spielen zu lassen. Mit einer GUI wie Cute Chess und den entsprechenden UCI Engines ist das kein Problem (siehe MEF).

Wir kämpfen gegen Engine "Apollo"

Auf der Suche nach einer Engine im Bereich 1800 bis 1850 ELO stieß ich auf "Apollo" auf Rang 453 der Engines.

453 Apollo 1.2.1 64-bit 1826

Mir gefiel, dass Apollo in C++ geschrieben ist und einen bereits fortgeschrittenen Versionsstand 1.2.1 aufweist. Die Engine ist open source, sodass man den Source code einsehen und selbst weiter entwickeln kann. Releases (und Source code) findet man hier. In der Projektübersicht kann man Folgendes lesen: "... UCI compatible chess engine created in c++. Apollo is built as a traditional chess engine, meaning CPU heavy with alpha-beta search and a hardcoded evaluation function at the tree leaves" und "Much inspiration has been taken from the chessprogramming wiki, the bot Godot, and some from Carballo and the CPW Engine". Damit ist diese C++ Engine auch für eigene Entwicklungen/Verbesserungen ein interessanter open source Startpunkt.

In meinem Stream gelang mir am 25.06.2022 zusammen mit meinem großartigen Chat eine wahrhaft schillernde Angriffs-Partie gegen diesen interessanten künstlichen Gegner. Man findet die Partie unter folgendem Link als Lichess-Studie: https://lichess.org/study/IEPBdOWH/bzSo83ob#0

Nach dem Fehlzug Apollos 10....Ke7 (anstelle der erwarteten Rochade) starteten wir einen Angriff mit dem forschen Zug 11.Sg5, gefolgt von 12.Sh3. Weitere Glanzzüge gelangen mit 14.e4 und 16.Lc4. Entscheidend für den Fortgang des wunderschönen Angriffs sind das positionelle Opfer 17.Sxg5 und das Opfer 23.Lf5!

Die Idee dieses Opfers zeigt sich im Zug 25.Txe4+ und 29.Te7+! Die Partie endete nach einem Husarenritt mit dem kalkulierten Schachmatt 41.Df7#.

Eine großartige Schachpartie gegen eine Engine mittlerer Stärke (durchschnittlicher Zentibauer-Verlust: 39 bis 45), die es in sich hat, aber dennoch schwache Züge liefert, die zum Angriff einladen. Meines Erachtens ist Apollo ein großartiger Sparringspartner für Vereinsspieler im Bereich über 1700 ELO, die sich vor allem im taktischen und positionellen Angriff verbessern wollen.