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.
- 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.)
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.