Final Release of Ethereal, V12.75

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

Moderators: Harvey Williamson, bob, hgm

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Post Reply
AndrewGrant
Posts: 809
Joined: Tue Apr 19, 2016 4:08 am
Location: U.S.A
Full name: Andrew Grant
Contact:

Final Release of Ethereal, V12.75

Post by AndrewGrant » Fri Oct 09, 2020 7:08 am

Hello all. Today I am releasing the final version of Ethereal, version 12.75, and ending development. I'm also releasing a fork of Ethereal, Etherlito, which allows for using an NNUE network. The updated Ethereal has a massive elo gain of +43, compared to the previous gain of +17 from 12.25 to 12.50. This is largely due to my own innovative Pawn+King Neural Network, and Rook+Pawn+King Endgame Neural Network. Neither Network is "Updated Incrementally", and has absolutely no connection to Stockfish, Leela, or AlphaZero.

I've forked Ethereal to Etherlito, which will not be seeing any support or further commits. This allows you to place a weight file in the /src/ directory named "weights.nn", and compile. To make people happy, I've pasted a Stockfish net into the repo. One can compile out of the box, probably. You maybe have to play with the Makefile if you don't have a modern CPU.

Using various Networks, I am able to beat Stockfish 11 in a 500 game match by over +50 elo. Chess is dead. I'm not providing binaries for this, as Etherlito is the only code I've written in the last 6 years that I am ashamed of. I want everyone to know just how easy this was. 2 hours, 25 minutes. That is the time it took me to start by opening a tab to look at CFish, and to end by pushing a working version. Congrats to Stockfish for the incredible achievement. My middle finger to everyone else using it.

Binaries for Windows & Android (ARMv7, ARMv8) can be found here. As always, it is highly preferable for you to compile your own binary on your machine. A simple "make", or "make pext" (for those with Intel machines supporting the BMI2 instruction set), should produce a binary as fast and likely faster than the ones I provide. Of course, test it to be sure.

The following are the patches since V12.50.

Code: Select all

Evaluate Stacked & Isolated Pawns by File
Tune all NORMAL terms using mini-batches
Reduce the base Aspiration Window size to 10cp
Fix MoveOverhead to help with Sudden Death games
Add a Capture History Table (Stockfish) to move sorting
Tune all NORMAL positions using a new set of 42.5m games
Increase the importance of Move Stability in the Time Management
Add a small, [224, 32, 1] NN to augment the eval via Pawns and Kings
Fix an off-by-one error causing crashes with the NN weights
Introduce a miniature Shelter/Storm for use in King Safety
Update the Network, now trained using a mix of FRC data
Tune all of the NORMAL evaluation terms following the NN addition
Use Capture History (Stockfish) to apply LMR to some tactical moves
Increase reductions for tactical moves with very poor history
Add mirroring to the training, tune the eval around the updated NN
Remove the "UE" portion of the NN, as we can compute it faster from scratch
Remove a useless line when reverting a NULL move
Remove a useless operation when generating Quiet Evasions
Augment the existing eval with a RPK Endgame Network
Kick to version 12.70
Kick to version 12.71
Kick to version 12.72
Kick to version 12.73
Kick to version 12.74
Kick to version 12.75

Code: Select all

ELO   | 42.90 +- 2.90 (95%)
CONF  | 60.0+0.6s Threads=1 Hash=64MB
GAMES | N: 18640 W: 4334 L: 2044 D: 12262
I'm likely to continue maintaining the OpenBench server's for the near future. However, I'm leaving the Computer Chess Development world, (although I'll be next door doing some work around Chess.com). Hopefully someone will take over if they are interested, or if Noobpwnftw cares to he can always host it.

Thanks to all of the old guard on these forums. I learned almost everything I know about chess, computer chess, and even programming in the pursuit of Ethereal. I got damn near the top. If you toss Houdini and Fire, I held the #3 spot in the world for a year. A testament to my obsession, and to the support of this community.

I'm not sure what to say as a closer. I can't find words to thank the many members of CCC for their contributions over the decades. I've been apart of the community for 6 years, but I don't see a future in this hobby. By this time next year, I expect to see Stockfish, Leela, and a bunch of forks or clones or near copy-paste jobs of them. Good luck. A republic, if you can keep it.

A wise man, one of the few true friends I've ever had, told me this: "fais ce que dois, advienne que pourra"

User avatar
flok
Posts: 231
Joined: Tue Jul 03, 2018 8:19 am
Full name: Folkert van Heusden
Contact:

Re: Final Release of Ethereal, V12.75

Post by flok » Fri Oct 09, 2020 7:39 am

Thank you for being part of this community.
www.vanheusden.com: Micah / Embla / PuppetMaster / DeepBrutePos / Pos / Feeks

User avatar
Rebel
Posts: 5686
Joined: Thu Aug 18, 2011 10:04 am

Re: Final Release of Ethereal, V12.75

Post by Rebel » Fri Oct 09, 2020 7:41 am

Thanks for your contributions, Ethereal and OpenBench. Be well and never lose your sense of humor.
90% of coding is debugging, the other 10% is writing bugs.

Dann Corbit
Posts: 11626
Joined: Wed Mar 08, 2006 7:57 pm
Location: Redmond, WA USA
Contact:

Re: Final Release of Ethereal, V12.75

Post by Dann Corbit » Fri Oct 09, 2020 7:44 am

You are (quite possibly) the best chess programmer in the world (like Bruce Moreland and a few others who tossed in the towel).
Sad to see you leave.
I have a suggestion. Add your efforts to the SF or LC0 teams.
But if you are not interested in that, that is fine too.
I believe it was the Mint programmer who said, "Choose life instead of chess programming." or something to that effect.
In the meantime, we, the absurdly obsessed, will continue to squander our lives and fortunes pushing little wooden horsies around on cardboard squares.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.

User avatar
flok
Posts: 231
Joined: Tue Jul 03, 2018 8:19 am
Full name: Folkert van Heusden
Contact:

Re: Final Release of Ethereal, V12.75

Post by flok » Fri Oct 09, 2020 7:47 am

Imho "choose life instead of chess programming" is a stupid remark. Something that is fun to do IS life.
www.vanheusden.com: Micah / Embla / PuppetMaster / DeepBrutePos / Pos / Feeks

Dann Corbit
Posts: 11626
Joined: Wed Mar 08, 2006 7:57 pm
Location: Redmond, WA USA
Contact:

Re: Final Release of Ethereal, V12.75

Post by Dann Corbit » Fri Oct 09, 2020 7:51 am

https://www.youtube.com/watch?v=AtPcF6hd7R8
BTW, I am totally a dude on a horse, despite being around them all my life.

Dude: n
"One who bounces at a trot."

I much prefer a motorcycle. I have herded cattle on foot and on a motorcycle, but not on a horse.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.

Dann Corbit
Posts: 11626
Joined: Wed Mar 08, 2006 7:57 pm
Location: Redmond, WA USA
Contact:

Re: Final Release of Ethereal, V12.75

Post by Dann Corbit » Fri Oct 09, 2020 7:53 am

flok wrote:
Fri Oct 09, 2020 7:47 am
Imho "choose life instead of chess programming" is a stupid remark. Something that is fun to do IS life.
What if it is no longer fun for you. What then?
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.

jmartus
Posts: 216
Joined: Sun May 16, 2010 12:50 am

Re: Final Release of Ethereal, V12.75

Post by jmartus » Fri Oct 09, 2020 8:03 am

Yeah this nnue making it to easy for engines to be right up there with stockfish.

Dann Corbit
Posts: 11626
Joined: Wed Mar 08, 2006 7:57 pm
Location: Redmond, WA USA
Contact:

Re: Final Release of Ethereal, V12.75

Post by Dann Corbit » Fri Oct 09, 2020 8:07 am

jmartus wrote:
Fri Oct 09, 2020 8:03 am
Yeah this nnue making it to easy for engines to be right up there with stockfish.
I don't understand why so many people think that is a bad thing.
There is this new revolution where the computer figures out all the eval crap in a nice little incomprehensible pile of goo.
You attach this pile of goo, and suddenly you are king of the world.

And yet people weep over it.
I am clapping my hands.
And the absurd fixation with "KEEP YOUR FILTHY PAWS OFF OF MY EVALUATION TERMS!!!!!" will finally bite the dust.
It has to, now that they are worthless.
Last edited by Dann Corbit on Fri Oct 09, 2020 8:10 am, edited 1 time in total.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.

User avatar
xr_a_y
Posts: 1320
Joined: Sat Nov 25, 2017 1:28 pm
Location: France

Re: Final Release of Ethereal, V12.75

Post by xr_a_y » Fri Oct 09, 2020 8:09 am

"Congrats to Stockfish for the incredible achievement. My middle finger to everyone else using it."

I think I tried hard to explain in many places why NNUE is not Minic official evaluation, how it is a copy/paste of code and technology, and how it is just an experiment for me do dig into the NN world. Maybe the good thing to do was to not try it at all. I feel very sorry for the trouble. "alea jacta est".

Post Reply