Stockfish
Werbung




Startseite » Computer » Stockfish

Stockfish

Stockfish
Startseite » Computer » Stockfish

Stockfish

Was ist Stockfish? – Zuerst einmal ist Stockfish (englisch für das Tier Stockfisch, Wikipedia) ein freies Schachprogramm. Es wurde und wird dabei von Tord Romstad, Joona Kiiski und Marco Costalba und einer großen Entwicklergemeinde entwickelt.

Ein paar Worte zuvor …

  • Stockfish ist darüber hinaus eine mächtige, multithreaded UCI Chess-Engine. Sie wird indes als Open Source angeboten. Aktuell hat sie für 64bit 4CPU sogar eine ELO von über 3700 (!). Damit spielt sie entsprechend deutlich besser als ihre Vorgänger. Es ist infolge wieder mal Computerweltmeister und natürlich auch besser als der menschliche Weltmeister.
  • Woher kommt der Name Stockfish? – Das Programm trägt seinen Namen weil es “in Norwegen produziert und in Italien gekocht” wurde: Romstad ist Norweger, Costalba ist Italiener.

Neuere Geschichte

  • Im September 2020 erschien Stockfish 12 (Blogbeitrag) oder auch Stockfish NNUE (Abk. für: Efficiently Updatable Neural Network) genannt. Das neue Programm kombinierte dabei KI Technik, wie sie vor wenigen Jahren durch Leela Zero eingeführt wurde, mit der klassischen Chess-Engine. Damit wurde Version 12 grundlegend zu den Vorgängerversionen 11, 10, 9, 8 etc. verbessert.
  • Stockfish 13 vom Feb 2021 war schon nochmal mindestens 35 ELO-Punkte besser als die Vorgängerversion 12. Ließ man Version 13 gegen eine 1-Jahr-alte Version antreten, so gewann sie 60 mal mehr Spielpaarungen, als sie verliert!
  • Der Hintergrund, warum Version 13 plötzlich erschien, ist weniger schön. Die Firma Chessbase hat vielmehr Stockfish 12 mit nur sehr wenigen Modifikationen kopiert. Dann wurde es als kommerzielles “Fat Fritz 2” auf den Markt geschwemmt. Wenn man mit Qualität nicht überzeugen kann, dann wohl mit Tricks. Mehr dazu hier.
  • Es wurden übrigens häufigere Releases angekündigt, die jeweils die Vorgängerversionen übertreffen sollen.
  • Ende Oktober 2021 erschien schon Version 14.1. Schon die Engine-Version 14.0 von Juli war signifikant stärker und gewinnt viermal mehr Spielpaare als es verliert gegen das vorherige Release 13. Es ist auf derart hohem Niveau sehr häufig, dass Engines gegeneinander Remis spielen. Dennoch hat Version 14.1 nochmal 17 Elo-Punkte mehr als Version 14.0.
  • Mitte April 2022 erschien dann Version 15. Stockfish 15 ist dann nochmal 36 Elo-Punkte besser als die Vorgängerversion 14 und gewinnt neun mal mehr Spielpaare, als es verliert! Die neue Version ist anderen Schachprogrammen haushoch überlegen, auch in anderen Spielvarianten.
  • Dann erschien im Dezember 2022 Version 15.1. Stockfish 15.1 bringt vor allem Verbesserung in FRC (Fischer Random Chess). Aber es ist auch wichtig festzustellen, dass dieses Release in Standard Schach Fortschritte macht. Es gewinnt zwei mal mehr Spielpaare, als es verliert gegen Stockfish 15. Stockfish gewinnt weiterhin in dominierender Art und Weise alle Schach-Engine Turniere, inklusive TCEC Superfinal, Cup, FRC, DFRC, und Swiss genau so wie CCC Bullet, Blitz, and Rapid Events.
  • Am 30. Juni 2023 betrat Stockfish 16 die Schachszene. Auch diese Version kann wie gewohnt perfekte Züge bei außergewöhnlichen Geschwindigkeiten zu erkennen. Die neue Version hat bis zu 50 Elo-Punkte mehr und gewinnt bis zu 12-mal mehr Paare als er verliert im Selbstspiel gegen Stockfish 15. Bei den großen Turnieren der Schachmaschinen führt Stockfish durchweg die Rangliste an und gewinnt das TCEC Season 24 Super Final, die Swiss-, Fischer Random- und Double Random Chess-Turniere sowie die CCC 19 Bullet-, 20 Blitz- und 20 Rapid-Wettbewerbe. Leela Chess Zero ist in den meisten Endspielen die Herausforderin und hat damit das Spitzenschach nun fest in die Hände von kostenlosen und Open-Source-Teams gelegt.
  • Seit 24.02.2024 ganz neu gibt es nun das Update Stockfish 16.1. Es wartet mit einer nochmals verbesserten Stellungsbewertung, eine aktualisierten neuronalen-Netz-Architektur, einem vollständigen neuronalen Netzansatz. Darüber hinaus ist nun ein sekundäres neuronales Netz eingebaut (Dual NNUE), um Stellungen schneller zu bewerten, die eine einfache Bewertung zulassen. Begrüßenswert ist außerdem, dass es mehr Binaries für spezielle CPUs gibt, wodurch es wiederum zu Leistungsverbesserungen kommt.

Was geht mit Stockfish?

Schach Anfangsstellung

Was ist indessen der beste Zug in der Anfangsstellung laut dieser Engine in Version 15?

  • 1. d4 (+0.39) ist minimal besser als 1.Sf3 (+0.36) – mit einer gewissen Dynamik (Suchtiefe 43, Version 15). 1.c4 (+0.33) und 1.e4 (+0.29) folgen etwas schlechter, während 1.g3 (+0.21) als fünftbester Zug schon abgeschlagen ist.
  • Die besten Erwiderungen sind demnach Damengambit 1. … d5 (auf 1.d4 bzw. 1.Sf3 (gefolgt von 2.d4)) und Katalanisch (auf 1.c4) bzw. Caro-Kann (auf 1.e4).
  • Stockfish 8 zeigte noch ein geringfügig anderes Bild und favorisierte 1. e4 mit +0.2 Bauerneinheiten, 0.03 Bauerneinheiten mehr als 1.d4:
Stockfish berechnet den besten ersten Zug
  • Das Programm in action:

Wie funktioniert Stockfish?

Die Macht der KI: Das Programm war bis Version 11 eine klassische Schachengine, also die Software eines Schachcomputers. Wie Schachcomputer funktionieren, habe ich in diesem Beitrag erklärt. Seit Version 12 wurden KI-Elemente wie aus Leela Zero in die Technik verbaut.

In a match against Stockfish 11, Stockfish 12 will typically win at least ten times more game pairs than it loses.

https://stockfishchess.org

Mehr Details

Wie installiere ich Stockfish?

Genauer: Wie binde ich diese, oder auch eine andere UCI-Engine entsprechend in mein Schachprogramm ein? Dazu im Folgenden mehr.

SCID, Stockfish und der ganze Rest …

Ist Stockfish die Antwort oder 42?

Stockfisch selbst stellt diesen Link zur Verfügung, indem viele GUIs abgedeckt werden, und genau beschrieben wird, wie man die UCI Engine in die jeweilige GUI einbinden kann.

Was muss ich beachten, wenn ich SCID aufsetze? Wie installiere ich darüber hinaus darin die Engine? Woher komme ich schließlich an Partien? Ein Rundum-Sorglos-Paket für alle, die kurz gesagt “nicht Bundesliga” o.ä. spielen.

In einem Video kurzum erklärt! Danke an Martin S.! Hier also die deutsche Anleitung in einem Youtube-Video:

https://youtu.be/LqFceDK02g4

… und hier entsprechend eine weitere Anleitung in Englisch:

https://youtu.be/gPykd0zpKGw

Alternativ: Das Komplettpaket (inkl. GUI) installieren

Es gibt das Komplettpaket für die verschiedensten Systeme, für …

Alternativ: Arena-Chess

Anfiteatro de Pula, Croacia, 2017-04-17, DD 22-24 HDR

Die Arena Chess GUI Seite mit allen Details findet man hier: http://www.playwitharena.de/

Arena bietet ungeachtet dessen auch die Möglichkeit, die Spielstärke anzupassen. Eine Anleitung, wie man es installiert und die UCI-Engine einbindet, gibt es zum Beispiel in diesem Video:

https://youtu.be/oSqMV28HAVM

Alternativ: UCI Engine in Fritz einbinden

Fritz ist ein weit verbreitetes, jedoch kostenpflichtiges Schachprogramm von Chessbase. Eine Anleitung von Chessbase selbst dazu, wie man eine UCI-Engine einbindet, findet man hier.

Schließlich noch ein Youtube Video in Englisch dazu unter:

https://youtu.be/Sohmt3X8ezs

Alternativ: In Chessbase 15 einbinden

“Chessbase” selbst ist das kostspielige Datenbankprogramm vom gleichnamigen Hersteller. In meinen Augen ist Chessbase darüber hinaus deutlich schlechter als SCID, aber auch hier lässt sich das leistungsstarke Open-Source-Programm einbinden.

Dazu gibt es z.B. folgendes Youtube-Video:

https://youtu.be/mxtzWUNdFc0

Fazit

Es gibt viele Möglichkeiten, Stockfish zu installieren. Insbesondere ist man dabei nicht auf kommerzielle Lösungen angewiesen. Alle wichtigen Elemente sind frei verfügbar.
Insbruck 17
Ein Hobby-Spieler braucht also kein Geld auszugeben. Der Rechner steht ja offenbar schon zu Hause, und wartet nur darauf, den richtigen Zug zu berechen …

Viel Spaß beim Schach und gut Holz!

SH, Karlsruhe 04.2024


Beitrag veröffentlicht

in

von

Kommentare

6 Antworten zu „Stockfish“

  1. Avatar von Sven
    Sven

    Lieber Schachfreund Dieter,

    danke für Deinen Kommentar. – Ja, es ist sicher kein Zufall, dass man in den Höchstleistungs-Rechenzentren dieser Erde auf Linux und nicht auf MS setzt. Dennoch gilt wohl für den heimischen Gebrauch, dass man am ehesten das einsetzen wird, was man ohnehin vor Ort hat. Interessant mag aber auch die Verwendung von Stockfish bei der Analyse auf lichess.org sein. Dort wird vermutlich ebenfalls Linux (in der Cloud) eingesetzt. Es wäre interessant zu sehen, wie sich das OS in ELO-Punkten beim Engine-Vergleich niederschlagen würde 😉

    Gut Holz und guten Rutsch nachher!

    Sven

  2. Avatar von Dieter Ziehe
    Dieter Ziehe

    Wieviel CPU Stockfish verwendet hängt vom Betriebssystem ab,
    das Schachprogramm verwendet threads, die dann von der Threadlibrary
    auf die CPU verteilt werden. Am Übersichtlichsten und ist das
    unter Linux (pthreads), da werden ganz sicher mehrere CPUs verwendet,
    wenn Stockfish mehrere Threads öffnet. Bei MS ist das (k)ein Betriebsgeheimnis
    mehr, dass Windows sich selbst die meisten Threads und CPUs zuschiebt und wenn
    noch ein Brotkrümel (Thread oder CPU) übrig ist, dann wird dieser (sehr sparsam)
    den Anwendungen (stockfish) zugewiesen. Also am besten Linux verwenden!

  3. Avatar von Sven
    Sven

    Hallo Schachfreund Dieter,

    auch Dir ein frohes Neues noch! 🙂

    Eigentlich kann ich mir nicht vorstellen, dass Dein PC zu Hause tatsächlich nur eine CPU hat. Die allermeisten Rechner haben 4 oder mehr CPU, vermutlich auch Deiner. Du musst unterscheiden zwischen den Bezeichnungen “Core” und “CPU”. Aber wenn Du genau weißt, was Dein Rechner für ein Innenleben hat, kannt Du auf dieser Seite die Chess-Engines vergleichen. Wenn Du dort herunterscrollst, kannst Du auch spezielle Vergleiche, auch mit verschiedenen Architekturen anstellen.

    Das Hauptproblem ist, dass eine Wertungszahl (ELO, DWZ, wasauchimmer) etwas Relatives ist. Du könntest also ein Engine-Turnier auf Deinem PC laufen lassen. Letzteres geht z.B. mit SCID. Das wäre aber sehr aufwendig. Die Seite unter computerchess.org.uk oben ist zudem deutlich verlässlicher.

    Viele Grüße und gut Holz!

    Sven

  4. Avatar von Dieter
    Dieter

    Grüsse aus Düsseldorf- Frohes Neues Jahr
    Ich finde es erstaunlich wieviel Mühe Du dir gibst !!
    Du schreibst :—- 64bit 4CPU sogar eine ELO von über 3600
    Wie kann ich feststellen wie stark stockfish auf meinem PC spielt — 1 CPU ?
    Danke
    Dieter

  5. Avatar von Sven
    Sven

    Hallo Klaus,

    zunächst vorweg: Schach ist mein Hobby, und dies ist auch keine kostenpflichtige Support-Seite für Schachsoftware. Wer eine Hotline wünscht, ist bei kommerziellen Anbietern besser aufgehoben. Das “Blabla” auf dieser Seite sind stichhaltige Informationen zur Opensource-Software Stockfish, die für alle frei zugänglich ist. Sie ist besser als die für viel Geld vermarktete Raubkopie von Chessbase.

    Der Ton macht die Musik.

    Wie auch immer. Eine UCI-Engine ist ein unabhängiges Programm, das an eine GUI angeflanscht werden kann, siehe hier. Die Kunst ist dabei schlicht, der jeweiligen GUI mitzuteilen, wo auf der Festplatte sich dieses UCI-Programm befindet.

    Im obigen Blogbeitrag findest Du viele, jeweils für bestimmte Szenarien (GUIs) passende Youtube-Videos. Es ist nicht Aufgabe der UCI-Engine (hier: Stockfish) zu erläutern, wie sie eingebunden werden muss. Sondern es ist die der GUI. Bei vielen Nutzern ist das leider immer noch Fritz oder Chessbase. Und es ist deren Support, der für deren Software hier Licht ins Dunkel bringen müsste. Derartige Firmen haben aber kein Interesse, Gratis-Software zu unterstützen, sondern wollen verkaufen.

    Wenn Du mir schreibst, in welches Programm Du Stockfish einbinden willst, kann ich Dir dennoch gerne helfen. Ich nehme noch nicht mal Geld dafür.

    Schachliche Grüße

    Sven

  6. Avatar von Klaus
    Klaus

    Hallo,
    Viel Blabla, aber wenig brauchbares.

    Können Sie nicht einmal eine Schritt für Schritt Anleitung, die man auch verstehen kann, für eine Installation erstellen? Mir hat Ihr Artikel nicht weitergeholfen.

    Gruß Klaus

Schreibe einen Kommentar

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