1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-05-02 01:29:36 +00:00

A combo of parameter tweaks

Joint work by SFisGOD, xoroshiro and Chess13234.

This combo consists of the following tweaks:
Assorted bonuses and penalties by SFisGOD
Bishop and Rook PSQT by SFisGOD
Tempo Value by xoroshiro
Futility pruning by Chess13234

STC:
LLR: 2.95 (-2.94,2.94) [0.00,4.00]
Total: 9005 W: 2082 L: 1882 D: 5041
http://tests.stockfishchess.org/tests/view/5c11628c0ebc5902ba119e90

LTC:
LLR: 2.95 (-2.94,2.94) [0.00,4.00]
Total: 44207 W: 7451 L: 7157 D: 29599
http://tests.stockfishchess.org/tests/view/5c1172a40ebc5902ba119fa3

Bench: 3332460
This commit is contained in:
SFisGOD 2018-12-13 03:34:17 +08:00 committed by Stéphane Nicolet
parent 883367d217
commit 31ac538f96
4 changed files with 36 additions and 36 deletions

View file

@ -152,25 +152,25 @@ namespace {
};
// Assorted bonuses and penalties
constexpr Score BishopPawns = S( 3, 8);
constexpr Score CloseEnemies = S( 7, 0);
constexpr Score BishopPawns = S( 3, 7);
constexpr Score CloseEnemies = S( 8, 0);
constexpr Score CorneredBishop = S( 50, 50);
constexpr Score Hanging = S( 62, 34);
constexpr Score KingProtector = S( 6, 7);
constexpr Score KnightOnQueen = S( 20, 12);
constexpr Score LongDiagonalBishop = S( 44, 0);
constexpr Score MinorBehindPawn = S( 16, 0);
constexpr Score PawnlessFlank = S( 18, 94);
constexpr Score RestrictedPiece = S( 7, 6);
constexpr Score RookOnPawn = S( 10, 28);
constexpr Score SliderOnQueen = S( 49, 21);
constexpr Score ThreatByKing = S( 21, 84);
constexpr Score ThreatByPawnPush = S( 48, 42);
constexpr Score ThreatByRank = S( 14, 3);
constexpr Score ThreatBySafePawn = S(169, 99);
constexpr Score TrappedRook = S( 98, 5);
constexpr Score WeakQueen = S( 51, 10);
constexpr Score WeakUnopposedPawn = S( 14, 20);
constexpr Score Hanging = S( 69, 36);
constexpr Score KingProtector = S( 7, 8);
constexpr Score KnightOnQueen = S( 16, 12);
constexpr Score LongDiagonalBishop = S( 45, 0);
constexpr Score MinorBehindPawn = S( 18, 3);
constexpr Score PawnlessFlank = S( 17, 95);
constexpr Score RestrictedPiece = S( 7, 7);
constexpr Score RookOnPawn = S( 10, 32);
constexpr Score SliderOnQueen = S( 59, 18);
constexpr Score ThreatByKing = S( 24, 89);
constexpr Score ThreatByPawnPush = S( 48, 39);
constexpr Score ThreatByRank = S( 13, 0);
constexpr Score ThreatBySafePawn = S(173, 94);
constexpr Score TrappedRook = S( 96, 4);
constexpr Score WeakQueen = S( 49, 15);
constexpr Score WeakUnopposedPawn = S( 12, 23);
#undef S

View file

@ -29,7 +29,7 @@ class Position;
namespace Eval {
constexpr Value Tempo = Value(20); // Must be visible to search
constexpr Value Tempo = Value(28); // Must be visible to search
std::string trace(const Position& pos);

View file

@ -49,24 +49,24 @@ constexpr Score Bonus[][RANK_NB][int(FILE_NB) / 2] = {
{ S(-200, -98), S(-80,-89), S(-53,-53), S(-32,-16) }
},
{ // Bishop
{ S(-49,-58), S(- 7,-31), S(-10,-37), S(-34,-19) },
{ S(-24,-34), S( 9, -9), S( 15,-14), S( 1, 4) },
{ S( -9,-23), S( 22, 0), S( -3, -3), S( 12, 16) },
{ S( 4,-26), S( 9, -3), S( 18, -5), S( 40, 16) },
{ S( -8,-26), S( 27, -4), S( 13, -7), S( 30, 14) },
{ S(-17,-24), S( 14, -2), S( -6, 0), S( 6, 13) },
{ S(-19,-34), S(-13,-10), S( 7,-12), S(-11, 6) },
{ S(-47,-55), S( -7,-32), S(-17,-36), S(-29,-17) }
{ S(-44,-63), S( -4,-30), S(-11,-35), S(-28, -8) },
{ S(-18,-38), S( 7,-13), S( 14,-14), S( 3, 0) },
{ S( -8,-18), S( 24, 0), S( -3, -7), S( 15, 13) },
{ S( 1,-26), S( 8, -3), S( 26, 1), S( 37, 16) },
{ S( -7,-24), S( 30, -6), S( 23,-10), S( 28, 17) },
{ S(-17,-26), S( 4, 2), S( -1, 1), S( 8, 16) },
{ S(-21,-34), S(-19,-18), S( 10, -7), S( -6, 9) },
{ S(-48,-51), S( -3,-40), S(-12,-39), S(-25,-20) }
},
{ // Rook
{ S(-24, 0), S(-15, 3), S( -8, 0), S( 0, 3) },
{ S(-18,-7), S( -5,-5), S( -1,-5), S( 1,-1) },
{ S(-19, 6), S(-10,-7), S( 1, 3), S( 0, 3) },
{ S(-21, 0), S( -7, 4), S( -4,-2), S(-4, 1) },
{ S(-21,-7), S(-12, 5), S( -1,-5), S( 4,-7) },
{ S(-23, 3), S(-10, 2), S( 1,-1), S( 6, 3) },
{ S(-11,-1), S( 8, 7), S( 9,11), S(12,-1) },
{ S(-25, 6), S(-18, 4), S(-11, 6), S( 2, 2) }
{ S(-24, -2), S(-13,-6), S( -7, -3), S( 2,-2) },
{ S(-18,-10), S(-10,-7), S( -5, 1), S( 9, 0) },
{ S(-21, 10), S( -7,-4), S( 3, 2), S(-1,-2) },
{ S(-13, -5), S( -5, 2), S( -4, -8), S(-6, 8) },
{ S(-24, -8), S(-12, 5), S( -1, 4), S( 6,-9) },
{ S(-24, 3), S( -4,-2), S( 4,-10), S(10, 7) },
{ S( -8, 1), S( 6, 2), S( 10, 17), S(12,-8) },
{ S(-22, 12), S(-24,-6), S( -6, 13), S( 4, 7) }
},
{ // Queen
{ S( 3,-69), S(-5,-57), S(-5,-47), S( 4,-26) },

View file

@ -764,7 +764,7 @@ namespace {
|| (ss-2)->staticEval == VALUE_NONE;
// Step 8. Futility pruning: child node (~30 Elo)
if ( !rootNode
if ( !PvNode
&& depth < 7 * ONE_PLY
&& eval - futility_margin(depth, improving) >= beta
&& eval < VALUE_KNOWN_WIN) // Do not return unproven wins