From: Jerry Donald Watson Date: Mon, 9 Apr 2018 23:28:26 +0000 (+0100) Subject: Simplify condition in space definition X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=62619fa228ff9b1f1adfbe023ce4c417807fdeba Simplify condition in space definition We remove an unnecessary condition in the definition of safe squares in the space evaluation. Only the squares which are occupied by our pawns or attacked by our opponent's pawns are now excluded. STC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 21096 W: 4321 L: 4199 D: 12576 http://tests.stockfishchess.org/tests/view/5acbf7510ebc59547e537d4e LTC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 23437 W: 3577 L: 3460 D: 16400 http://tests.stockfishchess.org/tests/view/5acc0f750ebc59547e537d6a It may be possible to further refine the definition of such safe squares. Bench: 5351765 --- diff --git a/src/evaluate.cpp b/src/evaluate.cpp index 6377faf2..69a36cf5 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -738,8 +738,7 @@ namespace { // pawn, or if it is undefended and attacked by an enemy piece. Bitboard safe = SpaceMask & ~pos.pieces(Us, PAWN) - & ~attackedBy[Them][PAWN] - & (attackedBy[Us][ALL_PIECES] | ~attackedBy[Them][ALL_PIECES]); + & ~attackedBy[Them][PAWN]; // Find all squares which are at most three squares behind some friendly pawn Bitboard behind = pos.pieces(Us, PAWN);