Vor fast 40 Jahren fing ich als Kind mit Schachspielen im Verein an. Damals war Mephisto der angesagte Schachcomputer für zu Hause. Er war relativ teuer und dennoch in der höchsten Stufe noch schlagbar.
Viele haben heute einen PC daheim. Dort kann man einstellbare, auf Wunsch unschlagbare, frei verfügbare Schachsoftware installieren.
Sie ersetzt jede dedizierte Hardware für einen Schachcomputer. Jeder kann sich folglich einen „Weltmeister“ nach Hause holen.
Zunächst aber ein paar Worte zur Entwicklung der Schachcomputer bis heute. Und dann, wie funktionieren Schachcomputer?
Was rechnet darüber hinaus ein Schachcomputer und was denkt er? Wer ist besser, Schachcomputer oder Mensch? Auch Schachcomputer untereinander im Vergleich: Was sind gute Schachcomputer? Und wie nutzt man die unschlagbaren Denker als Schachspieler richtig? Was kostet ein Schachcomputer? Was kann freie Software wie Stockfish? Doch eins nach dem anderen.
Die Anfänge bis heute
Die allererste Schachcomputer (englisch: „chess engine“) weltweit war vielleicht „Der Schachtürke„. Hier entsprechend ein Bild:
Dieser eigentliche „Schachtürke“ (Österreich 1769) war eigentlich ein sehr guter, körperlich klein gebauter Schachspieler. Dieser versteckte sich aber in einem Gehäuse. Dadurch erweckte er den Eindruck , es handle sich um eine Maschine. Er war damit zu seiner Zeit eine Sensation an den Adelshöfen Österreichs. In modernen Zahlen ausgedrückt hätte dieser „Schachcomputer“
1 CPU, 1 Thread, < 0,2 kHz Takt und 1 x 10-10 „GFLOPS“
gehabt , unter der Annahme, dass ein Mensch diesen Computerparametern entsprechend pro Gleitkommarechnung zehn Sekunden braucht.
Moderne Prozessoren hingegen heutzutage haben
6-12 CPU-Kerne, 12-16 Threads, 3-3,7 GHz Basis-Takt, 80-150 GFLOPS
Solche modernen Computer (Modern gerneral purpose CPUs) sind also ungleich stärker als jeder menschliche Spieler. Allerdings funktioniert ein Schachcomputer auch völlig anders als ein menschlicher Spieler. Dies lässt den Vergleich entsprechend hinken. Der Mensch weiß darüber hinaus seine beschränkten Möglichkeiten im Schach noch wesentlich besser zu nutzen. Zumindest wenn man dabei das Spiel von Großmeistern zugrunde legt.
Inzwischen aber scheint sich dies durch neuste Entwicklungen auf Grundlage maschinellen Lernens jedoch grundlegend zu ändern. Das heißt etwa durch komplexe neuronale Netze und die neu entwickelten TPUs – TensorFlow Prozessing Units (Hardware) einerseits. Und andererseits durch immer besser programmierte KI Software. Für diese bilden neuronale Netze (NN) zwar die Grundlage, aber längst entscheidet sich viel der Performance einer KI durch die benutzten Datenmenge zum Trainieren des NN. Geschickte und immer wieder optimierte Programmierung tun ihr übriges. Folglich lernen die Maschinen und sind damit schon lange nicht mehr „dumme Rechenknechte“.
Wie ein klassischer Schachcomputer rechnet – Der Algorithmus
Die Aufgabe
Die Aufgabe, die einem Schachcomputer gestellt wird, ist kurz gesagt: Er soll besonders gut Schach spielen. Aus heutiger Sicht heißt das folglich, dass seine Wertungszahl (ELO genannt) über 3000 liegen sollte. Damit spielt er besser als der menschliche Weltmeister. Dieser ist übrigens seit 2023 Ding Liren (ELO 2780 im November 2023). Der ehemalige Weltmeister Magnus Carlsen hatte allerdings noch eine höhere ELO von 2843 (Stand Mai 2018). Der beste Schachcomputer für zu Hause hat eine ELO von über 3600 und ist obendrein frei verfügbar: Stockfish (aktuell, 11.2023 in Version 16)
Der Algorithmus, der dabei einem klassischen Schachcomputer zugrunde lag, beruhte hier auf zwei Komponenten
- einer Stellungsbewertung
- der Suche nach dem nächsten Zug und den besten Zug auszuwählen
Wohl gemerkt: diese Faktoren spielt auch bei modernen Schach-Engines eine große Rolle. Wichtiger ist aber hier die genaue Programmierung auf Grundlage eines neuronale Netzes.
Herausforderung und Strategie
Die Herausforderung ist die besondere Komplexität des Schachspiels, die nur von Spielen wie Go übertroffen wird. Wie komplex Schach ist, sieht man zum Beispiel daran, wie viele verschiedene Schachpartien möglich sind. Es sind kurz gesagt etwa 10120 mögliche Partien. Das sind mehr als Atome im Universum (Vgl. Schach in Zahlen).
Dabei verfolgt der klassische Schachcomputer folgenden Weg. Er rechnet einfach am Zugbaum. Das heißt, angefangen mit der Ausgangsstellung, die der Schachcomputer bewerten soll, ergibt jeder mögliche Zug einen Zweig. Nun wird weiterhin geschickt jeder Zweig bewertet. Allerdings stellt sich das bald als nahezu unmöglich heraus, da der Zugbaum exponentiell wächst.
Hier das exponentielle Wachstum an einem Beispiel:
Hat man für eine simple Variante je acht mögliche Züge in vier Halbzügen, dann ergeben sich exponentiell, also richtig gerechnet für die Anzahl der Varianten:
8 x 8 x 8 x 8 = 84 = 4096
Linear, falsch, gerechnet, ergäben sich aber nur:
8 + 8 + 8 + 8 = 4 x 8 = 32
Bildlich sieht man den Unterschied hier noch besser:
Mit anderen Worten: ein riesiger Unterschied. Man denke nochmal an die 10120 möglichen Verläufe von Partien von oben.
Darüber hinaus wird die „brute force“-Methode genutzt. Das heißt, es wird wirklich jede Möglichkeit durch gerechnet. Zwar rechnet ein Computer einige Millionen Positionen pro Sekunde. Wohingegen ein Mensch nur ein bis zwei schafft. Dennoch ist auch das schnell viel zu wenig. Deshalb kappt der Algorithmus aussichtslose Zweige, um zum Ziel kommen zu können. So kommt es, dass diese klassischen Schachprogramme immer noch eine nicht unerhebliche Fehlerquelle in sich tragen. Und folglich sind moderne Schach KIs wie Stockfish deutlich stärker. Eine KI nämlich hat die Fähigkeit zu lernen. Aus aufgetretenen Fehlern Konsequenzen zu ziehen und immer besser zu werden. Die KI lässt sich trainieren. Man nutzt riesige Datenmengen, um die Einstellparameter des neuronalen Netzes festzulegen. Diese Einstellparameter, genauer: künstliche Neuronen, sind entscheidend für die Effektivität der KI.
Die Stellungsbewertung
Für die maschinelle Bewertung einer Stellung wird eine Bewertungsfunktion genutzt. Diese liefert eine heuristische Bewertung der Stellung. Es geht also darum mit begrenztem Wissen zur praktischen Lösung und damit zu einer Bewertung zu kommen. Diese Bewertung hat einen materiellen und einen positionellen Teil. Computerprogramme zeigen in der Regel die Bewertung einer Position numerisch (in sogenannten Bauerneinheiten) an.
Materialwertung
Typische Werte (Quelle: Wikipedia) sind hierzu
Bauer | Springer | Läufer | Turm | Dame |
1.00 | 2.75 | 3.25 | 4.65 | 9.00 |
Einfache Beispiele für eine Wertung nach diesem Muster sind entsprechend:
- 0.00 = „Ausgleich“
- + 1.00 = „ein Bauer Vorteil für weiß“
- – 1.00 = „ein Bauer Vorteil für schwarz“
- + 4.65 = „ein Turm Vorteil für weiß“
Bewertung der Position
Die Bewertung der Position auf dem Brett ist kurz gesagt die eigentliche Kunst. Sie ist die geheime Zutat der Engine-Entwickler. Dabei erhalten die Entwickler massive Unterstützung von Großmeistern bei der Entwicklung ihrer Bewertungsfunktionen. Sehr einfache Beispiele wären hier:
- „Springer am Rand“
- „Doppelbauer“
- „Qualitätsopfer“
das Schachprogramm Rybka glänzte seinerzeit zum Beispiel mit einer verbesserten Bewertung von Qualtitätsopfern. Unter anderem deshalb wurde es unter den Schachprogrammen zu seiner Zeit die Nummer Eins.
Springer am Rand und Doppelbauer in der Praxis.
Stellungen und Varianten aus Sicht eines Schachcomputer
Wie werden Stellungen und Varianten nun genau ausgewertet?
Bei der Bewertung einer Stellung verwendet ein klassisches Schachprogramm hierzu die sogenannte Min-Max-Methode. Das Ergebnis ist die Variante mit den besten Zügen von beiden Seiten. Startet man dabei mit den n besten Zügen in der Anfangsstellung, so erhält man die n besten Varianten. Besser ausgedrückt geht dabei der Minimax-Algorithmus mit abwechselnden Zügen vor und berechnet die beste Variante. Zuerst bester Zug für Weiß, dann bester Zug für Schwarz usw.
Weiter werden Zweige im Zugbaum mit geringer Bedeutung nach dem Alpha-Beta-Search-Algorithmus (alpha-beta pruning) abgeschnitten.
Hier sieht man zum Beispiel den frei verfügbaren Schachcomputer Stockfish in Aktion:
Alpha Zero ist die berühmte erste allgemeine KI von Google. Mit ihr zeigte sich 2017, dass Computer bei der Bewertung von Stellungen und Varianten durch maschinelles Lernen ganz neue Dimensionen aufstoßen können. Die „brute force“-Methode von oben ist nicht länger nötig. Stattdessen „weiss“ anders gesagt die KI irgendwann durch Lernen, wie man Schach spielt. Zudem aus menschlicher Sicht perfekt.
Wie wichtig dabei die neue Leistungsfähigkeit von TPUs im Vergleich zu CPUs ist, lässt sich wohl noch nicht sagen. Man würde hier Äpfel mit Birnen vergleichen. Alpha Zero hatte allerdings nicht nur im Schach ungeachtet dessen ein neues Tor aufgestoßen.
einfache Beispiele für Schachcomputer-Berechnungen
- ein Endspiel
Bewertung der Stellung ist hier aufgrund der „Position“ nicht +1.0 (Weiß hat einen Bauern mehr) sondern +8.9. Der Bauer wird unmittelbar umgewandelt. Obwohl die neu entstandene Dame geschlagen wird, ist das Endspiel haushoch für Weiß gewonnen.
- eine Eröffnung
Holländisch im zweiten Zug. Nach einer Suchtiefe von 28 Halbzügen errechnet das Schachprogramm Stockfish in seiner Version 8 einen Vorteil von +0.56. Nach einer Tiefe von 32 immer noch +0.51 . Lg5 ist also eine scharfe Erwiderung auf Schwarz‘ zweiten Zug.
Klassische Schachcomputer im Vergleich
Was sind gute Schachcomputer? Um die verschiedenen Programme zu vergleichen, lässte man Schachcomputer regelmäßig auf gleichwertigen Maschinen gegeneinander antreten. So ergibt sich diese ELOs rating list der Schachcomputer.
Der Schachcomputer im Training
Der Schachcomputer kann in der Praxis im Wettkampf zur Vor- und Nachbereitung dienen. Durch seine hohe Spielstärke ist er ein wirkungsvolles Werkzeug. Dazu im Folgenden mehr.
Vorbereitung
Unterstützung dabei
- das Eröffnungsrepertoire zu verbessern
- Endspiele zu lernen
- sich auf den Gegner anzupassen (Analyse alter Partien)
- beim Entwickeln einer Gewinn-/Remis-Strategie
Nachbereitung
Unterstützung dabei
- Eröffnungsfehler aufzudecken
- bei der Analyse der Stellung in der ein Fehler auftaucht
- bessere Varianten als in der Partie zu finden
- zu entscheiden, wo die kritische Stellung war. Gab es mehrere?
Wie nützt der Schachcomputer im Training?
Unter dem Strich hat man mit einem Schachcomputer als Amateur eine unabhängige, excellente Informationsquelle für
- Analyse Schritt für Schritt in Echtzeit
- perfekte Eröffnungstheorie (es gibt viele Fehler in Büchern)
- richtige Züge & Bewertungen in Partien
- Entwicklung von Strategien
- Erkennen von Motiven
Übrigens ist es hier in der Praxis wichtig, sich Zusammenfassungen zu schreiben. Im Vorfeld von Wettkämpfen sollte man Essenzen erstellen. Diese lassen sich dann ein paar Tage vor dem Wettkampf am Brett wiederholen.
Nachteile der Unterstützung durch Computer
- Der Spieler wird „rechenfaul“ und verliert Praxis.
- Erst denken, dann rechnen lassen!
- Der Bildschirm: Das Spiel am echten Brett bleibt unerlässlich.
- Varianten werden erst bei mehr als zwanzig Halbzügen Suchtiefe festgelegt, also keine voreiligen Schlüsse ziehen!
- Lange Varianten sind oft undurchsichtig.
- Zusammenfassungen sind nötig.
- Komplizierte Eröffnungen haben keine klaren „beste“ Varianten (Bsp. Opfer). Hier heißt es folglich: Ausprobieren!
Vorteile der Unterstützung durch Computer
- Schachcomputer sind viel besser als der Weltmeister (ELO > 3000)
- Maschine wird nicht müde
- intensive Analyse z.B. Suchtiefe 45+ ist in ein bis zwei Tagen möglich
- Eigene „Schachbücher“ durch Unterstützung eines Computers sind auch für Amateure möglich
- Großmeister Niveau für jeden
- Wichtig bleibt, den Auszug aus Varianten und Strategien zu dokumentieren
- persönliches Eröffnungswissen festhalten
- Datenbank aufbauen
Fazit
Heute hat sich durch die Schachcomputer die menschliche Schachwelt radikal verändert. Jeder Amateur hat mit ihnen ein unabhängiges, spielstarkes Medium zur Hand. Ein leichter Einstieg in Schachcomputer und Schachsoftware bietet der vielfache Weltmeister unter den Engines Stockfish. Lesen Sie auch, wo man die freie Software bekommt, und erfahren Sie, wie man sie installiert.
Mit Schachsoftware kann man sein Spiel im Vorfeld von Wettkämpfen gut verbessern. Die Unsicherheit, welcher Zug der objektiv richtige ist, gibt es so seitdem nicht mehr. Die Stärke der Spieler hat dadurch sehr zugenommen. Natürlich bleibt es auch heute noch eine große Herausforderung, unter dem Zeitdruck des Wettkampfes das beste Spiel zu finden.
Die Vorbereitung zu Hause hat dabei heute einen ganz anderen Stellenwert als noch vor zwanzig Jahren. Bleibt zu hoffen, dass der genau so mögliche Betrug durch Schachcomputer während eines Kampfes der Schachwelt noch lange erspart bleibt. Verbote von Handies wirken hilflos. Aber vielleicht sind sie das einzige Mittel, faires Spiel durchzusetzen. Schon ein günstiges Handy hat heute die Spielstärke eines einfachen Großmeisters.
Die jüngsten Erfolge des Programms AlphaZero im Schach lassen erwarten, dass KI sich in den meisten analytisch geprägten Bereichen durchsetzen werden. Zu Hause kann man die frei verfügbare KI Leela Chess Zero oder Stockfish installieren! Bleibt der Wunsch, dass diese Perfektion den Menschen unterstützen und nicht schädigen wird. Schließlich zeichnet sich der Mensch vor allem durch seine Fähigkeit aus, Fehler zu machen. Der Mensch lernt und passt sich an. Gut möglich, dass die Maschinen sich am Ende noch viel besser anpassen können. Der Schachcomputer ist mit anderen Worten einer der Vorläufer einer neuen Generation von Programmen und Maschinen. KI sind lange schon kein Neuland mehr. Die Entwicklung ist in vollem Gange.
SH, Mai 2018
Update SH, Feb 2020
Update SH, November 2023
Bleibt zu sagen, dass Schach im Kern ein Spiel ist, das von Fehlern lebt. Ohne Fehler wäre es witzlos. Seit einer Weile lässt man deshalb auch Engines absichtlich Fehler machen. Schachengines bekommen eine Persönlichkeit verpasst: Sie spielen mal irrwitzig, stümperhaft, oder eben mal genial – ganz nach Wunsch der/s Nutzerin/s. Dazu ist ein schönes Beispiel diese Sammlung von derzeit 140 Bots auf Lichess. Somit ist es möglich, gegen dedizierte Engine-Typen zu spielen. Das geht weit über die einfachen Einstellungsmöglichkeiten einer Standard-UCI-Engine hinaus.
Die aus menschlicher Sicht perfekte Maschine soll menschlich werden. Was fehlen einer Maschine zum Menschsein an grundlegenden Dingen? Gefühle oder Triebe? Bzw. Moral und Gewissen? Doch das ist eine philosophische und keine schachliche Frage.
SH, Mai 2021
Update SH, April 2024
Schreibe einen Kommentar