namespace {
// Threshold for lazy and space evaluation
- constexpr Value LazyThreshold1 = Value(3631);
- constexpr Value LazyThreshold2 = Value(2084);
+ constexpr Value LazyThreshold1 = Value(3622);
+ constexpr Value LazyThreshold2 = Value(1962);
constexpr Value SpaceThreshold = Value(11551);
// KingAttackWeights[PieceType] contains king attack weights by piece type
else
{
int nnueComplexity;
- int scale = 1076 + 96 * pos.non_pawn_material() / 5120;
+ int scale = 1001 + 5 * pos.count<PAWN>() + 61 * pos.non_pawn_material() / 4096;
Color stm = pos.side_to_move();
Value optimism = pos.this_thread()->optimism[stm];
// Blend nnue complexity with (semi)classical complexity
nnueComplexity = ( 406 * nnueComplexity
- + 424 * abs(psq - nnue)
- + (optimism > 0 ? int(optimism) * int(psq - nnue) : 0)
+ + (424 + optimism) * abs(psq - nnue)
) / 1024;
// Return hybrid NNUE complexity to caller