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:
parent
3888d14bd4
commit
2142be7d7f
1 changed files with 9 additions and 7 deletions
|
@ -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
|
||||||
|
|
Loading…
Add table
Reference in a new issue