mirror of
https://github.com/opelly27/Stockfish.git
synced 2026-05-20 05:07:46 +00:00
Another set of tuned values after one million games
Another set of tuned values, obtained by a long session of one million games. STC: LLR: 2.95 (-2.94,2.94) [0.00,4.00] Total: 15810 W: 3687 L: 3458 D: 8665 http://tests.stockfishchess.org/tests/view/5b2d32f60ebc5902b2e55d9e LTC: LLR: 2.95 (-2.94,2.94) [0.00,4.00] Total: 102118 W: 18146 L: 17651 D: 66321 http://tests.stockfishchess.org/tests/view/5b2d372c0ebc5902b2e55e0a Closes https://github.com/official-stockfish/Stockfish/pull/1658 Bench: 4557946
This commit is contained in:
committed by
Stéphane Nicolet
parent
34321fcc2d
commit
efd4ca27c4
+15
-14
@@ -142,24 +142,24 @@ namespace {
|
||||
|
||||
// ThreatByKing[on one/on many] contains bonuses for king attacks on
|
||||
// pawns or pieces which are not pawn-defended.
|
||||
constexpr Score ThreatByKing[] = { S(25, 57), S(4, 139) };
|
||||
constexpr Score ThreatByKing[] = { S(30, 62), S(-9, 160) };
|
||||
|
||||
// PassedRank[Rank] contains a bonus according to the rank of a passed pawn
|
||||
constexpr Score PassedRank[RANK_NB] = {
|
||||
S(0, 0), S(7, 10), S(7, 26), S(14, 31), S(42, 63), S(178, 167), S(279, 244)
|
||||
S(0, 0), S(4, 17), S(7, 20), S(14, 36), S(42, 62), S(165, 171), S(279, 252)
|
||||
};
|
||||
|
||||
// PassedFile[File] contains a bonus according to the file of a passed pawn
|
||||
constexpr Score PassedFile[FILE_NB] = {
|
||||
S( 17, 6), S(-4, 7), S( 2,-12), S(-17,-14),
|
||||
S(-17,-14), S( 2,-12), S(-4, 7), S( 17, 6)
|
||||
S( 11, 14), S( 0, -5), S(-2, -8), S(-25,-13),
|
||||
S(-25,-13), S(-2, -8), S( 0, -5), S( 11, 14)
|
||||
};
|
||||
|
||||
// PassedDanger[Rank] contains a term to weight the passed score
|
||||
constexpr int PassedDanger[RANK_NB] = { 0, 0, 0, 3, 6, 12, 21 };
|
||||
constexpr int PassedDanger[RANK_NB] = { 0, 0, 0, 2, 7, 12, 19 };
|
||||
|
||||
// KingProtector[PieceType-2] contains a penalty according to distance from king
|
||||
constexpr Score KingProtector[] = { S(3, 5), S(5, 3), S(3, 0), S(0, -2) };
|
||||
constexpr Score KingProtector[] = { S(4, 6), S(6, 3), S(1, 0), S(0, -2) };
|
||||
|
||||
// Assorted bonuses and penalties
|
||||
constexpr Score BishopPawns = S( 3, 5);
|
||||
@@ -167,7 +167,7 @@ namespace {
|
||||
constexpr Score Connectivity = S( 3, 1);
|
||||
constexpr Score CorneredBishop = S( 50, 50);
|
||||
constexpr Score Hanging = S( 52, 30);
|
||||
constexpr Score HinderPassedPawn = S( 5, 2);
|
||||
constexpr Score HinderPassedPawn = S( 5, -1);
|
||||
constexpr Score KnightOnQueen = S( 21, 11);
|
||||
constexpr Score LongDiagonalBishop = S( 22, 0);
|
||||
constexpr Score MinorBehindPawn = S( 16, 0);
|
||||
@@ -177,10 +177,10 @@ namespace {
|
||||
constexpr Score SliderOnQueen = S( 42, 21);
|
||||
constexpr Score ThreatByPawnPush = S( 49, 30);
|
||||
constexpr Score ThreatByRank = S( 16, 3);
|
||||
constexpr Score ThreatBySafePawn = S(186,140);
|
||||
constexpr Score ThreatBySafePawn = S(165,133);
|
||||
constexpr Score TrappedRook = S( 92, 0);
|
||||
constexpr Score WeakQueen = S( 50, 10);
|
||||
constexpr Score WeakUnopposedPawn = S( 14, 19);
|
||||
constexpr Score WeakUnopposedPawn = S( 5, 26);
|
||||
|
||||
#undef S
|
||||
|
||||
@@ -428,7 +428,7 @@ namespace {
|
||||
// Main king safety evaluation
|
||||
if (kingAttackersCount[Them] > 1 - pos.count<QUEEN>(Them))
|
||||
{
|
||||
int kingDanger = -mg_value(score);
|
||||
int kingDanger = 0;
|
||||
unsafeChecks = 0;
|
||||
|
||||
// Attacked squares defended at most once by our queen or king
|
||||
@@ -475,10 +475,11 @@ namespace {
|
||||
|
||||
kingDanger += kingAttackersCount[Them] * kingAttackersWeight[Them]
|
||||
+ 64 * kingAttacksCount[Them]
|
||||
+ 182 * popcount(kingRing[Us] & weak)
|
||||
+ 128 * popcount(pos.blockers_for_king(Us) | unsafeChecks)
|
||||
- 857 * !pos.count<QUEEN>(Them)
|
||||
+ 31 ;
|
||||
+ 183 * popcount(kingRing[Us] & weak)
|
||||
+ 122 * popcount(pos.blockers_for_king(Us) | unsafeChecks)
|
||||
- 860 * !pos.count<QUEEN>(Them)
|
||||
- 7 * mg_value(score) / 8
|
||||
+ 17 ;
|
||||
|
||||
// Transform the kingDanger units into a Score, and subtract it from the evaluation
|
||||
if (kingDanger > 0)
|
||||
|
||||
Reference in New Issue
Block a user