1
0
Fork 0

Less aggressive razoring

Use a margin to compare with beta so that positions
that after the verifying qsearch have gained a lot of points
are not discarded just becasue not above beta.

Also remove the second condition on depth <= OnePly, it
was too risky and added only a 2% more of pruned nodes.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
sf_2.3.1_base
Marco Costalba 2008-12-21 10:42:39 +01:00
parent b58ad355ca
commit 96d0501735
1 changed files with 3 additions and 3 deletions

View File

@ -1237,11 +1237,11 @@ namespace {
}
// Null move search not allowed, try razoring
else if ( !value_is_mate(beta)
&& ( (approximateEval < beta - RazorMargin && depth < RazorDepth)
||(approximateEval < beta - PawnValueMidgame && depth <= OnePly)))
&& approximateEval < beta - RazorMargin
&& depth < RazorDepth)
{
Value v = qsearch(pos, ss, beta-1, beta, Depth(0), ply, threadID);
if (v < beta)
if (v < beta - RazorMargin / 2)
return v;
}