HOME

TheInfoList



OR:

Crafty is a
chess program In computer chess, a chess engine is a computer program that analyzes chess or chess variant positions, and generates a move or list of moves that it regards as strongest. A chess engine is usually a back end with a command-line interface wit ...
written by UAB professor Dr.
Robert Hyatt Robert Morgan Hyatt (born 1948) is an American computer scientist and programmer. He co-authored the computer chess programs Crafty and Cray Blitz which won two World Computer Chess Championships in the 1980s. Hyatt was a computer science profess ...
, with continual development and assistance from Michael Byrne, Tracy Riegle, and Peter Skinner. It is directly derived from
Cray Blitz Cray Blitz was a computer chess program written by Robert Hyatt, Harry L. Nelson, and Albert Gower to run on the Cray supercomputer. It was derived from "Blitz" a program that Hyatt started to work on as an undergraduate. "Blitz" played its firs ...
, winner of the 1983 and 1986
World Computer Chess Championships World Computer Chess Championship (WCCC) is an event held periodically since 1974 where computer chess engines compete against each other. The event is organized by the International Computer Games Association. It is often held in conjunction with ...
. Tord Romstad, the author of
Stockfish Stockfish is unsalted fish, especially cod, dried by cold air and wind on wooden racks (which are called "hjell" in Norway) on the foreshore. The drying of food is the world's oldest known preservation method, and dried fish has a storage lif ...
, described Crafty as "arguably the most important and influential chess program ever". Crafty finished in second place in the 2010 Fifth Annual ACCA Americas' Computer Chess Championships. Crafty lost only one game, namely to the first-place winner, Thinker. Crafty also finished in second place in the 2010 World Computer Rapid Chess Championships. Crafty won seven out of nine games, finishing just behind the first-place winner Rybka by only ½ point. In the World Computer Chess Championships 2004, running on slightly faster hardware than all other programs, Crafty took fourth place with the same number of points as the third-place finisher,
Fritz 8 Fritz is a German chess program originally developed for Chessbase by Frans Morsch based on his Quest program, ported to DOS, and then Windows by Mathias Feist. With version 13, Morsch retired, and his engine was first replaced by Gyula Horvat ...
. On the November 2007 SSDF ratings list, Crafty was 34th with an estimated
Elo rating The Elo rating system is a method for calculating the relative skill levels of players in zero-sum games such as chess. It is named after its creator Arpad Elo, a Hungarian-American physics professor. The Elo system was invented as an improved ch ...
of 2608. Crafty uses the
Chess Engine Communication Protocol In computer chess, a chess engine is a computer program that analyzes chess or chess variant positions, and generates a move or list of moves that it regards as strongest. A chess engine is usually a back end with a command-line interface with n ...
and can run under the popular chess interfaces
XBoard XBoard is a graphical user interface chessboard for chess engines under the X Window System. It is developed and maintained as free software by the GNU project. WinBoard is a port of XBoard to run natively on Microsoft Windows. Overview Original ...
and
Winboard XBoard is a graphical user interface chessboard for chess engines under the X Window System. It is developed and maintained as free software by the GNU project. WinBoard is a port of XBoard to run natively on Microsoft Windows. Overview Original ...
. Crafty is written in
ANSI C ANSI C, ISO C, and Standard C are successive standards for the C programming language published by the American National Standards Institute (ANSI) and ISO/IEC JTC 1/SC 22/WG 14 of the International Organization for Standardization (ISO) and the ...
with assembly language routines available on some CPUs, and is very portable. The source code is available, but the software is for "personal use" only and redistribution is only allowed under certain conditions. Crafty pioneered the use of rotated
bitboard A bitboard is a specialized bit array data structure commonly used in computer systems that play board games, where each bit corresponds to a game board space or piece. This allows parallel bitwise operations to set or query the game state, or de ...
data structures to represent the chess board, and was one of the first chess programs to support multiple processors. It also includes
negascout Principal variation search (sometimes equated with the practically identical NegaScout) is a negamax algorithm that can be faster than alpha-beta pruning. Like alpha-beta pruning, NegaScout is a directional search algorithm for computing the minima ...
search, the killer move heuristic, static
exchange Exchange may refer to: Physics *Gas exchange is the movement of oxygen and carbon dioxide molecules from a region of higher concentration to a region of lower concentration. Places United States * Exchange, Indiana, an unincorporated community * ...
evaluation,
quiescence search Quiescence search is an algorithm typically used to extend search at unstable nodes in minimax game trees in game-playing computer programs. It is an extension of the evaluation function to defer evaluation until the position is stable enough to ...
,
alpha-beta pruning Alphabeta is an Israeli musical group. Alphabeta or Alpha Beta may also refer to: *The Greek alphabet, from ''Alpha'' (Αα) and ''Beta'' (Ββ), the first two letters *Alpha Beta, a former chain of Californian supermarkets *Alpha and beta anomers ...
, a
transposition table {{no footnotes, date=November 2017 A transposition table is a cache of previously seen positions, and associated evaluations, in a game tree generated by a computer game playing program. If a position recurs via a different sequence of moves, the ...
, a
refutation table {{no footnotes, date=November 2017 A transposition table is a cache of previously seen positions, and associated evaluations, in a game tree generated by a computer game playing program. If a position recurs via a different sequence of moves, the ...
, an evaluation cache, selective extensions, recursive null-move search, and many other features ( tp://ftp.cis.uab.edu/pub/hyatt/documentation/crafty.man cf manual. Special editions of the program include enhanced features such as an
opening book A chess opening book is a book on chess openings. This is by far the most common type of literature on chess. These books describe many major lines, like the Sicilian Defence, Ruy Lopez, and Queen's Gambit, as well many minor variations of the ma ...
, positional learning, and an
endgame tablebase An endgame tablebase is a computerized database that contains precalculated exhaustive analysis of chess endgame positions. It is typically used by a computer chess engine during play, or by a human or computer that is retrospectively analysin ...
. Crafty was one of the programs included in the SPEC CPU2000 benchmark test. It is also included as an additional engine in
Fritz Fritz originated as a German nickname for Friedrich, or Frederick (''Der Alte Fritz'', and ''Stary Fryc'' were common nicknames for King Frederick II of Prussia and Frederick III, German Emperor) as well as for similar names including Fridolin an ...
.


Graphical front-ends

*
GNOME Chess An open-source video game, or simply an open-source game, is a video game whose source code is open-source. They are often freely distributable and sometimes cross-platform compatible. Definition and differentiation Not all open-source games ...


References

{{reflist


External links


Dr. Robert Hyatt's home page

Crafty Download place



Crafty Chess page (Latest Version Downloads)
Chess engines