Engine release Exacto 0.e

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

Moderator: Ras

Exacto
Posts: 15
Joined: Thu Feb 13, 2014 6:51 pm

Re: Engine release Exacto 0.e

Post by Exacto »

Out of curiosity, what is a typical period to wait for an engine to show up on the CCRL?
"A little pain never hurt anyone."
User avatar
Graham Banks
Posts: 46321
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Engine release Exacto 0.e

Post by Graham Banks »

Exacto wrote:Out of curiosity, what is a typical period to wait for an engine to show up on the CCRL?
It's still on my "to do" list for the 40/40 list, along with another three or four engines. Probably a couple of weeks away before testing - I'll let you know when I start.
Charles, Shaun and Brent are testing other engines currently as well.

As for 40/4, Gabor is currently away and Adam is doing some Gaviota testing for Miguel, so there probably won't be an update of this list this weekend.
Not sure as to what other 40/4 testers are currently doing.
Probably a couple of weeks away here as well.

Cheers,
Graham.
gbanksnz at gmail.com
Adam Hair
Posts: 3226
Joined: Wed May 06, 2009 10:31 pm
Location: Fuquay-Varina, North Carolina

Re: Engine release Exacto 0.e

Post by Adam Hair »

Exacto wrote:Out of curiosity, what is a typical period to wait for an engine to show up on the CCRL?
Sorry. I have not been able to test it because my only Windows computer uses XP 64bit, and Gabor is away from home and not doing any testing this week.
User avatar
Graham Banks
Posts: 46321
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Engine release Exacto 0.e

Post by Graham Banks »

Exacto wrote:Out of curiosity, what is a typical period to wait for an engine to show up on the CCRL?
Exacto 0.e 64-bit Gauntlet currently running for CCRL 40/40.
Live broadcast in TLCV.
GrahamCCRL.dyndns.org
Port 16074
gbanksnz at gmail.com
User avatar
Graham Banks
Posts: 46321
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Engine release Exacto 0.e

Post by Graham Banks »

SzG wrote:I am about to start a tournament for the engine but I have a problem. Under WinBoard I myself can play against it all right but in an engine match it refuses to make a move and "Waiting for engine to start" is displayed. Then the game is interrupted, another one is started, the opening book moves are made and again "waiting".

Some hint would be appreciated.
I used the wb2uci adapters. I also had to replace the book.bin file with a 0kb book.bin file.
gbanksnz at gmail.com
User avatar
velmarin
Posts: 1600
Joined: Mon Feb 21, 2011 9:48 am

Re: Engine release Exacto 0.e

Post by velmarin »

Exacto wrote:Ruxy - following up on the XP issue. I've made a separate set of compiles for XP (32 bit) and Macintosh (64 bit) platforms through GCC. An important note: in order to switch into GCC I had to track down and squash a bug, which means that this version may search slightly different trees than 0.e. On my website (link above) it is listed as 0.e.x.

But, 0.e.x is not a "release," rather, it's just something for people on XP32 / Mac to be able to play against my engine. So, if testing, please test 0.e on Win64.

[Future versions should be distributed with identical XP32(GCC)/Win64(MS)/Mac64(GCC) compiles.]
It seems that in the distributed code no Bitscan to 32 bits.

Code: Select all

inline
uint8_t bitscan(uint64_t bb) {
	#ifdef __GNUC__
		return __builtin_ctzll(bb);
	#endif
	#ifdef _MSC_VER
		unsigned long index;
		_BitScanForward64(&index, bb);
		return (uint8_t)index;
	#endif
}
Code compiles fine with Intel and Visual C **, I can make some compilations.

There is what looks like an error o warning in King Safety:

subscript out of range :
uint8_t const adjacent_files[8]
Write: 64

Code: Select all

#ifdef _KING_SAFETY
		
			if(((adjacent_files[64] ..................
				
			if(((adjacent_files[64] ..............
#endif
User avatar
velmarin
Posts: 1600
Joined: Mon Feb 21, 2011 9:48 am

Re: Engine release Exacto 0.e

Post by velmarin »

A compilation with Visual C + + 2013, XP support (according to Microsoft)8-)

https://www.dropbox.com/s/sn1i100pj7l5ln0/exacto-0.e.7z

If it works, use the original executable of the author,
No improve.
Exacto
Posts: 15
Joined: Thu Feb 13, 2014 6:51 pm

Re: Engine release Exacto 0.e

Post by Exacto »

subscript out of range :
uint8_t const adjacent_files[8]
Write: 64
This is extremely embarrassing! I thought I had fixed this before release. I've since fixed this, but surprisingly 0.e seems to run fine for me and play reasonable chess (!).


It seems that in the distributed code no Bitscan to 32 bits.
I've since added some poor 32 bitscan routines in case people want to compile in Microsoft for 32 bits. But, at the time that I was writing 0.e, my plan was to compile for Win32 through Mingw, where the GCC builtin's still work.

I am about to start a tournament for the engine but I have a problem. Under WinBoard I myself can play against it all right but in an engine match it refuses to make a move and "Waiting for engine to start" is displayed.
Gabor - did Graham's suggestion work? I'm sorry that such measures have to be taken to get my program to work.

As far as the force twice thing, all that happens when Exacto receives "force" is it toggles a bool into and out of force mode. If it happened twice, and it was out of force mode, and then it received a move for white when Winboard expected it to be in force mode, it could in principle respond by moving for black. But, the numbering is throwing me off as well: it says 1... Nf6 in it's thinking output, as if it's responding to 1. d4? I'll have to run through all those commands that Winboard is sending Exacto one by one and see if I can reproduce this in the command line. Thanks!
"A little pain never hurt anyone."
User avatar
hgm
Posts: 28519
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Engine release Exacto 0.e

Post by hgm »

Exacto wrote:As far as the force twice thing, all that happens when Exacto receives "force" is it toggles a bool into and out of force mode.
That is wrong. "force" should put you in force mode. Never out of it. I don't know if there are situations where WinBoard (or other WB-protocol-supporting GUIs) would send redundant force commands, but if they don't it is only by luck that your engine would work.
Guenther
Posts: 4718
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: Engine release Exacto 0.e

Post by Guenther »

No problem here playing w/wo book as W/B, but I used the special XP 32bit compile from Mr. Velasco and just match mode.
I noticed from your first debug though that Exacto is already started first in the beginning and then unloaded and started again for your tournament.
Maybe it does not unload correctly and is running twice when the real game starts?

Guenther

recognized 'normal' (-1) as variant normal
recognized 'normal' (-1) as variant normal
shuffleOpenings = 0
Version: WinBoard 4.7.3a + Exacto_0e
Reset(1, 0) from gameMode 0
recognized 'normal' (-1) as variant normal
GameEnds(0, (null), 2)
shuffleOpenings = 0
StartChildProcess (dir="c:\Engines\WB\Exacto_0e") Exacto_0e
nice engine proc to 10
578 >first : xboard
protover 2
578 <first :
578 <first : exacto[0.e]
578 <first : <<------------------------------->>
578 <first : by Daniel Sparks, USA
578 <first :
578 <first :
578 <first : Type 'game' for gameplay commands, or 'help' for all commands.
594 <first :
594 <first : No opening book loaded.
594 <first :
594 <first : feature ping=1 setboard=1 playother=1 san=0 usermove=1 time=1 draw=0 sigint=0 sigterm=0 reuse=1 analyze=0 colors=0 ics=0 name=0 pause=0 done=1
594 >first : accepted ping
594 >first : accepted setboard
594 >first : accepted playother
594 >first : accepted san
594 >first : accepted usermove
594 >first : accepted time
594 >first : accepted draw
594 >first : accepted sigint
594 >first : accepted sigterm
594 >first : accepted reuse
594 >first : accepted analyze
594 >first : accepted colors
594 >first : accepted ics
594 >first : accepted name
594 >first : accepted pause
594 >first : accepted done
609 >first : new
random
609 >first : level 40 3 0
609 >first : post
609 >first : hard
609 >first : easy
609 >first : ping 1
Impossible move , type = 0
656 <first : Error (unknown command): random
656 <first : Post ON
656 <first : Error (unknown command): hard
656 <first : Error (unknown command): easy
656 <first : pong 1
3672 >first : force
StartChildProcess (dir="c:\Engines\WB\Abrok_50") Abrok_50 hash 256
nice engine proc to 10
4172 >second: xboard
protover 2
4172 <first : Force ON
4172 <second: feature done=0
4172 >second: accepted done
4172 <second: feature myname="Abrok 5.0"
4172 >second: accepted myname
4172 <second: feature ping=1
4172 >second: accepted ping
4172 <second: feature time=1
4172 >second: accepted time
4172 <second: feature reuse=1
4172 >second: accepted reuse
4172 <second: feature sigint=0
4172 >second: accepted sigint
4172 <second: feature sigterm=0
4172 >second: accepted sigterm
4172 <second: feature analyze=1
4172 >second: accepted analyze
4172 <second: feature variants="normal"
4172 >second: accepted variants
4172 <second: feature name=0
4172 >second: accepted name
4172 <second: feature setboard=1
4172 >second: accepted setboard
4172 <second: feature done=1
4172 >second: accepted done
4188 >second: new
random
4188 >second: level 40 3 0
4188 >second: post
4188 >second: hard
4188 >second: easy
4188 >second: ping 1
Impossible move , type = 0
4188 >second: force
4188 <second: pong 1
New game (0): Exacto_0e-Abrok 5.0 (w)
4203 >first : computer
4203 >second: computer
4203 >first : time 18000
4203 >first : otim 18000
book hit = (NULL)
4203 >first : go
nps: w=-1, b=-1
4203 <first : Error (unknown command): computer
4453 <first : 9 10 25 201339 1. Nf3, Nf6 2. Nc3, Nc6 3. e3, e5 4. Bc4, e4 5. Ng5
Impossible move , type = 31
4891 <first : 10 10 68 554934 1. Nf3, Nf6 2. Nc3, Nc6 3. e3, e5 4. Bd3, Bc5 5. O-O, d6
Impossible move , type = 31
6266 <first : 11 12 206 1657869 1. e4, Nc6 2. Nf3, e5 3. Bc4, Nf6 4. d3, d5 5. exd5, Nxd5 6. O-O, Bc5
Impossible move , type = 31
6531 <first : 11 12 232 1878028 1. e4, Nc6 2. Nf3, e5 3. Bc4, Nf6 4. d3, d5 5. exd5, Nxd5 6. O-O, Bc5
Impossible move , type = 31
6531 <first : move e2e4
6531 >second: time 18000
6531 >second: otim 17767
book hit = (NULL)
6531 >second: e2e4
6531 >second: black
6531 >second: go
silence
6547 <second: 99 2 0 0 e7e6
6547 <second:
6547 <second: Hashtreffer: 0
6547 <second: NullmoveExtensions: 0
6547 <second: PawnpushExtensions: 0
6547 <second: CheckExtensions: 0
6547 <second: KingsafetyExtensions: 0
6547 <second: RecaptureExtensions: 0
6547 <second: Bewertungen: 0
6547 <second: komplette Bewertungen: 0
6547 <second:
6547 <second: move e7e6
6547 >first : time 17767
6547 >first : otim 17998
book hit = (NULL)
6547 >first : usermove 6547 >first : e7e6
silence
6563 <second:
6984 <first : 9 14 43 350681 2. Nf3, Nc6 3. Nc3, Nf6 4. e5, Ng4 5. d4, Bb4 6. Bg5
7500 <first : 10 19 95 774643 2. Nf3, Nc6 3. Nc3, Nf6 4. e5, Ng4 5. d4, Bb4 6. Bg5, Bxc3+ 7. bxc3
9266 <first : 11 25 271 2232070 2. Nf3, Nc6 3. Nc3, Bb4 4. a3, Ba5 5. b4, Bb6 6. b5, Nd4 7. Nxd4
9281 <first : move g1f3
9281 >second: time 17998
9281 >second: otim 17493
book hit = (NULL)
9281 >second: g1f3
silence
9281 <second: 2 -18 0 386 f8c5 f1b5
9281 <second: 3 -34 0 513 g8f6 b1c3 f8d6
9281 <second: 3 -26 0 550 g8f6 b1c3 f8d6
9281 <second: 3 -24 0 581 g8f6 b1c3 f8d6
9297 <second: 3 -22 0 627 g8f6 b1c3 f8d6
9297 <second: 4 -22 0 684 g8f6 b1c3 f8d6
9297 <second: 5 -38 1 2680 g8f6 b1c3 f8d6 f1b5
9297 <second: 5 -30 1 2736 g8f6 b1c3 f8c5 f1b5
9297 <second: 5 -26 1 3747 d7d5 e4d5 e6d5 f1b5 c7c6 d1e2 c8e6
9313 <second: 6 -26 3 5500 d7d5 e4d5 e6d5 f1b5 c7c6 d1e2 c8e6
9328 <second: 6 -24 4 8693 d7d5 b1c3 d5e4 c3e4 b8c6 f1d3 d8d5
9328 <second: 6 -22 4 9007 d7d5 b1c3 d5e4 c3e4 b8c6 f1d3 d8d5
9344 <second: 7 -22 6 13272 d7d5 b1c3 d5e4 c3e4 b8c6 f1d3 d8d5
9359 <second: 7 -16 7 17904 d7d5 b1c3 d5e4 c3e4 b8c6 d2d4 f8b4 c1d2
9438 <second: 8 -16 15 34557 d7d5 b1c3 d5e4 c3e4 b8c6 d2d4 d8d5
9875 <second: 9 -32 59 135351 d7d5 e4d5 e6d5 f1b5 c7c6 b5d3 d8e7 e1f1
10125 <second: 9 -28 84 199640 g8f6 b1c3 b8c6 d2d4 d7d5 e4d5 e6d5 d1e2 c8e6
10125 <second: 9 -26 84 201901 g8f6 b1c3 b8c6 d2d4 d7d5 e4d5 e6d5 d1e2 c8e6
10734 <second: 10 -42 145 354484 g8f6 b1c3 b8c6 d2d4 d7d5 e4e5 f6e4 c3e4 d5e4 c1g5
10953 <second: 10 -34 167 419547 b8c6 d2d4 g8f6 b1c3 d7d5 e4e5 f6e4 c3e4 d5e4 c1g5
12031 <second: 11 -50 275 696960 b8c6 d2d4 d7d5 e4e5 c8d7 b1c3 f8b4 f1d3
12063 <second: 11 -42 278 707242 b8c6 d2d4 d7d5 e4e5 a7a6 b1c3 f8b4 f1d3
12969 <second: 11 -38 368 909851 d7d5 e4d5 e6d5 f1d3 d8e7 e1f1 c7c5 b1c3 g8f6 f1g1 b8c6
13031 <second: 11 -36 375 936700 d7d5 e4d5 e6d5 f1d3 d8e7 e1f1 c7c5 b1c3 g8f6 f1g1 b8c6
14719 <second: 12 -36 543 1309744 d7d5 e4d5 e6d5 f1d3 d8e7 e1f1 c7c5 b1c3 g8f6 f1g1 c5c4 d3e2 c8f5
15188 <second: 12 -36 590 1421312 d7d5 e4d5 e6d5 f1d3 d8e7 e1f1 c7c5 f1g1 g8f6 c2c3 b8c6 d1a4 c8d7
15188 <second:
15188 <second: Hashtreffer: 349181
15188 <second: NullmoveExtensions: 9786
15188 <second: PawnpushExtensions: 1842
15188 <second: CheckExtensions: 7801
15188 <second: KingsafetyExtensions: 26968
15188 <second: RecaptureExtensions: 8708
15188 <second: Bewertungen: 707869
15188 <second: komplette Bewertungen: 211062
15188 <second:
15188 <second: move d7d5
15188 >first : time 17493
15188 >first : otim 17407
book hit = (NULL)
15188 >first : usermove 15188 >first : d7d5
silence
15188 <second:
15188 <first : 2 18 0 85 3. exd5, exd5 4. Nc3
15203 <first : 2 19 0 90 3. Bd3, dxe4 4. Bxe4
15203 <first : 6 22 1 17858 3. e5, Nc6 4. d4, Ng8e7 5. Nc3, Bd7 6. Bd3
15766 <first : 9 23 57 499764 3. e5, Nc6 4. d4, Bd7 5. Be3, Qe7 6. Nc3, O-O-O 7. Bb5
17406 <first : 10 27 221 1814893 3. e5, Bd7 4. Nc3, Nc6 5. d4, Bb4 6. Bd3, Bxc3+ 7. bxc3, Kf8 8. O-O
17406 <first : move e4e5
17406 >second: time 17407
17406 >second: otim 17272
book hit = (NULL)
17406 >second: e4e5