// and near frontier nodes
const Value FutilityMarginQS = Value(0x80);
- //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),
- // 4 ply 4.5 ply 5 ply 5.5 ply 6 ply 6.5 ply
- Value(0x2A0), Value(0x2C0), Value(0x340), Value(0x360), Value(0x3A0), Value(0x3C0)};
+ // 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),
+ // 4 ply 4.5 ply 5 ply 5.5 ply 6 ply 6.5 ply
+ Value(0x2A0), Value(0x2C0), Value(0x340), Value(0x360), Value(0x3A0), Value(0x3C0) };
+ // Razoring
+ const Depth RazorDepth = 4*OnePly;
- // Razoring
- const Depth RazorDepth = 4*OnePly;
+ // Remaining depth: 1 ply 1.5 ply 2 ply 2.5 ply 3 ply 3.5 ply
+ const Value RazorMargins[6] = { Value(0x180), Value(0x300), Value(0x300), Value(0x3C0), Value(0x3C0), Value(0x3C0) };
- //remaining depth: 1 ply 1.5 ply 2 ply 2.5 ply 3 ply 3.5 ply
- const Value RazorMargins[6] = { Value(0x180), Value(0x300), Value(0x300), Value(0x3C0), Value(0x3C0), Value(0x3C0) };
-
- //remaining depth: 1 ply 1.5 ply 2 ply 2.5 ply 3 ply 3.5 ply
- const Value RazorApprMargins[6] = { Value(0x520), Value(0x300), Value(0x300), Value(0x300), Value(0x300), Value(0x300) };
+ // Remaining depth: 1 ply 1.5 ply 2 ply 2.5 ply 3 ply 3.5 ply
+ const Value RazorApprMargins[6] = { Value(0x520), Value(0x300), Value(0x300), Value(0x300), Value(0x300), Value(0x300) };
// Last seconds noise filtering (LSN)
bool UseLSNFiltering;
UseQSearchFutilityPruning = get_option_value_bool("Futility Pruning (Quiescence Search)");
UseFutilityPruning = get_option_value_bool("Futility Pruning (Main Search)");
- //FutilityMarginQS = value_from_centipawns(get_option_value_int("Futility Margin (Quiescence Search)"));
- //int fmScale = get_option_value_int("Futility Margin Scale Factor (Main Search)");
- //for (int i = 0; i < 6; i++)
- // FutilityMargins[i] = (FutilityMargins[i] * fmScale) / 100;
-
- //RazorDepth = (get_option_value_int("Maximum Razoring Depth") + 1) * OnePly;
- //RazorMargin = value_from_centipawns(get_option_value_int("Razoring Margin"));
-
UseLSNFiltering = get_option_value_bool("LSN filtering");
LSNTime = get_option_value_int("LSN Time Margin (sec)") * 1000;
LSNValue = value_from_centipawns(get_option_value_int("LSN Value Margin"));
o["Selective Plies"] = Option(7, 0, 10);
o["Futility Pruning (Main Search)"] = Option(true);
o["Futility Pruning (Quiescence Search)"] = Option(true);
- //o["Futility Margin (Quiescence Search)"] = Option(50, 0, 1000);
- //o["Futility Margin Scale Factor (Main Search)"] = Option(100, 0, 1000);
- //o["Maximum Razoring Depth"] = Option(3, 0, 4);
- //o["Razoring Margin"] = Option(300, 150, 600);
o["LSN filtering"] = Option(true);
o["LSN Time Margin (sec)"] = Option(4, 1, 10);
o["LSN Value Margin"] = Option(200, 100, 600);