From af3692b2d05201e3e4ba3c7c6a8dc5a8700e0ae4 Mon Sep 17 00:00:00 2001 From: Daniel Monroe Date: Sun, 27 Apr 2025 01:55:17 -0700 Subject: [PATCH] Simplify second probcut to linear function of depth Passed non-regression STC LLR: 2.95 (-2.94,2.94) <-1.75,0.25> Total: 57472 W: 14962 L: 14765 D: 27745 Ptnml(0-2): 140, 6715, 14817, 6936, 128 https://tests.stockfishchess.org/tests/view/680df1063629b02d74b15b69 Passed non-regression LTC LLR: 2.95 (-2.94,2.94) <-1.75,0.25> Total: 88416 W: 22499 L: 22348 D: 43569 Ptnml(0-2): 31, 9565, 24874, 9698, 40 https://tests.stockfishchess.org/tests/view/680df3a93629b02d74b15b7d closes https://github.com/official-stockfish/Stockfish/pull/6035 Bench: 1792000 --- src/search.cpp | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/search.cpp b/src/search.cpp index 35a2b5de2..b370f7ca9 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -111,12 +111,6 @@ Value to_corrected_static_eval(const Value v, const int cv) { return std::clamp(v + cv / 131072, VALUE_TB_LOSS_IN_MAX_PLY + 1, VALUE_TB_WIN_IN_MAX_PLY - 1); } - -constexpr int adaptiveProbcutMargin[32] = {148, 150, 212, 214, 276, 278, 280, 282, 344, 346, 348, - 350, 352, 354, 356, 358, 420, 422, 424, 426, 428, 430, - 430, 430, 430, 430, 430, 430, 430, 430, 430, 430}; - - void update_correction_history(const Position& pos, Stack* const ss, Search::Worker& workerThread, @@ -989,7 +983,7 @@ Value Search::Worker::search( moves_loop: // When in check, search starts here // Step 12. A small Probcut idea - probCutBeta = beta + adaptiveProbcutMargin[std::min(depth, 31)]; + probCutBeta = beta + 180 + depth * 20; if ((ttData.bound & BOUND_LOWER) && ttData.depth >= depth - 4 && ttData.value >= probCutBeta && !is_decisive(beta) && is_valid(ttData.value) && !is_decisive(ttData.value)) return probCutBeta;