Maelstrom 2.1.0 - new version chess engine


Maelstrom - UCI-compliant Golang chess engine in development from scratch. 

Maelstrom 2.1.0 - what's new?

ELO Increase:
200 games at 8s+0.08s

Score of maelstrom-v2.1.0 vs maelstrom-v2.0.0: 134 - 11 - 55 [0.807]
...      maelstrom-v2.1.0 playing White: 69 - 6 - 25  [0.815] 100
...      maelstrom-v2.1.0 playing Black: 65 - 5 - 30  [0.800] 100
...      White vs Black: 74 - 71 - 55  [0.507] 200
Elo difference: 249.1 +/- 46.1, LOS: 100.0 %, DrawRatio: 27.5 %
SPRT: llr 0 (0.0%), lbound -inf, ubound inf
200 of 1000 games finished.
50 games at 40s+0.04s

Score of maelstrom-v2.1.0 vs maelstrom-v2.0.0: 26 - 1 - 23 [0.750]
...      maelstrom-v2.1.0 playing White: 15 - 1 - 9  [0.780] 25
...      maelstrom-v2.1.0 playing Black: 11 - 0 - 14  [0.720] 25
...      White vs Black: 15 - 12 - 23  [0.530] 50
Elo difference: 190.8 +/- 70.7, LOS: 100.0 %, DrawRatio: 46.0 %
SPRT: llr 0 (0.0%), lbound -inf, ubound inf
50 of 1000 games finished.
Features:

Fix: engine was flagging on the last move before time control when using movestogo and increment.
Fix: generateCaptures was incorrect, producing illegal captures. Fixed and is now used by Quiescence Search.
Fix: edge case where check extension causes engine to search above max depth
Fix: duplicate moves appearing in at the end of the PV, due to updating PV from TT hit
Refactor: all code to align with better readability and Golang idioms
Refactor: PVS to be more like negamax, reduce number of recursive calls
Improvement: instead of using fixed LMR R value, use a logarithm-based formula used by Ethereal
Improvement: instead of futility pruning only at leaf nodes, use depth-based margin. Values from Blunder
Improvement: replace sorting for move ordering with selection-based approach. This is more efficient since there will be cutoffs early in the move list.
Feature: Add 50-move rule detection
Feature: Add version number to UCI greeting

Maelstrom 1.0.1 vs other engines:

ShashChess 230/6-66 Games
Caissa 0.8.00/6-66 Games
Berserk 100/6-66 Games
StockNemo 4.0.0.10/6-66 Games
Avalanche 1.1.00/6-66 Games
BrainLearn 180/6-66 Games
Eman 8.200/6-66 Games
Fritz 180/4-44 Games
Stockfish 250722 Ivec0/4-44 Games
CorChess 2507220/4-44 Games
Stockfish 1307220/4-44 Games
Lumac0 13.21/2+02 Games
Vault 0.41/2+02 Games
Eubos 2.30.5/2-12 Games
Inanis 1.1.00/2-22 Games
Nalwald 160/2-22 Games
Bagatur 3.50/2-22 Games
Virtue 2.3.00/2-22 Games
Arasan 23.40/2-22 Games
Dumb 1.100/2-22 Games
Knightx 3.40/2-22 Games




Comments

Popular posts from this blog

Torch-4 UCI v 1.01 - new version chess engine

Reckless 0.9.0 - new version super strong chess engine

Reckless 0.10.0 - new version super strong chess engine

We already have the new Fritz 20 program - what does it look like and how does it work?