Login
Newsletter
Werbung

So, 20. April 2003, 00:00

Schachprogramme unter Linux

Engines

Amy

Amy soll sehr spielstark sein (2450 ELO-Punkte), was sich in meinen Tests auch bestätigte. Version 0.7 von Amy war die neueste, die ich fand, ungefähr zwei Jahre alt. Das Programm kommt in einem Zip-Archiv und läßt sich problemlos compilieren. Man muß nur "sh configure" aufrufen, danach die Variable SUBDIRS im Makefile auskommentieren. Dann ist noch in random.c __int64 durch long long zu ersetzen.

Amy kann ein Eröffnungsbuch im Eco-Format verwenden. Da im Archiv keines vorhanden war, verwendete ich eco.pgn aus den Quellen von GNU Chess 4, startete dann Amy und gab am Prompt ein:

eco eco.pgn

Dies führte jedoch zum Absturz, das Dateiformat scheint Amy nicht zu behagen. Daher lud ich mir die Datei ECO.PGN von cap.connx.com herunter. Diese konnte Amy lesen und in Sekundenschnelle in Eco.db konvertieren.

Ein weiteres Buch kann Amy unter dem Namen Book.db verwenden. Um es zu erzeugen, nimmt man eine der zahlreichen verfügbaren Sammlungen im PGN-Format, startet Amy und gibt am Prompt ein (book.pgn durch den tatsächlichen Dateinamen ersetzen):

bookup book.pgn

Mit den Standardeinstellungen belegt Amy zur Laufzeit etwa 5 MB RAM.

BabyChess

In BabyChess (Version 12 lag mir vor, inzwischen gibt es eine neuere) setzte ich keine großen Erwartungen. Mehr als die meisten anderen scheint es ein Hobbyprojekt zu sein. In einer Testpartie konnte ich relativ problemlos und schnell siegen.

Das Programm verfügt über eine GUI, die ich allerdings nicht ausprobierte, da ich nur an einer Ausführung unter Xboard interessiert war.

Ein weiteres Testspiel ließ ich BabyChess gegen Crafty austragen. Craftys starkem Spiel hatte BabyChess nichts entgegenzusetzen. Im 16. Zug konnte Crafty mit einer Springergabel die schwarze Dame erbeuten. Im 26. Zug setzte es dann mit zwei Damen und zwei Läufern matt. Crafty benötigte von den 60 erlaubten Minuten Bedenkzeit rund 35, BabyChess dagegen nur zwei - hier liegt wohl ein Problem in BabyChess begründet.

bce

bce oder BACE (Bowron Abernethy Chess Engine) ist ein freies Programm mittlerer Spielstärke (um 2000 ELO-Punkte bei 1 GHz Taktfrequenz). Es liegt in Version 4.6 von Mitte 2001 vor. Ob es noch weiter entwickelt wird, ist fraglich. Gegen BCE kann ich mit einiger Mühe gewinnen, da es wie alle Schachprogramme große Schwächen im strategischen Sektor hat und dies nicht mit ausreichender taktischer Stärke kompensieren kann.

Das Compilieren von bce ist einfach: Ins Verzeichnis src gehen und make eingeben. Die Datei book.txt kopiert man ins Verzeichnis /var/games/bce/etc. Damit die Datei gefunden wird, muß man die Umgebungsvariable BCEHOME auf /var/games/bce setzen.

bce besitzt eine Lernfunktion, die jedoch nach Angaben des Autors nicht zu funktionieren scheint.

Ich ließ BCE zum Test zwei Partien gegen The Crazy Bishop austragen. Sowohl in einer Blitzpartie als auch in einem Match mit 30 Minuten Zeit konnte sich tcb durchsetzen. In der Blitzpartie setzte tcb im 60. Zug matt. Nur 21 Züge benötigte tcb in der längeren Begegnung.

Beowulf

Beowulf, derzeit bei Version 2.0 angelangt, ist der Nachfolger von ColChess. Die Quellen sind erhältlich, enthalten jedoch kein Makefile. Zunächst muß man einen Fehler im Quellcode beseitigen. In der Datei computil.c gibt es eine Zeile include <io.h>. Diese muß man entfernen. Dann compiliert und linkt man von Hand mit

gcc -c *.c -O3
rm egtb.o
gcc -o beowulf *.o -lm

Beowulf verwendet eine Eröffnungsdatenbank nach dem gleichen Schema wie ColChess. Die größte ist in einem Archiv "bookl.tz" untergebracht. Sie enthält eine Datei bookl.dat, die man in book.dat umbenennen und ins Arbeitsverzeichnis von Beowulf kopieren muß. Die Datei default.per muß ebenfalls ins Arbeitsverzeichnis. Bevor man Beowulf startet, muß man beide Dateien ins UNIX-Format konvertieren, da sie DOS-Zeilenenden aufweisen.

ColChess

ColChess testete ich in Version 7.0, aktuell ist inzwischen Version 8.0. Damit ist die Entwicklung beendet, der Autor Colin Frayn konzentriert sich jetzt ganz auf den Nachfolger Beowulf. ColChess wird in erster Linie als Analyse-Engine beschrieben, doch kann man auch ganz normal Partien spielen. Die Stärke soll bei etwa 2000 ELO-Punkten liegen.

ColChess kann ein Eröffnungsbuch verwenden, das größte davon ist von der Homepage des Programms herunterzuladen (book_large.tgz). Es ist 2,5 MB groß und wird automatisch eingelesen, wenn man es unter dem Namen book.dat in das Arbeitsverzeichnis der Engine kopiert.

ColChess ist in der Lage, zu lernen, wenn man den Kommandozeilenparameter "learn" angibt. Der Autor warnt jedoch, daß sich das Spiel von ColChess verschlechtern kann, wenn es gegen schwache Gegner aktiviert wird.

In einer Partie gegen Faile kam ColChess zu einem Angriff auf den schwarzen König, der von Faile aber abgewehrt werden konnte. Danach besaß Schwarz einen Mehrbauern. Aufgrund des Raumvorteils konnte Schwarz den Vorteil dann nach und nach ausbauen. Ein weißer Bauer nach dem anderen fiel. Weiß gab nach 55 Zügen auf. In einer anderen Partie gegen Phalanx gab ColChess nach 78 Zügen auf.

Crafty

Crafty ist ein Abkömmling des Programms Cray Blitz und hat die ungewöhnlich hohe Versionsnummer 18.14. Für meine Tests verwendete ich Version 18.10. Crafty ist vielleicht das stärkste freie Programm, zumindest von den für Linux erhältlichen. Seine Stärke wird auf über 2500 ELO-Punkte eingestuft. Es wird weiterhin aktiv weiterentwickelt.

Ich hatte eine Menge zu tun, bis Crafty lief. Das make mit den Defaulteinstellungen lief zwar durch, das Programm stürzte aber sofort ab. Ich fand schließlich, daß die Defaulteinstellung die Konfiguration linux-i686-elf war, also eine Pentium II-Optimierung, die weder mein Pentium MMX noch mein K6 vertrugen. Neu erstellen mit "make linux-elf" brachte Abhilfe. Nun wollte ich noch das 13 MB große Eröffnungsbuch einbinden. Nach einigem Probieren (Lesen der FAQ hätte ebenfalls geholfen) fand ich heraus, daß die Kommandozeilensyntax dafür lautet:

crafty bookpath=/your/path

Mit diesem Buch belegt Crafty zur Laufzeit moderate 5 MB RAM.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung