Startseite » Computer » Schachcomputer heute – ein Blick ins Hirn der Maschinen

Schachcomputer heute – ein Blick ins Hirn der Maschinen

Startseite » Computer » Schachcomputer heute – ein Blick ins Hirn der Maschinen

Schachcomputer heute – ein Blick ins Hirn der Maschinen

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:

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 diesen Computerparametern entsprechend pro Gleitkommarechnung zehn Sekunden braucht.

Prozessor - Grundlage des klassischen Schachcomputer
moderner Prozessor

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 TPUsTensorFlow 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)

Magnus Carlsen - braucht keine Schachcomputer mehr
Magnus Carlsen

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:

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

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


Beitrag veröffentlicht

in

von


schachlich.de ist wieder werbefrei, und kann es dank Menschen wie dir auch bleiben. Ich freue mich aber über ein Trinkgeld von dir 🙂

Kommentare

2 Antworten zu „Schachcomputer heute – ein Blick ins Hirn der Maschinen“

  1. Avatar von Sven
    Sven

    Hallo Kurt,

    danke für Deinen Kommentar. Tatsächlich muss man meinen Blog-Beitrag hier mittlerweile als „historisch gewachsen“ sehen. Nach meiner Kenntis ist SCIDvsPC ein sogenannter Fork zu SCID. Seinerzeit wurde das ursprüngliche SCID nicht mehr wirklich weiterentwickelt, und SCIDvsPC hielt das Projekt sehr erfolgreich am Leben.

    Wenn man aktuell schaut, so ist SCID tatsächlich noch im November diesen Jahres aktualisiert worden, SCIDvsPC noch im Juni diesen Jahres für Windows und im November für Mac und Linux. Ich hielt SCIDvsPC für das aktivere Projekt, aber offensichtlich laufen beide Versionen mittlerweile auseinander. Man sollte vielleicht prüfen, welcher der beiden Forks stabiler ist. Für weitere Hinweise auf tragende Unterschiede zwischen beiden Versionen bin ich dankbar.

    Danke für Deinen Hinweis! Ich werde mir das Ursprungsprojekt SCID, jetzt wo es wieder aktiv ist, nochmal ansehen, und meinen Beitrag hier entsprechend aktualisieren… Stay tuned! 😉

    Viele Grüße und gut Holz!

    Sven

  2. Avatar von Kurt Schilling
    Kurt Schilling

    Hallo Sven,

    Zu Schach am Computer: ich bevorzuge kostenlose SW und meide daher Fritz, Chessbase usw.

    Irritiert hat mich allerdings dein Kommentar zu Scid und ScidvsPc. Du favorisierst das ScidvsPC als das besser überarbeitete?
    Ich selbst habe nur Scid, die Version 4.7.. Zu ScidvsPc finde ich nur die Version 4.22 die auf Scid 3.6 basiert, also schon recht old Fashion ist und einiges an Bedienelementen veraltet ist.
    Jetzt habe ich intensiv gesucht und kein neueres ScidvsPc gefunden.

    Suche ich falsch oder ist dein Artikel dazu nicht mehr ganz frisch?

    Gruß Kurtimwald

Schreibe einen Kommentar

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