- const int skipSize[] = { 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4 };
- const int skipPhase[] = { 0, 1, 0, 1, 2, 3, 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 6, 7 };
-
- // Razoring and futility margin based on depth
- const int razor_margin = 600;
- Value futility_margin(Depth d) { return Value(150 * d / ONE_PLY); }
+ const int SkipSize[] = { 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4 };
+ const int SkipPhase[] = { 0, 1, 0, 1, 2, 3, 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 6, 7 };
+
+ // Razor and futility margins
+ const int RazorMargin1 = 590;
+ const int RazorMargin2 = 604;
+ Value futility_margin(Depth d, bool improving) {
+ return Value((175 - 50 * improving) * d / ONE_PLY);
+ }