1
0
Fork 0

Decrease reduction for moves that escape a capture

Passed both STC
LLR: 2.96 (-2.94,2.94) [-1.50,4.50]
Total: 10094 W: 1833 L: 1704 D: 6557

and LTC
LLR: 2.95 (-2.94,2.94) [0.00,6.00]
Total: 27738 W: 4147 L: 3928 D: 19663

bench : 8599236
pull/3/head
Reuven Peleg 2014-06-03 11:32:45 +02:00 committed by Marco Costalba
parent f4dcec0b94
commit 83a574ff27
1 changed files with 6 additions and 0 deletions

View File

@ -868,6 +868,12 @@ moves_loop: // When in check and at SpNode search starts from here
if (move == countermoves[0] || move == countermoves[1])
ss->reduction = std::max(DEPTH_ZERO, ss->reduction - ONE_PLY);
// Decrease reduction for moves that escape a capture
if ( ss->reduction
&& type_of(pos.piece_on(to_sq(move))) != PAWN
&& pos.see_sign(make_move(to_sq(move), from_sq(move))) < 0)
ss->reduction = std::max(DEPTH_ZERO, ss->reduction - ONE_PLY);
Depth d = std::max(newDepth - ss->reduction, ONE_PLY);
if (SpNode)
alpha = splitPoint->alpha;