Das Wissen, das Du jetzt brauchst!
Die neue Version 18 bietet völlig neue Möglichkeiten für Schachtraining und Analyse: Stilanalyse von Spielern, Suche nach strategischen Themen, Zugriff auf 6 Mrd. LiChess-Partien, Download von chess.com mit eingebauter API, Spielervorbereitung durch Abgleich mit LiChess-Partien, eingebaute Cloud-Engine u.v.m..
„Willkommen auf der Homepage des Schachprogramms Houdini“, so hieß zum ersten Mal im Mai 2010, als der Programmierer Robert Houdart die erste Version seines neuen Schachprogramms kostenlos zum Download anbot. Noch wusste niemand, dass Houdini nur sieben Monate später Rybka als Nr. 1 der Welt ablösen und mehrere Jahre lang selbst das Computerschach dominieren würde. Wie stark war Houdini 1 und worin bestanden seine besonderen Qualitäten? Wie wurde das Programm weiterentwickelt und was macht es für die Schachanalyse so besonders wertvoll? Anlässlich des zehnten Jahrestages möchte ich auf diese Fragen eingehen und natürlich auch Houdini's Abschneiden in Computerturnieren betrachten.
Mitte Mai 2010 hatte der Belgier Robert Houdart die erste Version seines Schachprogramms fertiggestellt. Nun galt es, einen Namen dafür zu finden. Die Wahl fiel auf „Houdini“, sicherlich nicht ohne Grund. Zunächst fällt auf, dass die ersten vier Buchstaben mit dem Nachnamen des Programmierers übereinstimmen. Warum wurde daraus schließlich „Houdini“? Robert Houdart schrieb auf seiner Homepage dazu folgendes: „Der Name 'Houdini' wurde gewählt wegen der Hartnäckigkeit des Programms in schwierigen Stellungen und seiner Fähigkeit, sich zäh zu verteidigen und so manchmal gerade noch mit einem Remis zu entschlüpfen. Gleichzeitig wird Houdini seinen Gegnern die gleichen Fluchtwege abschneiden, wenn er die bessere Stellung hat.“ (a)
Harry Houdini lautete der Künstlername eines amerikanischen Entfesselungs- und Zauberkünstlers ungarischer Herkunft. Mit bürgerlichem Namen hieß er Erik Weisz und lebte von 1874 bis 1926. Als er vier Jahre alt war, verließ seine Familie Österreich-Ungarn und wanderte in die USA aus. In dem ihm gewidmeten Wikipedia-Artikel heißt es zu seinen Entfesselungskunststücken: „Neu an Houdinis Show war, dass er tatsächlich aus jeder ihm zur Verfügung gestellten Fessel entkommen konnte und sich zu Werbezwecken unter Testbedingungen nackt von erfahrenen Polizisten fesseln ließ.“ Er soll sogar in der Lage gewesen sein, aus ihm von der Polizei angelegten Handschellen zu entschlüpfen. Nach und nach nahmen seine Kunststücke immer groteskere Formen an: Er befreite sich sogar unter Wasser und später auch aus einer Zwangsjacke, „kopfüber an Wolkenkratzern aufgehängt“. (b) Das sind durchaus bemerkenswerte Fähigkeiten, welche wir, auf das Schachspiel übertragen, sehr wohl in dem nach Houdini benannten Schachprogramm vorfinden. Was nicht weiter verwundert, denn ohne erfindungsreiche Verteidigungskraft kann es auch kein menschlicher Schachspieler bis an die Weltspitze schaffen. Als besonders hartnäckige Verteidiger galten u. a. die Weltmeister Steinitz, Lasker, Capablanca, Botwinnik, Smyslow, Petrosjan und Karpow.
Da Houdini 1 in keiner ELO-Rangliste zu finden war, veranstaltete ich selbst einen kleinen Testwettkampf über 20 Partien zwischen dieser ersten Houdini-Version und dem ein halbes Jahr später erschienenen Schachprogramm Critter 0.90 des slowakischen Programmierers Richard Vida. Zugrundegelegt wurde die bis einschließlich 2019 übliche CCRL-Bedenkzeit von 4 Minuten für je 40 Züge (64-bit, 1CPU). Das Endergebnis lautete 5:3 bei 12 Remisen zugunsten von Houdini 1. Da Critter 0.90 auf 64-bit mit einem Prozessor eine ELO Zahl von 3049 hat, ergab die ELO-Auswertung für Houdini 1 eine ELO-Zahl von 3083, gemessen am CCRL-Standard 40/4. Das liegt im Bereich von Rybka 3, der auf 3078 ELO kommt. Natürlich müssten deutlich mehr Testpartien gespielt werden, aber auf ein paar ELO rauf oder runter kommt es hier nicht an. Ich wollte nur überprüfen, ob die erste Version von Houdini tatsächlich schon außerordentlich stark war. Der kleine Testwettkampf gegen Critter bestätigte jedenfalls diese Annahme.
Erstaunt musste ich feststellen, dass in der Tat bereits die erste Houdini-Version über außerordentliche Fähigkeiten verfügte und einen Spielstil pflegte, der an die besten Zeiten von Anderssen und Morphy erinnert. Sehen wir uns zu diesem Zweck die siebte Wettkampfpartie zwischen Houdini und Critter an. Nach 29 Zügen stand Houdini vor einem drohenden Matt, das nur unter Damenopfer zu parieren war. Doch innerhalb von nur fünf Zügen wand sich der große Entfesselungskünstler nicht nur aus allen Schwierigkeiten heraus, sondern drehte den Spieß sogar um. Nach weiteren spektakulären Opfern musste Critter im 55. Zuge die Segel streichen:
Das Geheimnis von Houdini's Stärke
Zu den Ursprüngen des Programms wird gemunkelt, dass sich Robert Houdart vor allem an dem freien und quelloffenen Programm RobboLito orientierte. Er selbst gab auf seiner Homepage an, dass er viele Ideen der freien OpenSource-Programme IPPOLIT/RobboLito, Stockfish und Crafty verwendete. (c) So erklärt sich wohl auch die von Anfang an sehr hohe Spielstärke. Dass Robert Houdart seinem neuen Geisteskind zusätzliche Gaben verlieh, davon kann man sich mit Hilfe eines kleinen Tests selbst überzeugen:
(Weiß am Zuge)
In dieser von Fernschach-Großmeister Arno Nickel angegebenen Stellung (d) zeigt in der Analyse RobboLito 0.085g3 eine Bewertung von + 4.26 zugunsten von Weiß (38 Halbzüge Suchtiefe), während Houdini 1 sofort erkennt, dass diese Stellung ausgeglichen ist (+ 0.03). Das ist auch ganz richtig, denn wenn Schwarz sich um seine Bauern auf dem Königsflügel gar nicht kümmert, sondern einfach mit seinem König über b5, c6 und d7 nach c8 zieht, kommt Weiß nie über ein Patt hinaus, wovon man sich durch Ausprobieren leicht selbst überzeugen kann. An diesem Beispiel erkennt man, dass bereits die erste Houdini-Version ohne Tablebases dieses schwierige Endspiel beherrschte.
Robert Houdart ist Jahrgang 1968 und hat eine FIDE-ELO-Zahl von 2101. (e) Von Beruf ist er Computerwissenschaftler und professioneller Software-Entwickler. (f) Beste Voraussetzungen also, ein Schachprogramm immer weiter zu optimieren. Die beharrliche Weiterentwicklung von Houdini 1 trug schon bald reiche Früchte: Die zwei Monate später, im Juli 2010 erschienene Version Houdini 1.03a brachte es in der CCRL 40/4-Liste bereits auf 3116 ELO-Punkte (64-bit, 1CPU), während der letzte kostenlos erhältliche Houdini 1.5a vom Januar 2011 mit 3170 noch einmal satte 54 ELO-Punkte zulegte. Zum Vergleich: Die stärkste Rybka-Version 4.1 hatte eine ELO-Zahl von 3108. Die von da an kommerziellen Houdini-Version 2, 3 und 4 steigerten sich weiter auf 3202, 3217 bzw. 3240 ELO-Punkte. In den dreieinhalb Jahren zwischen Mai 2010 (Houdini 1) und November 2013 (Houdini 4) konnte Robert Houdart damit Houdini von schätzungsweise 3083 ELO auf 3240 ELO verbessern (64-bit, 1CPU). Das ist ein Plus von fast 160 ELO-Punkten. Auf vier Prozessoren (4CPU) erreichte Houdini 4 sogar 3332 ELO. (g)
Neben einer Steigerung der Spielstärke stattete Robert Houdart sein Programm mit zusätzlichen Leistungsmerkmalen aus. Immerhin konnten bereits bei Houdini 1 die Anzahl der Prozessoren, die sogenannte Split Depth (Suchtiefe, ab der die Berechnungen über zwei oder mehr Prozessoren laufen), Ponder (Rechnen während der Gegner am Zug ist) und die Hashgröße eingestellt werden. In den Folgeversionen kamen nach und nach weitere Optionen hinzu. So können seit Houdini 1.03 bei der Analyse von Stellungen mehrere Varianten gleichzeitig angezeigt werden (Multi-PV). Mit der Version 1.5 wurden erstmals Endspieltabellen (Tablebases) eingebunden. Um unnötige Remisen gegen schwächere Gegner zu vermeiden, fügte Robert Houdart seinem Programm außerdem einen sogenannten Contempt-Faktor hinzu, der bei Analysen standardmäßig deaktiviert wird. Dies ist wichtig, um trotz eingestellten Contempts objektive Stellungseinschätzungen zu erhalten. Trotz etwas schlechterer Stellung wird jedoch gegen schwächere Gegner weitergespielt, was naturgemäß zu einer niedrigeren Remisquote führt. Alle diese Verbesserungen führten das Programm im Computerschach innerhalb von nur sieben Monaten an die Weltspitze.
Seit 2011 gelten die TCEC-Turniere als die eigentlichen Königsmacher im Computerschach. (h) Die ICGA (International Computer Games Association) hatte sich mit der umstrittenen Disqualifikation des bis dahin stärksten Schachprogramms Rybka sozusagen selbst aus dem Spiel genommen, da Wettbewerbe ohne die besten Programme sich in der Öffentlichkeit kaum noch als Computerweltmeisterschaften verkaufen lassen. Das erinnert ein wenig an die Situation der FIDE-Weltmeister im Vergleich mit den „klassischen“ Weltmeistern Kasparow und Kramnik während der Jahre 1993 bis 2006, wobei natürlich hinzugefügt werden muss, dass der Stellenwert des menschlichen Weltmeisters in der Schachwelt naturgemäß viel höher eingeschätzt wird. Jedenfalls gelang es Houdini von Anfang an, sich in den TCEC-Computerturnieren gegen die weltbesten Schachprogramme duchzusetzen.
Der Wert der TCEC-Wettbewerbe wird noch dadurch gesteigert, dass alle teilnehmenden Programme auf identischer Hardware laufen und nach mehreren Vorrunden die beiden stärksten in einem sogenannten „Superfinale“ gegeneinander antreten. Dabei spielt jeder der beiden Teilnehmer dieselben Eröffnungsstellungen zweimal, und zwar einmal mit Weiß und einmal mit Schwarz. Das trägt natürlich dazu bei, die Chancen gerechter zu verteilen.
„Season 1“, welche von Dezember 2010 bis Februar 2011 ausgetragen wurde, gewann Houdini 1.5a im Superfinale überlegen gegen Rybka 4 (+ 12, - 5, = 23).
„Season 2“ (Februar bis April 2011) gewann wiederum Houdini 1.5a. Im Superfinale hielt sich Rybka 4.1 etwas besser als seine Vorgängerversion. Das Endergebnis lautete +9, -5, =26 für Houdini.
„Season 3“ wurde nicht zu Ende gespielt, daher kein TCEC-Sieger 2012.
„Season 4“ (Januar bis Mai 2013) gewann Houdini 3 im Superfinale gegen Stockfish 250413 (+6, -4, =38)
Man sieht es schon an dem knappen Sieg über Stockfish vom Mai 2013, dass die Konkurrenz es nach und nach schaffte, näher an Houdini heranzurücken. In den nächsten TCEC-Turnieren dominierten denn auch Komodo und Stockfish. Komodo gewann Season 5, 7 und 8, während Stockfish Season 6 für sich entscheiden konnte. Ein Grund hierfür ist darin zu sehen, dass Robert Houdart seit der Veröffentlichung von Houdini 4 im November 2013 keine neuere Programmversion mehr herausbrachte. Erst drei Jahre später, im November 2016, erschien Houdini 5, und der schaffte es denn auch gleich ins Superfinale von Season 9, in dem er gegen Stockfish 8 mit +8, -17, =75 unterlag. Den bislang letzten TCEC-Sieg schaffte die neue Version Houdini 6.03 in der von Oktober bis Dezember 2017 ausgetragenen Season 10. Im Superfinale setzte sich Houdini gegen Komodo durch (+15, -9, =76).
Houdini 6, der TCEC-Sieger von Season 10 und Zweitplazierte von Season 11 ist noch einmal um etwa 200 ELO-Punkte stärker als Houdini 4 vom November 2013. Diese Spielstärke dürfte auf lange Zeit hinaus kaum noch Wünsche offen lassen. Wird es dennoch irgendwann einen Houdini 7 geben? Auf meine Anfrage hin teilte mir Robert Houdart mit, dass er seit Oktober 2017 an ganz anderen Projekten arbeitet und sich aktuell nicht mit Schachprogrammierung beschäftigt. Damit wird die aktuelle Houdini-Version wohl auf absehbare Zeit die vorerst letzte bleiben.
Houdini's größte Stärke war und ist die Stellungsbewertung, welche nicht nur im praktischen Spiel, sondern auch bei der Analyse von ausschlaggebender Bedeutung ist. Der Fernschachgroßmeister Arno Nickel schrieb in seinem sehr lesenswerten Artikel „Die schöne neue Welt der Schachengines“ über Robert Houdart und sein Programm Houdini folgendes:
„Besonders stolz ist er auf seine (Stellungs-)Bewertungsfunktion, die in der Tat die moderateste – und oft vielleicht auch realistischste – zu sein scheint. Daneben verfügt Houdini über eine sehr intelligente und effiziente Suchfunktion, die es der Engine ermöglicht, häufiger und schneller als andere Programme starke positionelle Fortsetzungen zu finden.“ (i)
Nicht ohne Grund war und ist Houdini daher gerade bei Fernschachspielern sehr beliebt, wo es darum geht, komplizierte Positionen besonders gründlich zu analysieren. Ohne eine richtige und objektive Einschätzung der Stellung kann in der Tat kein Analytiker auskommen. Damit ist und bleibt Houdini auch heute noch ein unentbehrliches Analysewerkzeug.
Dem Programmierer Robert Houdart kann man zu 10 Jahren Houdini nur herzlich gratulieren und hoffen, dass er vielleicht doch eines Tages die Entwicklung fortsetzen und irgendwann die Schachwelt mit Houdini 7 überraschen wird. Es wäre auch wünschenswert, wenn er auf seiner Homepage einige der älteren Houdini-Versionen zum Download freigeben würde. Im Augenblick ist dort nämlich nur Houdini 1.5a zu finden.
Den stärksten Houdini (Version 6) gibt es in komfortabler Ausstattung im ChessBase Shop.
Oder zum Vergleich:
Das ganz große PC-Schachprogramm - Jetzt mit FAT FRITZ
Fritz, genau jenes Schachprogramm, das seit über 25 Jahren (!) die gesamte Schachwelt fasziniert: Siege gegen Garry Kasparov und den damaligen Weltmeister Vladimir Kramnik, innovative Trainingsmethoden für Amateure & Profis, fast 20 Jahre Internetschach auf dem Fritz-Server u.v.m.
Fritz, das „populärste deutsche Schachprogramm“ (Der Spiegel), bietet alles, was Sie als Schachfreund brauchen. Und das Sahnehäubchen: mit Fritz17 sind Sie teilnahmeberechtigt für die 1. Deutschen Online-Meisterschaft***!
und brandneu
Quellen und Anmerkungen:
(a) So wurde Houdini 1 zum ersten Mal der Öffentlichkeit vorgestellt:
https://web.archive.org/web/20100519120411/http://www.cruxis.com/chess/houdini.htm
Zur Namenswahl heißt es im englischen Originaltext:
„The name 'Houdini' was chosen because of the engine's tenacity in difficult positions and its ability to defend stubbornly and escape with a draw – sometimes by the narrowest of margins. At the same time Houdini will deny its opponents the same escape routes when it has the better position.“
(b) Hier ist der Link zum Wikipedia-Artikel über Harry Houdini alias Erik Weisz:
https://de.wikipedia.org/wiki/Harry_Houdini
(c) Im englischen Originaltext lautet die Passage folgendermaßen:
„Without many ideas from the excellent open source chess engines Ippolito/Robbolito, Stockfish and Crafty (in that order), Houdini would not nearly be as strong as it is now.“
https://web.archive.org/web/20100519120411/http://www.cruxis.com/chess/houdini.htm
(d) Arno Nickel, „Die schöne neue Welt der Schachengines“, veröffentlicht in der Zeitschrift „Schach“, Ausgabe vom März 2012, S. 45
(e) http://ratings.fide.com/card.phtml?event=202185
(f) https://www.chessprogramming.org/Robert_Houdart
(g) In den 40/40-Ranglisten wurde die frühere Houdini-Version 1.03a nicht getestet, in 40/4 aber schon, so dass sich die ELO-Zahlen in diesem Artikel auf die mit einer Bedenkeit von 4 Minuten für je 40 Züge ermittelten ELO-Zahlen beziehen (64-bit, 1CPU). Mit 4 Prozessoren (4CPU) sind die ELO-Zahlen entsprechend höher. Bei Houdini 6 z. B. wären das 3517 ELO (4CPU) gegenüber 3444 bzw. 3445 (1CPU).
Leider wird die bewährte 40/4-Bedenkzeit von den CCRL-Testern seit einigen Monaten nicht mehr verwendet. Stattdessen spielen sie jetzt Blitzpartien mit 2 Minuten für die gesamte Partie + 1 Sekunde/Zug auf schnelleren Rechnern. Die letzten archivierten 40/4-Ranglisten, welche ich finden konnte, stammen vom Oktober bzw. November 2019:
https://web.archive.org/web/20191029004707/https://ccrl.chessdom.com/ccrl/404/rating_list_all.html
(h) TCEC steht für „Thoresen Chess Engines Competition“ oder neuerdings „Top Chess Engine Championship“
https://en.wikipedia.org/wiki/Top_Chess_Engine_Championship
(i) Arno Nickel, „Die schöne neue Welt der Schachengines“,veröffentlicht in der Zeitschrift "Schach", Ausgabe vom Februar 2012, S. 61