]> git.sesse.net Git - stockfish/commitdiff
Prioritize checks in movepicker
authormstembera <MissingEmail@email>
Wed, 14 Sep 2022 19:11:52 +0000 (12:11 -0700)
committerJoost VandeVondele <Joost.VandeVondele@gmail.com>
Sat, 17 Sep 2022 07:30:52 +0000 (09:30 +0200)
give a little bonus for moving pieces to squares where they give check

STC: https://tests.stockfishchess.org/tests/view/631da742162491686d2e40b5
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 80072 W: 21753 L: 21368 D: 36951
Ptnml(0-2): 421, 8876, 21075, 9225, 439

LTC: https://tests.stockfishchess.org/tests/view/631dd9e6b85daa436625de1d
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 263480 W: 70916 L: 70158 D: 122406
Ptnml(0-2): 322, 26156, 78029, 26908, 325

similar ideas have been tested by Viz and Guenther

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

bench: 4326572

src/movepick.cpp

index d8d0612a585e69ec98cb00ef43e220915f2b78ae..636f4ba7987a90113c409bf0df35961a88574769 100644 (file)
@@ -139,8 +139,8 @@ void MovePicker::score() {
                           : type_of(pos.moved_piece(m)) == ROOK  && !(to_sq(m) & threatenedByMinor) ? 25000
                           :                                         !(to_sq(m) & threatenedByPawn)  ? 15000
                           :                                                                           0)
-                          :                                                                           0);
-
+                          :                                                                           0)
+                   +     bool(pos.check_squares(type_of(pos.moved_piece(m))) & to_sq(m)) * 16384;
       else // Type == EVASIONS
       {
           if (pos.capture(m))