X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Fsearch.cpp;h=94eb5af981315ea8587a77d35b909d5130bdcc13;hb=bc35f4c42d367ef080d54ae381d13ed35b4fbecf;hp=b47e26a1c974f73e627adf73754aa4ccc5c70b90;hpb=b599da01fa008e5f274a96c948f8346991bfd050;p=stockfish diff --git a/src/search.cpp b/src/search.cpp index b47e26a1..94eb5af9 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -177,7 +177,7 @@ namespace { const Value FutilityMarginQS = Value(0x80); // Each move futility margin is decreased - const Value IncrementalFutilityMargin = Value(0xA); + const Value IncrementalFutilityMargin = Value(0x8); // Remaining depth: 1 ply 1.5 ply 2 ply 2.5 ply 3 ply 3.5 ply const Value FutilityMargins[12] = { Value(0x100), Value(0x120), Value(0x200), Value(0x220), Value(0x250), Value(0x270), @@ -1417,10 +1417,25 @@ namespace { { //std::cout << std::endl; //for (int d = 2; d < 14; d++) - // std::cout << d << ", " << 300 + 2*(1 << (3*d/4)) << std::endl; + // std::cout << d << ", " << 64*(1+bitScanReverse32(d*d)) << std::endl; //std::cout << std::endl; /* + 64*(1+bitScanReverse32(d*d)) + + 2 -> 256 - 256 + 3 -> 288 - 320 + 4 -> 512 - 384 + 5 -> 544 - 384 + 6 -> 592 - 448 + 7 -> 624 - 448 + 8 -> 672 - 512 + 9 -> 704 - 512 + 10 -> 832 - 512 + 11 -> 864 - 512 + 12 -> 928 - 576 + 13 -> 960 - 576 + 300 + 2*(1 << (3*d/4)) 2 -> 256 - 304 @@ -1458,8 +1473,7 @@ namespace { { if (futilityValue == VALUE_NONE) futilityValue = evaluate(pos, ei, threadID) - + (300 + 2 * (1 << (3 * int(depth) /4))) - + 4*IncrementalFutilityMargin; + + 64*(2+bitScanReverse32(int(depth) * int(depth))); futilityValueScaled = futilityValue - moveCount * IncrementalFutilityMargin;