1
0
Fork 0
stockfish/src
Joost VandeVondele 7b278aab9f Reduce use of lazyEval
In case the evaluation at root is large, discourage the use of lazyEval.

This fixes https://github.com/official-stockfish/Stockfish/issues/3772
or at least improves it significantly. In this case, poor play with large
odds can be observed, in extreme cases leading to a loss despite large
advantage:

r1bq1b1r/ppp3p1/3p1nkp/n3p3/2B1P2N/2NPB3/PPP2PPP/R3K2R b KQ - 5 9

With this patch the poor move is only considered up to depth 13, in master
up to depth 28.

The patch did not pass at LTC with Elo gainer bounds, but with slightly
positive Elo nevertheless (95% LOS).

STC:
LLR: 2.94 (-2.94,2.94) <0.00,2.50>
Total: 40368 W: 10318 L: 10041 D: 20009
Ptnml(0-2): 103, 4493, 10725, 4750, 113
https://tests.stockfishchess.org/tests/view/61800ad259e71df00dcc420d

LTC:
LLR: -2.94 (-2.94,2.94) <0.50,3.00>
Total: 212288 W: 52997 L: 52692 D: 106599
Ptnml(0-2): 112, 22038, 61549, 22323, 122
https://tests.stockfishchess.org/tests/view/618050d959e71df00dcc426d

closes https://github.com/official-stockfish/Stockfish/pull/3780

Bench: 7127040
2021-11-08 13:03:52 +01:00
..
incbin Embed default net, and simplify using non-default nets 2020-08-29 21:56:00 +02:00
nnue Rewrite NNUE evaluation adjustments 2021-10-23 12:22:02 +02:00
syzygy Fix a rare case of wrong TB ranking 2021-06-14 17:28:30 +02:00
Makefile Do not output to stderr during the build. 2021-10-31 22:40:41 +01:00
benchmark.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
bitbase.cpp Small cleanups (march 2021) 2021-03-24 17:11:06 +01:00
bitboard.cpp Small clean-up 2021-03-31 08:12:25 +02:00
bitboard.h Small clean-up 2021-03-31 08:12:25 +02:00
endgame.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
endgame.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
evaluate.cpp Reduce use of lazyEval 2021-11-08 13:03:52 +01:00
evaluate.h Small clean-up, Sept 2021 2021-10-07 09:41:57 +02:00
main.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
material.cpp Small cleanups (march 2021) 2021-03-24 17:11:06 +01:00
material.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
misc.cpp Restore development version 2021-11-01 06:28:37 +01:00
misc.h Simplify away ValueListInserter 2021-10-23 12:21:17 +02:00
movegen.cpp Simplify Declaration on Pawn Move Generation 2021-08-22 09:15:19 +02:00
movegen.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
movepick.cpp Simplify lowply-history scoring logic 2021-07-23 18:53:03 +02:00
movepick.h Adjust ButterflyHistory decay parameter 2021-10-24 22:17:55 +02:00
pawns.cpp Small cleanups (march 2021) 2021-03-24 17:11:06 +01:00
pawns.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
position.cpp Fix sometimes incorrect key for prefetches 2021-10-25 12:26:44 +02:00
position.h Change trace with NNUE eval support 2021-06-19 11:57:01 +02:00
psqt.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
psqt.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
search.cpp Reduce use of lazyEval 2021-11-08 13:03:52 +01:00
search.h Tweak initial aspiration window. 2021-11-05 22:22:30 +01:00
simd.h Optimize and tidy up affine transform code. 2021-08-20 08:50:25 +02:00
thread.cpp Small cleanups (march 2021) 2021-03-24 17:11:06 +01:00
thread.h Reduce use of lazyEval 2021-11-08 13:03:52 +01:00
thread_win32_osx.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
timeman.cpp Combo of various parameter tweaks 2021-09-21 19:48:40 +02:00
timeman.h Remove Tempo 2021-05-19 20:34:37 +02:00
tt.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
tt.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
tune.cpp Remove BoolConditions from tuning code 2021-05-15 09:40:40 +02:00
tune.h Remove BoolConditions from tuning code 2021-05-15 09:40:40 +02:00
types.h Detect search explosions 2021-09-23 23:19:06 +02:00
uci.cpp Update WDL model for NNUE 2021-06-28 21:13:30 +02:00
uci.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
ucioption.cpp Improve handling of the debug log file. 2021-08-20 07:57:09 +02:00