Sachy by Martin Macok retouched for CuteChess

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

Moderators: hgm, Rebel, chrisw

User avatar
Roland Chastain
Posts: 640
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Sachy by Martin Macok retouched for CuteChess

Post by Roland Chastain »

Hello!

I retouched Martin Macok's XBoard engine for compatibility with CuteChess. Maybe it will interest someone. It's a nice little program, neither too strong nor too weak, according to my personal criteria of course. :)

Code: Select all

  15 Iota 0.1               586   88   91    56   35%   753   23% 
  16 TuxedoCat 0.0.2        569  129  153    32   16%   936    6% 
  17 Moustique 0.3          540  101  104    48   30%   804   19% 
  18 Hippocampe 0.4.2       520  124  128    32   34%   709    6% 
  19 Moustique 0.3 32-bit   513  182  169    16   41%   729   19% 
  20 Sachy 0.2.02           436  162  162    16   31%   695   25% 
  21 Sachy 0.2.01           387  140  141    24   44%   469   13% 
  22 Alouette 0.1.3         353   54   53   160   46%   463   26% 
  23 Durandal 0.0.7         337   56   55   116   60%   261   41% 
  24 NEG 1.3                317   94   99    64   25%   624   13% 
Since I use it, I don't remember that it ever crashed or played an illegal move, which is a rare quality in this category of engines. There was just that problem of the missing promotion character, which is solved now.

The package includes a Linux binary. I don't have under the hand a Windows machine with a C compiler. It would be nice if someone could compile and test the program on Windows.

Thanks to Martin Sedlák who helped me to start the translation of identifiers. (I was forgetting to say that I partially translated the source code to english.)

Download: sachy.zip

Regards.

Roland
Qui trop embrasse mal étreint.
User avatar
Roland Chastain
Posts: 640
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: Sachy by Martin Macok retouched for CuteChess

Post by Roland Chastain »

Oops! There is a bug.

Code: Select all

Finished game 17 (Sachy 0.2.02 vs Minimax-II 0.0.1): 0-1 {White makes an illegal move: a4b3q}
I try to fix it. Sorry for the noise. :oops:
Qui trop embrasse mal étreint.
User avatar
Roland Chastain
Posts: 640
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: Sachy by Martin Macok retouched for CuteChess

Post by Roland Chastain »

Roland Chastain wrote: Fri Oct 23, 2020 2:15 pm I try to fix it.
Done. Files updated.
Qui trop embrasse mal étreint.
User avatar
Roland Chastain
Posts: 640
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Sachy 0.2.03

Post by Roland Chastain »

Hello!

A new revision of Sachy is available.

Code: Select all

### v0.2.03

* Improved protocol management
* New Makefile which allows to choose between 32-bit and 64-bit compilation (1)
* Made a faster version of the `MakeMove` function
* Minimal thinking output for WinBoard/XBoard
* Create log files

(1) Type `make sachy32` or `make sachy64`.
The faster move generation seems to make 0.2.03 very slightly stronger (?).

Code: Select all

  22 Moustique 0.3          517   71   75    96   24%   811   17% 
  23 Sachy 0.2.03 32-bit    514   71   68    76   67%   371   24% 
  24 Sachy 0.2.03           477   50   49   164   55%   434   23% 
  25 Sachy 0.2.02           463   48   47   168   60%   383   28% 
  26 Alouette 0.1.3         398   42   42   248   52%   441   30% 
  27 Durandal 0.0.7         361   32   31   416   67%   225   33% 
  28 Sachy 0.2.01           353   84   87    56   38%   478   18% 
  29 NEG 1.3                327   46   44   232   61%   278   25% 
The gap between 0.2.01 and 0.2.02 comes from the fact that I didn't removed games where 0.2.01 lost because of the missing promotion symbol.

I included a 32-bit Windows binary, but not had time to test it.

Happy feast to those for whom this day is a feast. :wink:

Best regards.

Roland
Qui trop embrasse mal étreint.
Carlos777
Posts: 1737
Joined: Sun Dec 13, 2009 6:09 pm

Re: Sachy 0.2.03

Post by Carlos777 »

Hi Roland,

I like to test all kind of engines and that includes the low ELO engines. I downloaded your modified version of Sachy, but I can't make it work under Winboard 4.6.2 (OS: W10 64bits.) Is there an extra command line needed for Sachy to work?

I usually do engine vs engine tests with a TC of 1'+1" and ponder=off

Best regards,
Carlos

PS: I sent you a PM, please check it out.
Roland Chastain wrote: Sun Nov 01, 2020 12:48 pm Hello!

A new revision of Sachy is available.

Code: Select all

### v0.2.03

* Improved protocol management
* New Makefile which allows to choose between 32-bit and 64-bit compilation (1)
* Made a faster version of the `MakeMove` function
* Minimal thinking output for WinBoard/XBoard
* Create log files

(1) Type `make sachy32` or `make sachy64`.
The faster move generation seems to make 0.2.03 very slightly stronger (?).

Code: Select all

  22 Moustique 0.3          517   71   75    96   24%   811   17% 
  23 Sachy 0.2.03 32-bit    514   71   68    76   67%   371   24% 
  24 Sachy 0.2.03           477   50   49   164   55%   434   23% 
  25 Sachy 0.2.02           463   48   47   168   60%   383   28% 
  26 Alouette 0.1.3         398   42   42   248   52%   441   30% 
  27 Durandal 0.0.7         361   32   31   416   67%   225   33% 
  28 Sachy 0.2.01           353   84   87    56   38%   478   18% 
  29 NEG 1.3                327   46   44   232   61%   278   25% 
The gap between 0.2.01 and 0.2.02 comes from the fact that I didn't removed games where 0.2.01 lost because of the missing promotion symbol.

I included a 32-bit Windows binary, but not had time to test it.

Happy feast to those for whom this day is a feast. :wink:

Best regards.

Roland
User avatar
Roland Chastain
Posts: 640
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: Sachy by Martin Macok retouched for CuteChess

Post by Roland Chastain »

I created a GitHub repository for Sachy:
https://github.com/rchastain/sachy

@Carlos777
Thank you for your message. I will a test on Windows to see what happens.

Regards.

Roland
Qui trop embrasse mal étreint.
User avatar
Roland Chastain
Posts: 640
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: Sachy by Martin Macok retouched for CuteChess

Post by Roland Chastain »

Some news from Sachy. I discovered that it has a bad time management: it spends too much time on the first moves, and after that, when the time is almost over, it starts to play instantly very bad moves. I tried a new formula which is far from perfect but already better. Look at this little gauntlet tournament!

Code: Select all

Rank Name                          Elo     +/-   Games   Score    Draw 
   0 Sachy 0.2.0.4                 597     nan      16   96.9%    6.3% 
   1 Durandal 0.0.7               -338     nan       4   12.5%   25.0% 
   2 Sachy 0.2.0.3                -inf     nan       4    0.0%    0.0% 
   3 Sachy 0.2.0.2                -inf     nan       4    0.0%    0.0% 
   4 Ram 2.0                      -inf     nan       4    0.0%    0.0% 
Tomorrow I will test it under Windows.
Qui trop embrasse mal étreint.
Carlos777
Posts: 1737
Joined: Sun Dec 13, 2009 6:09 pm

Re: Sachy by Martin Macok retouched for CuteChess

Post by Carlos777 »

Roland Chastain wrote: Mon Mar 08, 2021 9:13 pm Some news from Sachy. I discovered that it has a bad time management: it spends too much time on the first moves, and after that, when the time is almost over, it starts to play instantly very bad moves. I tried a new formula which is far from perfect but already better. Look at this little gauntlet tournament!

Code: Select all

Rank Name                          Elo     +/-   Games   Score    Draw 
   0 Sachy 0.2.0.4                 597     nan      16   96.9%    6.3% 
   1 Durandal 0.0.7               -338     nan       4   12.5%   25.0% 
   2 Sachy 0.2.0.3                -inf     nan       4    0.0%    0.0% 
   3 Sachy 0.2.0.2                -inf     nan       4    0.0%    0.0% 
   4 Ram 2.0                      -inf     nan       4    0.0%    0.0% 
Tomorrow I will test it under Windows.
Good news!
User avatar
Roland Chastain
Posts: 640
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Sachy 0.2.0.4

Post by Roland Chastain »

Carlos777 wrote: Mon Mar 08, 2021 9:30 pm Good news!
I made a quick test on Windows: the engine works. While I was working on time management, I believe I understood why you couldn't get it to work: I believe it's because of the time control that you used. For now Sachy only supports classical TC (not incremental). Maybe I will change that in the next version.

I made a new release: Sachy 0.2.0.4

Not yet made a Windows 64-bit binary, only a 32-bit. (I will try later.)

If you wish to compile yourself on Windows, you have to use the original Makefile (that I renamed Makefile1):

Code: Select all

make -f Makefile1
Regards.

Roland
Qui trop embrasse mal étreint.
User avatar
Guenther
Posts: 4610
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: Sachy 0.2.0.4

Post by Guenther »

Roland Chastain wrote: Tue Mar 09, 2021 7:03 pm
Carlos777 wrote: Mon Mar 08, 2021 9:30 pm Good news!
I made a quick test on Windows: the engine works. While I was working on time management, I believe I understood why you couldn't get it to work: I believe it's because of the time control that you used. For now Sachy only supports classical TC (not incremental). Maybe I will change that in the next version.

I made a new release: Sachy 0.2.0.4

Not yet made a Windows 64-bit binary, only a 32-bit. (I will try later.)

If you wish to compile yourself on Windows, you have to use the original Makefile (that I renamed Makefile1):

Code: Select all

make -f Makefile1
Regards.

Roland
Thanks!
I had zero problems with the current makefile (with march=native) in msys2 + gcc

Code: Select all

Guenther Simon@CAPPUCCINO MINGW64 ~/sachy
$ make sachy64
gcc -Wall -O3 -march=native  -m64 -c -o main.o64 main.c
gcc -Wall -O3 -march=native  -m64 -c -o inic.o64 inic.c
gcc -Wall -O3 -march=native  -m64 -c -o interf.o64 interf.c
gcc -Wall -O3 -march=native  -m64 -c -o movegen.o64 movegen.c
gcc -Wall -O3 -march=native  -m64 -c -o value.o64 value.c
gcc -Wall -O3 -march=native  -m64 -c -o rules.o64 rules.c
gcc -Wall -O3 -march=native  -m64 -c -o makemove.o64 makemove.c
gcc -Wall -O3 -march=native  -m64 -c -o search.o64 search.c
gcc -Wall -O3 -march=native  -m64 -c -o test.o64 test.c
gcc -Wall -O3 -march=native  -m64 -c -o sort.o64 sort.c
gcc -Wall -O3 -march=native  -m64 -c -o book.o64 book.c
gcc  -m64  -o sachy64 main.o64 inic.o64 interf.o64 movegen.o64 value.o64 rules.o64 makemove.o64 search.o64 test.o64 sort.o64 book.o64
https://rwbc-chess.de

trollwatch:
Talkchess nowadays is a joke - it is full of trolls/idiots/people stuck in the pleistocene > 80% of the posts fall into this category...