Skip to content

Stormphrax 1.0.0

Compare
Choose a tag to compare
@Ciekce Ciekce released this 25 Jul 00:41
· 381 commits to main since this release
  • implemented NNUE
  • a few minor tweaks and fixes

Stormphrax is here! Polaris' hand-crafted evaluation function has been replaced with a NNUE, resulting in massive gains in both standard chess and particularly FRC. The current network (deepwoods) was trained on DFRC self-play data from the previous development network - in total there were five previous networks, the first being seeded with random weights and biases, so Stormphrax is a "zero" engine in that it learnt to evaluate positions from zero knowledge, knowing only the rules of chess.

There is still lot more improvement possible for both the NNUE implementation and for search, so development will continue - though training networks is very slow for me currently, so likely not as fast as Polaris development was.

Many thanks again to everyone who has contributed CPU time to the OpenBench instance that Stormphrax is tested on: @Adam-Kulju, @Alex2262, @archishou, @cosmobobak, @crippa1337, @dede1751, @GediminasMasaitis, @jhonnold, @lucametehau, @raklaptudirm, @spamdrew128, @uwuplant and particularly @JouanDeag :3

Results against Polaris 1.8.1

STC:

ELO   | 357.65 +- 16.33 (95%)
CONF  | 8.0+0.08s Threads=1 Hash=32MB
GAMES | N: 3000 W: 2447 L: 126 D: 427

LTC:

ELO   | 357.07 +- 26.69 (95%)
CONF  | 60.0+0.60s Threads=1 Hash=128MB
GAMES | N: 1000 W: 796 L: 23 D: 181

FRC STC:

ELO   | 466.04 +- 42.52 (95%)
CONF  | 8.0+0.08s Threads=1 Hash=32MB
GAMES | N: 1000 W: 907 L: 35 D: 58

Elo testing done with OpenBench's 8moves_v3 book for standard chess, and 3moves_FRC for FRC.
Results are obtained from self-play (well, against Polaris) and will likely not scale perfectly to games against other opponents :)

Full Changelog: ce856d8...v1.0.0