]> git.sesse.net Git - stockfish/commitdiff
Combo of various parameter tweaks
authorMichael Chaly <Vizvezdenec@gmail.com>
Mon, 20 Sep 2021 12:04:13 +0000 (15:04 +0300)
committerJoost VandeVondele <Joost.VandeVondele@gmail.com>
Tue, 21 Sep 2021 17:48:40 +0000 (19:48 +0200)
Combination of parameter tweaks in search, evaluation and time management.
Original patches by snicolet xoto10 lonfom169 and Vizvezdenec.

Includes:

* Use bigger grain of positional evaluation more frequently (up to 1 exchange difference in non-pawn-material);
* More extra time according to increment;
* Increase margin for singular extensions;
* Do more aggresive parent node futility pruning.

Passed STC
https://tests.stockfishchess.org/tests/view/6147deab3733d0e0dd9f313d
LLR: 2.94 (-2.94,2.94) <-0.50,2.50>
Total: 45488 W: 11691 L: 11450 D: 22347
Ptnml(0-2): 145, 5208, 11824, 5395, 172

Passed LTC
https://tests.stockfishchess.org/tests/view/6147f1d53733d0e0dd9f3141
LLR: 2.94 (-2.94,2.94) <0.50,3.50>
Total: 62520 W: 15808 L: 15482 D: 31230
Ptnml(0-2): 43, 6439, 17960, 6785, 33

closes https://github.com/official-stockfish/Stockfish/pull/3710

bench 5575265

src/nnue/evaluate_nnue.cpp
src/search.cpp
src/timeman.cpp

index 891f8faad021c46e298b0ee481765e0aff915405..bfd6998793a4f005dfd3aa3ab658199f6b70d36b 100644 (file)
@@ -168,7 +168,7 @@ namespace Stockfish::Eval::NNUE {
     int positional  = output[0];
 
     int delta_npm = abs(pos.non_pawn_material(WHITE) - pos.non_pawn_material(BLACK));
-    int entertainment = (adjusted && delta_npm <= BishopValueMg - KnightValueMg ? 7 : 0);
+    int entertainment = (adjusted && delta_npm <= RookValueMg - BishopValueMg ? 7 : 0);
 
     int A = 128 - entertainment;
     int B = 128 + entertainment;
index 0c05713c165c8ed5d2bce25c052f7cf5e0da5add..b400b8f8b0c4c409d4c004e6047f12468e8d2959 100644 (file)
@@ -1031,8 +1031,8 @@ moves_loop: // When in check, search starts here
 
               // Futility pruning: parent node (~5 Elo)
               if (   !ss->inCheck
-                  && lmrDepth < 7
-                  && ss->staticEval + 172 + 157 * lmrDepth <= alpha)
+                  && lmrDepth < 8
+                  && ss->staticEval + 172 + 145 * lmrDepth <= alpha)
                   continue;
 
               // Prune moves with negative SEE (~20 Elo)
@@ -1057,7 +1057,7 @@ moves_loop: // When in check, search starts here
           && (tte->bound() & BOUND_LOWER)
           &&  tte->depth() >= depth - 3)
       {
-          Value singularBeta = ttValue - 2 * depth;
+          Value singularBeta = ttValue - 3 * depth;
           Depth singularDepth = (depth - 1) / 2;
 
           ss->excludedMove = move;
index d3713ee403ab6786a0cf56239ca2796d93c506dc..69d1c96fa9822ed308a3bb04e54a97c7384a0821 100644 (file)
@@ -69,7 +69,7 @@ void TimeManagement::init(Search::LimitsType& limits, Color us, int ply) {
       limits.time[us] + limits.inc[us] * (mtg - 1) - moveOverhead * (2 + mtg));
 
   // Use extra time with larger increments
-  double optExtra = std::clamp(1.0 + 10.0 * limits.inc[us] / limits.time[us], 1.0, 1.1);
+  double optExtra = std::clamp(1.0 + 12.0 * limits.inc[us] / limits.time[us], 1.0, 1.12);
 
   // A user may scale time usage by setting UCI option "Slow Mover"
   // Default is 100 and changing this value will probably lose elo.