Sirius - UCI chess engine Author:mcthouacbb
Rating Chess Engines Diary CEDR=3113
Sirius 9.0 - what's new?
Release notes
After months of work, issues with buggy OpenBench workers, and over 100 commits, Sirius is back with its next major release. Many improvements to the search and evaluation were made, along with some QoL improvements, including support for the Stockfish WDL model. Major changes include 3 SPSA tunes at LTC, a much improved king safety evaluation, many tweaks and additions to passed pawns and pawn structure evaluation, generating quiet check evasion moves in quiescence search, tweaks and additions to correction histories, and more. Sirius v9.0 is nearly 130 elo stronger than Sirius v8.0 on a balanced book.
Additionally, Sirius made its TCEC(Top Chess Engine Championship) debut these past few months. Sirius performed well against other HCE(handcrafted evaluation) engines, but was not very competitive against most NNUE engines due to their much stronger evaluation.
Changelog
Lots of refactors and cleanups
Added clang-format for more consistent code formatting
Fixed promotions printing uppercase letters
Support for FRC and DFRC chess(chess960)
Some stability and speed improvements for multithreading and TT clearing
Tested up to TCEC conditions(512 threads and 256GB hash)
Stockfish WDL Model Support
Normalized Eval
Estimated win, draw, and loss probabilities
Elo estimates for all major search features
Speedups
Staged move generation for killer moves
Many evaluation changes
Fixing the evaluation to be fully vertically symmetric.
King safety
A quadratic adjustment formula applied after summing all safety terms
Penalty for weak squares around the king
Penalty for an attack without a queen
Bonus/penalty for king flank attacks and defenses
Improved safe checks calculation
Pawn structure and passed pawn evaluation
Bonus for candidate passed pawns
Penalty for backwards and doubled pawns
Tweaked definition of isolated pawns
Better king-passer proximity calculation
Exclude the king and blocked pawns from mobility
Bonus for restricting the enemy's mobility
Bonus for being able to move a piece to attack the enemy queen
Bonus for a bishop on a long center diagonal
Specialized evaluation and scaling functions for certain endgames
Many search tweaks
Quiescence search quiet check evasion generation and pruning
Correction history
Added continuation correction history
Tuned correction history weights
Improved correction history updates
LMR adjustments based on correction history
Move loop pruning
Added noisy futility pruning
Increased max pruning depth
Adjust futility margin by history
Better capture move ordering
Improved internal iterative reductions implementation
More accurate handling of pinned pieces in static exchange evaluation
Added probcut
Improved singular extensions and negative extensions
Many other changes
3 LTC SPSA tunes of the entire search
Self-play against Sirius v8.0
Elo | 127.02 +- 6.45 (95%)
Conf | 8.0+0.08s Threads=1 Hash=16MB
Games | N: 5004 W: 2087 L: 335 D: 2582
Penta | [12, 151, 814, 1123, 402]
Elo | 128.92 +- 7.78 (95%)
Conf | 40.0+0.40s Threads=1 Hash=64MB
Games | N: 2502 W: 965 L: 77 D: 1460
Penta | [1, 28, 451, 624, 147]
Elo Estimates
Results of sirius-dev-a2c68f9 vs komodo-14.1 (40+0.4, 1t, 32MB, UHO_Lichess_4852_v1.epd):
Elo: 72.08 +/- 11.80, nElo: 117.91 +/- 18.74
LOS: 100.00 %, DrawRatio: 38.33 %, PairsRatio: 3.33
Games: 1320, Wins: 498, Losses: 228, Draws: 594, Points: 795.0 (60.23 %)
Ptnml(0-2): [5, 89, 253, 257, 56], WL/DD Ratio: 1.04
Results of sirius-dev-a2c68f9 vs weiss-dev-95b0951 (20+0.2, 1t, 32MB, UHO_Lichess_4852_v1.epd):
Elo: 32.16 +/- 8.23, nElo: 52.51 +/- 13.35
LOS: 100.00 %, DrawRatio: 44.62 %, PairsRatio: 1.62
Games: 2600, Wins: 868, Losses: 628, Draws: 1104, Points: 1420.0 (54.62 %)
Ptnml(0-2): [14, 261, 580, 361, 84], WL/DD Ratio: 1.41
At medium-long time controls, Sirius is significantly stronger than the last HCE release of Komodo and quite a bit stronger than Weiss dev. This should cement Sirius as the current 2nd strongest HCE engine. It is still quite far from Stockfish classical, which is the current strongest HCE engine.
Results of sirius-dev-a2c68f9 vs sf-classical (40+0.4, 1t, 32MB, UHO_Lichess_4852_v1.epd):
Elo: -40.18 +/- 10.26, nElo: -69.01 +/- 17.47
LOS: 0.00 %, DrawRatio: 42.50 %, PairsRatio: 0.46
Games: 1520, Wins: 326, Losses: 501, Draws: 693, Points: 672.5 (44.24 %)
Ptnml(0-2): [25, 275, 323, 124, 13], WL/DD Ratio: 1.20
Estimated 3530 rating CCRL Blitz
Estimated 3700 rating CCRL FRC
Credits
Thanks to members in the engine dev community who continue to support and discuss topics in computer chess with me.
Additionally, much credit goes to Stockfish, Ethereal, Weiss, Stash, and Perseus, along with their developers.
Many ideas and features in Sirius were inspired by or taken from these engines, and their knowledge has been invaluable to the development of Sirius.
Selecting a binary
v1 is significantly slower than v2, v3, and v4, and should only be used when absolutely necessary. In general, higher levels are faster.
If you download a binary and it crashes(closes immediately or doesn't respond to commands), it likely doesn't work, and you should download a different binary.
Sirius 8.0 vs other engines:
Halogen 12.0.0 | 4/11 | -3 | 11 Games |
Weiss 2.1 JA | 6/10 | +2 | 10 Games |
Counter 5.5 | 4.5/10 | -1 | 10 Games |
Avalanche 2.1.0 | 4.5/10 | -1 | 10 Games |
Smallbrain 7.0 JA | 3/10 | -4 | 10 Games |
Toga IV 1.1 JA | 5/8 | +2 | 8 Games |
StockDory Starfish 0.1 | 5/8 | +2 | 8 Games |
Xiphos 0.6.1 JA | 4/8 | +0 | 8 Games |
Lifish 1.0 | 4/8 | +0 | 8 Games |
Reckless 0.7.0 | 3/8 | -2 | 8 Games |
Nemorino 6.00 | 3/6 | +0 | 6 Games |
BlackCore 6.0 | 2.5/6 | -1 | 6 Games |
Pedone 3.1 | 2/6 | -2 | 6 Games |
Patricia 4.0 JA | 2/6 | -2 | 6 Games |
Jet 1.2 | 2.5/4 | +1 | 4 Games |
Pedantic 2.1.0 | 2.5/4 | +1 | 4 Games |
Stash 35.26 JA | 2.5/4 | +1 | 4 Games |
RukChess 4.0.1 | 2.5/4 | +1 | 4 Games |
MrBob 1.3.0 | 2.5/4 | +1 | 4 Games |
Little Goliath 3.17 | 2.5/4 | +1 | 4 Games |
Gogobello 3.0 | 2/4 | +0 | 4 Games |
Comments
Post a Comment