Alpha-beta pruning works best when the best moves are considered first. This is because the best moves are the ones most likely to produce a cutoff, a condition where the computer chess program provably knows that the position it is presently considering could not possibly have resulted from best play by both sides and so need not be considered further.
The killer heuristic attempts to produce a cutoff by assuming that a move that produced a cutoff in another branch of the game tree[?] at the same depth is likely to produce a cutoff in the present position, that is to say that a move that was a very good move from a different (but possibly similar) position might also be a good move in the present position. By trying the killer move before other moves, a computer chess program can often produce an early cutoff, saving itself the effort of considering or even generating all legal moves from a position.
In practical implementation, computer chess programs frequently keep track of two killer moves for each depth of the game tree and see if either of these moves, if legal, produces a cutoff before the program generates and considers the rest of the possible moves. If a non-killer move produces a cutoff, it replaces one of the two killer moves at its depth.
Search Encyclopedia
|
Featured Article
|