X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fsearch.cpp;h=8415e24d7434200fae4a5998404fb1f4b6ef8f8a;hb=31b82432729fe7a957b84f2c8189c54f401a855f;hp=1bf855d5589212bc5aaafba6151f2cc2ea2d1c14;hpb=beaadd65474c7cf09b13b8cbeeca769e2737f049;p=stockfish diff --git a/src/search.cpp b/src/search.cpp index 1bf855d5..8415e24d 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -834,8 +834,7 @@ namespace { if ( depth >= 8 * ONE_PLY && !ttMove) { - Depth d = 3 * depth / 4 - 2 * ONE_PLY; - search(pos, ss, alpha, beta, d, cutNode); + search(pos, ss, alpha, beta, depth - 7 * ONE_PLY, cutNode); tte = TT.probe(posKey, ttHit); ttValue = ttHit ? value_from_tt(tte->value(), ss->ply) : VALUE_NONE; @@ -995,7 +994,14 @@ moves_loop: // When in check, search starts from here Depth r = reduction(improving, depth, moveCount); if (captureOrPromotion) // (~5 Elo) + { + //Increase reduction by comparing opponent's stat score + if ( (ss-1)->statScore >= 0 + && thisThread->captureHistory[movedPiece][to_sq(move)][type_of(pos.captured_piece())] < 0) + r += ONE_PLY; + r -= r ? ONE_PLY : DEPTH_ZERO; + } else { // Decrease reduction if opponent's move count is high (~5 Elo)