- if (rootDepth >= 4)
- {
- Value prev = rootMoves[pvIdx].averageScore;
- delta = Value(16) + int(prev) * prev / 19178;
- alpha = std::max(prev - delta,-VALUE_INFINITE);
- beta = std::min(prev + delta, VALUE_INFINITE);
-
- // Adjust trend and optimism based on root move's previousScore
- int tr = sigmoid(prev, 3, 8, 90, 125, 1);
- trend = (us == WHITE ? make_score(tr, tr / 2)
- : -make_score(tr, tr / 2));
-
- int opt = sigmoid(prev, 8, 17, 144, 13966, 183);
- optimism[ us] = Value(opt);
- optimism[~us] = -optimism[us];
- }
+ Value prev = rootMoves[pvIdx].averageScore;
+ delta = Value(10) + int(prev) * prev / 16502;
+ alpha = std::max(prev - delta,-VALUE_INFINITE);
+ beta = std::min(prev + delta, VALUE_INFINITE);
+
+ // Adjust optimism based on root move's previousScore
+ int opt = 102 * prev / (std::abs(prev) + 147);
+ optimism[ us] = Value(opt);
+ optimism[~us] = -optimism[us];