1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-30 08:43:09 +00:00

Introduce a new counter move history penalty

Extra penalty for TT move in previous ply when it gets refuted

STC:

LLR: 2.94 (-2.94,2.94) [-1.50,4.50]
Total: 31303 W: 6216 L: 6025 D: 19062

LTC:

LLR: 2.97 (-2.94,2.94) [0.00,6.00]
Total: 6950 W: 1189 L: 1054 D: 4707

Bench: 8191926

Resolves #309
This commit is contained in:
VoyagerOne 2015-03-24 23:00:31 +00:00 committed by Joona Kiiski
parent a7381d5e81
commit e51965aa57

View file

@ -1437,8 +1437,16 @@ moves_loop: // When in check and at SpNode search starts from here
if (is_ok((ss-2)->currentMove) && (ss-1)->currentMove == (ss-1)->ttMove) if (is_ok((ss-2)->currentMove) && (ss-1)->currentMove == (ss-1)->ttMove)
{ {
Value bonus2 = Value(((depth+1) / ONE_PLY) * ((depth+1) / ONE_PLY));
Square prevPrevSq = to_sq((ss-2)->currentMove); Square prevPrevSq = to_sq((ss-2)->currentMove);
Followupmoves.update(pos.piece_on(prevPrevSq), prevPrevSq, move); Followupmoves.update(pos.piece_on(prevPrevSq), prevPrevSq, move);
Square prevMoveSq = to_sq((ss-1)->currentMove);
Piece prevMovePiece = pos.piece_on(prevMoveSq);
HistoryStats& cmh2 = CounterMovesHistory[pos.piece_on(prevPrevSq)][prevPrevSq];
cmh2.update(prevMovePiece, prevMoveSq, -bonus2);
} }
} }