Das Kefk Network Wiki befindet sich im Testbetrieb.


Crafty

Aus Kefk.

Wechseln zu: Navigation, Suche

Crafty ist ein berühmtes Freies/Open source-Schachprogramm von Professor Robert Hyatt, einem US-amerikanischen Computerwissenschaftler. Es ist in der Lage, Partien gegen menschliche Großmeister zu gewinnen, insbesondere im Blitzschach. Im November 2006 wurde Crafty, Version 18.12 auf AMD Athlon 1,2 Ghz, in der Rangliste der SSDF mit einer Wertungszahl von 2616 auf Platz 36 geführt [1].

Es wird seit 1994 stetig weiterentwickelt. Sein Vorgänger Cray Blitz gewann die Computerschachweltmeisterschaften 1983 und 1986. Der Programmcode ist portierbar, das bedeutet Crafty läuft sowohl unter Microsoft Windows als auch unter Linux. Das Programm benutzt das XBoard-Protokoll und kann auch unter verschiedenen Schach-Frontends wie ChessBase, Chess Assistant oder Arena eingesetzt werden.

Bei der Computerweltmeisterschaft 2004 belegte Crafty in der Version 19.15 den vierten Platz, punktgleich mit Fritz 8, hinter Junior 8 als Weltmeister und Shredder 8. Ein Jahr später belegte Crafty den 5. Platz von 12 teilnehmenden Programmen. Dabei lief es auf einem AMD Opteron-System mit 4 Prozessoren und bewertete damit über 16 Millionen Stellungen pro Sekunde.

Das Programm spielt fast ununterbrochen im Internet Chess Club gegen Menschen und andere Schachprogramme. Die Ergebnisse werden genutzt, um Schwächen zu erkennen und das Programm kontinuierlich zu verbessern. In den letzten Jahren ergab sich jedoch keine signifikante Steigerung der Spielstärke mehr. Man spricht daher von der Crafty-Schwelle: Die Schachprogramme, die noch besser sind als Crafty, gehören zur absoluten Weltspitze. Derzeitiger Entwicklungsschwerpunkt ist die Parallelisierung.

Da der Quellcode von Crafty frei zugänglich ist, wird er von vielen Programmierern als Vorlage für die Implementierung grundlegender Funktionen genutzt, daher kam es auch schon zu Plagiatsvorwürfen bei Computerschachturnieren.

Crafty ist eins der Programme, die im SPEC-CPU-Benchmarktest enthalten sind. Es ist auch als eine zusätzliche Schach-Engine in Fritz enthalten.

Technische Details

Crafty ist in ANSI C und Assembler-Routinen geschrieben. Es gibt optimierte Versionen für unterschiedliche Plattformen.

Crafty benutzt eine Bitboard-Datenstruktur für das Spielfeld, zahlreiche Optimierungstechniken der Alpha-Beta-Suche wie Pruning, Killer-Heuristik, Quiescent-Suche und Null-Zug-Suche sowie Hashtabellen. Im Endspiel kann Crafty Endspiel-Datenbanken nutzen. Die Software bietet über einstellbare Parameter viele Konfigurationsmöglichkeiten durch den Benutzer [2].

Quellen

  1. SSDF-Rangliste
  2. Anleitung (englisch)

Weblinks

Persönliche Werkzeuge