mirror of
https://github.com/HChaZZY/Stockfish.git
synced 2025-12-20 17:16:33 +08:00
Properly handle odd depths in razor formula
A little bit more aggressive, but should be more in line with the depths logic. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
@@ -1242,14 +1242,14 @@ namespace {
|
|||||||
else if ( !value_is_mate(beta)
|
else if ( !value_is_mate(beta)
|
||||||
&& approximateEval < beta - RazorMargin
|
&& approximateEval < beta - RazorMargin
|
||||||
&& depth < RazorDepth
|
&& depth < RazorDepth
|
||||||
&& (RazorAtDepthOne || depth > OnePly)
|
&& (RazorAtDepthOne || depth >= 2*OnePly)
|
||||||
&& 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 v = qsearch(pos, ss, beta-1, beta, Depth(0), ply, threadID);
|
Value v = qsearch(pos, ss, beta-1, beta, Depth(0), ply, threadID);
|
||||||
if ( (v < beta - RazorMargin - RazorMargin / 4)
|
if ( (v < beta - RazorMargin - RazorMargin / 4)
|
||||||
|| (depth <= 2*OnePly && v < beta - RazorMargin)
|
|| (depth < 3*OnePly && v < beta - RazorMargin)
|
||||||
|| (depth <= OnePly && v < beta - RazorMargin / 2))
|
|| (depth < 2*OnePly && v < beta - RazorMargin / 2))
|
||||||
return v;
|
return v;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user