From: VoyagerOne Date: Mon, 4 Sep 2017 20:27:22 +0000 (-0400) Subject: Streamlline reduction based on movecount X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=3ac47c84d35b7cdeea50ecbcf3ad0f73fa848668 Streamlline reduction based on movecount Use MoveCount History only at quiet moves and simply reduce reduction by one depth instead of increasing moveCount in formula. STC: LLR: 2.96 (-2.94,2.94) [0.00,4.00] Total: 27511 W: 5171 L: 4919 D: 17421 LTC: LLR: 2.96 (-2.94,2.94) [0.00,4.00] Total: 92337 W: 12135 L: 11748 D: 68454 Bench: 6351176 --- diff --git a/src/search.cpp b/src/search.cpp index 7873e7dc..b68c8b78 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -947,13 +947,16 @@ moves_loop: // When in check search starts from here && moveCount > 1 && (!captureOrPromotion || moveCountPruning)) { - int mch = std::max(1, moveCount - (ss-1)->moveCount / 16); - Depth r = reduction(improving, depth, mch); + Depth r = reduction(improving, depth, moveCount); if (captureOrPromotion) r -= r ? ONE_PLY : DEPTH_ZERO; else { + // Decrease reduction if opponent's move count is high + if ((ss-1)->moveCount > 15) + r -= ONE_PLY; + // Increase reduction if ttMove is a capture if (ttCapture) r += ONE_PLY;