Details
Another release of Berserk with an improved NNUE evaluation and small search patches.
The new network was trained using a custom trainer on 950 million FENs from Berserk 6 self play games. Along with this, the input arch has changed such that the pieces are now indexed relative to the side of the board the king is on. This should hopefully improve the network's ability to detect king attacks.
Minor search patches were added as well, most of which were many late move reduction tweaks.
Code: Select all
ELO | 71.80 +- 4.62 (95%)
CONF | 40.0+0.40s Threads=1 Hash=64MB
GAMES | N: 7504 W: 2110 L: 581 D: 4813
Choosing a binary
Binaries currently require "popcnt".
Binaries without the label "avx2" are compiled with SSE.
Binaries with the label "pext" require your processor to support "bmi2".
They are available on Github: https://github.com/jhonnold/berserk/releases/tag/7
Changes
- Updated NNUE arch to utilize king side relativity and increased hidden layer to 512 neurons
- Evaluation scaling
- LMR Tweaks
Increase reductions on expected cutnodes
Less reduction for pawn pushes (to 7th) and checks
- Tweak bestmove update logic around previous cutnodes
Special thanks to Kim Kåhre of Koivisto for discovering this concept and sharing it with me
Bugs
- Fixed bug causing helper threads from being able to set bestmove in SMP. This should not have resulted in worse play, but could result in a crash when a helper started late and reported an old bestmove
Thanks
- As always, Andrew Grant (Ethereal's Author) for Open Bench. Development of Berserk would not be possible without this resource
- Connor McMonigle (Seer's Author) for continued guidance and advice on NNs
- Kim Kåhre (Koivisto's Author) for rubber duck debugging and theorizing