Make staticEval independent of the search path
authorJoost VandeVondele <Joost.VandeVondele@gmail.com>
Sun, 10 Dec 2017 15:46:57 +0000 (16:46 +0100)
committerMarco Costalba <mcostalba@gmail.com>
Sun, 17 Dec 2017 08:11:55 +0000 (09:11 +0100)
commitf6981b1321357866e7aff688572e1d0e1fe57c08
treeedd384db026b85461c9d630caf5e062466c9a037
parentbe6fafd0793d934c31925832b4bde569b5abd5b9
Make staticEval independent of the search path

Current master can yield different staticEvals depending on the path
used to reach the position. The reason for this is that the evaluation after a
null move is always computed subtracting 2 * Eval::Tempo, while this is not
the case for lazy or specialized evals. This patch always adds tempo to evals,
which doesn't affect playing strength:

LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 59911 W: 7616 L: 7545 D: 44750

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 104947 W: 18897 L: 18919 D: 67131

Fixes issue #1335

Bench: 5208264
src/evaluate.cpp