Velvet Chess Engine

Questions and comments related to CCRL testing study
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Velvet Chess Engine

Post by mhonert »

Hi everyone,

I developed a new chess engine based upon my previous engine Wasabi.
It should have similar playing strength, but offers a couple improvements:
  • Windows 7 support
  • Native executables (i.e. easy to configure in chess GUIs)
  • Support for stopping ongoing searches (go infinite ... stop)
  • Logs more UCI infos during search
Here are some basic infos about the engine: It would be great, if you could test my new engine.

In the future I will focus development on Velvet instead of Wasabi, due to the technical limitations.

Best regards,
Martin
User avatar
Gabor Szots
Posts: 12849
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: Velvet Chess Engine

Post by Gabor Szots »

mhonert wrote: Mon Aug 10, 2020 7:06 pm Hi everyone,

I developed a new chess engine based upon my previous engine Wasabi.
It should have similar playing strength, but offers a couple improvements:
  • Windows 7 support
  • Native executables (i.e. easy to configure in chess GUIs)
  • Support for stopping ongoing searches (go infinite ... stop)
  • Logs more UCI infos during search
Here are some basic infos about the engine: It would be great, if you could test my new engine.

In the future I will focus development on Velvet instead of Wasabi, due to the technical limitations.

Best regards,
Martin
Hi Martin,

A pity I did not know this earlier. I have just tested Wasabi 1.5.0 and was about to play some more games with it in order to narrow its error margins. Now I think I'll change my mind and test Velvet instead.
User avatar
Graham Banks
Posts: 26916
Joined: Sun Dec 18, 2005 5:47 pm
Sign-up code: 0
Location: Auckland, NZ

Re: Velvet Chess Engine

Post by Graham Banks »

Thanks, Martin.
A non-popcount exe would be useful as well.
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Gabor Szots wrote: Mon Aug 10, 2020 7:44 pm A pity I did not know this earlier. I have just tested Wasabi 1.5.0 and was about to play some more games with it in order to narrow its error margins. Now I think I'll change my mind and test Velvet instead.
Sorry, I did not expect to finish the first version of Velvet so soon.
Graham Banks wrote: Mon Aug 10, 2020 11:37 pm Thanks, Martin.
A non-popcount exe would be useful as well.
Thanks for the hint.
I just added a separate "popcnt" executable and removed popcnt from the "vintage" executable.
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Hi everyone,

yesterday I released a new version of Velvet (v1.1.0)
https://github.com/mhonert/velvet-chess ... tag/v1.1.0

Changes
  • Simplified and improved passed pawn evaluation
  • Replaced null-move pruning with a null-move reduction approach
  • Increased (theoretical) maximum search depth
  • Replaced classical line attack generation with obstruction difference algorithm
  • Improved and optimized tuning tool
  • Re-tuned all evaluation parameters with a set of 7 million test positions from self-play games
  • Bonus for rooks on (half) open files
  • Improved move sorting
  • Improved mobility evaluation
  • Improved king safety evaluation
I estimate the strength to be around or slightly above 2600 ELO.

Best regards,
Martin
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

I just noticed that the new version has already been tested for the latest CCRL update.
Thanks a lot :D

And the Elo improvement is even higher than expected!
For my estimation I measure the Elo difference in matches against the previous version and divide it by 2.
Usually this works quite well, but this time it was apparently much too low.
User avatar
Gabor Szots
Posts: 12849
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: Velvet Chess Engine

Post by Gabor Szots »

mhonert wrote: Wed Dec 30, 2020 12:54 pm I just noticed that the new version has already been tested for the latest CCRL update.
Thanks a lot :D

And the Elo improvement is even higher than expected!
For my estimation I measure the Elo difference in matches against the previous version and divide it by 2.
Usually this works quite well, but this time it was apparently much too low.
Owing to less optimistic expectations the selected pool of opponents was not optimal. I'm planning further tests so that the average strength of opponents will be closer to Velvet, also to reduce error margins. That may decrease the current ranking value.

But I never mind seeing an engine exceed expectations.

Keep up the good work.

Cheers,
Gabor
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Hello everyone,

yesterday I released Velvet v1.2.0.

The change log and executables for Windows and Linux can be found here:
https://github.com/mhonert/velvet-chess ... tag/v1.2.0

The estimated strength, mostly based upon self-play results against the previous version, is around 2750 Elo.

Best regards,
Martin
User avatar
Gabor Szots
Posts: 12849
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: Velvet Chess Engine

Post by Gabor Szots »

Noted. :wink:
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Hi everyone,

it's been a while since the last version.
In the meantime I have experimented with machine learning and the use of a neural network for chess evaluation.
For this I created two new tools, both written in Rust, to extract and label chess positions from Velvet self-play games and a trainer, which trains a neural network (NN) from these training sets.

The resulting NN is quite small and simple, but from my tests the new Velvet version seems to gain about 150 Elo.

As always, the change log and the executables for Windows and Linux can be found on the releases page:
https://github.com/mhonert/velvet-chess ... tag/v2.0.0

It would be great, if you could test this new version.

Thanks and best regards,
Martin
User avatar
Graham Banks
Posts: 26916
Joined: Sun Dec 18, 2005 5:47 pm
Sign-up code: 0
Location: Auckland, NZ

Re: Velvet Chess Engine

Post by Graham Banks »

Thanks for the new version. :thumbup:
User avatar
Gabor Szots
Posts: 12849
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: Velvet Chess Engine

Post by Gabor Szots »

mhonert wrote: Sat Jul 24, 2021 9:24 am Hi everyone,

it's been a while since the last version.
In the meantime I have experimented with machine learning and the use of a neural network for chess evaluation.
For this I created two new tools, both written in Rust, to extract and label chess positions from Velvet self-play games and a trainer, which trains a neural network (NN) from these training sets.

The resulting NN is quite small and simple, but from my tests the new Velvet version seems to gain about 150 Elo.

As always, the change log and the executables for Windows and Linux can be found on the releases page:
https://github.com/mhonert/velvet-chess ... tag/v2.0.0

It would be great, if you could test this new version.

Thanks and best regards,
Martin
Hi Martin,

Great news. I announced it at CCC.

I'm going to start a gauntlet for it as soon as I have a free core.
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Hi everyone,

I just released the new Velvet v3.0.0, which now supports multi-threaded search.

I also implemented some search improvements and optimizations and trained a new neural network using self-play games from Velvet v2 and pre-release versions of v3.
From my tests I estimate an Elo improvement of about 140 points.

The new release can be found here:
https://github.com/mhonert/velvet-chess ... tag/v3.0.0

Best regards,
Martin
User avatar
Gabor Szots
Posts: 12849
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: Velvet Chess Engine

Post by Gabor Szots »

mhonert wrote: Tue Oct 19, 2021 6:49 pm Hi everyone,

I just released the new Velvet v3.0.0, which now supports multi-threaded search.

I also implemented some search improvements and optimizations and trained a new neural network using self-play games from Velvet v2 and pre-release versions of v3.
From my tests I estimate an Elo improvement of about 140 points.

The new release can be found here:
https://github.com/mhonert/velvet-chess ... tag/v3.0.0

Best regards,
Martin
Thanks Martin. It's good you gave an estimate of strength, I did not expect such a big improvement and selected wrong opponents initially.
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Thanks again for testing :)
I just saw the updated CCRL Blitz results. 3058 Elo!
Two years ago, when I started again with chess programming, 3000 Elo seemed to be really far away.
User avatar
Graham Banks
Posts: 26916
Joined: Sun Dec 18, 2005 5:47 pm
Sign-up code: 0
Location: Auckland, NZ

Re: Velvet Chess Engine

Post by Graham Banks »

Still on my list to test for 40/15. Haven't forgotten. :thumbup:
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Hi,

I just released a new minor release v3.1.0.
It provides pondering support and a strength increase of around 50 Elo.

The new release is available here: https://github.com/mhonert/velvet-chess ... tag/v3.1.0

Best regards,
Martin
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Hi everyone,

I just released the new Velvet v3.2.0 with an estimated strength increase of 130 Elo.
I fixed a bug in the neural network trainer, which allowed me to train a bigger and stronger net.
The release also contains some performance improvements related to the neural network evaluation.

The new release can be found on GitHub:
https://github.com/mhonert/velvet-chess ... tag/v3.2.0

Best regards,
Martin
User avatar
Gabor Szots
Posts: 12849
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: Velvet Chess Engine

Post by Gabor Szots »

Hello Martin,

I have just started a gauntlet for your new version. Looking forward to its results.

Gabor
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Thanks again for testing :thumbup:
User avatar
Gabor Szots
Posts: 12849
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: Velvet Chess Engine

Post by Gabor Szots »

mhonert wrote: Wed Feb 16, 2022 5:39 pm Thanks again for testing :thumbup:
You're welcome.
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Hi everyone,

today I released Velvet v4.0.0:
https://github.com/mhonert/velvet-chess ... tag/v4.0.0

The main strength increase is for the FRC mode (around 100 self-play Elo).
But also regular chess was improved by around 40 Elo (in self-play).
Unfortunately, this time I did not have the time to test against a variety of opponents, so the real Elo gain might be lower.

Thanks again for testing previous versions of Velvet and for including it in the various tournaments!

Best regards
Martin
User avatar
Gabor Szots
Posts: 12849
Joined: Sat Dec 09, 2006 6:30 am
Sign-up code: 10159
Location: Szentendre, Hungary

Re: Velvet Chess Engine

Post by Gabor Szots »

mhonert wrote: Sun Jul 03, 2022 11:09 am Hi everyone,

today I released Velvet v4.0.0:
https://github.com/mhonert/velvet-chess ... tag/v4.0.0

The main strength increase is for the FRC mode (around 100 self-play Elo).
But also regular chess was improved by around 40 Elo (in self-play).
Unfortunately, this time I did not have the time to test against a variety of opponents, so the real Elo gain might be lower.

Thanks again for testing previous versions of Velvet and for including it in the various tournaments!

Best regards
Martin
Good news, Martin. I'm going to let Ray know.
User avatar
Graham Banks
Posts: 26916
Joined: Sun Dec 18, 2005 5:47 pm
Sign-up code: 0
Location: Auckland, NZ

Re: Velvet Chess Engine

Post by Graham Banks »

Velvet 4.0.0 64-bit 4CPU Gauntlet started in http://tlcv.net/16062
mhonert
Posts: 35
Joined: Fri May 22, 2020 10:43 am
Sign-up code: 10159

Re: Velvet Chess Engine

Post by mhonert »

Graham Banks wrote: Thu Aug 18, 2022 11:36 am Velvet 4.0.0 64-bit 4CPU Gauntlet started in http://tlcv.net/16062
Thank you :thumbup:

I also published a new release v4.1.0 today for the upcoming TCEC season.
It can be downloaded from the GitHub releases page: https://github.com/mhonert/velvet-chess ... tag/v4.1.0

The automated build jobs now also create some macOS executables in addition to the existing Windows and Linux binaries.
However I could only test the x86_64 ones, because I do not have access to an Apple Silicon (ARM) based Mac.
Post Reply