New engine releases & news 2021

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

Moderators: hgm, Rebel, chrisw

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

Re: New engine releases & news 2021

Post by Guenther »

CMCanavessi wrote: Sun Mar 21, 2021 12:05 am
Gabor Szots wrote: Sat Mar 20, 2021 8:11 am
Frank Quisinsky wrote: Sat Mar 20, 2021 8:01 am Hi there,

Lucas is working on Demolito:
https://ci.appveyor.com/project/lucasar ... /artifacts

Last version from March 19th, 2021!
FYI, a file comparison between version 10-10-2020 and this one shows 13 different bytes.
Last commit was December 24
No, you looked in the wrong branch.
Appveyor creates new builds from any branch.
https://github.com/lucasart/Demolito/tree/ocb3
(very tiny changes, but at least a new sign of life)
https://rwbc-chess.de

trollwatch:
Chessqueen + chessica + AlexChess + Eduard + Sylwy
User avatar
mvanthoor
Posts: 1784
Joined: Wed Jul 03, 2019 4:42 pm
Location: Netherlands
Full name: Marcel Vanthoor

Re: New engine releases & news 2021

Post by mvanthoor »

Carlos777 brought it to my attention that even the 64-bit-old compile wasn't able to run on some very old 64-bit AMD CPU's; therefore I've added 64-bit-generic to the Rustic Alpha 2 binaries in the archive on Github. This should cover CPU's such as the early AMD Athlon64 and Phenom and possibly also the 1st Opterons.() I suspect I there won't be anyone around who will test Rustic on an 18 year old AMD CPU however. Still, if the 64-bit-generic compilation runs on your system, it will be 30-35% faster than the 32-bit-generic one.

I don't think I'm going to update past releases of Rustic though. If I'd do that, I'll have to update 15 or 20 releases by next year. I assume that people will be using the latest release, except for testing against a new engine.
Author of Rustic, an engine written in Rust.
Releases | Code | Docs | Progress | CCRL
User avatar
Guenther
Posts: 4605
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: New engine releases & news 2021

Post by Guenther »

https://rwbc-chess.de

trollwatch:
Chessqueen + chessica + AlexChess + Eduard + Sylwy
Richard Allbert
Posts: 792
Joined: Wed Jul 19, 2006 9:58 am

Re: New engine releases & news 2021

Post by Richard Allbert »

amanjp wrote: While Vice didn't make any progress. My hunch is the endgame PSQT for the king, Vice doesn't have it IIRC. Interestingly in a much shallower depth, Zahak saw the mate way ahead of Vice. Both of them don't have endgame TB.
Vice has a bug in null move pruning which causes some issues, especially mates, this might have affected the game bit.
amanjpro
Posts: 883
Joined: Sat Mar 13, 2021 1:47 am
Full name: Amanj Sherwany

Re: New engine releases & news 2021

Post by amanjpro »

Today I tagged version 1.0.0-alpha-1 of Zahak. This brings in a sweet 100 elo gain over the last stable (eval tweaks only) and adds more buffer to the time management (to make it play nicely under the Arena):

https://github.com/amanjpro/zahak/relea ... .0-alpha-1

Code: Select all

Rank Name                          Elo     +/-   Games    Wins  Losses   Draws   Points   WWins  WLoss.  WDraws   BWins  BLoss.  BDraws 
   0 zahak_next                     79      21     900     467     266     167    550.5     237     132      81     230     134      86 
   1 zahak-darwin-amd64-latest     -35      34     300      93     123      84    135.0      44      65      41      49      58      43 
   2 vice                          -75      37     300      94     158      48    118.0      51      76      23      43      82      25 
   3 rustic                       -130      39     300      79     186      35     96.5      39      89      22      40      97      13 

Finished match
Gabor Szots
Posts: 1362
Joined: Sat Jul 21, 2018 7:43 am
Location: Szentendre, Hungary
Full name: Gabor Szots

Re: New engine releases & news 2021

Post by Gabor Szots »

amanjpro wrote: Wed Mar 24, 2021 2:08 pm Today I tagged version 1.0.0-alpha-1 of Zahak. This brings in a sweet 100 elo gain over the last stable (eval tweaks only) and adds more buffer to the time management (to make it play nicely under the Arena):
Fine. And the space in our lists might be just enough to accommodate your engine. :wink:
Gabor Szots
CCRL testing group
User avatar
mvanthoor
Posts: 1784
Joined: Wed Jul 03, 2019 4:42 pm
Location: Netherlands
Full name: Marcel Vanthoor

Re: New engine releases & news 2021

Post by mvanthoor »

amanjpro wrote: Wed Mar 24, 2021 2:08 pm Today I tagged version 1.0.0-alpha-1 of Zahak. This brings in a sweet 100 elo gain over the last stable (eval tweaks only) and adds more buffer to the time management (to make it play nicely under the Arena):

https://github.com/amanjpro/zahak/relea ... .0-alpha-1

Code: Select all

Rank Name                          Elo     +/-   Games    Wins  Losses   Draws   Points   WWins  WLoss.  WDraws   BWins  BLoss.  BDraws 
   0 zahak_next                     79      21     900     467     266     167    550.5     237     132      81     230     134      86 
   1 zahak-darwin-amd64-latest     -35      34     300      93     123      84    135.0      44      65      41      49      58      43 
   2 vice                          -75      37     300      94     158      48    118.0      51      76      23      43      82      25 
   3 rustic                       -130      39     300      79     186      35     96.5      39      89      22      40      97      13 

Finished match
Rustic is only 55 Elo behind Vice? That would mean a rating of around 1985 CCRL for Rustic, which I think would be a bit high. You opened an issue with regard to Mac binaries; have you managed to compile Rustic yourself on the Mac? I'm looking into options of creating Mac binaries, but I can't test them myself because I don't have a Mac. And a virtual machine isn't really an option without hacking.

PS: I'm of the opinion that Zahak needs too many features to reach the rating that it currently has. This suggests the engine is not getting its full worth out of each feature. You may want to investigate that.
Author of Rustic, an engine written in Rust.
Releases | Code | Docs | Progress | CCRL
amanjpro
Posts: 883
Joined: Sat Mar 13, 2021 1:47 am
Full name: Amanj Sherwany

Re: New engine releases & news 2021

Post by amanjpro »

mvanthoor wrote: Wed Mar 24, 2021 3:01 pm
amanjpro wrote: Wed Mar 24, 2021 2:08 pm Today I tagged version 1.0.0-alpha-1 of Zahak. This brings in a sweet 100 elo gain over the last stable (eval tweaks only) and adds more buffer to the time management (to make it play nicely under the Arena):

https://github.com/amanjpro/zahak/relea ... .0-alpha-1

Code: Select all

Rank Name                          Elo     +/-   Games    Wins  Losses   Draws   Points   WWins  WLoss.  WDraws   BWins  BLoss.  BDraws 
   0 zahak_next                     79      21     900     467     266     167    550.5     237     132      81     230     134      86 
   1 zahak-darwin-amd64-latest     -35      34     300      93     123      84    135.0      44      65      41      49      58      43 
   2 vice                          -75      37     300      94     158      48    118.0      51      76      23      43      82      25 
   3 rustic                       -130      39     300      79     186      35     96.5      39      89      22      40      97      13 

Finished match
Rustic is only 55 Elo behind Vice? That would mean a rating of around 1985 CCRL for Rustic, which I think would be a bit high. You opened an issue with regard to Mac binaries; have you managed to compile Rustic yourself on the Mac? I'm looking into options of creating Mac binaries, but I can't test them myself because I don't have a Mac. And a virtual machine isn't really an option without hacking.

PS: I'm of the opinion that Zahak needs too many features to reach the rating that it currently has. This suggests the engine is not getting its full worth out of each feature. You may want to investigate that.
I did compile it for Mac, and it was painless (after all Rust makes it easy).

As for Rustic's rating vs Vice, I don't think you can read it like that. All you can say is that Rustic performed better than expected against Zahak, or Vice performed worst than expected. After all Vice never played Rustic in this tournament. I have the feeling that Rustic's simple approach is very good at spotting stupidity (good for detecting bugs in my engine), but its strength is not on par with the others. Somehow when I do a stupid change, Rustic is the first to catch it.

As for Zahak, I agree with you. I believe my Futility Pruning (almost sure for the Extended, but uncertain for Reverse) I am hurting the strength more than helping it
User avatar
mvanthoor
Posts: 1784
Joined: Wed Jul 03, 2019 4:42 pm
Location: Netherlands
Full name: Marcel Vanthoor

Re: New engine releases & news 2021

Post by mvanthoor »

amanjpro wrote: Wed Mar 24, 2021 3:33 pm As for Rustic's rating vs Vice, I don't think you can read it like that. All you can say is that Rustic performed better than expected against Zahak, or Vice performed worst than expected. After all Vice never played Rustic in this tournament. I have the feeling that Rustic's simple approach is very good at spotting stupidity (good for detecting bugs in my engine), but its strength is not on par with the others. Somehow when I do a stupid change, Rustic is the first to catch it.
Rustic doesn't have a particularly simple approach. What do you mean with "When I do a stupid change"?

I have noticed that Rustic is tactically stronger than most engines in its rating range; probably because it is faster, and can often see 1-2 ply deeper. It has a simple evaluation, but as I'm an OK chess player myself, I think my PST's are better than the general PST's floating around on the internet; so even though the evaluation is simple, it is not entirely stupid. The PST's do include some positional and strategical knowledge, to some extent. Tuning will make this better, probably.

Even so, only un-tuned PST's, even if they're fairly good, can't match a 'real' evaluation, so Rustic is positionally weaker than other engines in its rating range. I can see this clearly if there's a tactical position on the board: sometimes Rustic just makes the board explode, and ends with a pawn up. If there's nothing tactical to do, it shuffles around quite aimlessly, often botching positions against engines that have at least some evaluation.

That'll improve in time.
As for Zahak, I agree with you. I believe my Futility Pruning (almost sure for the Extended, but uncertain for Reverse) I am hurting the strength more than helping it
As said, Rustic isn't really simple per se, but it also doesn't have a lot of features yet. What I do know, is that the features it does have are (probably) bug-free. While testing the version with the TT, it did gain 105 Elo, but I wasn't satisfied because I thought, according to tests with other engines, the gain should be bigger; and in the end I found a bug (saving the wrong move in the TT in the beta-cutoff) that, after fixing it, gained another 60 Elo.

It is very easy to add a feature in the engine, see that it gains 50 Elo, and call it done... while the feature _could_ have gained 75 or 100 Elo. Do that a few times, and your engine will become stronger, but not as strong as it could have been. If you're particularly unlucky, a feature, if it has a serious bug, could even make the engine weaker.
Author of Rustic, an engine written in Rust.
Releases | Code | Docs | Progress | CCRL
amanjpro
Posts: 883
Joined: Sat Mar 13, 2021 1:47 am
Full name: Amanj Sherwany

Re: New engine releases & news 2021

Post by amanjpro »

mvanthoor wrote: Wed Mar 24, 2021 3:54 pm
Rustic doesn't have a particularly simple approach. What do you mean with "When I do a stupid change"?
I mean, when I introduce a bug in Zahak, Rustic catches it fast. As it doesn't have much pruning, it is strong tactically and good at catching my stupidities.
mvanthoor wrote: Wed Mar 24, 2021 3:54 pm
I have noticed that Rustic is tactically stronger than most engines in its rating range; probably because it is faster, and can often see 1-2 ply deeper. It has a simple evaluation, but as I'm an OK chess player myself, I think my PST's are better than the general PST's floating around on the internet; so even though the evaluation is simple, it is not entirely stupid. The PST's do include some positional and strategical knowledge, to some extent. Tuning will make this better, probably.
I highly doubt it is because of the PSTs, after all PST only teaches the AI where to put pieces, not what to do with them. Rustic is good, because it does close to no pruning. Some tactical strength fades away when you introduce lots of pruning/reductions. It is a balance that is not super easy to find.
mvanthoor wrote: Wed Mar 24, 2021 3:54 pm
As said, Rustic isn't really simple per se, but it also doesn't have a lot of features yet. What I do know, is that the features it does have are (probably) bug-free. While testing the version with the TT, it did gain 105 Elo, but I wasn't satisfied because I thought, according to tests with other engines, the gain should be bigger; and in the end I found a bug (saving the wrong move in the TT in the beta-cutoff) that, after fixing it, gained another 60 Elo.

It is very easy to add a feature in the engine, see that it gains 50 Elo, and call it done... while the feature _could_ have gained 75 or 100 Elo. Do that a few times, and your engine will become stronger, but not as strong as it could have been. If you're particularly unlucky, a feature, if it has a serious bug, could even make the engine weaker.
I looked into Rustic and compared it feature wise to Zahak, while I have way more search functions, I don't have multi-stage move generations and magic bitboards, that puts Zahak at a huge disadvantage. I wrote the entire move generation first, then read the literature, my stupidity. Also, Go vs Rust is a huge advantage for Rustic too.

I tuned the eval function almost 100% from scratch, I picked PTSQ from somewhere, but touched it heavily that it doesn't resemble the original anymore. I wanted the engine to play more or less like me ;)