Tweak futility pruning for racing kings
authorFabian Fichter <ianfab@users.noreply.github.com>
Mon, 1 Feb 2021 17:57:28 +0000 (18:57 +0100)
committerFabian Fichter <ianfab@users.noreply.github.com>
Mon, 1 Feb 2021 17:57:28 +0000 (18:57 +0100)
racingkings STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 1610 W: 544 L: 450 D: 616
http://www.variantfishtest.org:6543/tests/view/6016cb9b6e23db669974e6ce

racingkings LTC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 3787 W: 1113 L: 998 D: 1676
http://www.variantfishtest.org:6543/tests/view/6016d1186e23db669974e6d4

src/search.cpp

index 50c490b..8b67407 100644 (file)
@@ -910,8 +910,7 @@ namespace {
     // Step 7. Futility pruning: child node (~50 Elo)
     if (   !PvNode
         &&  depth < 9
-        && !(pos.capture_the_flag_piece() && !pos.checking_permitted())
-        &&  eval - futility_margin(depth, improving) * (1 + pos.check_counting() + 2 * pos.must_capture() + pos.extinction_single_piece()) >= beta
+        &&  eval - futility_margin(depth, improving) * (1 + pos.check_counting() + 2 * pos.must_capture() + pos.extinction_single_piece() + !pos.checking_permitted()) >= beta
         &&  eval < VALUE_KNOWN_WIN) // Do not return unproven wins
         return eval;