Skip to content

Commit

Permalink
Weak queen protection
Browse files Browse the repository at this point in the history
Extra penalty if weak piece is only protected by a queen.

STC:
http://tests.stockfishchess.org/tests/view/5e53c6ab84a82b4acd4148fa
LLR: 2.96 (-2.94,2.94) {-0.50,1.50}
Total: 44630 W: 8615 L: 8359 D: 27656
Ptnml(0-2): 746, 5156, 10323, 5276, 814

LTC:
http://tests.stockfishchess.org/tests/view/5e54e05d84a82b4acd414947
LLR: 2.94 (-2.94,2.94) {0.25,1.75}
Total: 175480 W: 23085 L: 22409 D: 129986
Ptnml(0-2): 1264, 16494, 51678, 16910, 1394

closes #2564

Bench: 4923286
  • Loading branch information
MJZ1977 authored and vondele committed Feb 27, 2020
1 parent 2e1369d commit 09f53db
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions src/evaluate.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -114,11 +114,11 @@ namespace {
// which piece type attacks which one. Attacks on lesser pieces which are
// pawn-defended are not considered.
constexpr Score ThreatByMinor[PIECE_TYPE_NB] = {
S(0, 0), S(6, 32), S(59, 41), S(79, 56), S(90, 119), S(79, 161)
S(0, 0), S(5, 32), S(57, 41), S(77, 56), S(88, 119), S(79, 161)
};

constexpr Score ThreatByRook[PIECE_TYPE_NB] = {
S(0, 0), S(3, 44), S(38, 71), S(38, 61), S(0, 38), S(51, 38)
S(0, 0), S(2, 44), S(36, 71), S(36, 61), S(0, 38), S(51, 38)
};

// PassedRank[Rank] contains a bonus according to the rank of a passed pawn
Expand Down Expand Up @@ -516,6 +516,9 @@ namespace {
b = ~attackedBy[Them][ALL_PIECES]
| (nonPawnEnemies & attackedBy2[Us]);
score += Hanging * popcount(weak & b);

// Additional bonus if weak piece is only protected by a queen
score += make_score(14, 0) * popcount(weak & attackedBy[Them][QUEEN]);
}

// Bonus for restricting their piece moves
Expand Down

0 comments on commit 09f53db

Please sign in to comment.