Lazy Evaluation

From Chessprogramming wiki
Jump to: navigation, search

Home * Evaluation * Lazy Evaluation

Heinrich Kley - Das Kränzchen [1]

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


  1. Heinrich Kley - Das Kränzchen. Federzeichnung (aus: Skizzenbuch I, 1909)
  2. In general computer programming, Lazy evaluation refers a technique of delaying a computation until the result is required.

Up one Level