Lazy Evaluation

From Chessprogramming wiki
Revision as of 19:09, 16 May 2018 by GerdIsenberg (talk | contribs)
Jump to: navigation, search

Home * Evaluation * Lazy Evaluation

In the chess programming sense of the phrase [2], Lazy Evaluation means dividing all the tasks performed by evaluation function in (usually two) stages. If after performing all the tasks for a given stage score exceeds beta by a certain margin or if it falls below alpha by the same margin, the score is returned and no more evaluation is conducted. The first stage usually consists of the evaluation terms that are relatively cheap, possibly incrementally updated, like material and piece-square tables. Lazy evaluation may be viewed as taking the alpha-beta principle one step further. If some parts of the evaluation function are omitted due to this heuristics, it means that one side is already winning "the evaluation game" by the margin unacceptable to the opponent, and therefore a cutoff occurs.

See also

Forum Posts

1995 ...

2000 ...

2010 ...

2015 ...

External Links

References

  1. Chameleons, Plate 99 from Heinrich Rudolf Schinz (1833). Naturgeschichte und Abbildungen der Reptilien. lithograph by Karl Joseph Brodtmann, Wikimedia Commons
  2. In general computer programming, Lazy evaluation refers a technique of delaying a computation until the result is required.

Up one Level