Since you’re here...

We hope you will consider supporting us today. We need your support to continue to exist, because good entries are more and more work time. Every reader contribution, however big or small, is so valuable. Support "Chess Engines Diary" even a small amount– and it only takes a minute. Thank you.
============================== My email: jotes@go2.pl



New version chess Engine: Uralochka 3.42 dev.7



Uralochka - UCI chess engine
Author: Ivan Maklyakov  Rating Chess Engines Diary CEDR=3640

UCI-compatible chess engine using Alpha-beta search and NNUE-like neural network.
The engine implements:
Basic control options (search to depth, time per move, time per game, time per N moves).
Support for Syzygy endgame tables.
Multithreading.
Builds for different processor extensions (SSE, AVX2, AVX512) and operating systems (Windows, Linux).

Engine architecture (everything is like most engines of this level):
Position representation and move generation - magic beatboards.
Sorting moves: moves from the transposition table, good captures by SEE, killer moves, quiet moves by history, bad captures by SEE.
Search - PVS, Aspiration search, Quiescence Search. And all possible abbreviations and cuts in the search (Null move, Static null move, abbreviations for quiet moves, Futility pruning, SEE prunung, LMR for quiet moves).
Transposition table for sorting moves, cuttings and for evaluation caching.
Multithreading - Lazy SMP.
Evaluation - a neural network similar to NNUE of the first versions with HalfKP. Network architecture: (2x(12288x1024))x6. Input layer: KingAreaPieceColorPieceSquare 166264. Trained using the frameworks Keras (early versions) and PyTorch (latest versions) on data generated in games of the engine against itself (with added positions from games against other engines) with ultra-short control (8-9 half-moves). Implementation of inference in the engine using the accumulator principle and vector instructions (SSE, AVX).
HCE (not used now) - material, PSQT, king's pawn shield, attacks on the king, pawn structure, piece mobility. The weights were selected using the Texel engine method.


Uralochka 3.41a JA - results: 
OpponentScore+-Games
Berserk 1356/139-27139 Games
Alexandria 7.0.049/112-14112 Games
Ethereal 14.2544.5/109-20109 Games
Chess-System-Tal-253/106+0106 Games
Obsidian 13.035.5/88-1788 Games
Titan 1.1.042/86-286 Games
RubiChess 2024011237/85-1185 Games
PlentyChess 3.0.027.5/66-1166 Games
Caissa 1.2027/64-1064 Games
Seer 2.8.032.5/61+461 Games
Caissa 1.1824.5/59-1059 Games
Rebel 16.328.5/53+453 Games
Dragon 3.316/47-1547 Games
Viridithas 13.0.024/46+246 Games
Stockfish 16.118/46-1046 Games
Obsidian 12.2919/45-745 Games
Lizard 10.518.5/40-340 Games
Peacekeeper 3.0020.5/38+338 Games
Starzix 5.018/38-238 Games
Clover 6.218/38-238 Games
PlentyChess 1.0.014.5/37-837 Games
Clover 7.0 JA17/36-236 Games
Stormphrax21/34+834 Games
Motor 0.7.016.5/34-134 Games
Titan 1.0.017.5/33+233 Games
Peacekeeper 3.0118/32+432 Games
PlentyChess 2.0.013/32-632 Games
Yuliana 5.011.5/32-932 Games
Caissa 1.1913/30-430 Games
Yuli GM Pro 167.5/26-1126 Games
Critter 1.6a23/24+2224 Games
Velvet v8.0.013/24+224 Games
RubiChess 2024081710/24-424 Games
JigSaw 5.98/24-824 Games
Akimbo 1.0.012.5/22+322 Games
Obsidian 12.07.5/21-621 Games
Fire 9.311.5/20+320 Games

Comments