Manual de Chess King 2015 | Page 56

PART 1 • Crunching the numbers which lead to positions which have a very bad numerical evaluation get cut from further onsideration early on in the search, and the engine just stops considering them (in the same way that a human player blows off a first move which immediately loses his or her Queen or Rook, and then doesn't think about that move anymore). MOVING BACKWARD DOWN THE BRANCHES After a chess engine has assigned evaluations to a lot of positions, it takes the evaluations of the leaf nodes (the final positions of variations) and moves them backwards through the tree, assigning them to earlier positions in an attempt to find out which candidate moves lead to the biggest rewards (higher evaluations) and, conversely, which lead to the biggest losses (lower evaluations). The engine, armed with this information, will steer toward the best possible outcome for it (by playing the candidate move which leads to that outcome) while avoiding the worst possible outcome. In practice, it's a bit more complicated than this, but that's basically how it works. Our old friend Claude Shannon came up with this in his early computer science writings (see Chapter One), and it's still used in varying forms today – it's known as a min-max system of evaluation. When a chess program evaluates candidate moves in a position, it assumes best possible play for both sides from that point – it always assumes that the opponent will play the best possible move as part of min-maxing to arrive at a decision. 56 chessking.com