Engine release Exacto 0.e

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.
Exacto
Posts: 15
Joined: Thu Feb 13, 2014 5:51 pm

Engine release Exacto 0.e

Post by Exacto » Mon Mar 10, 2014 9:00 am

Hello,

Thanks to a few people on here for testing out Exacto 0.e. While it shares the same name as my last program, Exacto 0.d, this new version is really a brand new version. Is there anything I need to do to get the new version onto the CCRL?

Anyway, here's the website. It contains a list of the features:

http://math.berkeley.edu/~sparks/exacto/

The source code is included and covered under a BSD type license (but use it at your own risk - I am neither a chess player nor a programmer). The engine is meant to use with WinBoard/XBoard/Arena.

Best,
Dan
"A little pain never hurt anyone."

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

Re: Engine release Exacto 0.e

Post by Graham Banks » Mon Mar 10, 2014 9:34 am

Exacto wrote:Hello,

Thanks to a few people on here for testing out Exacto 0.e. While it shares the same name as my last program, Exacto 0.d, this new version is really a brand new version. Is there anything I need to do to get the new version onto the CCRL?

Anyway, here's the website. It contains a list of the features:

http://math.berkeley.edu/~sparks/exacto/

The source code is included and covered under a BSD type license (but use it at your own risk - I am neither a chess player nor a programmer). The engine is meant to use with WinBoard/XBoard/Arena.

Best,
Dan
Could you give us a rough idea of some engines that you feel are around the same strength?

Graham.
My email addresses:
gbanksnz at gmail.com
gbanksnz at yahoo.co.nz

Adam Hair
Posts: 3185
Joined: Wed May 06, 2009 8:31 pm
Location: Fuquay-Varina, North Carolina

Re: Engine release Exacto 0.e

Post by Adam Hair » Mon Mar 10, 2014 11:08 am

Exacto wrote:Is there anything I need to do to get the new version onto the CCRL?
You do not have to do anything. I will test it for the 40/4 list.

User avatar
Sylwy
Posts: 3358
Joined: Fri Apr 21, 2006 2:19 pm
Location: IASI (Romania) - the historical capital of MOLDOVA

Re: Engine release Exacto 0.e

Post by Sylwy » Mon Mar 10, 2014 11:40 am

Exacto wrote:Hello,

Thanks to a few people on here for testing out Exacto 0.e. While it shares the same name as my last program, Exacto 0.d, this new version is really a brand new version. :lol: Is there anything I need to do :lol: to get the new version onto the CCRL?

Anyway, here's the website. It contains a list of the features:

http://math.berkeley.edu/~sparks/exacto/

The source code is included and covered under a BSD type license (but use it at your own risk - I am neither a chess player nor a programmer). The engine is meant to use with WinBoard/XBoard/Arena.

Best,
Dan
Doesn't work under Uncle XP !!! :cry:

SilvianR :wink:

SzG
Posts: 2447
Joined: Fri Mar 10, 2006 6:20 am
Location: Szentendre, Hungary

Re: Engine release Exacto 0.e

Post by SzG » Mon Mar 10, 2014 12:47 pm

Exacto wrote:this new version is really a brand new version. Is there anything I need to do to get the new version onto the CCRL?
Hello Dan,

Thanks for your engine.

Maybe a different version number would show that this Exacto is not that Exacto.

Now that Adam is going to test it, which I myself intended to do, I can wait and see in which range it belongs.

Gábor
Gabor Szots

CCRL testing group

Gerd Isenberg
Posts: 2105
Joined: Wed Mar 08, 2006 7:47 pm
Location: Hattingen, Germany

Re: Engine release Exacto 0.e

Post by Gerd Isenberg » Mon Mar 10, 2014 3:46 pm

Exacto wrote:Hello,

Thanks to a few people on here for testing out Exacto 0.e. While it shares the same name as my last program, Exacto 0.d, this new version is really a brand new version. Is there anything I need to do to get the new version onto the CCRL?

Anyway, here's the website. It contains a list of the features:

http://math.berkeley.edu/~sparks/exacto/

The source code is included and covered under a BSD type license (but use it at your own risk - I am neither a chess player nor a programmer). The engine is meant to use with WinBoard/XBoard/Arena.

Best,
Dan
Hi Dan,

you may easily quarter your plain magic tables sizes, i.e. 2MB instead of 8MB for rooks, if you allow constructive index collisions, where redundant outer one-bits of the occupancy may share the same attack set and entry.

Gerd

Gerd Isenberg
Posts: 2105
Joined: Wed Mar 08, 2006 7:47 pm
Location: Hattingen, Germany

Re: Engine release Exacto 0.e

Post by Gerd Isenberg » Mon Mar 10, 2014 4:18 pm

Gerd Isenberg wrote:Hi Dan,

you may easily quarter your plain magic tables sizes, i.e. 2MB instead of 8MB for rooks, if you allow constructive index collisions, where redundant outer one-bits of the occupancy may share the same attack set and entry.

Gerd
oups, you already do that...

Code: Select all

    if(rook_moves[square][quickhash(x, magic, bits)] == all_set){
        // A new hash entry
        rook_moves[square][quickhash(x, magic, bits)] = y;
    } else if(rook_moves[square][quickhash(x, magic, bits)] != y) {
        // A bad collision
Then why not 12/9 rook/bishop bits only?

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

Re: Engine release Exacto 0.e

Post by Exacto » Mon Mar 10, 2014 11:30 pm

Thanks guys!

- The engines I test against are usually Clarabit, Firefly, Joker, Adam, Neurosis, and a few others between 2200-2330 on CCRL. I estimate the rating for Exacto 0.e should be higher than 2100, but lower than 2200. (Compared to the CCRL ratings.)

- This version is supposed to be called 0.e. I guess I didn't put that in the title of the executable, but it does say which version it is when you boot it up.
[EDIT: Oh! You probably mean like... 1.0 instead of something so consecutive... yeah, that might have been a good call.]

- It doesn't work on XP at the moment, which is something I plan to address in the next version. Unfortunately, the program searches different game trees when compiled in GCC vs Microsoft, but if I can sort that out, I'll compile in Mingw-w32 for people on XP.

- As far as my magics - good eye catching that. Yes, I allow constructive collisions. But, for whatever reason, my code wasn't able to generate magics for smaller tables. It would just sit their looping seemingly indefinitely (20-30 minutes, until I closed it and decided to just use 14/11 bit magics).
"A little pain never hurt anyone."

Gerd Isenberg
Posts: 2105
Joined: Wed Mar 08, 2006 7:47 pm
Location: Hattingen, Germany

Re: Engine release Exacto 0.e

Post by Gerd Isenberg » Tue Mar 11, 2014 5:35 am

Exacto wrote: - As far as my magics - good eye catching that. Yes, I allow constructive collisions. But, for whatever reason, my code wasn't able to generate magics for smaller tables. It would just sit their looping seemingly indefinitely (20-30 minutes, until I closed it and decided to just use 14/11 bit magics).
I guess your randoms are not sparse enough. See this proposal by Tord Romstad:

Code: Select all

uint64 random_uint64() {
  uint64 u1, u2, u3, u4;
  u1 = (uint64)(random()) & 0xFFFF; u2 = (uint64)(random()) & 0xFFFF;
  u3 = (uint64)(random()) & 0xFFFF; u4 = (uint64)(random()) & 0xFFFF;
  return u1 | &#40;u2 << 16&#41; | &#40;u3 << 32&#41; | &#40;u4 << 48&#41;;
&#125;

uint64 random_uint64_fewbits&#40;) &#123;
  return random_uint64&#40;) & random_uint64&#40;) & random_uint64&#40;);
&#125;

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

Re: Engine release Exacto 0.e

Post by Exacto » Wed Mar 12, 2014 2:54 am

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.]
"A little pain never hurt anyone."

Post Reply