Nemeton 1.7

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

Moderators: hgm, Harvey Williamson, bob

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Post Reply
Stan Arts
Posts: 179
Joined: Fri Feb 14, 2014 9:53 pm
Location: the Netherlands

Nemeton 1.7

Post by Stan Arts » Mon Jul 02, 2018 10:47 am

I updated the link in my signature to Nemeton 1.7.

Bugfix to stop it being unintentionally blind in simpler endings.
More aggressive pruning. Tried this before but with other changes it now actually kinda works.
More compact bits of code.
In Nemeton3D the queen and knight are improved as well as some usual uninteresting changes.

Three versions included. Single core Nemeton with source code. 2, 3 or 4 core NemetonSMP and Nemeton3D.

User avatar
Graham Banks
Posts: 32768
Joined: Sun Feb 26, 2006 9:52 am
Location: Auckland, NZ

Re: Nemeton 1.7

Post by Graham Banks » Mon Jul 02, 2018 8:28 pm

Thanks Stan.
Hopefully it will be the strongest Nemeton yet. :)
My email addresses:
gbanksnz at gmail.com
gbanksnz at yahoo.co.nz

tpoppins
Posts: 919
Joined: Tue Nov 24, 2015 8:11 pm
Location: upstate

Re: Nemeton 1.7

Post by tpoppins » Mon Jul 09, 2018 4:10 am

Nemeton doesn't seem to be compliant with the CECP move format spec. Thus as soon as it moves a pawn to the last rank the game is terminated due to an illegal move.



Eng-to-GUI comm from the end of the game:

Code: Select all

271.207: > time 7643
271.207: > otim 13335
271.207: > f6f5
271.239: < 2   2868   0       76         h8=Q fxe4 Qf6 dxc4 Qe7+ 
271.239: < 2   3025   0       123        exd5 Kd6 c5+ Kxd5 Rh8 Kxc5 
271.239: < 2   3156   0       158        cxd5 fxe4 h8=Q e3 Rxe3 
271.239: < 3   3016   0       276        cxd5 Kd6 h8=Q fxe4 Qd4 Kxd5 
271.239: < 3   29992  0       353        h8=Q fxe4 Rxe4 dxe4 Qe8+ Kd6 Rc6+ M4#
271.239: < 4   29994  0       599        h8=Q fxe4 Qg7+ Kd6 c5+ M3#
271.239: < 5   29994  0       1125       h8=Q fxe4 Qg7+ Kd6 c5+ M3#
271.239: < 6   29994  0       2710       h8=Q fxe4 Qg7+ Kd6 c5+ M3#
271.254: < 7   29994  1       7154       h8=Q fxe4 Qg7+ Kd6 c5+ M3#
271.254: < 8   29994  2       17158      h8=Q fxe4 Qg7+ Kd6 c5+ M3#
271.285: < 9   29994  4       40919      h8=Q fxe4 Qg7+ Kd6 c5+ M3#
271.348: < 10  29994  11      115233     h8=Q fxe4 Qg7+ Kd6 c5+ M3#
271.551: < 11  29994  31      335556     h8=Q fxe4 Qg7+ Kd6 c5+ M3#
272.034: < 12  29994  79      921463     h8=Q fxe4 Qg7+ Kd6 c5+ M3#
273.173: < nodes:2154275 nps:1116200 time:193
273.173: < move h7h8 
273.173: > force
273.173: > result 0-1 {White makes an illegal move: h7h8}
It shows a promotion to Queen in the PV, yet the actual move sent to the GUI seems to be missing the Queen suffix.
Tirsa Poppins
CCRL

Stan Arts
Posts: 179
Joined: Fri Feb 14, 2014 9:53 pm
Location: the Netherlands

Re: Nemeton 1.7

Post by Stan Arts » Mon Jul 09, 2018 7:21 pm

What GUI is that? Every GUI I ever tried got this right ofcourse and promoted to queen when unspecified.

Nemeton only sent a suffix with underpromotion. I remember doing that for a reason but who knows what that reason was. So I updated the archive to something that sends a "q" on queen promotion and maybe I'll find out.

Regardless I'm done with this.

konsolas
Posts: 178
Joined: Sun Jun 12, 2016 3:44 pm
Location: London
Full name: Vincent
Contact:

Re: Nemeton 1.7

Post by konsolas » Mon Jul 09, 2018 7:36 pm

Stan Arts wrote:
Mon Jul 09, 2018 7:21 pm
What GUI is that? Every GUI I ever tried got this right ofcourse and promoted to queen when unspecified.

Nemeton only sent a suffix with underpromotion. I remember doing that for a reason but who knows what that reason was. So I updated the archive to something that sends a "q" on queen promotion and maybe I'll find out.

Regardless I'm done with this.
http://wbec-ridderkerk.nl/html/UCIProtocol.html

The UCI spec does seem to require a character denoting the desired piece, even when not underpromoting. It gives the example "e7e8q", showing that 'q' must be specified for 'queen', so the GUI does not have to assume queen promotion.

tmokonen
Posts: 1008
Joined: Sun Mar 12, 2006 5:46 pm
Location: Vancouver

Re: Nemeton 1.7

Post by tmokonen » Mon Jul 09, 2018 8:30 pm

The crapware known as Windows Defender seems to think that Nemeton 1.7 contains a trojan named Trojan:Win32/Fuery.B!cl (non-SMP version, the SMP version seems OK). I am sure this is a false positive, since the latest 32 bit version of Booot is also detected as containing this very same trojan. I notice that both of these programs are written in Pascal, so maybe there is something that the compiler (you are using Delphi?) places in the executables that is causing these false positives.

tpoppins
Posts: 919
Joined: Tue Nov 24, 2015 8:11 pm
Location: upstate

Re: Nemeton 1.7

Post by tpoppins » Tue Jul 10, 2018 9:27 pm

Stan Arts wrote:
Mon Jul 09, 2018 7:21 pm
What GUI is that?
Cute Chess 1.1.0.
Stan Arts wrote:
Mon Jul 09, 2018 7:21 pm
So I updated the archive to something that sends a "q" on queen promotion
Problem solved, thank you.

konsolas wrote:
Mon Jul 09, 2018 7:36 pm
http://wbec-ridderkerk.nl/html/UCIProtocol.html

The UCI spec does seem to require a character denoting the desired piece, even when not underpromoting. It gives the example "e7e8q", showing that 'q' must be specified for 'queen', so the GUI does not have to assume queen promotion.
Nemeton is an Xboard engine, however Xboard protocol also requires the suffix:
APPENDIX A: MOVE FORMAT

Moves should be specified in coordinate notation, e.g. e2e4 or g8f6.
For promotions the chosen piece should be indicated by a lower-case suffix, e.g.a7a8q or e2e1n.
Tirsa Poppins
CCRL

Stan Arts
Posts: 179
Joined: Fri Feb 14, 2014 9:53 pm
Location: the Netherlands

Re: Nemeton 1.7

Post by Stan Arts » Tue Aug 07, 2018 10:06 am

Had a Heisenbug. That disappeared when I tried to find it in debug mode or when changing compiler version. Noticed my node counts were different in certain positions in debug mode but nothing breaks. Then I compiled some ancient versions of Nemeton and the problem has always been there. Yikes the stuff of nightmares.
So by elimination I isolated the problem to my evaluation. Then to my pawn stuff and finally to my kinginreachc function.

Apparently this:

Code: Select all

 if 3+tboard[2] and 15-kirp and 15 <= kirp shr 4+tdepth and 1 then kinginreachc:=1; 
breaks in old Free Pascal versions (like 2.6.4 which used to give me the fastest raw speed compiles) but hopping the 3 over like so fixes it. Whatever.

Code: Select all

 if tboard[2] and 15-kirp and 15 <= kirp shr 4+tdepth and 1-3 then kinginreachc:=1; 
Newer versions of Free Pascal get it right so I should read release notes.

While I was at it I've redone the PV collection and now the Winboard version comes in at a hefty 116 kB which is over 20 Elo per kilobyte and that's WAY stronger than Stockfish. :|

Post Reply