1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-30 00:33:09 +00:00

Clean razoring code (step 6)

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Joona Kiiski 2010-02-25 17:50:47 +02:00 committed by Marco Costalba
parent 3888d14bd4
commit 2142be7d7f

View file

@ -158,7 +158,12 @@ namespace {
}; };
/// Constants /// Adjustments
// Step 6. Razoring
const Depth RazorDepth = 4 * OnePly;
inline Value razor_margin(Depth d) { return Value(0x200 + 0x10 * d); }
// Search depth at iteration 1 // Search depth at iteration 1
const Depth InitialDepth = OnePly; const Depth InitialDepth = OnePly;
@ -184,9 +189,6 @@ namespace {
// remaining ones we will extend it. // remaining ones we will extend it.
const Value SingleReplyMargin = Value(0x20); const Value SingleReplyMargin = Value(0x20);
// Depth limit for razoring
const Depth RazorDepth = 4 * OnePly;
/// Lookup tables initialized at startup /// Lookup tables initialized at startup
// Reduction lookup tables and their getter functions // Reduction lookup tables and their getter functions
@ -1332,15 +1334,15 @@ namespace {
if ( !value_is_mate(beta) if ( !value_is_mate(beta)
&& !isCheck && !isCheck
&& depth < RazorDepth && depth < RazorDepth
&& refinedValue < beta - (0x200 + 16 * depth) && refinedValue < beta - razor_margin(depth)
&& ss[ply - 1].currentMove != MOVE_NULL && ss[ply - 1].currentMove != MOVE_NULL
&& ttMove == MOVE_NONE && ttMove == MOVE_NONE
&& !pos.has_pawn_on_7th(pos.side_to_move())) && !pos.has_pawn_on_7th(pos.side_to_move()))
{ {
Value rbeta = beta - (0x200 + 16 * depth); Value rbeta = beta - razor_margin(depth);
Value v = qsearch(pos, ss, rbeta-1, rbeta, Depth(0), ply, threadID); Value v = qsearch(pos, ss, rbeta-1, rbeta, Depth(0), ply, threadID);
if (v < rbeta) if (v < rbeta)
return v; //FIXME: Logically should be: return (v + 0x200 + 16 * depth); return v; //FIXME: Logically should be: return (v + razor_margin(depth));
} }
// Step 7. Static null move pruning // Step 7. Static null move pruning