Null driven IID: remove IIDMargin from see() condition

This seems to cut searched nodes also more.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba
2008-12-10 21:43:09 +01:00
parent ab29d8df67
commit f09884d72f

View File

@@ -1160,7 +1160,7 @@ namespace {
&& ttMove == MOVE_NONE
&& ss[ply + 1].currentMove != MOVE_NONE
&& pos.move_is_capture(ss[ply + 1].currentMove)
&& pos.see(ss[ply + 1].currentMove) * PawnValueMidgame + nullValue > beta - IIDMargin)
&& pos.see(ss[ply + 1].currentMove) + nullValue >= beta)
nullDrivenIID = true;
pos.undo_null_move(u);
@@ -1217,8 +1217,9 @@ namespace {
Move tm = ss[ply].threatMove;
assert(tm != MOVE_NONE);
assert(ttMove == MOVE_NONE);
search(pos, ss, beta, Min(depth/2, depth-3*OnePly), ply, false, threadID);
search(pos, ss, beta, depth/2, ply, false, threadID);
ttMove = ss[ply].pv[ply];
ss[ply].threatMove = tm;
}