Ethereal8.28 Release

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

AndrewGrant
Posts: 1756
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Ethereal8.28 Release

Post by AndrewGrant »

Hello all,

A little over two months ago since my last release. I'm happy to say I've made some good progress in terms of playing strength and project structure.

The official release on GitHub can be found here : https://github.com/AndyGrant/Ethereal/r ... /tag/V8.28

I'm trying to track old versions here (Some versions are VERY old; One from my HS days (in JAVA)) : https://andygrant.github.io/

A copy of the release notes:

Code: Select all

Functional Changes:
    Clear History between games, not between searches & Reduce History before each search
    Fixed an issue were the engine would crash with games going ~500 moves (Now crashes at ~2K)
    Added a form of Late Move Pruning / Move Count Pruning, based on number of quiets tried
    Added Razoring a la Stockfish, with a few more conditions
    Fixed a bug where the same position could have two different hash representations, depending on whether it was set using a FEN or a startpos + move list
    Fixed a bug with the rook psqt updates during castling
    Now taking special care of MATE scores for the table (talkchess.com/forum/viewtopic.php?t=64937), thanks to a bug found by Werner Schüle
    Combined the rootSearch and alphaBetaSearch (the general form) into one function

Non-functional Changes:
    Reformatted the vast majority of the evaluation code in order to encapsulate evaluation for each piece, giving a measurable speed up (on my machines) of 2-4% depending on game phase.
    Documented the main search() routine, a la Stockfish.
    Removed 729 Lines of Code

Testing against a pool of opponents in EtherBench shows a gain of ~70 ELO. As always, I expect that figure to be inflated, but I hope not!
Major functional changes that I put through EtherBench before committing are here:

https://github.com/AndyGrant/Ethereal/c ... 891dcef125
https://github.com/AndyGrant/Ethereal/c ... 5b365a1aed
https://github.com/AndyGrant/Ethereal/c ... cf5856bb04
https://github.com/AndyGrant/Ethereal/c ... eea95cc16e

A special thanks to Werner Schüle for identifying a case where Ethereal would miss mating lines (and eventually draw the game) as a result of some unfortunate hashing of mated lines. I believe I have fixed this by treating the mate scores in a special way. This fixed the case provided by Werner, but that is not proof of correctness.

As always, if anyone would care to provide a MAC compile, I will add it to the release.

Thanks,
Andrew Grant
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
User avatar
Graham Banks
Posts: 41454
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Ethereal8.28 Release

Post by Graham Banks »

Sounds good. :)
gbanksnz at gmail.com
Jamal Bubker
Posts: 326
Joined: Mon May 24, 2010 4:32 pm

Re: Ethereal8.28 Release

Post by Jamal Bubker »

Thanks Andrew !