Move generation

Earlier versions of our chess program had a very simple mechanism for generating moves. The board was scanned, square by square, until a piece that belonged to the side on the move was encountered. The moves for this piece were then generated, and these new positions were scored. With the introduction of the data base indicating which squares are attacked by each piece, move generation became more efficient. With the exception of pawns, a piece can move to any square that it attacks, unless...

The evaluation function

The CHESS 4.5 evaluation function was derived from that of CHESS 3.6, with the addition of perhaps 30 percent more chess knowledge, but is similar in spirit. The code was completely rewritten in assembly language macros that combined greater clarity with greater efficiency. The whole function was produced in a few weeks shortly before ACM 73 and has remained almost unchanged in the two and a half years since. Basically, the function adds several easily computable factors together. The...

KAISSA vs the Soviet Public Moscow

In January 1972, the Soviet newspaper Komsomolskaia Pravda sponsored a two-game match, pitting the Soviet program KAISSA against its readers. Every week, the readers would mail in their suggested moves for each game (KAISSA played White in one game and Black in the other), and the most recommended moves were made against KAISSA. The final results were the Soviet public 1.5 points, KAISSA 0.5 points a surprising outcome given that Boris Spassky was only able to manage the same score against...

Tree searching in CHESS

Here we look at CHESS 4.5's tree search in detail. In summary, it looks simple (and simple-minded) enough the search consists of a series of iterations terminated when a preset time threshold is exceeded. Each iteration is a complete a- 3 depth-first search of all the legal move sequences (except those eliminated by a- 3 cutoffs) out to the nominal depth of the iteration, with extensions beyond that depth only for sequences of capture moves (of almost unlimited depth) and also for checking...

K k W I

Pawns and pieces, and builds up his position slowly. The result is inevitable he wins anyway, unless he decides to offer a chivalrous draw. Only another very strong player could detect the opportunities the master has passed up when he plays in this fashion. Finally, many of the good moves played by a computer program in examples of its best games may not have been made for the right reasons, according to master judgments. There is a chance that a very good move may occur for an irrelevant or...

Machine representation of the chess board

A modern computer consists of a central processing unit, a memory unit, and multiple devices for the input e.g., a card reader and the output e.g., a high-speed printer of information. The central processor can perform simple operations such as addition, subtraction, and conditional branching on numbers that are transmitted to it from memory. After the designated calculations have been performed, the results are transmitted back to memory. Input and output operations, because of their slow...

Static evaluation functions

Shannon 81 proposed that a move be selected by considering potential moves by White, replies by Black, counter-replies by White, etc. until relatively static terminal positions were reached. This examination of move sequences is commonly referred to as the look-ahead procedure and will be discussed at length shortly. Shannon proposed that each terminal position be evaluated in a mechanical way. He suggested a crude evaluation function which examined the material balance 9,5,3,3,1 for queen,...

Bibliography

London Allen amp Unwin, 1974. 2. Adelson-Velskiy, G. M., Arlazarov, V. L., Bitman, A. R., Zhivotovskiy, A. A., and Uskov, A. V. Programming a computer to play chess. Russian Math. Surveys, 1970, 25, 221-262. 3. Adelson-Zelskiy, G. M., Arlazarov, V. L., and Donskoy, M. V. Some methods of controlling the tree search in chess programs. Artificial Intelligence, 1975, 6, 327-360. 4. Andric, D. Blitz blitz. Chess Life amp Review, 1970, 25, 308. 5. Atkin, L. R. CHESS...

The role of perception

He saw everything is invariably the complaint of the chess player who loses a game. Other variants to this lament are I completely missed seeing his move or How could I overlook that move It is no accident that the operation seeing is an element in all those statements. In the final analysis, perception seems to be the key to skill in chess. It is not usually the case that one player calculates so many variations that he generates the correct one where his opponent, who has searched less...

Preface

The rules are clearly defined and yet the game is still complex enough to provide the flavor of a real-world problem After several centuries of intensive study and play, chess continues to challenge the intellect of novice and expert alike The availability of a rich historical record makes it possible to evaluate chess skill and to analyze different styles of play For these reasons, chess has become an attractive research environment for studying intellectual skill...

Game annotations by Craig Chellstorp

At the time of writing this chapter March 1976 , ten major computer chess tournaments have been held, six in the United States 1970-1975 sponsored by the Association for Computing Machinery ACM , one in Sweden 1974 sponsored by the International Federation for Information Processing IFIP , two in Canada 1974 and 1975 and one in Germany 1975 . These unique events have attracted worldwide attention and sometimes amused interest from the chess-playing public and from specialists in computer...