21.02.2021 – Das Deep Mind Projekt Alpha Zero und der Vorgang des Machine Learnings hat viel frischen Wind in die Computerschach-Entwicklung gebracht und diese ist lange noch nicht abgeschlossen. Fat Fritz 2 nutzt die neuen Techniken. Tony Schwedek, selber Experte im Bereich künstlicher neuronaler Netze, erläutert das Grundprinzip, hat aber auch kritische Fragen.
neu: ChessBase 16 - Megapaket Edition 2021
Dein Schlüssel zu frischen Ideen, präzisen Analysen und zielgenauem Training!
ChessBase ist die persönliche Schach-Datenbank, die weltweit zum Standard geworden ist. Und zwar für alle, die Spaß am Schach haben und auch in Zukunft erfolgreich mitspielen wollen. Das gilt für den Weltmeister ebenso wie für den Vereinsspieler oder den Schachfreund von nebenan.
Dein Schlüssel zu frischen Ideen, präzisen Analysen und zielgenauem Training! ChessBase ist die persönliche Schach-Datenbank, die weltweit zum Standard geworden ist. Und zwar für alle, die Spaß am Schach haben und auch in Zukunft erfolgreich mitspielen wollen. Das gilt für den Weltmeister ebenso wie für den Vereinsspieler oder den Schachfreund von nebenan.
Wie wandelt man das Plus in einen vollen Punkt um? Sergei Tiviakov geht diese Aufgabe von zwei Seiten an: zum einen vom psychologischen Aspekt der Vorteilsverwertung und zum anderen vom Aspekt der technischen Umsetzung.
29,90 €
Vorab einige Angaben zu meiner Person: Mein Name ist Tony Schwedek, ich habe einen Master of Science im Fach Mathematik mit Nebenfach Informatik, eine Abschlussarbeit im Bereich künstliche neuronale Netze und maschinelles Lernen in Bezug auf Quantenmechanik geschrieben, arbeite seither als Software-Engineer und verfolge in meiner Freizeit mit großer Begeisterung die Entwicklung von maschinellem Lernen in Bezug auf Schach.
Nun las ich in dem genannten Artikel zu Fat Fritz 2.0 (https://de.chessbase.com/post/fat-fritz-2-0-die-juengste-revolution-im-computerschach), eine Passage, die mich zu einem Leserbrief motivierte, weil sie meiner Meinung nach nicht richtig ist und viel von der Brillanz nimmt, die in dem Unterfangen Alpha Zero, LeelaChess und Fat Fritz steckt. Mir ist klar, dass in Artikeln für eine breite Leserschaft öfter mal kleine Unwahrheiten bzw. Vereinfachungen eingebaut werden, um den "Ottonormalleser" nicht durch übermäßige Komplexität abzuschrecken. Aber das scheint mit hier nicht der Fall.
Schachengines bestehen sowohl mit, als auch ohne neuronalem Netzwerk aus zwei Komponenten: Eine Komponente erstellt den Suchbaum, die zweite Komponente wird dann mit den relevanten Stellungen aufgerufen und übergibt die Bewertungen für diese Stellungen. Die erste Komponente vermerkt die Ergebnisse wiederum am Suchbaum und kann am so gewichteten Suchbaum nach dem besten Zug in der aktuellen Stellung suchen. Eine schöne Abbildung dazu findet man hier: https://lczero.org/dev/wiki/what-is-lc0/
Ebenjene zweite Komponente war in der Vergangenheit eine komplizierte, von Menschen optimierte Bewertungsfunktion. Heutzutage besteht die Revolution darin, stattdessen ein neuronales Netzwerk zu benutzen.
Außerdem wurde für die erste Komponente in der Vergangenheit quasi ausschließlich der Minimax-Algorithmus benutzt, im Zusammenhang mit neuronalen Netzten und dem hohen Rechenaufwand für die Auswertung von Stellungen wird stattdessen auch oft auf ein Montecarlo-Verfahren gesetzt.
Nun gab es bisher das Problem, dass sich neuronale Netzwerke lediglich auf einer GPU effizient auswerten lassen, die erste Komponente läuft aber klassischerweise auf einer CPU. Der Flaschenhals für Programme ist die Datenübertragung zwischen den Komponenten (https://de.wikipedia.org/wiki/NNUE). Das NNUE ist eine spezielle Netzwerkarchitektur, speziell für Brettspiele mit zwei Personen, wodurch es sich auch auf einer CPU effizient auswerten lässt.
Zur Klarstellung: Das ganze bleibt in jedem Fall weniger performant, als die erste Komponente auf der GPU laufen zu lassen. Es ist lediglich praktikabler, da fast jeder Computer heutzutage eine ordentliche CPU besitzt, aber nur wenige über eine leistungsstarke GPU verfügen. Diese Klarstellung lässt der Artikel meiner Meinung nach zum Beispiel vermissen, hier wird das NNUE als "heiliger Gral" verkauft.
Es ist klar, dass der Artikel Fat Fritz bewerben möchte und daher mit gewissen Übertreibungen daherkommt - so wird davon gesprochen, dass die Schachengines, die auf neuronalen Netzwerken basieren, in technischen Endspielen manchmal die chirurgische Präzision vermissen lassen würden - ein Umstand, der sich lediglich auf Komponente 1 bezieht: Erstellung und Verwaltung des Suchbaums. Das neuronale Netzwerk (und das ist ja das, was sich hier ändert), hat damit nichts zu tun. Mir ist außerdem nicht bekannt, dass das überhaupt der Fall wäre. Eine Monte-Carlo-Analyse, wie von Alphazero verwendet, kann immer mit einer sehr sehr kleinen Wahrscheinlichkeit fehlschlagen. Nicht nur im Endspiel, auch in Mittelspielen, die Präzision erfordern. Und offenbar geschieht das so selten, dass Alphazero trotzdem überlegen seine Matches gegen andere Schachcomputer gewann.
Eine Sache vermittelt aber meiner Meinung nach einen komplett falschen und verschleierten Eindruck davon, wie man denn überhaupt zu Komponente 2, dem neuronalen Netz, kommt: "Genau wie AlphaZero und die erste Ausgabe von Fat Fritz baut NNUE auch sein eigenes Schachwissen auf, indem es aus Schachpositionen und Bewertungen lernt."
Alpha Zero funktioniert so: Man programmiert Komponente 1. Dann verwendet man für Komponente 2 zufällige neuronale Netzwerke, und lässt die so entstandenen Engines ein Turnier gegeneinander spielen, "auf Leben und Tod", wenn man so will.
Die Gewinner (zum Beispiel die besten 10 aus 100) dürfen sich "fortpflanzen": Man nimmt ihre neuronalen Netze, die Komponenten 2, her und verändert die Parameter des neuronalen Netzwerkes leicht, zufällig ab. Man "mutiert" sie. Von jedem der Gewinner werden verschiedene Mutationen erstellt. Diese nennt man zweite Generation. Sie spielen wieder ein Turnier auf Leben und Tod untereinander und der Prozess wiederholt sich, sehr oft, mehrere tausend mal, das erfordert einen enormen Rechenaufwand. Diese Technik ist als "Reinforcement Learning", auch "bestärkendes Lernen", bekannt.
Das, was mich an diesem Prozess fasziniert, ist die Tatsache, dass es die Evolution der Natur nachbildet. Und auch im Computerbereich funktioniert das Prinzip der natürlichen Selektion blendend. Die stärksten überleben, pflanzen sich fort, und durch Mutationen entwickelt sich eine Art weiter. Nach dem gleichen Prinzip werden auf Youtube diverse Anwendungsfälle abgehandelt, amüsant und zugleich sehr lehrreich finde ich zum Beispiel Super MarI/O:
Von dieser Eleganz wird im Artikel leider nicht gesprochen.
Dort klingt es so, als wären die neuronalen Netze "menschengemacht". Als würden wir vorgeben, welche Stellungen gut und welche schlecht sind, um den Computer daraus lernen zu lassen. Was aber dazu führen würde, dass ein Netz nur so gut sein kann wie sein Trainer, wenn es die Stellungsbewertungen des Trainers als "wahr" ansieht und anhand dessen lernt. Das tut es aber wie gesagt nicht, es entwickelt seine eigene Wahrheit und führt daher für uns Menschen zu neuen Erkenntnissen. Wir lernen quasi vom Computer, nicht umgekehrt.
Ich habe bei meinen Recherchen inzwischen erfahren, dass Albert Silver für Fat Fritz scheinbar tatsächlich den Ansatz fährt, das Netz nicht von Grund auf selbst lernen zu lassen, sondern er "gießt Wissen hinein", ohne dass ich eine genaue Erklärung finden konnte, wie das funktioniert. Die Begründung dafür ist, dass Alpha-Zero in verschiedenen Generationen immer eine Präferenz für gewisse Eröffnungen hatte und daher zu befürchten sei, dass sich die verschiedenen Alphazero-Versionen in verschiedenen Stellungstypen deutlich besser auskennen und dort bessere Entscheidungen treffen, als in anderen. In wie weit das stimmt, kann man vermutlich nur spekulieren, interessant ist der Ansatz allemal.
16.02.2021 – Fat Fritz 2 ist einer neuer Meilenstein in der Entwicklung von Schachengines. Das Programm, nun auch für normale CPUs dank neuer Technik mit voller Kraft nutzbar, erschien letzten Dienstag. Kurz vor der Veröffentlichung sprach Conrad Schormann mit dem Entwickler Albert Silver.
07.12.2020 – In seinem jüngsten Podcast "Let's talk about chess" spricht Eric van Reem mit dem Engine-Programmierer Stefan Meyer-Kahlen, der mit seinem Programm "Shredder" 15 Titel bei Computerschach-Weltmeisterschaft gewinnen konnte.
Nach 1.d4 c5 2.d5 g6 3.c4 Lg7 ergibt für Schwarz eine interessante positionelle Möglichkeit, wenn Weiß hier mit dem natürlichen Zug 4.Sc3 fortsetzt. Schwarz kann nämlich mit4...Lxc3 Weiß einen hässlichen Defekt in seiner Bauernstruktur verschaffen. Dabei gibt Schwarz zwar seinen Fianchetto-Läufer auf, erhält aber auch eine Reihe von Vorteilen und einen klaren strategischen Plan. Oft wird nach dem Wiedernehmen auf c3 (5.bxc3) mit 5...f5 fortgesetzt, wodurch Schwarz das weiße Spiel im Zentrum mit e2-e4 unterbindet. Da der in die USA ausgewanderte starke georgische Großmeister Romandzindzichashvili gerne so spielte, wird diese Verteidigung Dzindzichashvili-Indisch, bzw. kurz: Dzindzi-Indisch genannt. Heute wenden auch starke Spieler wie Radoslaw Wojtaszek und Hikaru Nakamura sie gelegentlich an. Kenneth Nahnsen hat sich mit dieser interessanten Eröffnung intensiv auseinandergesetzt und stellt die wichtigsten Ideen und Varianten in sieben Video-Lektionen mit einer Gesamtlaufzeit von ca. 60 Minuten vor. Mit Dzindzi-Indisch können Sie ihren Gegner ohne große Vorbereitung von Anfang an in die Defensive drängen.
Jubiläumsausgabe mit diversen Extras! "Meine Lieblingspartie des jungen Carlsen": 22 Autoren kommentieren. Perlen aus Wijk: Jorden van Foreest und Anish Giri analysieren. Plus 11 Eröffnungsartikel, 3 Eröffnungsvideos, "Carlens Strategie" und vieles mehr!
Mit der Zugfolge e6/a6 wird die Option offengelassen, d5 in einem Zug zu spielen, zudem ist der Ausfall Lb4 eine Option. Konkretes Wissen ist im Paulsen-System weniger entscheidend als die Kenntnis der taktischen und positionellen Motive.
Das Schach-Verständnis von Fat Fritz 2.0 ist unübertroffen, geschult und trainiert durch das Studium von Milliarden von Schachpositionen. Damit erzielt Fat Fritz 2.0 eine nochmals deutlich verbesserte Spielstärke.
Videos von Jan Werle ("Aktuelle Trends in der Königsindischen Sämisch-Variante") und Mihail Marin ("Spanisch mit 6.d3"). "Wundertüte" mit Analysen von Adhiban, Ganguly, Mikhalchishin, Bartel u.a. Über 44.000 neue Partien für Ihre Datenbank!
12,99 €
Wir verwenden Cookies und vergleichbare Technologien, um bestimmte Funktionen zur Verfügung zu stellen, die Nutzererfahrungen zu verbessern und interessengerechte Inhalte auszuspielen. Abhängig von ihrem Verwendungszweck können dabei neben technisch erforderlichen Cookies auch Analyse-Cookies sowie Marketing-Cookies eingesetzt werden. Hier können Sie der Verwendung von Analyse-Cookies und Marketing-Cookies widersprechen. Weitere Informationen finden Sie in unserer Datenschutzerklärung.
Ihre Einstellungen zu Cookies für diese Website
Wir verwenden Cookies und vergleichbare Technologien, um bestimmte Funktionen zur Verfügung zu stellen, die Nutzererfahrungen zu verbessern und interessengerechte Inhalte auszuspielen. Abhängig von ihrem Verwendungszweck können dabei neben technisch erforderlichen Cookies auch Analyse-Cookies sowie Marketing-Cookies eingesetzt werden. Analyse-Cookies und Marketing-Cookies werden eingesetzt, solange Sie nicht durch eine entsprechende Einstellung widersprechen. Bitte beachten Sie, dass Ihre Auswahl dazu führen kann, dass die Funktionalität des Angebots beeinträchtigt wird. Weitere Informationen finden Sie in unserer Datenschutzerklärung.
Technisch erforderliche Cookies
Technisch erforderliche Cookies: Damit Sie navigieren und die Basisfunktionen bedienen können sowie zur Speicherung von Präferenzen.
Analyse-Cookies
Damit wir feststellen können, wie Besucher mit unserem Angebot interagieren, um die Nutzererfahrungen zu verbessern.
Marketing-Cookies
Damit wir relevante Inhalte und interessengerechte Werbung anbieten und auswerten zu können.