X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fsearch.cpp;h=a739b0491c7a9eae9219ba7e404c83483d04c692;hp=6aa1081f435e0cd666dc8ba3ba0dfcfdc2ebb245;hb=8e9d4081ee9def12f50dbd3169b765839fcb4c86;hpb=4630ab574333be3cfabb6fcf3eca6d66ae961fe1 diff --git a/src/search.cpp b/src/search.cpp index 6aa1081f..a739b049 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -933,6 +933,13 @@ moves_loop: // When in check and at SpNode search starts from here value = -search(pos, ss+1, -(alpha+1), -alpha, d, true); + // Research at intermediate depth if reduction is very high + if (value > alpha && ss->reduction >= 4 * ONE_PLY) + { + Depth d2 = std::max(newDepth - 2 * ONE_PLY, ONE_PLY); + value = -search(pos, ss+1, -(alpha+1), -alpha, d2, true); + } + doFullDepthSearch = (value > alpha && ss->reduction != DEPTH_ZERO); ss->reduction = DEPTH_ZERO; }