Commit Graph

6678 Commits

Author SHA1 Message Date
Кирилл Зарипов
bebffc5622 Adjust futility pruning thresholds using history
Passed STC:
https://tests.stockfishchess.org/tests/view/6833095a6ec7634154f9b5b3
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 56896 W: 14946 L: 14604 D: 27346
Ptnml(0-2): 117, 6674, 14561, 6942, 154

Passed LTC:
https://tests.stockfishchess.org/tests/view/6833179d6ec7634154f9b5da
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 200742 W: 51660 L: 51012 D: 98070
Ptnml(0-2): 96, 21520, 56473, 22204, 78

Passed Non-regression SMP STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 29080 W: 7591 L: 7373 D: 14116
Ptnml(0-2): 38, 3178, 7881, 3414, 29
https://tests.stockfishchess.org/tests/view/6833689d6ec7634154f9c2ba

closes https://github.com/official-stockfish/Stockfish/pull/6092

Bench: 2305697
2025-05-25 21:24:09 +02:00
Shawn Xu
00b1540e01 Always Decrease Reduction on TTMove
Passed VVLTC w/ LTC Bounds:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 57792 W: 15005 L: 14676 D: 28111
Ptnml(0-2): 2, 5241, 18082, 5568, 3
https://tests.stockfishchess.org/tests/view/682a0e3c6ec7634154f9a07e

Passed VVLTC w/ STC Bounds:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 372298 W: 96342 L: 95655 D: 180301
Ptnml(0-2): 37, 34598, 116181, 35307, 26
https://tests.stockfishchess.org/tests/view/682a45b16ec7634154f9a3b3

STC Elo Estimate:
Elo: 0.15 ± 1.4 (95%) LOS: 58.3%
Total: 59612 W: 15414 L: 15388 D: 28810
Ptnml(0-2): 166, 6959, 15527, 6991, 163
nElo: 0.30 ± 2.8 (95%) PairsRatio: 1.00
https://tests.stockfishchess.org/tests/view/68335d276ec7634154f9c25c

closes https://github.com/official-stockfish/Stockfish/pull/6095

bench 2634355
2025-05-25 21:19:59 +02:00
Daniel Samek
805a2c1672 Simplify FutilityMoveCount
Inlined condition, instead of a function.

closes https://github.com/official-stockfish/Stockfish/pull/6096

no functional change
2025-05-25 21:12:27 +02:00
Кирилл Зарипов
eb27d9420f Make ProbCut search shallower in cutNode
Passed STC:
https://tests.stockfishchess.org/tests/view/6832d2436ec7634154f9b4fc
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 455072 W: 118162 L: 117237 D: 219673
Ptnml(0-2): 1233, 53409, 117362, 54264, 1268

Passed LTC:
https://tests.stockfishchess.org/tests/view/6833323e6ec7634154f9ba17
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 128436 W: 32916 L: 32415 D: 63105
Ptnml(0-2): 50, 13737, 36137, 14250, 44

closes https://github.com/official-stockfish/Stockfish/pull/6093

Bench: 2232447
2025-05-25 21:05:53 +02:00
FauziAkram
fe7b9b14d2 Implement smoother reduction in time management
Implement smoother time reduction in time management by replacing a conditional
assignment with a continuous sigmoid-based function. The updated logic employs
a sigmoid-like function for a more gradual adjustment.

Passed STC:
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 64448 W: 16838 L: 16492 D: 31118
Ptnml(0-2): 145, 7214, 17207, 7466, 192
https://tests.stockfishchess.org/tests/view/6829dc046ec7634154f99fba

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 407340 W: 104458 L: 103408 D: 199474
Ptnml(0-2): 196, 42281, 117664, 43335, 194
https://tests.stockfishchess.org/tests/view/6829fe1b6ec7634154f9a036

closes https://github.com/official-stockfish/Stockfish/pull/6091

No functional change
2025-05-25 21:03:16 +02:00
Shawn Xu
e6ec4705a8 Remove deprecated arch from codeql
closes https://github.com/official-stockfish/Stockfish/pull/6090

no functional change
2025-05-25 21:00:38 +02:00
Nonlinear2
b1b5893a8e Minor code improvements
- Remove / add empty lines
- fix the `ttcapture` comment
- remove the `bonus` variable for `ttMoveHistory`
- remove unnecessary parentheses / brackets
- refactor the movepick good quiet stage
- rename `endMoves` to `endCur`, as the previous name suggests that it points to the end of all generated moves, which it does not.

closes https://github.com/official-stockfish/Stockfish/pull/6089

No functional change.

Co-Authored-By: xu-shawn <50402888+xu-shawn@users.noreply.github.com>
2025-05-25 20:59:27 +02:00
pb00067
f58d923fe0 Simplify & improve stalemate detection
Change is functional because now we verify for stalemate also on captures and when not giving check.

Green STC test on stalemate-book
https://tests.stockfishchess.org/tests/view/682d878f6ec7634154f9ad2f
Elo: 2.29 ± 1.3 (95%) LOS: 100.0%
Total: 10000 W: 4637 L: 4571 D: 792
Ptnml(0-2): 2, 132, 4664, 202, 0
nElo: 12.42 ± 6.8 (95%) PairsRatio: 1.51

Green LTC test on stalemate-book
https://tests.stockfishchess.org/tests/view/682daa2d6ec7634154f9ad67
Elo: 0.80 ± 0.8 (95%) LOS: 96.9%
Total: 10000 W: 4727 L: 4704 D: 569
Ptnml(0-2): 0, 64, 4849, 87, 0
nElo: 6.51 ± 6.8 (95%) PairsRatio: 1.36

Passed non-regression test @ LTC
https://tests.stockfishchess.org/tests/view/682dd10d6ec7634154f9adb3
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 148512 W: 38135 L: 38046 D: 72331
Ptnml(0-2): 55, 15759, 42558, 15810, 74

N.B.: The unique concern I have, is that due changes in future a negative SEE
capture see might be returned in GOOD_CAPTURE stage. In this case the assert in
can_move_king_or_pawn() will trigger since we must guarantee that all moves
(also quiets) are generated in movepicker when calling can_move_king_or_pawn().

closes https://github.com/official-stockfish/Stockfish/pull/6088

bench: 2178135
2025-05-25 20:55:49 +02:00
Shawn Xu
472cc764be Move SIMD code to a separate header
Passed Non-regression STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 115328 W: 29903 L: 29777 D: 55648
Ptnml(0-2): 265, 12293, 32444, 12375, 287
https://tests.stockfishchess.org/tests/view/68300e086ec7634154f9b1d1

closes https://github.com/official-stockfish/Stockfish/pull/6086

no functional change
2025-05-25 20:52:57 +02:00
Disservin
2662d6bf35 Update clang-format to v20
closes https://github.com/official-stockfish/Stockfish/pull/6085

No functional change
2025-05-23 08:54:06 +02:00
Disservin
c13c1d2c30 Silence "may be used uninitialized" GCC 15 warning
closes https://github.com/official-stockfish/Stockfish/pull/6083

No functional change
2025-05-23 08:53:00 +02:00
Daniel Monroe
4f021cab3b Simplify allNode term in prior countermove
Passed simplification STC
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 53632 W: 14008 L: 13805 D: 25819
Ptnml(0-2): 136, 6253, 13869, 6388, 170
https://tests.stockfishchess.org/tests/view/6828f2b26ec7634154f99b5e

Passed simplification LTC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 82482 W: 21202 L: 21045 D: 40235
Ptnml(0-2): 37, 8986, 23052, 9115, 51
https://tests.stockfishchess.org/tests/view/6829010a6ec7634154f99db3

closes https://github.com/official-stockfish/Stockfish/pull/6068

Bench: 2302782
2025-05-23 08:51:54 +02:00
ppigazzini
e03898b57c ci: add tests and artifacts for windows-11-arm
integrate armv8 and armv8-dotprod builds on windows-11-arm in ci, creating the corresponding artifacts.
Correct Makefile to drop warnings when providing a CXX, add MINGW ARM64 to get_native_properties.sh

fixes https://github.com/official-stockfish/Stockfish/issues/5640
closes https://github.com/official-stockfish/Stockfish/pull/6078

No functional change
2025-05-21 07:29:57 +02:00
Nonlinear2
54fb42ddf8 clean up code
**Non functional changes:**
in search.cpp:
- an unnecessary pair of parenthesis in the IIR condition has been removed.
- refactored the stalemate trap detection code

in movepick.cpp:
- use the variables `from`, `to`, `piece`, `pieceType` and `capturedPiece`  instead of calling the same functions multiple times in `MovePicker::score()`.
- rename `MovePicker::other_piece_types_mobile()`.

**Functional changes:**
- make sure the processed move is always legal in `MovePicker::other_piece_types_mobile()`.

passed non regression STC:
https://tests.stockfishchess.org/tests/view/6829da686ec7634154f99faf
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 95680 W: 24962 L: 24820 D: 45898
Ptnml(0-2): 221, 9622, 28025, 9738, 234

Passed non regression LTC:
https://tests.stockfishchess.org/tests/view/682a102c6ec7634154f9a086
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 117666 W: 30065 L: 29957 D: 57644
Ptnml(0-2): 45, 10173, 38291, 10277, 47

Run of 10k games on the stalemate opening book:
https://tests.stockfishchess.org/tests/view/682b114e6ec7634154f9aa2d
Elo: 0.76 ± 0.9 (95%) LOS: 95.3%
Total: 10000 W: 4637 L: 4615 D: 748
Ptnml(0-2): 0, 75, 4828, 97, 0
nElo: 5.83 ± 6.8 (95%) PairsRatio: 1.29

closes https://github.com/official-stockfish/Stockfish/pull/6080

Bench: 2422771
2025-05-21 07:25:40 +02:00
Shawn Xu
347e328fdb Simplify TT Replacement Strategy
Passed Non-regression STC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 50528 W: 13160 L: 12958 D: 24410
Ptnml(0-2): 132, 5681, 13439, 5877, 135
https://tests.stockfishchess.org/tests/view/682a8b296ec7634154f9a785

Passed Non-regression STC w/ High Hash Pressure:
LLR: 2.98 (-2.94,2.94) <-1.75,0.25>
Total: 30048 W: 7849 L: 7621 D: 14578
Ptnml(0-2): 75, 3390, 7884, 3582, 93
https://tests.stockfishchess.org/tests/view/682a9caf6ec7634154f9a7ae

Passed Non-regression LTC w/ High Hash Pressure:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 17610 W: 4584 L: 4362 D: 8664
Ptnml(0-2): 7, 1799, 4974, 2015, 10
https://tests.stockfishchess.org/tests/view/682ab3966ec7634154f9a8c8

closes https://github.com/official-stockfish/Stockfish/pull/6079

Bench: 2422771
2025-05-19 20:49:28 +02:00
Michael Chaly
56ea1fadf1 Tweak low ply history
Increase low ply history maximum ply by 1 and also allow to use it for check evasions scoring.

Pased STC:
https://tests.stockfishchess.org/tests/view/682a2db36ec7634154f9a358
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 66464 W: 17440 L: 17081 D: 31943
Ptnml(0-2): 191, 7717, 17056, 8078, 190

Passed LTC:
https://tests.stockfishchess.org/tests/view/682a3d406ec7634154f9a39c
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 384030 W: 98476 L: 97452 D: 188102
Ptnml(0-2): 180, 41564, 107522, 42550, 199

closes https://github.com/official-stockfish/Stockfish/pull/6075

Bench: 2422771
2025-05-19 20:47:34 +02:00
Daniel Samek
ccfa651968 Remove full depth search reduction when cutNode
Passed STC-simplification bounds:
https://tests.stockfishchess.org/tests/view/6829dd6d6ec7634154f99fd3
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 67872 W: 17629 L: 17443 D: 32800
Ptnml(0-2): 167, 7988, 17451, 8152, 178

Passed LTC-simplification bounds:
https://tests.stockfishchess.org/tests/view/6829f2176ec7634154f9a01c
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 94818 W: 24328 L: 24184 D: 46306
Ptnml(0-2): 52, 10246, 26667, 10394, 50

closes https://github.com/official-stockfish/Stockfish/pull/6074

bench: 2245168
2025-05-19 20:44:14 +02:00
Shawn Xu
0f102f3692 Simplify Quiet Early Move Penalty
Passed STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 185344 W: 47995 L: 47939 D: 89410
Ptnml(0-2): 527, 21898, 47754, 21978, 515
https://tests.stockfishchess.org/tests/view/682a47536ec7634154f9a3bc

Passed LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 101706 W: 26050 L: 25912 D: 49744
Ptnml(0-2): 53, 11056, 28499, 11190, 55
https://tests.stockfishchess.org/tests/view/682a61736ec7634154f9a50e

closes https://github.com/official-stockfish/Stockfish/pull/6072

Bench: 2012032
2025-05-19 07:45:28 +02:00
mstembera
009632c465 Simplify handling of good/bad quiets
Simplify the handling of good/bad quiets and make it more similar to the way we
handle good/bad captures. The good quiet limit was adjusted from -7998 to
-14000 to keep the ratio of good/bad quiets about the same as master.  This
also fixes a "bug" that previously returned some bad quiets during the
GOOD_QUIET stage when some qood quiets weren't sorted at low depths.

STC https://tests.stockfishchess.org/tests/view/6827a68c6ec7634154f9992b
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 75936 W: 19722 L: 19547 D: 36667
Ptnml(0-2): 186, 8937, 19589, 9028, 228

LTC https://tests.stockfishchess.org/tests/view/6828f8096ec7634154f99b82
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 104112 W: 26773 L: 26638 D: 50701
Ptnml(0-2): 51, 11363, 29098, 11488, 56

closes https://github.com/official-stockfish/Stockfish/pull/6071

Bench: 2007023
2025-05-19 07:42:56 +02:00
Shawn Xu
39942db3ff Simplify In-Check Statscore
Passed Non-regression STC:
LLR: 2.98 (-2.94,2.94) <-1.75,0.25>
Total: 129760 W: 33701 L: 33580 D: 62479
Ptnml(0-2): 359, 15248, 33575, 15309, 389
https://tests.stockfishchess.org/tests/view/681a88193629b02d74b17123

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 519612 W: 132224 L: 132512 D: 254876
Ptnml(0-2): 246, 56823, 145960, 56527, 250
https://tests.stockfishchess.org/tests/view/681f9ed43629b02d74b177c3

closes https://github.com/official-stockfish/Stockfish/pull/6070

bench: 2046462
2025-05-19 07:39:56 +02:00
Daniel Monroe
6e9b5af0f0 Check evaluation after ttMove before doing a tt cut
Passed STC
LLR: 2.97 (-2.94,2.94) <0.00,2.00>
Total: 239136 W: 62222 L: 61608 D: 115306
Ptnml(0-2): 675, 28046, 61525, 28634, 688
https://tests.stockfishchess.org/tests/view/681053293629b02d74b1668f

Passed LTC
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 448770 W: 115237 L: 114088 D: 219445
Ptnml(0-2): 177, 48128, 126619, 49291, 170
https://tests.stockfishchess.org/tests/view/681902de3629b02d74b16f6d

closes https://github.com/official-stockfish/Stockfish/pull/6069

Bench: 2035432
2025-05-19 07:37:15 +02:00
FauziAkram
4f76768fcf Remove a moveCount condition
Passed STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 70816 W: 18315 L: 18134 D: 34367
Ptnml(0-2): 210, 8213, 18360, 8436, 189
https://tests.stockfishchess.org/tests/view/68248197a527315e07cccb2d

Passed LTC:
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 121770 W: 31248 L: 31130 D: 59392
Ptnml(0-2): 61, 13338, 33995, 13404, 87
https://tests.stockfishchess.org/tests/view/68272ff46ec7634154f998ad

closes https://github.com/official-stockfish/Stockfish/pull/6067

bench: 2319161
2025-05-19 07:31:26 +02:00
Mapika
1b6975ac41 Add quiet move streak tracking to search stack
Passed STC:
LLR: 2.93 (-2.94,2.94) <0.00,2.00>
Total: 109344 W: 28473 L: 28053 D: 52818
Ptnml(0-2): 320, 12756, 28085, 13206, 305
https://tests.stockfishchess.org/tests/view/6828c43e6ec7634154f99a10

Passed LTC:
LLR: 2.96 (-2.94,2.94) <0.50,2.50>
Total: 76308 W: 19721 L: 19323 D: 37264
Ptnml(0-2): 39, 8145, 21386, 8547, 37
https://tests.stockfishchess.org/tests/view/6828f65a6ec7634154f99b72

closes https://github.com/official-stockfish/Stockfish/pull/6066

Bench: 2161814
2025-05-19 07:27:26 +02:00
Shawn Xu
6f445631ab Simplify Futility Margin
Passed STC Non-regression:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 159008 W: 41500 L: 41414 D: 76094
Ptnml(0-2): 501, 18821, 40759, 18937, 486
https://tests.stockfishchess.org/tests/view/680ff9e23629b02d74b1663a

Passed LTC Non-regression:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 163572 W: 41617 L: 41543 D: 80412
Ptnml(0-2): 90, 17755, 46024, 17825, 92
https://tests.stockfishchess.org/tests/view/6814dd973629b02d74b16bac

closes https://github.com/official-stockfish/Stockfish/pull/6065

Bench: 2018775
2025-05-19 07:22:20 +02:00
Shawn Xu
e4b0f37493 Shrink Enum Sizes
Passed STC:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 110848 W: 28974 L: 28564 D: 53310
Ptnml(0-2): 302, 12118, 30132, 12612, 260
https://tests.stockfishchess.org/tests/view/68242770a527315e07ccca38

closes https://github.com/official-stockfish/Stockfish/pull/6063

no functional change
2025-05-19 07:17:39 +02:00
Shawn Xu
6b7e05f0c5 Simplify PCM TTMove Bonus
Passed Non-regression STC:
LLR: 2.97 (-2.94,2.94) <-1.75,0.25>
Total: 114048 W: 29597 L: 29459 D: 54992
Ptnml(0-2): 315, 13619, 29045, 13703, 342
https://tests.stockfishchess.org/tests/view/681e83533629b02d74b17701

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 61014 W: 15582 L: 15405 D: 30027
Ptnml(0-2): 25, 6485, 17307, 6668, 22
https://tests.stockfishchess.org/tests/view/68226b523629b02d74b17b89

closes https://github.com/official-stockfish/Stockfish/pull/6061

bench 2016566
2025-05-19 07:13:39 +02:00
FauziAkram
07f6edf934 Refactor Position::pseudo_legal Pawn Move Check
use intermediate variables to make the statement easier to read

closes https://github.com/official-stockfish/Stockfish/pull/6045

No functional change
2025-05-19 07:12:11 +02:00
FauziAkram
c4e2479a75 Introducing a depth component to the penalty.
Passed STC:
LLR: 2.97 (-2.94,2.94) <0.00,2.00>
Total: 31648 W: 8358 L: 8050 D: 15240
Ptnml(0-2): 78, 3596, 8182, 3876, 92
https://tests.stockfishchess.org/tests/view/680fa73d3629b02d74b165a9

Passed LTC:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 177720 W: 45524 L: 44920 D: 87276
Ptnml(0-2): 91, 19130, 49813, 19736, 90
https://tests.stockfishchess.org/tests/view/68109e2c3629b02d74b166ee

closes https://github.com/official-stockfish/Stockfish/pull/6060

Bench: 2251724
2025-05-13 20:47:50 +02:00
Shawn Xu
b5f11085dd Do more extensions in nodes far from the root
Parameters found by @FauziAkram in the latest tune.

Passed VVLTC w/ LTC Bound:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 243264 W: 63452 L: 62774 D: 117038
Ptnml(0-2): 18, 22494, 75934, 23164, 22
https://tests.stockfishchess.org/tests/view/680e82b23629b02d74b15e27

Passed VVLTC w/ STC Bound:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 37838 W: 9935 L: 9667 D: 18236
Ptnml(0-2): 6, 3383, 11873, 3651, 6
https://tests.stockfishchess.org/tests/view/681e707a3629b02d74b176e8

STC Elo Estimate:
Elo: -0.49 ± 2.4 (95%) LOS: 34.8%
Total: 20000 W: 5118 L: 5146 D: 9736
Ptnml(0-2): 55, 2365, 5182, 2349, 49
nElo: -0.96 ± 4.8 (95%) PairsRatio: 0.99
https://tests.stockfishchess.org/tests/view/6822af4b3629b02d74b17be6

closes https://github.com/official-stockfish/Stockfish/pull/6059

Bench: 2135382
2025-05-13 20:46:27 +02:00
Daniel Monroe
1f9af9966f Simplify futility pruning term
Passed simplification STC
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 49920 W: 12933 L: 12727 D: 24260
Ptnml(0-2): 141, 5865, 12752, 6051, 151
https://tests.stockfishchess.org/tests/view/681d01d33629b02d74b1756e

Passed simplification LTC
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 68808 W: 17573 L: 17402 D: 33833
Ptnml(0-2): 23, 7343, 19511, 7494, 33
https://tests.stockfishchess.org/tests/view/681e33843629b02d74b176b1

closes https://github.com/official-stockfish/Stockfish/pull/6058

Bench: 2041086
2025-05-13 20:42:36 +02:00
FauziAkram
40ef7b1212 Simplify probcut
Passed STC:
LLR: 2.97 (-2.94,2.94) <-1.75,0.25>
Total: 80800 W: 20947 L: 20774 D: 39079
Ptnml(0-2): 217, 9446, 20906, 9609, 222
https://tests.stockfishchess.org/tests/view/680e83163629b02d74b15e2a

Passed LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 359004 W: 91362 L: 91486 D: 176156
Ptnml(0-2): 177, 39133, 101007, 39007, 178
https://tests.stockfishchess.org/tests/view/680e95db3629b02d74b15e7a

closes https://github.com/official-stockfish/Stockfish/pull/6054

Bench: 2060860
2025-05-13 20:41:01 +02:00
gab8192
05e39527a8 Simplify low-ply history weight
Passed Non-regression STC:
LLR: 2.97 (-2.94,2.94) <-1.75,0.25>
Total: 116064 W: 30095 L: 29959 D: 56010
Ptnml(0-2): 333, 13753, 29731, 13875, 340
https://tests.stockfishchess.org/tests/view/681229f53629b02d74b168d3

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 172824 W: 44096 L: 44031 D: 84697
Ptnml(0-2): 91, 18868, 48410, 18971, 72
https://tests.stockfishchess.org/tests/view/681474243629b02d74b16b44

closes https://github.com/official-stockfish/Stockfish/pull/6053

Bench: 2064179
2025-05-13 20:40:26 +02:00
FauziAkram
d4b405a5a6 Remove a cutNode condition
Allow some nodes to spawn even deeper lmr searches, also for cutNodes

Passed STC:
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 59072 W: 15387 L: 15190 D: 28495
Ptnml(0-2): 145, 6956, 15166, 7095, 174
https://tests.stockfishchess.org/tests/view/6810b4c13629b02d74b16714

Passed LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 93294 W: 23737 L: 23591 D: 45966
Ptnml(0-2): 47, 10116, 26169, 10274, 41
https://tests.stockfishchess.org/tests/view/681170613629b02d74b167f3

closes https://github.com/official-stockfish/Stockfish/pull/6052

Bench: 1937565
2025-05-13 20:39:23 +02:00
mstembera
63a2ab1510 Simplify Captures scoring
STC https://tests.stockfishchess.org/tests/view/680ee3b43629b02d74b160f3
LLR: 2.96 (-2.94,2.94) <-1.75,0.25>
Total: 200896 W: 52089 L: 52048 D: 96759
Ptnml(0-2): 592, 23821, 51589, 23846, 600

LTC https://tests.stockfishchess.org/tests/view/68106adf3629b02d74b166b1
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 128856 W: 33026 L: 32917 D: 62913
Ptnml(0-2): 54, 13916, 36384, 14015, 59

Replaces discovered checks by direct checks which are simpler and more
common.  It's also what's used for scoring quiets.

closes https://github.com/official-stockfish/Stockfish/pull/6047

Bench: 1886966
2025-05-13 20:39:02 +02:00
Shawn Xu
e9925b122f Simplify ttCapture LMR
Passed Non-regression STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 51104 W: 13389 L: 13184 D: 24531
Ptnml(0-2): 182, 5940, 13068, 6215, 147
https://tests.stockfishchess.org/tests/view/680ef2503629b02d74b16498

Passed Non-regression LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 73350 W: 18804 L: 18638 D: 35908
Ptnml(0-2): 30, 7906, 20639, 8068, 32
https://tests.stockfishchess.org/tests/view/6810510e3629b02d74b1668a

closes https://github.com/official-stockfish/Stockfish/pull/6044

Bench: 1805151
2025-05-13 20:36:42 +02:00
mstembera
7afd9e859d Simplify MovePicker::score() by using piece types for clarity
STC https://tests.stockfishchess.org/tests/view/680ed6cc3629b02d74b160bf
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 200128 W: 51838 L: 51802 D: 96488
Ptnml(0-2): 457, 19956, 59247, 19902, 502

closes https://github.com/official-stockfish/Stockfish/pull/6039

No functional change
2025-05-13 20:34:40 +02:00
Michael Chaly
b73c8982df Another scaling revert
Revert recent passer because it seems to not scale for longer time
controls. Adjust comments accordingly.

Passed VVLTC SPRT with STC bounds:
https://tests.stockfishchess.org/tests/view/680ddff73629b02d74b15b3f
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 198316 W: 51317 L: 50846 D: 96153
Ptnml(0-2): 17, 18459, 61737, 18926, 19

Passed VVLTC SPRT with LTC bounds:
https://tests.stockfishchess.org/tests/view/680d5b7e3629b02d74b15a21
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 123274 W: 31738 L: 31283 D: 60253
Ptnml(0-2): 7, 11444, 38282, 11895, 9

closes https://github.com/official-stockfish/Stockfish/pull/6038

Bench: 2173845
2025-05-13 20:32:54 +02:00
Shawn Xu
81cc004060 Remove risk tolerance
Passed STC:
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 379328 W: 97567 L: 97724 D: 184037
Ptnml(0-2): 909, 44861, 98314, 44638, 942
https://tests.stockfishchess.org/tests/view/680defc63629b02d74b15b62

Passed LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 160752 W: 40762 L: 40685 D: 79305
Ptnml(0-2): 60, 17548, 45091, 17609, 68
https://tests.stockfishchess.org/tests/view/680e8ff43629b02d74b15e65

closes https://github.com/official-stockfish/Stockfish/pull/6037

Bench: 1897340
2025-05-13 20:31:37 +02:00
Carlos Esparza
63c6f22627 Simplify DirtyPiece
Simplifies the DirtyPiece struct.

passed STC: https://tests.stockfishchess.org/tests/view/68054c9798cd372e3aea05d7
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 36608 W: 9641 L: 9437 D: 17530
Ptnml(0-2): 89, 3630, 10668, 3822, 95

passed LTC: https://tests.stockfishchess.org/tests/view/6805514598cd372e3aea0783
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 127620 W: 31993 L: 31894 D: 63733
Ptnml(0-2): 42, 10983, 41665, 11074, 46

closes https://github.com/official-stockfish/Stockfish/pull/6016

No functional change
2025-05-13 20:30:22 +02:00
FauziAkram
ed6b8d179a Refactor futility_margin
a small term to the futility calculation that depends on eval - beta.

Passed STC:
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 203136 W: 52797 L: 52239 D: 98100
Ptnml(0-2): 549, 23827, 52255, 24391, 546
https://tests.stockfishchess.org/tests/view/680e84a43629b02d74b15e2e

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 100356 W: 25950 L: 25507 D: 48899
Ptnml(0-2): 35, 10683, 28302, 11120, 38
https://tests.stockfishchess.org/tests/view/680ebcb03629b02d74b16040

closes https://github.com/official-stockfish/Stockfish/pull/6009
closes https://github.com/official-stockfish/Stockfish/pull/6041

Bench: 1815939

Co-authored-by: Michael Chaly <Vizvezdenec@gmail.com>
Co-authored-by: xu-shawn <50402888+xu-shawn@users.noreply.github.com>
2025-05-13 20:26:28 +02:00
pb00067
0f905b4e88 Preserve all moves in movepicker
Simplifies method otherPieceTypesMobile quite a bit and makes it more
precise. More precise because capturesSearched list not always contains
all processed captures:
although extremely rare, it can happen that a 'good' capture get pruned
at step 14 and doesn't make it to capturesSearched. (functional change
at higher depths)

passed STC-simplification bounds
https://tests.stockfishchess.org/tests/view/68025974cd501869c6698153
LLR: 2.93 (-2.94,2.94) <-1.75,0.25>
Total: 273664 W: 15658 L: 15681 D: 242325
Ptnml(0-2): 166, 10368, 115802, 10315, 181

passed LTC-simplification bounds
https://tests.stockfishchess.org/tests/view/6804b86acd501869c6698673
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 96780 W: 24547 L: 24419 D: 47814
Ptnml(0-2): 30, 8466, 31286, 8562, 46

Applied changes requested by disservin & retested to be on the safe side

STC:
https://tests.stockfishchess.org/tests/view/6806110698cd372e3aea5919
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 107392 W: 27739 L: 27606 D: 52047
Ptnml(0-2): 266, 10867, 31306, 10982, 275

LTC:
https://tests.stockfishchess.org/tests/view/6806346198cd372e3aea5965
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 233484 W: 59106 L: 59103 D: 115275
Ptnml(0-2): 116, 22787, 70939, 22778, 122

closes https://github.com/official-stockfish/Stockfish/pull/6005

Bench: 1857323
2025-05-13 20:23:43 +02:00
FauziAkram
94e6c0498f VVLTC Tune
Passed VVLTC with LTC bounds:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 12800 W: 3432 L: 3184 D: 6184
Ptnml(0-2): 1, 1098, 3954, 1346, 1
https://tests.stockfishchess.org/tests/view/680e255e3629b02d74b15d5e

Passed VVLTC with STC bounds:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 14402 W: 3865 L: 3625 D: 6912
Ptnml(0-2): 0, 1236, 4490, 1474, 1
https://tests.stockfishchess.org/tests/view/680e4dfb3629b02d74b15da6

Passed VVLTC third test (removing an unrelated change):
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 25584 W: 6670 L: 6398 D: 12516
Ptnml(0-2): 4, 2290, 7932, 2562, 4
https://tests.stockfishchess.org/tests/view/680e74223629b02d74b15def

closes https://github.com/official-stockfish/Stockfish/pull/6036

Bench: 1857323
2025-04-27 20:47:47 +02:00
Daniel Monroe
af3692b2d0 Simplify second probcut to linear function of depth
Passed non-regression STC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 57472 W: 14962 L: 14765 D: 27745
Ptnml(0-2): 140, 6715, 14817, 6936, 128
https://tests.stockfishchess.org/tests/view/680df1063629b02d74b15b69

Passed non-regression LTC
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 88416 W: 22499 L: 22348 D: 43569
Ptnml(0-2): 31, 9565, 24874, 9698, 40
https://tests.stockfishchess.org/tests/view/680df3a93629b02d74b15b7d

closes https://github.com/official-stockfish/Stockfish/pull/6035

Bench: 1792000
2025-04-27 20:31:40 +02:00
Michael Chaly
3e26d3acc7 Do more pruning in moves loop
Effectively reverts one commit from some months ago.

Passed VVLTC SPRT with STC bounds
https://tests.stockfishchess.org/tests/view/680d39373629b02d74b156d7
LLR: 2.95 (-2.94,2.94) <0.00,2.00>
Total: 405058 W: 104843 L: 104111 D: 196104
Ptnml(0-2): 35, 38029, 125672, 38755, 38

Passed VVLTC SPRT with LTC bounds
https://tests.stockfishchess.org/tests/view/680d1a3b3629b02d74b1563d
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 57032 W: 14917 L: 14588 D: 27527
Ptnml(0-2): 6, 5202, 17768, 5537, 3

closes https://github.com/official-stockfish/Stockfish/pull/6031

Bench: 1643819
2025-04-27 20:28:22 +02:00
FauziAkram
267fd8a3d5 Tweak History Bonus
Inspired by @Ergodice , who came up first with the idea.

Passed STC:
LLR: 2.96 (-2.94,2.94) <0.00,2.00>
Total: 18400 W: 4867 L: 4576 D: 8957
Ptnml(0-2): 52, 2052, 4714, 2317, 65
https://tests.stockfishchess.org/tests/view/68062a3c98cd372e3aea5959

Passed LTC:
LLR: 2.95 (-2.94,2.94) <0.50,2.50>
Total: 454338 W: 116461 L: 115294 D: 222583
Ptnml(0-2): 198, 49139, 127346, 50270, 216
https://tests.stockfishchess.org/tests/view/6806347c98cd372e3aea5967

Passed VLTC non-reg:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 385970 W: 98401 L: 98546 D: 189023
Ptnml(0-2): 51, 38958, 115105, 38827, 44
https://tests.stockfishchess.org/tests/view/680cfe873629b02d74b155cf

closes https://github.com/official-stockfish/Stockfish/pull/6030

Bench: 1715817
2025-04-27 20:14:38 +02:00
FauziAkram
e5aa4b48c6 Simplify Evasion Move Scoring
Passed STC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 160256 W: 41432 L: 41348 D: 77476
Ptnml(0-2): 485, 19034, 41028, 19074, 507
https://tests.stockfishchess.org/tests/view/680d242c3629b02d74b15662

Passed LTC:
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 103086 W: 26388 L: 26252 D: 50446
Ptnml(0-2): 41, 11174, 28982, 11300, 46
https://tests.stockfishchess.org/tests/view/680d47f83629b02d74b1571e

closes https://github.com/official-stockfish/Stockfish/pull/6029

Bench: 1937261
2025-04-27 19:47:08 +02:00
FauziAkram
f98c178960 Improve quiet moves bonus
Inspired by an old test by Peregrine.

Passed STC:
LLR: 2.94 (-2.94,2.94) <0.00,2.00>
Total: 453024 W: 117244 L: 116316 D: 219464
Ptnml(0-2): 1336, 53355, 116258, 54171, 1392
https://tests.stockfishchess.org/tests/view/680ccacc3629b02d74b15532

Passed LTC:
LLR: 2.94 (-2.94,2.94) <0.50,2.50>
Total: 140550 W: 35990 L: 35462 D: 69098
Ptnml(0-2): 65, 15152, 39319, 15668, 71
https://tests.stockfishchess.org/tests/view/680d2ed73629b02d74b15691

closes https://github.com/official-stockfish/Stockfish/pull/6028

Bench: 1708152
2025-04-27 19:45:37 +02:00
Myself
37cc2293ef Replace complex probcut function with a precomputed table.
Passed non-regression STC:
https://tests.stockfishchess.org/tests/view/680de2683629b02d74b15b46
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 116000 W: 29864 L: 29742 D: 56394
Ptnml(0-2): 215, 11811, 33854, 11877, 243

closes https://github.com/official-stockfish/Stockfish/pull/6026

No functional change
2025-04-27 19:45:00 +02:00
Shawn Xu
b0a7a34d3f Simplify malus calculation
closes https://github.com/official-stockfish/Stockfish/pull/6024

No functional change
2025-04-27 19:43:47 +02:00
Carlos Esparza
f0de8dc034 Simplify move ordering bonuses for putting piece en prise and escaping capture
Now there is also a penalty for exposing knights and bishops to capture by a pawn.

Passed STC:
https://tests.stockfishchess.org/tests/view/68074379878abf56f9a0d5b1
LLR: 2.94 (-2.94,2.94) <-1.75,0.25>
Total: 96512 W: 24841 L: 24687 D: 46984
Ptnml(0-2): 294, 11336, 24835, 11504, 287

Passed LTC:
https://tests.stockfishchess.org/tests/view/6808954a878abf56f9a0d76d
LLR: 2.95 (-2.94,2.94) <-1.75,0.25>
Total: 221328 W: 56271 L: 56255 D: 108802
Ptnml(0-2): 131, 24149, 62071, 24199, 114

closes https://github.com/official-stockfish/Stockfish/pull/6023

Bench: 1778227
2025-04-27 19:42:06 +02:00