a test for tablebases efficacy

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

smcracraft
Posts: 737
Joined: Wed Mar 08, 2006 8:08 pm
Location: Orange County California
Full name: Stuart Cracraft

a test for tablebases efficacy

Post by smcracraft »

Hi,

Anyone have some good positions to test tablebases (syzygy) in stockfish?

Now that my 3/4/5/6 man tables are all in, I want to test them.

Anyone have a set of problems which are solvable only with tablebases?

--Stuart--
User avatar
MikeB
Posts: 4889
Joined: Thu Mar 09, 2006 6:34 am
Location: Pen Argyl, Pennsylvania

Re: a test for tablebases efficacy

Post by MikeB »

smcracraft wrote: Thu Dec 20, 2018 10:02 am Hi,

Anyone have some good positions to test tablebases (syzygy) in stockfish?

Now that my 3/4/5/6 man tables are all in, I want to test them.

Anyone have a set of problems which are solvable only with tablebases?

--Stuart--
Here's a few.
Win for white: 100 ply; 8/8/3r4/8/8/8/6R1/NKBk1b2 w - -
Win for white: 100 ply; 8/P3R3/8/2R5/8/8/8/K1k2q2 b - -
Win for white: 100 ply; 2Q5/8/8/8/r3r3/8/8/NK1k4 w - -

To really test all of your databases will work see this link regarding checksums. If the checksums tie out , the databases will work. No real need to check a bunch of positions for test purposes - but of course, it is fun when you first get them installed. Keep the checksums handy, files may get corrupted overtime for a verity of reasons - from drive failure to power outage. If you discover a problem with the EGTB, re-verify the checksums. A corrupted file is really the only reason why they would not work in most situations.

Link: http://kirill-kryukov.com/chess/tablebases-online/

If you just want to to play with EGTB database, go to this site

https://syzygy-tables.info/?fen=8/P1n5/ ... _b_-_-_0_1

Just put any 4,5,6 man position in ( literally "any") , then scroll down on the right had side and you will a section that looks like this and just click the the link you would like to see.
Screenshot 2018-12-21 22.22.36.png
You can then copy and paste the FEN and see if you get the same answer on your setup.

An engine like Stockfish , will play correctly most endgames without tablebases. We are literally just talking just a few ELO difference ( somewhere less than 10) between EGTB and non EGTB. Th advantage with a tablebase is that you will know instantly if the position is sure win or not. It's also very good way for one to practice their endgame technique
Image
smcracraft
Posts: 737
Joined: Wed Mar 08, 2006 8:08 pm
Location: Orange County California
Full name: Stuart Cracraft

Re: a test for tablebases efficacy

Post by smcracraft »

Thanks.

I have my tablebases under this:

~/chess/Syzygy/

in three directories:

dtz syzygy wdl

When I used Stockfish / Preferences and chose ~/chess/Syzygy/ it now shows in the search TB=xxxxxxxxx
and the xxxxxxx number is changing.

So I have two questions. One is what does the xxxxxx number mean and is the TB=xxxxxx confirming tablebases is being used?

My second question is, that for just the 3/4/5 which are in syzygy subdirectory above, your 100 move to mate are being missed because
the 6 piece database is the dtz and wdl so I moved dtz/* and wdl/* all under ~/chess/Syzgy/syzygy and restarted Stockfish, re-homed to
this directory and retried your position but it appears to be doing a normal search with TB=xxxxxxxxxx which I am only guessing because
it doesn't immediately pull up the result upon pressing Go but rather is just doing a search which incrementally deepens instead of
table lookup instantly.

What am I doing wrong?
syzygy
Posts: 5563
Joined: Tue Feb 28, 2012 11:56 pm

Re: a test for tablebases efficacy

Post by syzygy »

smcracraft wrote: Mon Dec 24, 2018 5:06 pm So I have two questions. One is what does the xxxxxx number mean and is the TB=xxxxxx confirming tablebases is being used?
That's simply the number of successful probes.
My second question is, that for just the 3/4/5 which are in syzygy subdirectory above, your 100 move to mate are being missed because
the 6 piece database is the dtz and wdl so I moved dtz/* and wdl/* all under ~/chess/Syzgy/syzygy and restarted Stockfish, re-homed to
this directory and retried your position but it appears to be doing a normal search with TB=xxxxxxxxxx which I am only guessing because
it doesn't immediately pull up the result upon pressing Go but rather is just doing a search which incrementally deepens instead of
table lookup instantly.
If the root position is in the TBs, Stockfish will attempt to search to mate. But it searches only those moves that are known to be optimal. If it does not find a mate, it will report a very high winning score (indicating a TB win).

In Stockfish, you can type "d" at the command line to see the probe results for the current position.