mirror of
https://github.com/HChaZZY/Stockfish.git
synced 2025-12-24 19:16:49 +08:00
Double pawn simplification
Try doubled pawn simplification, with psq table compensation. STC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 36094 W: 6558 L: 6463 D: 23073 LTC: LLR: 2.94 (-2.94,2.94) [-3.00,1.00] Total: 102352 W: 13417 L: 13404 D: 75531 Bench: 8716243
This commit is contained in:
committed by
Marco Costalba
parent
969982406c
commit
16c603ce9b
@@ -44,10 +44,8 @@ namespace {
|
||||
// Connected pawn bonus by opposed, phalanx, twice supported and rank
|
||||
Score Connected[2][2][2][RANK_NB];
|
||||
|
||||
// Doubled pawn penalty by file
|
||||
const Score Doubled[FILE_NB] = {
|
||||
S(11, 34), S(17, 38), S(19, 38), S(19, 38),
|
||||
S(19, 38), S(19, 38), S(17, 38), S(11, 34) };
|
||||
// Doubled pawn penalty
|
||||
const Score Doubled = S(18,38);
|
||||
|
||||
// Lever bonus by rank
|
||||
const Score Lever[RANK_NB] = {
|
||||
@@ -145,7 +143,7 @@ namespace {
|
||||
// either there is a stopper in the way on this rank, or there is a
|
||||
// stopper on adjacent file which controls the way to that rank.
|
||||
backward = (b | shift_bb<Up>(b & adjacent_files_bb(f))) & stoppers;
|
||||
|
||||
|
||||
assert(!backward || !(pawn_attack_span(Them, s + Up) & neighbours));
|
||||
}
|
||||
|
||||
@@ -169,7 +167,7 @@ namespace {
|
||||
score += Connected[opposed][!!phalanx][more_than_one(supported)][relative_rank(Us, s)];
|
||||
|
||||
if (doubled)
|
||||
score -= Doubled[f] / distance<Rank>(s, frontmost_sq(Us, doubled));
|
||||
score -= Doubled / distance<Rank>(s, frontmost_sq(Us, doubled));
|
||||
|
||||
if (lever)
|
||||
score += Lever[relative_rank(Us, s)];
|
||||
|
||||
Reference in New Issue
Block a user