Skip to content

Smallbrain v3.0

Compare
Choose a tag to compare
@Disservin Disservin released this 15 Jun 10:34
· 461 commits to main since this release
acf8488

Release

Im really happy to relase Version 3.0.
This new version features a NNUE as the main evaluation.

NNUE

The evaluation is now completely replaced by a NNUE.
The architecture is quite simple:
768 inputs -> 256 neurons -> 1 output

The net was trained on 300 million fens generated given by Luecx (from Koivisto), as well as using his CUDAD trainer.
He has played a major role in explaining to me how to train and use a NNUE for chess engines and I am thankful for all the support he has provided. Without him any of this would not have been possible.
The network architecture will hopefully be expanded in the future, together with me generating my own training data.

The additional playing strength is so large that selfplay results are almost meaningless, due to almost no loses.

Elo test

Test against dbd78f1 (commit before #71 )

ELO   | 504.32 +- 46.09 (95%)
CONF  | 8.0+0.08s Threads=1 Hash=8MB
GAMES | N: 1000 W: 920 L: 24 D: 56

ELO   | 586.77 +- 59.68 (95%)
CONF  | 40.0+0.40s Threads=1 Hash=64MB
GAMES | N: 1000 W: 949 L: 15 D: 36

Test against smallbrain V2.0

ELO   | 532.75 +- 53.33 (95%)
CONF  | 8.0+0.08s Threads=1 Hash=8MB
GAMES | N: 1000 W: 938 L: 27 D: 35

What's Changed

  • faster draw in #61
  • new pawn eval in #64
  • larger default hash + better material eval in #65
  • lmr reduction with depth and mademoves in #66
  • NNUE in #71

Full Changelog: 2.0.0...3.0.0

I've included the default network in the assets too, although this is (should be) not required to use the engine, since the network is included during the compilation.