Its been been about 5 months again since the last release, and I'm back with another update, which is a quite a bit stronger than the previous release. I was forced to take some time away from chess development for quite some time dealing with some medical issues, but I think I'm back now for the time being.
In addition to some speed gains, search improvements, eval improvements, and general code clarity improvements, this is the first released version of Ethereal which supports MultiPV analysis. I was able to run about a hundred thousand games using MultiPV on both single core and multi core matches without having any crashes, timelosses, or other illegal behavior. However, if you notice any issue with MultiPV or have any suggested improvements, please contacted me here on talkchess, on the github page, or using my email, andrew@grantnet.us
I've done a good bit of work on OpenBench since the release of Ethereal 11.50. A number of new authors have adopted their own instances of OpenBench for development, which pleases me greatly, and I'm thankful to all those who have suggested changes to OpenBench to make it more versatile.
Binaries for Windows {PEXT/POPCNT/NOPOPCNT} and Android {ARMV7/ARMV8} can be found here.
Elo estimates are still running, but here are the partial results, and a link to the running test
Code: Select all
ELO | 33.87 +- 4.68 (95%)
SPRT | 60.0+0.6s Threads=1 Hash=64MB
Games | N: 5485 W: 990 L: 457 D: 4038
Once again, a special thanks to Bojun Guo (noobpwnftw), for providing his machines to OpenBench, which is my Fishtest-like testing platform. His compute gives me the freedom to try ideas and concepts which would otherwise be untestable, or too time consuming to justify.11.51: Speedup moveIsSingular() with our knowledge about the TT move's legality
11.52: Encode Castle moves as KxR. Report UCI currmove and UCI currmovenumber
11.53: Skip some bad captures after skipping quiets during moveIsSingular()
11.54: Do not let a Queen attack through our Rooks/Bishops for Mobility scoring
11.55: Speedup and simplify the logic behind storeTTEntry()
11.56: Full engine Tuning session using an average of a static and dynamic eval
11.57: Do not consider a pawn to be Isolated if it may capture another pawn
11.58: Syzygy probing speedup and simplification
11.59: Evaluate Complexity to adjust eval based on conversion chances
11.60: Add Complexity terms to the Tuner and run a Tuning session
11.61: Allow Tuning terms to be considered Midgame or Endgame only
11.62: Evaluate Kings based on nearest file-wise Pawn
11.63: Run a Tuning session on the King Pawn File Proximity term
11.64: Remove the Passed Pawn contribution to the Complexity calculation
11.65: Evaluate Stacked/Doubled Pawns differently based on ability to unstack
11.66: Add a few options to the Tuner in relation to static vs dynamic eval
11.67: Fix a bug in the logic behind patch 11.65
11.68: Fix a newline printing issue in the PERFT suite between Python 2/3
11.69: Do not ever consider an Isolated Pawn to be Backwards
11.70: Halve the eval bonus (but not malus) for Outposts on the A/H files
11.71: Never consider a King and lone Knight/Bishop to be winning
11.72: Do not perform history updates on illegal or skipped quiet moves
11.73: Apply Futility Move Pruning to moves with good history scores in some cases
11.74: Add support for MultiPV analysis
11.75: Add MultiPV information to the README
A big thanks to Alayan (Alayan-stk-2) for his patches. He is responsible for a large number of the elo gaining patches since V11.50, including the addition of complexity terms, the addition of the Pawn King file-wise distance evaluation term, and the correction for KB and KN endgames.
Another thank you to all the members of CCC, TCEC, Talkchess, and elsewhere, that have been supporting me in the last months and year. This has been a very hard year of my life, and I'm grateful for the help and advice and support I have received from so many members of this community.
And as always, thanks to the testers from CCRL, CEGT, FASTGM, Ipmanchess, CCC, TCEC, and anyone else who takes the time to run Ethereal on their machines. I'll be checking all those rating lists obsessively for the next few weeks.
Cheers from the Ethereal team