Zahak, a GoLang based chess engine

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

Moderators: hgm, Rebel, chrisw

amanjpro
Posts: 883
Joined: Sat Mar 13, 2021 1:47 am
Full name: Amanj Sherwany

Re: Zahak, a GoLang based chess engine

Post by amanjpro »

Archimedes wrote: Tue Mar 16, 2021 1:04 pm There was also a problem on Android. Version 0.1.0 works for DroidFish, but versions 0.2.0 and 0.2.1 didn't. The newest version works again with DroidFish.
Ah, actually I have never tested it on Android/DroidFish. Didn't even know that this exists :D
is there a tutorial for me to learn how to set an engine on DroidFish? I couldn't figure out
amanjpro
Posts: 883
Joined: Sat Mar 13, 2021 1:47 am
Full name: Amanj Sherwany

Re: Zahak, a GoLang based chess engine

Post by amanjpro »

amanjpro wrote: Tue Mar 16, 2021 4:30 pm
Archimedes wrote: Tue Mar 16, 2021 1:04 pm There was also a problem on Android. Version 0.1.0 works for DroidFish, but versions 0.2.0 and 0.2.1 didn't. The newest version works again with DroidFish.
Ah, actually I have never tested it on Android/DroidFish. Didn't even know that this exists :D
is there a tutorial for me to learn how to set an engine on DroidFish? I couldn't figure out
Nevermind, found this: https://github.com/peterosterlund2/droi ... ci-engines
amanjpro
Posts: 883
Joined: Sat Mar 13, 2021 1:47 am
Full name: Amanj Sherwany

Re: Zahak, a GoLang based chess engine

Post by amanjpro »

Released a new version, https://github.com/amanjpro/zahak/releases/tag/0.3.0
It fixes all the issues discussed here, and fixes a tiny little bug, which adds ~40 elo points
Archimedes
Posts: 135
Joined: Tue Mar 05, 2019 3:43 pm
Full name: Archimedes

Re: Zahak, a GoLang based chess engine

Post by Archimedes »

amanjpro wrote: Tue Mar 16, 2021 4:30 pm Ah, actually I have never tested it on Android/DroidFish. Didn't even know that this exists :D
is there a tutorial for me to learn how to set an engine on DroidFish? I couldn't figure out
http://hem.bredband.net/petero2b/droidfish/index.html

Zahak 0.3.0 for Android:
https://app.box.com/s/z3xec2rnlq779r2o0xt4hvcqu89funsi
Gabor Szots
Posts: 1362
Joined: Sat Jul 21, 2018 7:43 am
Location: Szentendre, Hungary
Full name: Gabor Szots

Re: Zahak, a GoLang based chess engine

Post by Gabor Szots »

amanjpro wrote: Wed Mar 17, 2021 2:22 am Released a new version, https://github.com/amanjpro/zahak/releases/tag/0.3.0
It fixes all the issues discussed here, and fixes a tiny little bug, which adds ~40 elo points
Thanks for the fix, Amanj. I still notice a small flaw, setting the hash to 256 MB the initial memory at the start of a game is 402 MB then it creeps slowly upwards to about 411 MB. No big deal.

EDIT: I watched another game, the memory was 396 MB initially while it was 400 when the game was finished. Seems to vary a bit, maybe it is due to the operating system.
Gabor Szots
CCRL testing group
tmokonen
Posts: 1296
Joined: Sun Mar 12, 2006 6:46 pm
Location: Kelowna
Full name: Tony Mokonen

Re: Zahak, a GoLang based chess engine

Post by tmokonen »

I got a virus warning from the zahak-windows-amd64-0.3.0.exe compile. I'm sure it's fine, as Windows Defender seems to be very finicky with programs written in Go for some reason, Counter being another example of a program whose compiles generate bogus antivirus warnings.

https://www.virustotal.com/gui/file/e5a ... /detection
amanjpro
Posts: 883
Joined: Sat Mar 13, 2021 1:47 am
Full name: Amanj Sherwany

Re: Zahak, a GoLang based chess engine

Post by amanjpro »

Gabor Szots wrote: Wed Mar 17, 2021 5:17 pm
amanjpro wrote: Wed Mar 17, 2021 2:22 am Released a new version, https://github.com/amanjpro/zahak/releases/tag/0.3.0
It fixes all the issues discussed here, and fixes a tiny little bug, which adds ~40 elo points
Thanks for the fix, Amanj. I still notice a small flaw, setting the hash to 256 MB the initial memory at the start of a game is 402 MB then it creeps slowly upwards to about 411 MB. No big deal.

EDIT: I watched another game, the memory was 396 MB initially while it was 400 when the game was finished. Seems to vary a bit, maybe it is due to the operating system.
Good to know, thanks for confirmation :)

Are you running a tournament?
Gabor Szots
Posts: 1362
Joined: Sat Jul 21, 2018 7:43 am
Location: Szentendre, Hungary
Full name: Gabor Szots

Re: Zahak, a GoLang based chess engine

Post by Gabor Szots »

amanjpro wrote: Wed Mar 17, 2021 6:03 pm Are you running a tournament?
I am. I started with 0.2.1 but now that 0.3.0 is out I switched. First stages show the difference is considerable.
Gabor Szots
CCRL testing group
amanjpro
Posts: 883
Joined: Sat Mar 13, 2021 1:47 am
Full name: Amanj Sherwany

Re: Zahak, a GoLang based chess engine

Post by amanjpro »

Gabor Szots wrote: Wed Mar 17, 2021 7:35 pm
amanjpro wrote: Wed Mar 17, 2021 6:03 pm Are you running a tournament?
I am. I started with 0.2.1 but now that 0.3.0 is out I switched. First stages show the difference is considerable.
Cool! excited to see how well Zahak will perform. I am working on King safety, but can't get it to boost the performance :D
amanjpro
Posts: 883
Joined: Sat Mar 13, 2021 1:47 am
Full name: Amanj Sherwany

Zahak 5.0, the last of its kind

Post by amanjpro »

I released Zahak 5.0, it is the last of its kind. I quote from my blog:

When I first started working on Zahak, my goal was to get a solid understanding on chess programming and improve my chess skills. I have always wanted to make Zahak understand how to play beautiful chess. I believe I have somewhat achieved that, and currently Zahak produces one of the most eventful games. Of course, the results are not always positive, but that is a price I am willing to pay.

I also wanted to make Zahak my training companion, and I don’t think I need an engine at Stockfish level for this matter, I will be perfectly happy if my trainer is as strong as the world champion. I believe any engine with the rating of 2700 (according to CCRL Blitz) or higher is sufficient for training purposes, so I made this rating my secondary goal.

I am happy to announce that Zahak 5.0, will most likely cross this barrier and should be just north 2700, which also means my quest for improving the strength of Zahak is near the end. But of course, that doesn’t mean I will be stopping working on it, it is just that I will not be seeking strength for the sake of making it stronger any more.

My future versions will probably be of the kind of making Zahak more entertaining, and adding more evaluation terms that might not add strength, but might add pleasure for us humans.

Things that I believe I will be working on next include:
  • Adding Multi-PV
  • Adding Lazy SMP
  • Porting Fathom to Go Lang, and adding Syzygy to Zahak
  • Adding an NN eval (maybe NNUE or something else), and training it with chess games from the romantic era, which probably makes the engine weaker but more human like
  • Probably more
Zahak 5.0, comes with the following added features/fixes:
  • SEE pruning in normal search
  • LMR and pruning tweaks
  • Re-doing move history heuristic
  • Adding evaluation terms for Bishop pair
  • Adding evaluation terms for Knight outposts
  • New and improved time management
  • Re-implemented mobility/aggressivity, so that different types of pieces are treated differently
  • Pawnhash
  • Fixing various bugs in search
To download Zahak 5.0, please visit here