Page 8 of 19

Re: SlowChess Blitz Classic 2.0

Posted: Sat Nov 07, 2020 9:14 pm
by jonkr
I probably should have changed the name of slow64.exe to slow64-avx.exe : it now uses avx2 instructions for the endgame neural nets.
(My only 2 computers support avx2 so haven't tested on older ones, but perhaps there's a better way to handle failure.)

The slow64-noAvx.exe should work on everything the version 2.3 worked on, so that's the one to use if the Slow 2.3 worked, it will be about 20% slower in late endgame but otherwise the same in early/midgame.
slow64-noPop.exe has no hardware pop count instructions and no avx instructions, so is for very old cpus, and will have slower midgame play too due to no popcount.

Re: SlowChess Blitz Classic 2.0

Posted: Sun Nov 08, 2020 8:14 pm
by Sylwy
Halfway in my test for SlowChess Blitz Classic 2.4 (TC=4'+2"):

Image

The new version (2.4) of SlowChess, using NNs, is very close to Ethereal 12.50 x64 (currently 3377 Elo points in CCRL Blitz). Therefore, an improvement of 10-20 Elo points compared to the previous version. SlowChess Blitz Classic 2.4 plays a very attractive chess.

Like observation: installing SlowChess Blitz Classic 2.4 (slow64.exe) like WB engine (with a perfect engineWB.dft file) generates chrashes under Arena 3.5.1 GUI (a very good GUI for WB engines). Installing like UCI, all is OK !

Re: SlowChess Blitz Classic 2.0

Posted: Sun Nov 08, 2020 8:22 pm
by Krzysztof Grzelak
jonkr wrote: Sat Nov 07, 2020 9:14 pm I probably should have changed the name of slow64.exe to slow64-avx.exe : it now uses avx2 instructions for the endgame neural nets.
(My only 2 computers support avx2 so haven't tested on older ones, but perhaps there's a better way to handle failure.)

The slow64-noAvx.exe should work on everything the version 2.3 worked on, so that's the one to use if the Slow 2.3 worked, it will be about 20% slower in late endgame but otherwise the same in early/midgame.
slow64-noPop.exe has no hardware pop count instructions and no avx instructions, so is for very old cpus, and will have slower midgame play too due to no popcount.
It is a pity that you only deal with chess.

Re: SlowChess Blitz Classic 2.0

Posted: Mon Jan 11, 2021 5:05 am
by jonkr
SlowChess Blitz 2.5 is now available at
https://www.3dkingdoms.com/chess/slow.htm

You should use slow64-avx if your computer supports AVX2.
The alternative is slow64-noPop. It is plain SSE2. Hardware popcount doesn't really matter since not used in neural net eval, so I didn't compile any more versions.

Slow 2.5 now uses neural nets for every stage of the game. I decided it was time to drop Classic from the name. The endgame nets are the same as 2.4, except with more training and the addition of a Q v R(s) network. The main addition is a network to replace the general evaluations. It's the same structure as the endgame nets, but with a more neurons on first later ( 320x32x32x1 ) Inputs are the same too, just piece/sq, with horizontal symmetry based on white king.

Playing style is similar to 2.4 but more different than any of the hard-coded evals were to each other. Replacing a hard-coded eval with a neural net is a big change, even one based partially on the same training positions and partially on search with same eval. Older hce versions with just certain terms added and factors tweaked showed an extra high draw % playing against previous version, and this one doesn't show that. I think eval definitely main factor in how an engine plays.

On the plus side
  • I estimate it's about 40 elo stronger in standard chess than 2.4
  • Can beat Stockfish 8 in 2-moves book matches by a few elo on my computer.
  • The play based on win percentages does feel more human-like to me.
On the minus side
  • requires AVX2 for strongest play
  • struggles in Chess960 variant (can't recommend it over 2.4)
  • can take longer to close out games. Probably from valuing sure wins so high. (Some day I may see if I can train it try to close out as aggressively as possible.)
I think it's of some interest to have a neural net program that is not standard NNUE and not based on it in any way. (Although it's clearly much weaker than any stockfish NNUEs, and I'm not sure how much is based on my lack of computer resources for training, and how much is from not being the best possible architecture or training process.)

At this point the idea of working more to make it stronger sounds too tedious so I'm releasing it, but if the past is a guide I expect eventually I will start experimenting again then make enough progress to make another version.

Re: SlowChess Blitz Classic 2.0

Posted: Mon Jan 11, 2021 5:53 am
by Modern Times
jonkr wrote: Mon Jan 11, 2021 5:05 am SlowChess Blitz 2.5 is now available at
https://www.3dkingdoms.com/chess/slow.htm

On the minus side
  • requires AVX2 for strongest play
  • struggles in Chess960 variant (can't recommend it over 2.4)

Thanks, I'm overdue to update SlowChess on the CCRL FRC list - current version there is 2.2

My usual hardware is not AVX2, and that combined with the comment above means I should probably run 2.4 ?

Re: SlowChess Blitz Classic 2.0

Posted: Mon Jan 11, 2021 6:12 am
by jonkr
Modern Times wrote: Mon Jan 11, 2021 5:53 am My usual hardware is not AVX2, and that combined with the comment above means I should probably run 2.4 ?
Yeah I'd recommend 2.4, I haven't done enough testing to know, but I'd guess in FRC 2.5 with no AVX2 would actually be weaker.

Re: SlowChess Blitz Classic 2.0

Posted: Mon Jan 11, 2021 6:34 am
by Angle
Thanks. Jonathan!
Fortunately, my system supports avx2 :lol: , so I will test the new version together with v. 2.4 in one tourney which will start in approx. 1 week. I will report the results here in the "Tournaments and matches" section.

Re: SlowChess Blitz Classic 2.0

Posted: Mon Jan 11, 2021 7:00 am
by Frank Quisinsky
Hi Jonathan,

great news!!

The program the Wasp team like most because the playing style and all the possibilities around Slow are just great.
Now v2.4 is still running here (FCP Toruney-2021).
Time to collect updates for the next FCP Tourney.

:-)

Thank you for Slow 2.5, a good day!

Best
Frank

Re: SlowChess Blitz Classic 2.0

Posted: Mon Jan 11, 2021 9:03 am
by bastiball
jonkr wrote: Mon Jan 11, 2021 5:05 am SlowChess Blitz 2.5 is now available at
https://www.3dkingdoms.com/chess/slow.htm

You should use slow64-avx if your computer supports AVX2.
The alternative is slow64-noPop. It is plain SSE2. Hardware popcount doesn't really matter since not used in neural net eval, so I didn't compile any more versions.

Slow 2.5 now uses neural nets for every stage of the game. I decided it was time to drop Classic from the name. The endgame nets are the same as 2.4, except with more training and the addition of a Q v R(s) network. The main addition is a network to replace the general evaluations. It's the same structure as the endgame nets, but with a more neurons on first later ( 320x32x32x1 ) Inputs are the same too, just piece/sq, with horizontal symmetry based on white king.

Playing style is similar to 2.4 but more different than any of the hard-coded evals were to each other. Replacing a hard-coded eval with a neural net is a big change, even one based partially on the same training positions and partially on search with same eval. Older hce versions with just certain terms added and factors tweaked showed an extra high draw % playing against previous version, and this one doesn't show that. I think eval definitely main factor in how an engine plays.

On the plus side
  • I estimate it's about 40 elo stronger in standard chess than 2.4
  • Can beat Stockfish 8 in 2-moves book matches by a few elo on my computer.
  • The play based on win percentages does feel more human-like to me.
On the minus side
  • requires AVX2 for strongest play
  • struggles in Chess960 variant (can't recommend it over 2.4)
  • can take longer to close out games. Probably from valuing sure wins so high. (Some day I may see if I can train it try to close out as aggressively as possible.)
I think it's of some interest to have a neural net program that is not standard NNUE and not based on it in any way. (Although it's clearly much weaker than any stockfish NNUEs, and I'm not sure how much is based on my lack of computer resources for training, and how much is from not being the best possible architecture or training process.)

At this point the idea of working more to make it stronger sounds too tedious so I'm releasing it, but if the past is a guide I expect eventually I will start experimenting again then make enough progress to make another version.
in the Net PATH, can you put nets from stockfish?

Re: SlowChess Blitz Classic 2.0

Posted: Mon Jan 11, 2021 9:59 am
by jonkr
Q: in the Net PATH, can you put nets from stockfish?

A: No, the current nets and code are unrelated to NNUE. I meant to comment that out before release. I added it so I could use it to test different nets when developing, but there isn't any way for people to make compatible nets or any other net options available right now.

There is some chance I might try to add NNUE support to my own code in future, I've been stubbornly ignoring NNUE but it does sound kinda interesting to learn the exact structure and add support in my own neural net code as option.

Udpate On FRC play :

I ran some more testing and in FRC 2.5 was weaker than 2.4 even with AVX. (Although standard it was still 40+ elo stronger, really shows how specific neural nets can be.)