From: mstembera Date: Thu, 10 May 2018 20:49:56 +0000 (-0700) Subject: Include all blockers in king danger X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=c163c2fcb0bf6fbb2c41b1399e7928cb76cd6118;hp=c163c2fcb0bf6fbb2c41b1399e7928cb76cd6118 Include all blockers in king danger Simplification: in king danger, include all blockers and not only pinned pieces, since blockers enemy pieces can result in discovered checks which are also bad. STC http://tests.stockfishchess.org/tests/view/5af35f9f0ebc5968e6523fe9 LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 145781 W: 29368 L: 29478 D: 86935 LTC http://tests.stockfishchess.org/tests/view/5af3cb430ebc5968e652401f LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 76398 W: 11272 L: 11232 D: 53894 I also incorrectly scheduled STC with [0,5] which it failed. http://tests.stockfishchess.org/tests/view/5af283c00ebc5968e6523f33 LLR: -2.94 (-2.94,2.94) [0.00,5.00] Total: 12338 W: 2451 L: 2522 D: 7365 Closes https://github.com/official-stockfish/Stockfish/pull/1593 bench: 4698290 ---------------------------------------- Thanks to @vondele and @Rocky640 for a cleaner version of the patch, and the following comments! > Most of the pinned, (or for this pull request, blocking) squares were > already computed in the unsafeChecks, the only missing squares being: > > a) squares attacked by a Queen which are occupied by friendly piece > or "unsafe". Note that adding such squares never passed SPRT[0,5]. > > b) squares not in mobilityArea[Us]. > > There is a strong relationship between the blockers and the unsafeChecks, > but the bitboard unsafeChecks is still useful when the checker is not > aligned with the king, and the checking square is occupied by friendly > piece or is "unsafe". This is always the case for the Knight. ---