From a2737d8bb5e480563823820fb12a8887d61c991e Mon Sep 17 00:00:00 2001 From: Muzhen Gaming <61100393+XInTheDark@users.noreply.github.com> Date: Wed, 5 Apr 2023 07:25:00 +0800 Subject: [PATCH] Simplify away piece count condition for useClassical Simplify away the piece count condition for useClassical. In compensation, the psq requirement is increased by 15%. Also updated the Elo estimate for useClassical, based on recent testing. Simplification STC: https://tests.stockfishchess.org/tests/view/642acbb577ff3301150d3ef5 LLR: 2.96 (-2.94,2.94) <-1.75,0.25> Total: 51984 W: 13906 L: 13707 D: 24371 Ptnml(0-2): 150, 5638, 14227, 5817, 160 Simplification LTC: https://tests.stockfishchess.org/tests/view/642b9c5777ff3301150d778a LLR: 2.94 (-2.94,2.94) <-1.75,0.25> Total: 119696 W: 32412 L: 32300 D: 54984 Ptnml(0-2): 53, 11529, 36567, 11651, 48 closes https://github.com/official-stockfish/Stockfish/pull/4494 Bench: 5089321 --- src/evaluate.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/evaluate.cpp b/src/evaluate.cpp index 12883fcc..703cf869 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -1053,8 +1053,8 @@ Value Eval::evaluate(const Position& pos, int* complexity) { // We use the much less accurate but faster Classical eval when the NNUE // option is set to false. Otherwise we use the NNUE eval unless the - // PSQ advantage is decisive and several pieces remain. (~3 Elo) - bool useClassical = !useNNUE || (pos.count() > 7 && abs(psq) > 1781); + // PSQ advantage is decisive. (~4 Elo at STC, 1 Elo at LTC) + bool useClassical = !useNNUE || abs(psq) > 2048; if (useClassical) v = Evaluation(pos).value(); -- 2.39.2