diff --git a/src/search.cpp b/src/search.cpp index b807ae7d1..3bf460a1a 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -914,7 +914,8 @@ Value Search::Worker::search( assert(probCutBeta < VALUE_INFINITE && probCutBeta > beta); MovePicker mp(pos, ttData.move, probCutBeta - ss->staticEval, &captureHistory); - Depth probCutDepth = std::max(depth - 5, 0); + Depth dynamicReduction = (ss->staticEval - beta) / 300; + Depth probCutDepth = std::max(depth - 5 - dynamicReduction, 0); while ((move = mp.next_move()) != Move::none()) {