]> git.sesse.net Git - stockfish/commit
Introduce pawn structure based history
authorMichael Chaly <26898827+Vizvezdenec@users.noreply.github.com>
Fri, 27 Oct 2023 15:19:31 +0000 (17:19 +0200)
committerDisservin <disservin.social@gmail.com>
Fri, 27 Oct 2023 15:24:25 +0000 (17:24 +0200)
commitb0658f09b93185e2b43d4b2d6f0daa30c36ebcc2
treee5445c32bd099e0b968fbee49876c8ac471d88dd
parent871ab55f01f844bd24ed768c5e734ed2c956ef78
Introduce pawn structure based history

Original idea by Seer chess engine https://github.com/connormcmonigle/seer-nnue,
coding done by @Disservin, code refactoring done by @locutus2 to match the style
of other histories.

This patch introduces pawn structure based history, which assings moves values
based on last digits of pawn structure hash and piece type of moved piece and
landing square of the move. Idea is that good places for pieces are quite often
determined by pawn structure of position. Used in 3 different places
- sorting of quiet moves, sorting of quiet check evasions and in history based
pruning in search.

Passed STC:
https://tests.stockfishchess.org/tests/view/65391d08cc309ae83955dbaf
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 155488 W: 39408 L: 38913 D: 77167
Ptnml(0-2): 500, 18427, 39408, 18896, 513

Passed LTC:
https://tests.stockfishchess.org/tests/view/653a36a2cc309ae83955f181
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 70110 W: 17548 L: 17155 D: 35407
Ptnml(0-2): 33, 7859, 18889, 8230, 44

closes https://github.com/official-stockfish/Stockfish/pull/4849

Bench: 1257882

Co-Authored-By: Disservin <disservin.social@gmail.com>
Co-Authored-By: Stefan Geschwentner <locutus2@users.noreply.github.com>
src/movepick.cpp
src/movepick.h
src/position.cpp
src/position.h
src/search.cpp
src/thread.cpp
src/thread.h