]> git.sesse.net Git - stockfish/commit
Simplify k-value for passers. Bench: 3854907 (#2182)
author31m059 <37052095+31m059@users.noreply.github.com>
Sun, 9 Jun 2019 12:19:07 +0000 (08:19 -0400)
committerMarco Costalba <mcostalba@users.noreply.github.com>
Sun, 9 Jun 2019 12:19:07 +0000 (14:19 +0200)
commit434b2c72a44ba255c14957f519e3993ea3d5d6bc
treedd493e22d20ae348d4b4f8911c3a3146e6fd88fb
parent3edf0e6b37df9c81ea1a4cd3affd11548547815b
Simplify k-value for passers. Bench: 3854907 (#2182)

Stockfish evaluates passed pawns in part based on a variable k, which shapes the passed pawn bonus based on the number of squares between the current square and promotion square that are attacked by enemy pieces, and the number defended by friendly ones. Prior to this commit, we gave a large bonus when all squares between the pawn and the promotion square were defended, and if they were not, a somewhat smaller bonus if at least the pawn's next square was. However, this distinction does not appear to provide any Elo at STC or LTC.

Where do we go from here? Many promising Elo-gaining patches were attempted in the past few months to refine passed pawn calculation, by altering the definitions of unsafe and defended squares. Stockfish uses these definitions to choose the value of k, so those tests interact with this PR. Therefore, it may be worthwhile to retest previously promising but not-quite-passing tests in the vicinity of this patch.

STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 42344 W: 9455 L: 9374 D: 23515
http://tests.stockfishchess.org/tests/view/5cf83ede0ebc5925cf0904fb

LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 69548 W: 11855 L: 11813 D: 45880
http://tests.stockfishchess.org/tests/view/5cf8698f0ebc5925cf0908c8

Bench: 3854907
src/evaluate.cpp