From 314faa905a60962595d610c26727c4b603c6ed62 Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Fri, 13 Nov 2009 11:25:34 +0100 Subject: [PATCH] Null move dynamic reduction based on value After 994 games at 1+0 Mod vs Orig +244 =521 -229 50.75% 504.5/994 +5 ELO Signed-off-by: Marco Costalba --- src/search.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/search.cpp b/src/search.cpp index d654fec9..e0252932 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1314,7 +1314,13 @@ namespace { ss[ply].currentMove = MOVE_NULL; pos.do_null_move(st); - int R = (depth >= 5 * OnePly ? 4 : 3); // Null move dynamic reduction + + // Null move dynamic reduction based on depth + int R = (depth >= 5 * OnePly ? 4 : 3); + + // Null move dynamic reduction based on value + if (approximateEval - beta > PawnValueMidgame) + R++; nullValue = -search(pos, ss, -(beta-1), depth-R*OnePly, ply+1, false, threadID); -- 2.39.2