Leela Chess Zero auf dem DGT Pi

An der Leela Chess Zero Schachengine bastelt die Schach-Community nun schon eine ganze Weile. Genauso wie der große Bruder Alpha Zero, zieht die Engine Leela Chess Zero ihre Spielstärke aus vielen „Trainings“-Partien. Diese Engine lernt das Schachspielen durch Erfahrungswerte, um es oberflächlich auszudrücken.

Dank der Arbeit von Al und Jürgen, läuft diese Engine nun auch auf dem DGT Pi / PicoChess. Hier nun eine Schritt für Schritt Anleitung, wie man diese spannende Engine auf dem DGT Pi / PicoChess zum Laufen bekommt:

Zunächst müssen wir unseren DGT Pi mit dem Internet/Intranet verbinden. Dies geht am Einfachsten, indem man den DGT Pi mit einem RJ45-Kabel (LAN-Kabel) mit dem Router verbindet. Startet man nun den DGT Pi, erhalten wir über das System-Menü an der Uhr die IP-Adresse des DGT Pi.

Nun starten wir das Programm Putty und verbinden uns mit dem DGT Pi, indem wir dessen IP-Adresse in das entsprechende Feld eintragen und „Open“ anklicken. Als Benutzernamen geben wir pi ein und als Passwort picochess.

Um die Engine zum Laufen zu bekommen, müssen wir bei unserem DGT Pi einige Sachen nachinstallieren. Da ständig neue Versionen der notwendigen Installationspakete veröffentlicht werden und ältere Pakete nicht mehr verfügbar sein können, ist es zunächst wichtig, dass wir unsere Paket-Liste im DGT Pi auf den neusten Stand bringen. Hierzu führen wir folgenden Befehl aus:

sudo apt-get update

Ist das Update durchgelaufen, können wir mit der Installation der Pakete beginnen. Bitte folgenden Code komplett kopieren und in das Putty-Shell-Fenster hineinkopieren und mit der Enter-Taste ausführen:

sudo apt install cmake g++ git libboost-all-dev libopenblas-dev opencl-headers ocl-icd-libopencl1 ocl-icd-opencl-dev zlib1g-dev

Der Installations-Assistent wird uns ein paarmal fragen, ob wir mit der Installation des einen oder anderen Paketes einverstanden sind, was wir natürlich bejahen. Auf Grund der Vielzahl der Pakete und der doch nicht geringen Größe, kann das Installieren durchaus 20 Minuten Zeit in Anspruch nehmen.

Wurde die Installation erfolgreich beendet, laden wir uns die von Al Scally Cooper compilierte Engine Leela Chess Zero herunter:

LcZero kompiliert von Al Scally Cooper (30 Downloads)

 

Nach dem Entpacken der ZIP-Datei, haben wir eine Datei namens lczero auf dem Rechner. Diese Datei müssen wir nun in den Engine-Ordner auf unserem DGT Pi kopieren. Um dies halbwegs komfortabel zu machen, verwenden wir zum Hoch- und Herunterladen von Dateien die Software FileZilla.

Wer dieses Programm noch nicht auf dem Rechner hat, sollte es spätestens jetzt installieren und starten. Oben links können wir eine Schnellverbindung zu unserem DGT Pi aufbauen, indem wir die IP-Adresse des DGT Pi eingeben, den Port 22 wählen und die bekannten Zugangsdaten Benutzer: pi Passwort: picochess verwenden.

Hat alles geklappt, befinden wir uns im rechten Teil des Fensters in unserem Home-Ordner. Wir wechseln nun in folgenden Ordner:

/opt/picochess/engines/armv7l

Nun ziehen wir die auf unserem Computer befindliche entpackte Datei lczero in diesen Ordner. Der nun folgende Schritt wird gerne vergessen. Zwar befindet sich die Datei nun im richtigen Verzeichnis, aber für das System ist es einfach nur eine Datei, mehr nicht. Da es sich bei lczero um ein Programm handelt, welches das System ausführen muss, müssen wir der Datei die entsprechende Berechtigung geben. Wir klicken hierzu im Filezilla mit der rechten Maustaste auf die Datei und wählen den Menüpunkt Dateiberechtigungen. In dem sich nun öffnenden Fenster setzen wir die Häkchen so, wie auf dem hier gezeigten Bild:

Jetzt noch mit OK bestätigen. Als nächstes müssen wir die Engine noch in unsere Engine-Liste eintragen. Hierzu klicken wir auf die im selben Ordner /opt/picochess/engines/armv7l befindliche Datei engines.ini mit der rechten Maustaste und wählen im Menü Ansehen/Bearbeiten. Die Datei sollte nun in einem Editor geöffnet sein. Wir gehen ans Ende der Datei und geben folgende Zeilen ein:

[lczero]
name = lczero v0.10
small = lczero
medium = lczero
large = lczero 0.10
elo = 2700

Das Ganze speichern wir ab und übertragen die Datei zurück in den Ordner. Sollte FileZilla fragen, ob wir die bestehende Datei überschreiben wollen, bestätigen wir das natürlich.

Nun kommen wir zu zu dem besonderen Teil. Damit Leela Chess Zero Schach spielen kann, benötigt es „Wissen“. Dieses Wissen erhält Leela Chess Zero durch unzählig gespielte Partien und wird in sog. Weights-Dateien abgespeichert. Zum Spielen ist immer nur eine Weights-Datei notwendig. Unter folgendem Link könnt ihr euch eine große Auswahl an Weights-Dateien herunterladen:

http://lczero.org/networks

Sehr aktuelle Weights-Dateien findet ihr unter folgendem Link:

http://testserver.lczero.org/networks

Zum Herunterladen einer Datei, klickt man einfach in der Spalte Network einen Eintrag an:

Die geschätzte Spielstärke der einzelnen Weights-Dateien könnt ihr unter folgendem Link find:

https://docs.google.com/spreadsheets/d/1XSJiCcQpCLv0fNwrUn7jXjdkZFU63YFEWpdXv6dSSg0/htmlview#

Nach dem Herunterladen müssen wir die Datei noch in weights.txt umbenennen.

Nun gehen wir wieder zurück ins FileZilla-Fenster und wechseln auf unserem DGT Pi in den Ordner

/opt/picochess

In genau diesen Ordner müssen wir nun die Datei hineinkopieren. Manche Weights-Datei kann unter Umständen 60-100 Megabyte groß sein. Es kann mit dem Kopieren als etwas dauern.

Ist auch dieser Schritt geschafft, kommen wir zum Finale. 🙂

Wir gehen zurück ins Putty-Fenster und geben folgenden Befehl ein:

sudo reboot now

Der DGT Pi startet nun neu und wenn wir nun einen Blick in die Engine-Auswahl werfen, sehen wir, dass uns mit lczero 0.10 ab sofort die Engine Leela Chess Zero zur Verfügung steht.

WICHTIG! >>> Wenn wir nun diese Engine auswählen, kann es durchaus 15 bis 20 Sekunden dauern, bis die Rückmeldung EngineOK im Display erscheint. Also nicht die Geduld verlieren und wild auf den Knöpfen des DGT Pi herumdrücken. 😉

Eurer ersten Partie gegen diese wirklich interessante Engine kann nun starten. Eine direkte Spielstärken-Einstellung der Engine gibt es nicht. Allerdings kann man sich anhand der oben genannten Links eine für die eigene Spielstärke passende Weights-Datei herunterladen und auf diese Weise die Spielstärke heben und senken. Hierzu einfach die auf dem DGT Pi befindliche weights.txt austauschen.

Und jetzt viel Spaß

Euer Benny

Keine offene Schnittstelle beim Millennium Chess-Link

Wie ich heute von Millennium erfahren habe, wird es bei dem angekündigten Produkt Chess-Link nun doch keine offene Schnittstelle geben. Während Millennium in der hauseigenen Produktbeschreibung noch mit einer offenen Schnittstelle wirbt, müssen einige Entwickler wohl in die Röhre schauen:

Millennium Chess Link Schnittstelle

Laut dem Mitarbeiter des Unternehmens Winfried Geltinger, werden die Spezifikationen nur ausgewählten Interessenten zur Verfügung gestellt. Wer also mit dem Gedanken spielt, dieses Modul für die Entwicklung zu erwerben, könnte schnell enttäuscht werden. Noch bevor dieses Produkt auf dem Markt erscheint, gibt es für diese Irreführung des Kunden einen Daumen nach unten.

Bis bald

Euer Benny

Neue Eröffnungsbücher für den DGT Pi

Der DGT Pi bietet bereits im Auslieferungszustand eine gute Auswahl an Eröffnungsbüchern. Wie man weitere Eröffnungsbücher generiert und diese in im DGT Pi verfügbar macht, möchte ich in diesem Beitrag zeigen.

Bevor wir beginnen, benötigen wir ein paar und Dateien. Ich habe diese in ein ZIP gepackt, um euch die Suche zu ersparen. Dieses Zip einfach in einen Ordner entpacken und in diesen Ordner wechseln:

DGT Pi Book Maker (21 Downloads)

 

Selbstverständlich sollte sich unser DGT Pi zumindest im Intranet befinden, sodass wir darauf problemlos über SSH zugreifen können.

Unsere neuen Eröffnungsbücher werden aus Partien generiert, welche in PGN-Dateien gespeichert sind. Nehmen wir in unserem Beispiel einfach mal an, dass wir ein Buch aus Partien generieren möchten, welche ausschließlich von Spielern über 2500 ELO gespielt wurden. Sowohl auf der schwarzen Seite, als auch auf der Seite von Weiß. Woher bekommt man nun die Partien?

Ich habe vor langer Zeit einen TWIC-Downloader programmiert, mit welchem man sich jede Woche die neusten Partien herunterladen kann. Auch ältere Ausgaben kann man mit diesem Programm herunterladen und in einer PGN-Datei zusammenführen:

http://forum.topschach.de/twic-downloader-t969.html

Hat man sich nun eine sog. Referenzdatenbank im PGN-Format erstellt, kann es mit dem Selektieren losgehen. Ich persönlich verwende hierzu das Programm Chessbase 14, aber auch kostenlose Datenbankprogramme wie etwa SCID, können verwendet werden. In meinem Beispiel beziehe ich mich aber ausschließlich auf Chessbase 14.

Wir öffnen also unsere PGN-Datei und sehen eine Vielzahl von Partien.

Wir benötigen nun sowohl für Schwarz, als auch für Weiß, eine separate PGN-Datei. Wir legen als zwei neue Datenbanken an und nennen Sie einmal BigBook_w.pgn und einmal BigBook_b.pgn

Jetzt beginnen wir mit dem Sortieren. Gehen wir zurück in unser Fenster mit den vielen Partien der Referenzdatenbank, klicken wir auf Liste filtern. Es öffnet sich ein entsprechender Dialog. Wir wählen aus, dass alle Partien von Weiß gewonnen sein müssen und alle Spieler mindestens 2500 ELO auf dem Konto haben müssen.

DGT Pi Opening Book

Klicken wir nun auf OK, werden die Partien entsprechend unseren Vorgaben gefiltert. Ist der Vorgang abgeschlossen, markieren wir alle gefilterten Partien mit der Tastenkombination Strg+a und legen Sie mit der Tastenkombination Strg+c in unseren Zwischenspeicher. Jetzt wechseln wir in unsere zuvor angelegte und noch leere Datenbank BigBook_w.pgn und legen die Partien aus dem Zwischenspeicher mit der Tastenkombination Strg+v dort hinein. Danach können wir dieses Partienfenster schließen und gehen zurück zu unserer Referenzdatenbank.

Hier wählen wir erneut Liste Filtern und ändern den Parameter Ergebnis nun auf 0-1. Das bedeutet, dass wir diesmal alle Partien möchten, in welchen beide Spieler mindestens 2500 ELO haben und Schwarz gewonnen hat. Wir prüfen noch schnell, ob beim ELO-Parameter auch die Option beide gewählt wurde und klicken auf OK.

Das Ergebnis legen wir wie oben beschrieben wieder in den Zwischenspeicher, öffnen unsere leere Datenbank BigBook_b.pgn und legen die Partien aus dem Zwischenspeicher dort hinwein.

Jetzt können wir unser Schachprogramm (Chessbase 14) schließen. Zuvor sollten wir uns allerdings noch merken, in welchem Ordner diese beiden von uns neu angelegten PGN-Datein sich befinden. Sobald das Schachprogramm geschlossen wurde, gehen wir in das Verzeichnis in welchem die beiden PGN-Daten liegen und kopieren diese beiden Dateien in unseren Ordner, in welchem die Programme die wir zuvor herunterladen haben liegen.

In dem selben Ordner liegt eine Datei namens: makebook.bat

Diese Datei bitte noch nicht starten, sondern mit der rechten Maustaste anklicken und mit einem Texteditor öffnen. Wir sehen folgenden Inhalt:

pgn-extract -s -C -N -V -tstartpos.txt -oclean-SGM_white.pgn BigBook_w.pgn
polyglot make-book -only-white -pgn clean-SGM_white.pgn -bin w1.bin -max-ply 16 -min-game 50
polyglot make-book -only-white -pgn clean-SGM_white.pgn -bin w2.bin -max-ply 60 -min-game 5
polyglot merge-book -in1 w1.bin -in2 w2.bin -out w12.bin

pgn-extract -s -C -N -V -tstartpos.txt -oclean-SGM_black.pgn BigBook_b.pgn
polyglot make-book -only-black -pgn clean-SGM_black.pgn -bin b1.bin -max-ply 16 -min-game 50
polyglot make-book -only-black -pgn clean-SGM_black.pgn -bin b2.bin -max-ply 60 -min-game 5
polyglot merge-book -in1 b1.bin -in2 b2.bin -out b12.bin

polyglot merge-book -in1 w12.bin -in2 b12.bin -out r-bigbook.bin

Pause 0

Was hier etwas verwirrend aussieht, lässt sich relativ leicht entschlüsseln. In der ersten Zeile rufen wir mit dem Programm pgn-extract unsere PGN-Datei für Weiß auf und lassen diese Bereinigen. Also alles was an unnötigen Kommentaren in den Partien drin steht, wird gelöscht. Das Ergebnis wird in einer PGN-Datei namens clean-SGM_white.pgn gespeichert. In der zweiten Zeile wird aus dieser PGN-Datei ein Eröffnungsbuch generiert, in welchem nur die weißen Züge gespeichert werden mit einer Tiefe von maximal 16 Halbzügen bei mindestens 50 Partien. In der dritten Zeile wird ein weiteres Eröffnungsbuch angelegt, in welchem allerdings eine Tiefe von maximal 60 Halbzügen bei mindestens 5 Partien vorhanden ist. In der vierten Zeile werden diese beiden Eröffnungsbücher miteinander verbunden. Dies gibt uns ein relativ gutes Buch, dass recht breit angelegt ist, aber nicht zu sehr in die Tiefe geht.

Das Gleiche geschieht auch mit unserem schwarzen Buch in den Zeilen 6 bis 9.

In Zeile 11 werden nun diese beiden Bücher (eins für Weiß und eins für Schwarz) zusammengeführt und unter dem Namen r-bigbook.bin gespeichert.

Der gesamte Vorgang kann bei großen Eröffnungsbüchern durchaus eine Weile dauern. Wenn alles erledigt ist, schauen wir in unseren Ordner mit den Programmen. Dort finden wir recht viele neue Dateien. Uns interessiert allerdings nur die Datei r-bigbook.bin

Es handelt sich um das Ergebnis unserer mühevollen Arbeit. Diese Datei muss nun auf unseren DGT Pi hochgeladen werden. Hierzu verbinden wir uns mit dem Programm Filezilla (andere FTP-Programme mit SSH-Option funzen ebenfalls) mit dem DGT Pi. Also oben IP Adresse des DGT Pi eingeben und Benutzer: pi und Passwort: picochess verwenden. Nachdem wir verbunden sind, gehen wir in den Ordner /opt/picochess/books

Nun ziehen wir die Datei r-bigbook.bin mit der Maus direkt in diesen Ordner. Das sollte nun etwa so aussehen:

DGT Pi Opening Book

In diesem Ordner liegt auch eine Datei namens books.ini – Diese müssen wir nun noch anpassen. Hierzu öffnen wir die Datei mit einem Texteditor und sehen etwas weiter unten folgenden Inhalt:

...

[o-pro.bin]
small = pro
medium = Pro
large = Pro

[p-gm2001.bin]
small = gm2001
medium = GM 2001
large = GM 2001

[q-sgm.bin]
small = SGM
medium = Super GM
large = Super GM

Diesen Inhalt erweitern wir um folgende Zeilen:

[r-bigbook.bin]
small = BigBook
medium = Big Book
large = Big Book

Wir speichern es ab und starten unseren DGT Pi neu. Wenn wir nun über das Menü des DGT Pi in die Buchauswahl gehen, finden wir unser neues Buch und können es auswählen und eine Partie starten:

DGT Pi Opening Book

Auf die oben beschriebene Weiße lassen sich alle möglichen Arten von Eröffnungsbüchern generieren. Beispielsweise arbeite ich mich seit einiger Zeit in das London System ein. Zu Trainingszwecken habe ich ein London-Buch generiert, welches auf dem aktuellen Stand der Theorie ist. Ein absolut tolles Trainingswerkzeug!

Selbstverständlich lassen sich auch Spieler-Charaktere als Eröffnungsbuch generieren. So kann man beispielsweise alle Partien von Magnus Carlsen mit Weiß und Schwarz als Eröffnungsbuch zusammenführen und kann praktisch gegen das Eröffnungsrepertoire von Magnus Carlsen spielen. 🙂

Diese kleine Anleitung kann natürlich nicht alle Möglichkeiten aufzeigen, welche beim Generieren von Eröffnungsbüchern vorhanden sind. Aber ich glaube es ist ein guter Einstieg und wer sich näher mit den einzelnen Funktionen beschäftigt, kann seiner Fantasie freien Lauf lassen.

Bis bald

Euer Benny

🙂

 

ChessGenius Exclusive Chess Link

Mit dem ChessGenius Exclusive Chess Link erhält der ChessGenius Exclusive nun endlich die schmerzlich vermisste Bluetooth-Schnittstelle, mit welcher eine Anbindung an Android, iOS und Windows-Systeme möglich ist. Die offene Schnittstelle ermöglicht jedem Programmierer die Einbindung in eigene Projekte. Ein sehr begrüßenswerter und logischer Schritt, nachdem die hauseigenen „Programmierer“ der Firma Millennium nicht gerade durch Usability in ihren Anwendungen glänzten. 😉

ChessGenius Exclusive Chess Link

 

Geliefert wird dieses Modul mit einer kostenlosen Android-App inklusive dem Programm HIARCS, mit welcher man dann auch schon direkt loslegen kann. Beworben wird das bekannte Schachprogramm von Mark Uniacke mit den Worten „…gilt als eine der spielstärksten Schach-Engines der Welt…„. Wie schon beim ChessGenius Exclusive, ist man sich bei der Werbeabteilung für keine Übertreibung zu schade. 🙂 – Natürlich ist HIARCS ein starkes Schachprogramm, jedoch kommt es im Bezug auf die Spielstärke an viele kostenlose Engines, wie beispielsweise Stockfish, nicht heran. Das muss es aber auch nicht. HIARCS bietet einen wunderschönen Spielstil, welcher für abwechslungsreiche Partien sorgt und immer wieder mit spektakulären Opfern um die Ecke kommt.

Genau damit hätte die „Werbeabteilung“ von Millennium punkten können. Schnelle Autos gibt es wie Sand am Meer, aber gutes Fahrgefühl haben nur Wenige.

Chess Link Hiarcs

Selbstverständlich werden wir auch dieses Produkt aus dem Hause Millennium wieder auf den Prüfstand stellen und einen Produkttest in unserem YouTube-Kanal veröffentlichen. Bezüglich des Preises bin ich allerdings schon jetzt der Meinung, dass die unverbindliche Preisempfehlung des Herstellers in Höhe von 99,-€ durchaus in Ordnung geht. Als kleines Schmankerl für unsere Kunden, gibt es das Modul bei uns für kurze Zeit zum Einführungspreis von 79,-€ unter:

https://www.topschach.de/chessgenius-exclusive-chess-link-p-4097.html

Erhältlich soll der ChessGenius Exclusive Chess Link laut Datenblatt Anfang Juli sein. Ich selbst gehe aktuell allerdings von August aus.

Weitere Infos stehen selbstverständlich auch in unserem Forum zur Verfügung.

Bis bald

Euer Benny

 

Der DGT Schachcomputer

Mit dem DGT Schachcomputer entwickelt der niederländische Marktführer aktuell einen wohl einzigartigen Schachcomputer. Einen offiziellen Namen hat das Gerät noch nicht, aber auf der Spielwarenmesse in Nürnberg konnten wir einen ersten Prototypen begutachten.

DGT Schachcomputer

Mit dem DGT Pi konnten die Entwickler schon Einiges an Erfahrung sammeln. Angeschlossen an ein DGT-Brett, bietet dieses Gerät alles, was das Schachcomputerherz sich wünscht. Fehlende Feld-LEDs kann man hier durchaus verschmerzen.

Feld-LEDs wird der Ende Sommer kommende DGT Schachcomputer aber auf jeden Fall haben und hier zeigt sich sehr schön, dass die Firma DGT immer wieder sehr elegante Lösungen präsentiert. Unterhalb der einzelnen Felder sind LED-Leuchtringe angebracht, welche bei Aktivierung durch die einzelnen Felder hindurch leuchten. Das sieht schon sehr futuristisch aus.

Neue Wege ist man auch beim Display gegangen. Wurde hier bei der Konkurrenz bisher immer auf LCD-Displays gesetzt, nutzt DGT die neuste E-Ink-Technik, wie man sie von E-Book-Reader wie beispielsweise dem Kindle kennt. Das hat nicht nur stromsparenden Vorteil, sondern bietet auch die Möglichkeit, den Schachcomputer bei hellstem Sonnenschein im Freien zu verwenden. Alle Informationen lassen sich problemlos vom Display ablesen. Gut vorstellbar, dass über dieses Display auch Schachaufgaben und sonstiges Training verfügbar sein wird.

DGT Schachcomputer

Bezüglich des eingesetzten Schachprogramms wird es wohl 3 verschiedene Spiel-Modi geben. Eine echte Neuerung ist die Idee, dass der Schachcomputer im ersten Modus im Schnitt mehr Partien gegen seinen menschlichen Gegner verlieren wird, als gewinnen. Der Schachcomputer passt sich hierbei sehr intelligent Partie für Partie an die Spielstärke des Gegners an. Auf jeden Fall gerade für ungeübte Schachspieler eine sehr motivierende Idee. Im zweiten Modus geht es dann etwas mehr zur Sache und erfahrene Vereinsspieler werden hier einen optimalen Sparringspartner haben. Im dritten Modus wird das Können des Schachprogramms dann komplett ausgereizt.

DGT Schachcomputer

Auf eine direkte Figurenerkennung wie man sie von DGT Brettern kennt, wird allerdings verzichtet. DGT stellt aber auch hier eine innovative Neuerung vor. Der Schachcomputer reagiert auf Figuren, welche Metall beinhalten. Üblich war bisher, dass Figuren einen Magneten im Sockel haben und der Schachcomputer auf diese Magneten reagierte. Beim DGT Schachcomputer reichen normal gewichtete Figuren aus, damit diese erkannt werden. Mit dieser Technik ist es möglich, jeden beliebigen Satz gewichteter Figuren für das Spielen zu verwenden. Eine tolle Sache!

Sobald uns ein erstes Testgerät vorliegt, werden wir den neuen Schachcomputer selbstverständlich auf Herz und Nieren Testen und einen Produkttest auf unserem YouTube-Kanal bereitstellen. 🙂

Euer Benny

Richard Lang „Partien können auch noch später gewonnen werden!“

Beim letzten Vereinsabend unseres Schachvereins (schachfreunde.topschach.de) gab unser Mitglied Ritschi mal wieder eine seiner Anekdoten zu Richard Lang zum Besten. Ritschi (IM Thomas Reich) arbeitete sehr eng mit dem Programmierer Richard Lang zusammen und war unter anderem auch für die Eröffnungsbücher zuständig, welche bei den einzelnen Schachcomputer-Weltmeisterschaften eingesetzt wurden. Auf die Frage, warum die Programme von Richard Land so verhalten spielen und den Weg nach vorne eher gemächlich angehen, zitierte Ritschi Richard Lang mit den Worten „Partien können auch noch später gewonnen werden!“ 🙂

Mit diesem Credo dominierte Richard Lang mit seinen Schachprogrammen über viele Jahre das Computerschach und wurde damit Weltmeister in Serie.

 

DGT Pi – Neue Engines hinzufügen

Mit Stockfish besitzt der DGT Pi die absolute Spitzenengine im Schachcomputerbereich. Mittlerweile gibt es Stockfish 9 und nicht wenige Kunden fragen sich, wie sie die neue Engine in ihren DGT Pi einbinden können. Dies geht einfacher, als gedacht.

Voraussetzung für das Einbinden ist eine aktive SSH-Verbindung zum DGT Pi. Dies lässt sich am Einfachsten mittels eines RJ45-Kabels vom Router zum DGT Pi lösen.

DGT Pi RJ45

Hier wird dem DGT Pi Dank DHCP automatisch eine IP-Adresse zugewiesen, mit welcher man sich beispielsweise über das Programm Putty über den Port 22 mit dem DGT Pi verbinden kann. Die IP kann direkt am DGT Pi über das Menü System>Information>IP-Adresse angerufen werden. Mit dem Benutzernamen pi und dem Passwort picochess kann man sich nun anmelden.

Man befindet sich nun im home-Verzeichnis des Benutzers pi. Um Fehleingaben und ungewollten Veränderungen vorzubeugen, arbeiten wir zunächst in genau diesem Verzeichnis.

Um die neuste Stockfish-Version auf unseren DGT Pi zu holen, geben wir folgenden Befehl ein:

git clone https://github.com/official-stockfish/Stockfish.git

In unserem home-Verzeichnis wurde nun ein Verzeichnis namens Stockfish mit dem Unterverzeichnis src erstellt. Mit dem Befehl cd /Stockfish/src wechseln wir nun in dieses Verzeichnis und geben folgenden Befehl ein:

make build ARCH=armv7

Unser DGT Pi besitzt einen ARM7-Prozessor, weshalb wir Stockfish damit für genau diesen Prozessor kompilieren. Das kann durchaus mal ein paar Minuten dauern. Also geduldig sein. Ist die Kompilierung fertig gestellt, befindet sich nun in unserem Verzeichnis /Stockfish/src eine Datei namens stockfish. Es handelt sich hierbei um die ausführbare Engine.

Nun müssen wir diese Engine natürlich noch in das richtige Verzeichnis auf dem DGT Pi verschieben und die Konfigurationsdatei entsprechend anpassen. Dazu gehen wir folgendermaßen vor. Mit dem Befehl:

mv stockfish /opt/picochess/engines/armv7l/

verschieben wir die neue Engine in das DGT Pi Engine-Verzeichnis. Nun wechseln wir mit dem Befehl:

cd /opt/picochess/engines/armv7l/

in das Verzeichnis. Mit dem Befehl ls schauen wir kurz nach, ob die Datei stockfish in der Liste aufgeführt ist. Ist dies der Fall, können wir nun unseren alten Stockfish entfernen, welche den Namen a-stockf trägt. Dies machen wir mit dem Befehl:

rm a-stockf

Wer die Datei nicht löschen möchte, kann sie auch einfach umbenennen:

mv a-stockf old_a-stockf

Nun wollen wir die neue Stockfish-Engine stockfish einbinden.  Dies machen wir, indem wir die von uns erstellte Datei stockfish in a-stockf umbenennen:

mv stockfish a-stockf

Nun könnten wir unseren DGT Pi einfach neu starten und mit der neuen Engine spielen. Allerdings erscheint im Engine-Menü noch der Name „Stockf8“ (im Fall der DGT Pi Version 0.9). In meinem Beispiel haben wir die neuste Version Stockfish 9 kompiliert. Dies wollen wir natürlich auch im Menü sehen. Dazu ändern mir die Datei engines.ini, welche im selben Verzeichnis liegt mit dem Befehl:

sudo nano engines.ini

Im ersten Block dieser Datei befindet sich die Konfiguration von Stockfish. Um die Anzeige im Display abzuändern reicht es aus, folgende Zeilen abzuändern:

DGT Pi Stockfish 9

name = Stockfish 090218
small = stockf
medium = Stockf9
large = Stockfish9

Nun speichern wir das Ganze mit der Tastenkombination STRG+O und verlassen mit STRG+X den Editor.

 

Jetzt starten wir mit dem Befehl:

sudo reboot

den DGT Pi neu und ab sofort steht uns Stockfish 9 in der Engine-Auswahl im Menü zur Verfügung. 🙂

Ich möchte darauf hinweisen, dass diese Anleitung ein sog. Quick-Hack ist. Natürlich kann man an einigen Stellen noch mehr Veränderungen vornehmen und auch bei dem Kompiler wesentlich mehr Einstellungen vornehmen. Aber für den Hausgebrauch reicht diese Anleitung vollkommen aus. 🙂

Neue Engines lassen sich auf die gleiche Weise hinzufügen, hierzu sollte man sich allerdings die Datei README.md mit dem Befehl:

nano /opt/picochess/engines/README.md

durchlesen.

Euer Topschach Benny

 

 

Eine Partie gegen den Fidelity V11 72Mhz

Mit dem Fidelity V11 Schachcomputer steht mir bekanntlich ein recht anspruchsvoller Sparringspartner zur Verfügung. Als eingefleischter 1.e4-Spieler hatte ich nun einfach mal Lust aufs London System und versuchte gestern mein Glück. Der Fidelity hat in der vorliegenden Ausführung mit 68060 Prozessor und 72Mhz immerhin eine ELO von knapp 2400. Gerade taktisch lässt die Kiste nix anbrennen.

So richtig in Fahrt bin ich gegen den ELO-Boliden nicht gekommen. Nachdem ich etwas Initiative hatte, traute ich mich nicht so richtig, die Partie zu verschärfen. So versuchte ich irgendwann nur noch, die Partie ohne Risiko im Remisrahmen zu halten. Am Ende versuchte ich noch den Fidelity über die Zeit zu heben, jedoch kam der Gong zur Stellungswiederholung schneller. 🙂

Topschach Benny Fidelity V11

 

Und hier noch die Partie zum Nachspielen.

 

Trainingspartien gegen Schachcomputer sind auf jeden Fall sehr hilfreich, wenn es um das Kennenlernen von Eröffnungen geht. Hier sollte man als Sparringspartner aber zumindest einen Gegner über 2100 ELO haben. Wie dem auch sei, werde ich wohl doch bei 1.e4 bleiben. 🙂

Euer Benny

 

Topschach Schachcomputer geht online

Liebe Schachcomputer-Freunde,

täglich erreichen mich viele Anfragen zum Thema Schachcomputer. Mal wird eine Anleitung für ein bestimmtes Gerät benötigt, eine Einschätzung der Spielstärke angefragt, oder ob Reparaturen möglich sind, usw.

Diese Webseite wird zukünftig auf all diese Fragen antworten geben. Neben Tests von Schachcomputern, werde ich auch Reparaturanleitungen, Schaltpläne und Tipps und Tricks veröffentlichen.

Lasst euch einfach überraschen. 🙂

Euer Topschach Benny