A new version of the chess engine has just been released – Bread Engine 1.6.0. Previous versions didn't break into the CEDR Top 64 chess engines and were ranked among amateurs. We'll see how this engine fares; the first tests will be held soon.
Bread Engine is a chess engine written in c++. It uses NNUE (efficiently updatable neural network) to evaluate positions, as well as minimax search. Bread engine does not have a GUI built in, however it supports the uci protocol, you can therefore run it on any chess GUI.
Author: Nonlinear2
What's new and key changes in the new version of the Bread Engine 1.6.
Bread Engine 1.6.0 is around 97 elo stronger at short time control (8+0.08s) and 100 elo stronger at long time control (40+0.4s).
This version includes major bugfixes and should no longer crash during engames. SPSA is now supported, and two tunes of 40k games have been run for the main search and move ordering, resulting in a 30 elo increase.
Major parts of Bread's codebase have also been rewritten and improved.
General
ability to dump the engine state in a file for bug reproduction
added a makefile as a way to build the engine
better benchmark positions
SPSA tune (~30 elo)
merge the root negamax search with the main search
Additions/Improvements:
static exchange evaluation pruning to the main search (~21 elo)
improving heuristic for reverse futility pruning and late move pruning (~12 elo)
multi cut pruning (~11 elo)
search transposition table moves in qsearch when in check (~16 elo)
prevent transposition table cuts on pv nodes (~18 elo)
decrease the move ordering static exchange evaluation threshold (~6 elo)
store best moves only if they increase alpha (~5 elo)
Bug fixes:
fix storing invalid evaluations in the transposition table when the only legal move is excluded
fix singular beta going out of the legal evaluation range (~3 elo)
fix a search stack overflow (~3 elo)
fix an overflow in reported nodes per second
Testing the Bread Engine 1.6 chess engine.
STC: 8 + 0.08 s
Score of bread_engine_1.6.0 vs bread_engine_1.5.0: 1523 - 703 - 774 [0.637] 3000
... bread_engine_1.6.0 playing White: 883 - 287 - 330 [0.699] 1500
... bread_engine_1.6.0 playing Black: 640 - 416 - 444 [0.575] 1500
... White vs Black: 1299 - 927 - 774 [0.562] 3000
Elo difference: 97.4 +/- 11.0, LOS: 100.0 %, DrawRatio: 25.8 %
LTC: 40 + 0.4 s
Score of bread_engine_1.6.0 vs bread_engine_1.5.0: 351 - 140 - 259 [0.641] 750
... bread_engine_1.6.0 playing White: 199 - 55 - 121 [0.692] 375
... bread_engine_1.6.0 playing Black: 152 - 85 - 138 [0.589] 375
... White vs Black: 284 - 207 - 259 [0.551] 750
Elo difference: 100.5 +/- 20.5, LOS: 100.0 %, DrawRatio: 34.5 %
Bread Engine 1.5.0 vs other chess engines:
Colossus 2025b | 6.5/14 | -1 | 14 Games |
Texel 1.13a4 JA | 1/14 | -12 | 14 Games |
Viridithas 18.0.0 JA | 0.5/14 | -13 | 14 Games |
Clover 8.2.1 | 0/14 | -14 | 14 Games |
Marvin 6.3.0 JA | 0.5/13 | -12 | 13 Games |
Admete 1.8.0 | 1.5/8 | -5 | 8 Games |
Igel 3.6.3 JA | 0/8 | -8 | 8 Games |
Mcu-max 1.0.6 | 6/6 | +6 | 6 Games |
Maelstrom v3.1.1 | 1.5/6 | -3 | 6 Games |
Oxide 1.3.0 | 0.5/6 | -5 | 6 Games |
Meltdown 1.9 | 0.5/6 | -5 | 6 Games |
Critter 1.6a | 0/6 | -6 | 6 Games |
Bitbit 1.4 | 0/5 | -5 | 5 Games |
Adeon 1.2.1 | 2/2 | +2 | 2 Games |
Juggernaut 1.01 | 2/2 | +2 | 2 Games |
Axolotl 1.9 JA | 2/2 | +2 | 2 Games |
Pawnocchio 1.8.1 | 0.5/2 | -1 | 2 Games |
Astra 6.1.1 | 0.5/2 | -1 | 2 Games |
Artemis 17.3TR sl | 0.5/2 | -1 | 2 Games |
Lc0 0.32.0-rc1 | 0/2 | -2 | 2 Games |
Saturn 1.3 JA | 0/2 | -2 | 2 Games |
Comments
Post a Comment