Rudim - UCI-compliant chess engine written in Rust
Author: Vishnu Bhagyanath
Previous version: Rudim 2.1.3 participated in the qualifying rounds for the CEDR Chess Engine League, which features 64 of the best engines. The engine did not advance, but earned a spot guaranteeing entry into the qualifying rounds for the 6/2026 edition.
Rudim 3.0.0 what's new?
Major release with only 1 feature - NNUE evaluation
Rudim has integrated a (768 -> 32) x 2 -> 1 NNUE for evaluation.
Training done using bullet - from v3.0.0 onwards, if you clone the repo you will need to pull in the git submodule for bullet as well.
Started off with random weights and ran 3 generations of self play. No HCE evals or evals from other engines games were used in training.
Each generation had 300k games, generating ~15 -> 25mill filtered positions for training.
All trained networks can be found on rudim-networks releases
NB: In v3.0.0, the neural network is not trained to its full potential. I stopped training until it was just stronger than v2.2.2 - further training on the network weights will resume after self play can be made faster (faster eval, optimize game generation logic etc.) - will be upcoming in the 3.x.x releases.
Score of rudim-nnue-v1-g3 vs Rudim-2.2.2: 348 - 74 - 78 [0.774]
... rudim-nnue-v1-g3 playing White: 178 - 35 - 37 [0.786] 250
... rudim-nnue-v1-g3 playing Black: 170 - 39 - 41 [0.762] 250
... White vs Black: 217 - 205 - 78 [0.512] 500
Elo difference: 213.9 +/- 32.2, LOS: 100.0 %, DrawRatio: 15.6 %
SPRT: llr 0 (0.0%), lbound -inf, ubound inf
500 of 500 games finished.

Comments
Post a Comment