Vor 35 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. Heute hat jeder einen PC daheim. Dort kann er 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.

Wie funktionieren Schachcomputer?
Wie funktionieren Schachcomputer?

Zunächst einmal ein paar Worte zur Entwicklung der Schachcomputer bis heute. 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 wohl “Der Schachtürke“. Hier entsprechend ein Bild:

Der Schachtürke - der erste Schachcomputer
Der Schachtürke

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-10GFLOPS

gehabt , unter der Annahme, dass ein Mensch entsprechend pro Gleitkommarechnung zehn Sekunden braucht.

Prozessor - Grundlage des klassischen Schachcomputer
moderner Prozessor

Moderne Prozessoren hingegen heutzutage haben

6-8 CPU-Kerne, 12-16 Threads, 3-3,7 GHz Basis-Takt, 80-100 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 TPUsTensorFlow Prozessing Units. Folglich lernen die Maschinen und sind damit nicht länger 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 2013 Magnus Carlsen mit einer ELO von 2843 (Stand Mai 2018).

Magnus Carlsen - braucht keine Schachcomputer mehr
Magnus Carlsen

Der Algorithmus, der dabei einem klassischen Schachcomputer zugrunde liegt, beruht hier auf zwei Komponenten

  • einer Stellungsbewertung
  • der Suche nach dem nächsten Zug und den besten Zug auszuwählen

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:

exponentielles und lineares Wachstum
Wachstum

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.

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

BauerSpringerLäuferTurmDame
1.002.753.254.659.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 KI von Google. Mit ihr zeigte sich jüngst, 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 hat allerdings nicht nur im Schach ungeachtet dessen ein neues Tor aufgestoßen.

einfache Beispiele für Schachcomputer-Berechnungen
  1. 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.

  1. 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
  • 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.

Damit kann er 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 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

Letzte Artikel von SH (Alle anzeigen)

Veröffentlicht von SH

Sven spielt seit 1984 Schach im Verein und ist seit seiner Jugend leidenschaftlicher Schachspieler. Er betreibt den Schach-Blog schachlich.de, um diese Leidenschaft mit anderen zu teilen und sie mit dem Schachfieber anzustecken. ;-)

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.