From: 31m059 <37052095+31m059@users.noreply.github.com> Date: Thu, 13 Dec 2018 05:35:00 +0000 (-0500) Subject: Remove Null Move Pruning material threshold X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=4f3804f3f39e573a24ece662cbf79fe30368ff1e;ds=sidebyside Remove Null Move Pruning material threshold On November 30th, @xoto10 experimented with removing this threshold, but the simplification barely failed LTC. I was inspired to try various [0, 4] tweaks to increase its value, which would narrow the effects of this threshold without removing it entirely. Various values repeatedly led to Elo gains at both STC and LTC, most of which were insufficient to pass. After a couple of weeks, I tried again to find an Elo-gaining tweak but noticed that I could raise the threshold higher and higher without regression. I decided to try removing it entirely--forgetting that @xoto10 had already attempted this. However, this now performs much better at both STC and LTC, producing a STC Elo gain and also potentially a smaller LTC one. The reason appears to be a recent change in master (e8ffca3) near this code, which interacts with this patch. This simplification governs the conditions under which that patch's effects are applied. Something non-obvious about that change has significantly improved the performance of this simplification. I recognize and thank @xoto10, who originally had this idea. Since I ran several LTCs recently (to determine whether to open this PR, or one for a related [0, 4]), I would also like to acknowledge the other developers and CPU donors for their patience. Thank you all! STC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 13445 W: 3000 L: 2862 D: 7583 http://tests.stockfishchess.org/tests/view/5c11f01b0ebc5902ba11a6b8 LTC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 33868 W: 5663 L: 5563 D: 22642 http://tests.stockfishchess.org/tests/view/5c11ffe90ebc5902ba11a8a9 Closes https://github.com/official-stockfish/Stockfish/pull/1870 Bench: 3343286 --- diff --git a/src/search.cpp b/src/search.cpp index c48865c6..7876f931 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -960,7 +960,7 @@ moves_loop: // When in check, search starts from here { if ( !captureOrPromotion && !givesCheck - && (!pos.advanced_pawn_push(move) || pos.non_pawn_material() >= Value(5000))) + && !pos.advanced_pawn_push(move)) { // Move count based pruning (~30 Elo) if (moveCountPruning)