Skip to content

Commit 6e772a7

Browse files
snicoletmstembera
authored andcommitted
Double weight of capture history
We double in this patch the weight of the capture history table in the local scoring of captures for move ordering. The capture history table is indexed by the triplet (capturing piece, capture square, captured piece) and gets information like "it seems to have been historically good in that part of the search tree to capture a pawn with a rook on g3, even if it seems to lose material", and affect the normaly pure « Most Valuable Victim » ordering of captures. Finished yellow at STC after 228842 games (posting a +1.36 Elo gain): LLR: -2.95 (-2.94,2.94) [0.00,4.00] Total: 228842 W: 50894 L: 50152 D: 127796 http://tests.stockfishchess.org/tests/view/5b714bb00ebc5902bdba332d Passed LTC: LLR: 2.96 (-2.94,2.94) [0.00,4.00] Total: 43251 W: 7425 L: 7131 D: 28695 http://tests.stockfishchess.org/tests/view/5b71c7d40ebc5902bdba3e51 Thanks to user Vizvezdenec for running the LTC test. Closes official-stockfish#1736 Bench: 4272361
1 parent cc57e8d commit 6e772a7

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/movepick.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ void MovePicker::score() {
111111
for (auto& m : *this)
112112
if (Type == CAPTURES)
113113
m.value = PieceValue[MG][pos.piece_on(to_sq(m))]
114-
+ (*captureHistory)[pos.moved_piece(m)][to_sq(m)][type_of(pos.piece_on(to_sq(m)))] / 16;
114+
+ (*captureHistory)[pos.moved_piece(m)][to_sq(m)][type_of(pos.piece_on(to_sq(m)))] / 8;
115115

116116
else if (Type == QUIETS)
117117
m.value = (*mainHistory)[pos.side_to_move()][from_to(m)]

0 commit comments

Comments
 (0)