All the Right Moves: A VLSI Architecture for ChessComputer chess programs traditionally have been subject to a tradeoff between search speed and chess knowledge. All the Right Moves presents a parallel architecture that makes this tradeoff irrelevant: using the VLSI architecture described in this book, the Hitech chess program is able to search both quickly and knowledgeably. Hitech recently won the ACM computer chess championship, and now owns a USCF rating of 2532, placing it in the top one percent of all rated U.S. chess players. The book describes a VLSI implementation for both move generation and position evaluation. The VLSI move generator searches about 200,000 moves per second and includes all the ancillary circuitry required for it to interface cleanly with the rest of the system. The speed of the move generator is independent of the number of legal moves in a position, and the speed of the evaluation depends only logarithmically on the amount of knowledge encoded in the evaluation. In practice, this means that the amount of analysis performed by the evaluation does not slow the speed of the search. Beyond the VLSI architecture, Ebeling also describes the other Hitech hardware and software, and presents a performance analysis of Hitech as a whole. Hitech already has had a revolutionary effect on computer chess, the impact of which is discussed in the book's final chapter. Contents:Introduction. Background and Related Work. The Move Generator Architecture. Position Evaluation. The Hitech System. Performance Results. Conclusion. Carl Ebeling is an Assistant Professor in the Department of Computer Science at the University of Washington, Seattle. All the Right Moves is a 1986 ACM Distinguished Dissertation. |
Other editions - View all
Common terms and phrases
a-ẞ search a₁ nodes allows architecture backward pawn best move bit-boards board control branching factor captured piece Chapter chess knowledge chess machine chess programs circuit computer chess context stack Cray Blitz deep search described destination square determine doubled pawns dynamic priority effect evaluation components evaluation function evaluation hardware ever-possible moves examined files first-order evaluation Hans Berliner hash table Hitech illegal moves implementation inputs iterative deepening king safety knight legal moves microinstruction microprogram minterms move computation move generator ordering move ordering moving piece operation opponent's optimal oracle output parallel passed pawn pawn structure performance piece guard player ply search position evaluation priority encoder priority value problem produce reduced refutation registers remaining moves rook root search algorithm search control search efficiency search iteration search speed search tree second-order evaluation set of legal sliding moves ẞ nodes status signals subtree VLSI vote cycle wires