From 942c18ef6620967921049ba24f25e08d710c947e Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Tue, 12 Jan 2010 18:21:15 +0100 Subject: [PATCH] Allow negative history values Don't clamp to zero if a move continues to fail. After 946 games at 1+0 Mod vs Orig +208 =562 -176 +12 ELO Signed-off-by: Marco Costalba --- src/history.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/history.cpp b/src/history.cpp index 3cda3706..22116412 100644 --- a/src/history.cpp +++ b/src/history.cpp @@ -75,8 +75,12 @@ void History::failure(Piece p, Square to, Depth d) { assert(square_is_ok(to)); history[p][to] -= int(d) * int(d); - if (history[p][to] < 0) - history[p][to] = 0; + + // Prevent history underflow + if (history[p][to] <= -HistoryMax) + for (int i = 0; i < 16; i++) + for (int j = 0; j < 64; j++) + history[i][j] /= 2; } -- 2.39.2