New engine releases & news H1 2022

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

Moderator: Ras

Guenther
Posts: 4718
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: New engine releases & news H1 2022

Post by Guenther »

https://rwbc-chess.de

[Trolls n'existent pas...]
sdchess2
Posts: 1
Joined: Thu Sep 09, 2021 4:57 pm
Full name: Sergey Kudryavtsev

Re: New engine releases & news H1 2022

Post by sdchess2 »

New version of Uralochka engine 3.36c (Windiws 64bit & Linux 64bit)!
+ 60-70 points!
http://www.sdchess.ru/download_engines.htm
Guenther
Posts: 4718
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: New engine releases & news H1 2022

Post by Guenther »

sdchess2 wrote: Sat Jun 04, 2022 8:09 am New version of Uralochka engine 3.36c (Windiws 64bit & Linux 64bit)!
+ 60-70 points!
http://www.sdchess.ru/download_engines.htm
3.36c win is still linked to the previous version in downloads. (copy/paste error)

Can you tell the author to compile the sse2 version w/o popcount otherwise it's quite useless for old hardware? (and sse2 is intended for that)

Do you have infos about the development of the NN and if the source will be available as in previous versions?

Thanks.
https://rwbc-chess.de

[Trolls n'existent pas...]
User avatar
Sylwy
Posts: 4810
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: New engine releases & news H1 2022

Post by Sylwy »

Guenther wrote: Sat Jun 04, 2022 8:27 am
3.36c win is still linked to the previous version in downloads. (copy/paste error)
The correct version is here:

http://sdchess.ru/engines/Uralochka3.36c-win64.zip
Guenther
Posts: 4718
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: New engine releases & news H1 2022

Post by Guenther »

Sylwy wrote: Sat Jun 04, 2022 9:22 am
Guenther wrote: Sat Jun 04, 2022 8:27 am
3.36c win is still linked to the previous version in downloads. (copy/paste error)
The correct version is here:

http://sdchess.ru/engines/Uralochka3.36c-win64.zip
Uhm, I know this ofc, the message was for SDChess to correct their link...
https://rwbc-chess.de

[Trolls n'existent pas...]
Frank Quisinsky
Posts: 6888
Joined: Wed Nov 18, 2009 7:16 pm
Location: Gutweiler, Germany
Full name: Frank Quisinsky

Re: New engine releases & news H1 2022

Post by Frank Quisinsky »

Hi there,

it seems Uralochka is playing very aggressive chess.
Started yesterday in the late evening my "run-6" with version 3.35a and looking in the games.

A very nice new engine.
Thanks to the programmer!

I updated to version 3.36c for minutes!

Note for SD-Chess:
SOS for Arena are special versions for Arena Chess GUI !!!!
I try to get this program many years before.
It was really an event that Rudolf (one of the three UCI programmers also) sent it to me with the hint:
Thanks for your work around Arena Frank, I am very happy if SOS will be available with Arena.

And after SOS was the main engine for Arena with the name: SOS for Arena!
The absolute wish engine at this time as main engine for Arena Chess GUI

Now I saw that the enigne is available on SD-Chess.
Not very nice and I am to 100% sure not in the interest from Rudolf Huber.
Maybe the reason that no newer version's are available.

If people from SD-Chess read that ...
Please delete the program from this site.


Thank you!

Best
Frank
FreemanZlat
Posts: 17
Joined: Mon May 30, 2022 10:50 am
Full name: Ivan Maklyakov

Re: New engine releases & news H1 2022

Post by FreemanZlat »

Hi all!
I am Ivan Maklyakov, author of Uralochka.

Sorry for the long silence. I was waiting for an account registration confirmation.

A few words about my engine.

I started project about a year ago. At first it was a simple engine with a 0x88 generator, alpha-beta search and a minimal evaluation function.
Later, bitboards were added instead of 0x88, evaluation was complicated, etc. I also used the Texel method to tune the parameters.
As a result, I got an engine with a rating about 3050 (CCRL scale).

Two months ago I started studying neural networks.
First, there was an unsuccessful attempt to train the network for additional evaluation of the pawn structure.
Further, after several attempts, I implemented a neural network that replaces the evaluation function. This neural network is similar to the NNUE HalfKP, but as I understood it and was able to implement. And now I'm working on improving it and iterative training (the current version is trained using the engine with the previous version). In the early stages, each such iteration gives a good increase in strength.

There is nothing special about neural network. I implemented the neural network myself (but I had problems with vectorization of the output layer calculations. I had to look at how it was implemented in other engines, mainly Koivisto). The network architecture is similar to HalfKP, but with one hidden layer and 12 types of pieces (instead of 10 like in HalfKP). The king square is mapped to a smaller size king area via table.
To generate dataset, engine plays with itself with a depth 5-7 and random moves for the first N plyes. Size of dataset is 500-1200 million positions. Neural network is trained by a Python script using Keras framework.

The engine uses external libraries:
- https://github.com/jdart1/Fathom - access to Syzygy endgame tables.
- https://github.com/graphitemaster/incbin - attaching a binary file to an executable file.
- https://github.com/rogersce/cnpy - saving datasets in NumPy format.

When writing the engine, I used information from:
- Engines Ethereal (https://github.com/AndyGrant/Ethereal) and Igel (https://github.com/vshcherbyna/igel) - looked at the search procedure of modern engines (it is more difficult to understand the search in Stockfish).
- Stockfish engine (https://github.com/official-stockfish/S ... tree/tools) and training utility (https://github.com/glinscott/nnue-pytor ... cs/nnue.md) - looked at the principles of implementing a neural network and generating dataset for training.
- Koivisto engine (https://github.com/Luecx/Koivisto) - looked at the principle of using vector instructions for calculating the output layer of a neural network.

Thanks to the authors of these libraries and engines!

I did not plan to open the source codes yet. Because I'm embarrassed by the poor quality of the code. After refactoring, the sources will be open.

Here is an archive of all previous versions, including my own rating list and changelog.
https://drive.google.com/drive/folders/ ... sp=sharing
Guenther wrote: Sat Jun 04, 2022 8:27 am Can you tell the author to compile the sse2 version w/o popcount otherwise it's quite useless for old hardware? (and sse2 is intended for that)
I will add buld without popcnt in next version of Uralochka.
Luecx
Posts: 138
Joined: Thu Jun 18, 2020 9:20 pm
Full name: Finn Eggers

Re: New engine releases & news H1 2022

Post by Luecx »

FreemanZlat wrote: Sat Jun 04, 2022 10:25 am Hi all!
I am Ivan Maklyakov, author of Uralochka.

Sorry for the long silence. I was waiting for an account registration confirmation.

A few words about my engine.

I started project about a year ago. At first it was a simple engine with a 0x88 generator, alpha-beta search and a minimal evaluation function.
Later, bitboards were added instead of 0x88, evaluation was complicated, etc. I also used the Texel method to tune the parameters.
As a result, I got an engine with a rating about 3050 (CCRL scale).

Two months ago I started studying neural networks.
First, there was an unsuccessful attempt to train the network for additional evaluation of the pawn structure.
Further, after several attempts, I implemented a neural network that replaces the evaluation function. This neural network is similar to the NNUE HalfKP, but as I understood it and was able to implement. And now I'm working on improving it and iterative training (the current version is trained using the engine with the previous version). In the early stages, each such iteration gives a good increase in strength.

There is nothing special about neural network. I implemented the neural network myself (but I had problems with vectorization of the output layer calculations. I had to look at how it was implemented in other engines, mainly Koivisto). The network architecture is similar to HalfKP, but with one hidden layer and 12 types of pieces (instead of 10 like in HalfKP). The king square is mapped to a smaller size king area via table.
To generate dataset, engine plays with itself with a depth 5-7 and random moves for the first N plyes. Size of dataset is 500-1200 million positions. Neural network is trained by a Python script using Keras framework.

The engine uses external libraries:
- https://github.com/jdart1/Fathom - access to Syzygy endgame tables.
- https://github.com/graphitemaster/incbin - attaching a binary file to an executable file.
- https://github.com/rogersce/cnpy - saving datasets in NumPy format.

When writing the engine, I used information from:
- Engines Ethereal (https://github.com/AndyGrant/Ethereal) and Igel (https://github.com/vshcherbyna/igel) - looked at the search procedure of modern engines (it is more difficult to understand the search in Stockfish).
- Stockfish engine (https://github.com/official-stockfish/S ... tree/tools) and training utility (https://github.com/glinscott/nnue-pytor ... cs/nnue.md) - looked at the principles of implementing a neural network and generating dataset for training.
- Koivisto engine (https://github.com/Luecx/Koivisto) - looked at the principle of using vector instructions for calculating the output layer of a neural network.

Thanks to the authors of these libraries and engines!

I did not plan to open the source codes yet. Because I'm embarrassed by the poor quality of the code. After refactoring, the sources will be open.

Here is an archive of all previous versions, including my own rating list and changelog.
https://drive.google.com/drive/folders/ ... sp=sharing
Guenther wrote: Sat Jun 04, 2022 8:27 am Can you tell the author to compile the sse2 version w/o popcount otherwise it's quite useless for old hardware? (and sse2 is intended for that)
I will add buld without popcnt in next version of Uralochka.
If you need help with any of your code, feel free to join the Koivisto discord and you can also ask directly there :) I am sure we could help you with your avx code if you have specific questions. https://discord.gg/Sy7C29Pj
The ability to speak does not make you intelligent. https://github.com/Luecx/Koivisto

Image
User avatar
pohl4711
Posts: 2701
Joined: Sat Sep 03, 2011 7:25 am
Location: Berlin, Germany
Full name: Stefan Pohl

Re: New engine releases & news H1 2022

Post by pohl4711 »

sdchess2 wrote: Sat Jun 04, 2022 8:09 am New version of Uralochka engine 3.36c (Windiws 64bit & Linux 64bit)!
+ 60-70 points!
http://www.sdchess.ru/download_engines.htm
The bug (illegal PV-moves and instant loosing PV-moves) seems to be fixed. I will do a SPCC-ratinglist testrun, when the testrun of Minic 3.22 is finished.
Damir
Posts: 2873
Joined: Mon Feb 11, 2008 3:53 pm
Location: Denmark
Full name: Damir Desevac

Re: New engine releases & news H1 2022

Post by Damir »

FreemanZlat wrote: Sat Jun 04, 2022 10:25 am Hi all!
I am Ivan Maklyakov, author of Uralochka.

Sorry for the long silence. I was waiting for an account registration confirmation.

A few words about my engine.

I started project about a year ago. At first it was a simple engine with a 0x88 generator, alpha-beta search and a minimal evaluation function.
Later, bitboards were added instead of 0x88, evaluation was complicated, etc. I also used the Texel method to tune the parameters.
As a result, I got an engine with a rating about 3050 (CCRL scale).

Two months ago I started studying neural networks.
First, there was an unsuccessful attempt to train the network for additional evaluation of the pawn structure.
Further, after several attempts, I implemented a neural network that replaces the evaluation function. This neural network is similar to the NNUE HalfKP, but as I understood it and was able to implement. And now I'm working on improving it and iterative training (the current version is trained using the engine with the previous version). In the early stages, each such iteration gives a good increase in strength.

There is nothing special about neural network. I implemented the neural network myself (but I had problems with vectorization of the output layer calculations. I had to look at how it was implemented in other engines, mainly Koivisto). The network architecture is similar to HalfKP, but with one hidden layer and 12 types of pieces (instead of 10 like in HalfKP). The king square is mapped to a smaller size king area via table.
To generate dataset, engine plays with itself with a depth 5-7 and random moves for the first N plyes. Size of dataset is 500-1200 million positions. Neural network is trained by a Python script using Keras framework.

The engine uses external libraries:
- https://github.com/jdart1/Fathom - access to Syzygy endgame tables.
- https://github.com/graphitemaster/incbin - attaching a binary file to an executable file.
- https://github.com/rogersce/cnpy - saving datasets in NumPy format.

When writing the engine, I used information from:
- Engines Ethereal (https://github.com/AndyGrant/Ethereal) and Igel (https://github.com/vshcherbyna/igel) - looked at the search procedure of modern engines (it is more difficult to understand the search in Stockfish).
- Stockfish engine (https://github.com/official-stockfish/S ... tree/tools) and training utility (https://github.com/glinscott/nnue-pytor ... cs/nnue.md) - looked at the principles of implementing a neural network and generating dataset for training.
- Koivisto engine (https://github.com/Luecx/Koivisto) - looked at the principle of using vector instructions for calculating the output layer of a neural network.

Thanks to the authors of these libraries and engines!

I did not plan to open the source codes yet. Because I'm embarrassed by the poor quality of the code. After refactoring, the sources will be open.

Here is an archive of all previous versions, including my own rating list and changelog.
https://drive.google.com/drive/folders/ ... sp=sharing
Guenther wrote: Sat Jun 04, 2022 8:27 am Can you tell the author to compile the sse2 version w/o popcount otherwise it's quite useless for old hardware? (and sse2 is intended for that)
I will add buld without popcnt in next version of Uralochka.
Hello Mr Maklyakov

The avx2 compile of your engine is buggy... The engine instantly resigns the game already after 1 move, with message engine caused an exception..
I am using Fritz 18 GUI on my machine. My hardware is AMD 3990X 64 cores