At PvNodes allow bonus for prior counter move that caused a fail low
for depth 1 and 2. Note : I did a speculative LTC on yellow STC patch
since history stats tend to be highly TC sensitive
STC (Yellow):
LLR: -2.96 (-2.94,2.94) [0.00,5.00]
Total: 64295 W: 13042 L: 12873 D: 38380
http://tests.stockfishchess.org/tests/view/
5af507c80ebc5968e6524153
LTC:
LLR: 2.96 (-2.94,2.94) [0.00,5.00]
Total: 22407 W: 3413 L: 3211 D: 15783
http://tests.stockfishchess.org/tests/view/
5af85dd40ebc591fdf408b87
Also use local variable excludedMove in NMP (marotear)
Bench:
5294316
&& (ss-1)->statScore < 22500
&& eval >= beta
&& ss->staticEval >= beta - 36 * depth / ONE_PLY + 225
- && !ss->excludedMove
+ && !excludedMove
&& pos.non_pawn_material(pos.side_to_move())
&& (ss->ply >= thisThread->nmp_ply || ss->ply % 2 != thisThread->nmp_odd))
{
update_continuation_histories(ss-1, pos.piece_on(prevSq), prevSq, -stat_bonus(depth + ONE_PLY));
}
// Bonus for prior countermove that caused the fail low
- else if ( depth >= 3 * ONE_PLY
+ else if ( (depth >= 3 * ONE_PLY || PvNode)
&& !pos.captured_piece()
&& is_ok((ss-1)->currentMove))
update_continuation_histories(ss-1, pos.piece_on(prevSq), prevSq, stat_bonus(depth));