diff --git a/src/evaluate.cpp b/src/evaluate.cpp index 0021c088c0a..4a4ae2ad982 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -758,12 +758,16 @@ namespace { int outflanking = distance(pos.square(WHITE), pos.square(BLACK)) - distance(pos.square(WHITE), pos.square(BLACK)); + bool pawnsOnBothFlanks = (pos.pieces(PAWN) & QueenSide) + && (pos.pieces(PAWN) & KingSide); + // Compute the initiative bonus for the attacking side int complexity = 8 * pe->pawn_asymmetry() + 12 * pos.count() + 12 * outflanking + + 16 * pawnsOnBothFlanks + 48 * !pos.non_pawn_material() - -110 ; + -118 ; // Now apply the bonus: note that we find the attacking side by extracting // the sign of the endgame value, and that we carefully cap the bonus so