Arche 0.4.9 - new version chess engine
Arche is a UCI chess engine in Rust. Most of the effort goes into being able to tell whether a change to it helped: every change states in its commit message how much of the tree the search looks at afterwards, one that changes how the engine plays is measured in games before it merges, and one that claims to be faster states how much faster it measured.
Author: Andrew Rating CEDR=3130
What's new?
Features
(search) Weigh entry age against depth in transposition table replacement [elo +4 ±9 (sprt [-10, 0] passed, 2500 games, 30+0.3, vs 31eb33b)] [bench 5965973]
(search) Raise the transposition table's age weight in endgames [elo +10 ±8 (sprt [0, 10] passed, 3000 games, 30+0.3, vs ec2abac)] [bench 5965973]
(eval) Add a tempo term for the side to move, tapered from 10 to 8 [bench 5312244] [elo +10 ±7 (sprt [0, 10] passed, 5500 games, 10+0.1, vs ec2abac)]
(search) Open the aspiration window at 15 rather than 30 [bench 5355551] [elo +13 ±9 (sprt [0, 10] passed, 3400 games, 10+0.1, vs ec2abac)]
(uci) Scale the soft time line by the best move's share of the root's nodes [bench 5355551] [elo +11 ±9 (sprt [0, 10] passed, 3000 games, 10+0.1, vs 36ecabc)]
(search) Add singular extensions from the table move's floor [bench 9939754] [elo +44 ±22 (sprt [0, 10] passed, 500 games, 10+0.1, vs 621ecab)]
Performance
(eval) Keep the pair term as the sum and difference of the two perspectives [bench 5965973] [speed +0.0% (bench nps, 95% interval -1.4% to +1.6%, 60 interleaved rounds over shuffled layouts vs adfd966)]
(eval) Hold the pawn structure beside the shelter in the shelter table's entry [bench 5965973] [speed +1.6% (bench nps, 95% interval +0.1% to +3.1%, 60 interleaved rounds over shuffled layouts vs d133ba1)]
(eval) Read material from the piece's row as one white relative sum [bench 5965973] [speed +1.0% (bench nps, 95% interval -0.8% to +2.6%, 60 interleaved rounds over shuffled layouts vs 6b214ea)]
(search) Store the static evaluation in the transposition table entry [bench 5965973] [speed +0.7% (bench nps, 95% interval -1.2% to +2.5%, 60 interleaved rounds over shuffled layouts vs a620e4b)]
(board) Switch make and unmake to copy-make on a stack of positions [bench 5355551] [speed +2.6% (bench nps, 95% interval -0.0% to +5.4%, 60 interleaved rounds over shuffled layouts vs 621ecab)]
(board) Guard the king step test with the kept king square [bench 5355551] [speed +0.4% (bench nps, 95% interval -1.7% to +2.6%, 60 interleaved rounds over shuffled layouts vs 324a485)]
Refactor
(search) Hold a node's facts and its answer in one value the reductions read [bench 5965973]
(search) Ask for a child search with the loop's decision [bench 5965973]
(search) Answer quiescence and the root through one fail soft value [bench 5965973]
(board) Name the square behind a pawn and the pawn attack masks once [bench 5965973]
(eval) Fold each term through weigh directly and pin the arithmetic once [bench 5965973]
(uci) Remove duplicated branches and dead match arms
(search) Remove duplicated code from the table, the gate and the ledger [bench 5965973]
(board) Read a file's letter and index off its discriminant [bench 5965973]
(board) Keep DerefMut on the board to tests and fix stale make comments [bench 9939754]
(eval) Read the capped phase through the accumulator's accessor [bench 9939754]
(search) Shorten the aspiration width comment and fix the forced arm's doc [bench 9939754]
(uci) Rewrap the soft line's node share doc and state its lower bound plainly
Arche 0.4.9 took part in our tests and ended up near the bottom of the standings in the lowest qualifying group, Group E, with a score of 5.5 out of 11 games (38 place).

Comments
Post a Comment