Sturddle 2 is a fork of Sturddle Chess Engine (UCI) and neural network.
Author: Cristian (Cristivlas)
Building the Engine
<code>python3 tools\build.py</code> builds a native executable for the host OS. The executable bundles binary images that support AVX512, AVX2, and generic SSE2.
Clang is recommended, the GNU C++ compiler may work but it is not supported.
If built with the `NATIVE_UCI` flag, invoke `main.py` to run the UCI engine.
Without the `NATIVE_UCI` flag, run `sturddle.py` instead.
## Training the Neural Net
I have trained the neural net on a large dataset that I generated and curated over a couple of years.
Sturddle 2.4 what's new?
Add endgame tables support (via Fathom library), add SyzygyPath UCI parameter
Improve neural network design (linear activation for modulation layer, game phase aware sublayers in the accumulator
Add command line --dev-mode flag (prevent accidental use of experimental UCI params)
Sturddle 2.4 vs other engines:
| Quirky 2.0 | 12.5/22 | +3 | 22 Games |
| Zangdar 4.04.01 | 6.5/22 | -9 | 22 Games |
| Reckless 0.8.0 | 2.5/22 | -17 | 22 Games |
| Maelstrom 3.3.0 | 10.5/21 | +0 | 21 Games |
| Halogen 15.0.0 | 2/20 | -16 | 20 Games |
| Claw 2.0-M | 2.5/16 | -11 | 16 Games |
| Revolution 1.0 2708225 | 1/16 | -14 | 16 Games |
| Benbot 1.4.4 | 14/14 | +14 | 14 Games |
| Critter 1.6a | 9/14 | +4 | 14 Games |
| Invictus r391 JA | 8.5/14 | +3 | 14 Games |
| Cataphract 1.1 | 4.5/10 | -1 | 10 Games |
| Pawnocchio 1.8.1 | 1/10 | -8 | 10 Games |
| Potential 3.0.0 | 7.5/9 | +6 | 9 Games |
| Laser 1.8 beta JA | 4/8 | +0 | 8 Games |
| DarkZoryn 2.0 | 2/8 | -4 | 8 Games |
| Stockfish dev-20250902 | 1.5/8 | -5 | 8 Games |
| CorChess 20250824 | 1.5/8 | -5 | 8 Games |
| Spirit 300825 | 1.5/8 | -5 | 8 Games |
| OmegaCor 270825 | 1.5/8 | -5 | 8 Games |
| SF SE-240825 | 1/8 | -6 | 8 Games |
| Caissa 1.23 | 1/8 | -6 | 8 Games |

Comments
Post a Comment