A new version of the chess engine has just been released – Bread Engine 1.5.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.5.0.
bug fixes:
fixed reporting illegal pv moves when the game ends in a draw
fixed a bug with quiescence search transposition evaluations
fixed an integer overflow when displaying the nodes per seconds in bench
fixed the quiet history being used only for one side (~53 elo)
Of course adding up the elo estimates of each improvement doesn't match the overall gain, as life would be too good otherwise.
In addition, major refactors and readability improvements have been done in the move ordering, root search, nnue and search parts of Bread.
Bread Engine 1.5.0 ELO/Playing Strength improvements.
Bread Engine 1.5.0 is around 124 elo stronger than version 1.4.0 in STC and around 167 elo stronger in LTC.
These gains mainly come from new heuristics, better histories and bugfixes. The nodes per second in the bench command can no longer be negative (oops), and there sould be no more illegal pv lines.
The executable is also roughly two times smaller as the neural network weights are now embedded in their quantized integer type.
Additions/Improvements:
improve late move reductions (~10 elo)
switch to a quadratic razoring threshold (~16 elo)
refactor and improve root move ordering (~13 elo)
use static exchange evaluation in move ordering (~47 elo)
use an assembly incbin macro to embed the neural network in the executable
add and improve continuation history (~27 elo)
add singular extensions (~14 elo)
Testing the Bread Engine 1.5.0 chess engine.
STC: 8 + 0.08 s
Results of bread_engine_1.5.0 vs bread_engine_1.4.0 (8+0.08, NULL, NULL, UHO_2024_8mvs_big_+115_+134.pgn):
Elo: 123.55 +/- 14.22, nElo: 166.12 +/- 17.58
LOS: 100.00 %, DrawRatio: 32.67 %, PairsRatio: 5.39
Games: 1500, Wins: 817, Losses: 305, Draws: 378, Points: 1006.0 (67.07 %)
Ptnml(0-2): [19, 60, 245, 242, 184], WL/DD Ratio: 5.45
LTC: 40 + 0.4 s
Results of bread_engine_1.5.0 vs bread_engine_1.4.0 (40+0.4, NULL, NULL, UHO_2024_8mvs_big_+115_+134.pgn):
Elo: 167.53 +/- 21.02, nElo: 230.86 +/- 24.87
LOS: 100.00 %, DrawRatio: 25.60 %, PairsRatio: 8.30
Games: 750, Wins: 433, Losses: 97, Draws: 220, Points: 543.0 (72.40 %)
Ptnml(0-2): [2, 28, 96, 130, 119], WL/DD Ratio: 2.10
Bread Engine 1.4.0 vs other chess engines:
Quirky 1.0 | 3/14 | -8 | 14 Games |
Leorik 3.1.3 JA | 2/14 | -10 | 14 Games |
Illumina 3 | 1/14 | -12 | 14 Games |
Tarnished 2.0 | 1/14 | -12 | 14 Games |
Calvin 6.1.0 JA | 0.5/14 | -13 | 14 Games |
Renegade 1.2.0 | 0.5/14 | -13 | 14 Games |
Knightx 4.4 | 5.5/13 | -2 | 13 Games |
Kobra 2.0 JA | 9.5/12 | +7 | 12 Games |
Prophet 4.4 JA | 8/12 | +4 | 12 Games |
Zangdar 3.09.01 JA | 1.5/12 | -9 | 12 Games |
Astra 5.2 | 0.5/12 | -11 | 12 Games |
Pawn 4.0 | 0/12 | -12 | 12 Games |
Halcyon 1 JA | 2/2 | +2 | 2 Games |
Thorshammer 3.01 JA | 2/2 | +2 | 2 Games |
Baislicka 1.0 JA | 2/2 | +2 | 2 Games |
Eubos 4.0 | 1.5/2 | +1 | 2 Games |
Olithink 5.11.2 | 1/2 | +0 | 2 Games |
Critter 1.6a | 1/2 | +0 | 2 Games |
Kobra 1.2 | 0.5/2 | -1 | 2 Games |
Spaghet BologNNese 1.1.3 JA | 0.5/2 | -1 | 2 Games |
EveAnn 3.1 | 0.5/2 | -1 | 2 Games |
Comments
Post a Comment