X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fmaterial.cpp;h=9a120661eb249306d1a52994a4485ea1b6bf60f9;hp=b8152f7d2870db93ec92331025f9e247e48f332d;hb=ad937d0b2d2a9450686b9f3412c891a68ff19310;hpb=8bfb53efe21c314695220a76ab5555492a3cf94a diff --git a/src/material.cpp b/src/material.cpp index b8152f7d..9a120661 100644 --- a/src/material.cpp +++ b/src/material.cpp @@ -27,26 +27,23 @@ using namespace std; namespace { - // Values modified by Joona Kiiski - const Value MidgameLimit = Value(15581); - const Value EndgameLimit = Value(3998); - // Polynomial material balance parameters // pair pawn knight bishop rook queen - const int LinearCoefficients[6] = { 1852, -162, -1122, -183, 249, -157 }; + const int LinearCoefficients[6] = { 1852, -162, -1122, -183, 249, -154 }; - const int QuadraticCoefficientsSameColor[][PIECE_TYPE_NB] = { + const int QuadraticCoefficientsSameSide[][PIECE_TYPE_NB] = { + // OUR PIECES // pair pawn knight bishop rook queen { 0 }, // Bishop pair { 39, 2 }, // Pawn - { 35, 271, -4 }, // Knight + { 35, 271, -4 }, // knight OUR PIECES { 0, 105, 4, 0 }, // Bishop { -27, -2, 46, 100, -141 }, // Rook - {-161, 30, 126, 144, -127, 0 } // Queen + {-177, 25, 129, 142, -137, 0 } // Queen }; - const int QuadraticCoefficientsOppositeColor[][PIECE_TYPE_NB] = { + const int QuadraticCoefficientsOppositeSide[][PIECE_TYPE_NB] = { // THEIR PIECES // pair pawn knight bishop rook queen { 0 }, // Bishop pair @@ -54,7 +51,7 @@ namespace { { 10, 62, 0 }, // Knight OUR PIECES { 57, 64, 39, 0 }, // Bishop { 50, 40, 23, -22, 0 }, // Rook - { 103, 90, -40, 142, 268, 0 } // Queen + { 98, 105, -39, 141, 274, 0 } // Queen }; // Endgame evaluation and scaling functions are accessed directly and not through @@ -110,8 +107,8 @@ namespace { v = LinearCoefficients[pt1]; for (pt2 = NO_PIECE_TYPE; pt2 <= pt1; ++pt2) - v += QuadraticCoefficientsSameColor[pt1][pt2] * pieceCount[Us][pt2] - + QuadraticCoefficientsOppositeColor[pt1][pt2] * pieceCount[Them][pt2]; + v += QuadraticCoefficientsSameSide[pt1][pt2] * pieceCount[Us][pt2] + + QuadraticCoefficientsOppositeSide[pt1][pt2] * pieceCount[Them][pt2]; value += pc * v; }