Arena 3.5 and Endgame Tablebases

Sort:
Onegin

I see... Thanks!

Onegin

Just finished with TB files. Got them all in one folder, set path to that folder in the Stockfish engine configuration. All 290 files are there (145 DTZ+145 DWL). Bad news: the engine does its own calculation again...Little good news: the engine now "sees" tablebases. There's a line in the engine output window:"Found 145 tablebases". Any ideas?

Crappov

You are done and are observing normal behavior.  Syzygy does not report distance to mate information.  

Your next questions might land us in essay territory so just know that Syzygy bases contain WDL info (win-draw-loss) but they do not have distance to mate info.  They tell the engine if a move is winning, losing or drawing, but that's it.  When you see an evaluation score of 123.xx or something similar, Syzygy is reporting that a win has been found. You can rest assured the engine will win the position.

To learn about Syzygy behavior, start here ---->> http://www.talkchess.com/forum/viewtopic.php?t=47681

Onegin

So, it's not like the situation with opening books where engine just uses the "reference move" without calculation based on "playing probability" as long as where is a match in the book file?

Crappov

Well I suppose I should add ... Syzygy bases also contain DTZ (distance-to-zero) information.  These are concerned with the fifty-move rule.  Thus, Syzygy bases are the only tablebases that consider this metric, to my knowledge.

Anyway, it's normal for the engine to still calculate, even when there's 5 or less pieces on the board.  It won't necessarily make instant moves, as is common with Nalimov or Gaviota.

Crappov
Onegin wrote:

So, it's not like the situation with opening books where engine just uses the "reference move" without calculation based on "playing probability" as long as where is a match in the book file?

That's right, it won't necessarily move instantly, even if it "knows" a move is winning.  More than 1 possible move might be "winning" but the Syzygy bases can't tell the engine which move is winning the fastest.

Onegin
I have to think about all of these for a couple of days, but I'm glad I'm done with the file part (I've spent last 3-4 days reading up on the web and thinking about EGBT's, engine configurations, torrent vs direct downloading etc.). By the way, as far as TalkChess.com is concerned, I registered with TalkChess.com last Friday but still waiting for an administrator to activate my account. Any ideas how long it may take?
Crappov

No idea.  I suggest you follow up.

Earth64

I download and extract all 5 parts and keep them all in the same folder and set file directory for the engine but it does not work.

EscherehcsE
Earth64 wrote:

I download and extract all 5 parts and keep them all in the same folder and set file directory for the engine but it does not work.

So, you have all 290 extracted Syzygy files in one folder, and you're using Stockfish 7? How do you know it doesn't work?

Try loading this FEN position into your GUI and start the engine analysis:

4k3/3pr3/8/8/8/8/4NB2/3QK3 w - - 0 1

After a short time, if Stockfish is using the Syzygy TBs, it should report a "+123.51". If it's not using the Syzygy TBs, it will eventually report a "+M10".

HGMuller
Crappov wrote:
Anyway, it's normal for the engine to still calculate, even when there's 5 or less pieces on the board.  It won't necessarily make instant moves, as is common with Nalimov or Gaviota.

This might be normal for Stockfish, but it doesn't have to be generally true for every implementation using Syzygy EGTs. Like you say, these EGTs contain DTZ information, and you could make an engine instantly play the move that leads to the position with the lowest DTZ. That means you go to the fastest zeroing ('Z') of the reversible-ply counter, i.e. try to force a capture or Pawn push as quickly as possible.

Although this method of play gives you a 100% guarantee that ever position that can be won will indeed be won, most people would be very dissatisfied with it. Because in cases like KQBNK it would typically throw his Q against the bare King, forcing the latter in two or three moves to capture it. To then conduct a lengthy KBNK mate. The justification for this silly behavior is that you don't want the info in the EGT to be dependent on the value of the ply counter (that would enormously drive up the size). And the theoretical possibility exists that the ply counter already was at 94 in the start position, so that forcing the opponent to accept your Queen sac in 3 moves would be the only way to avoid the 50-move draw.

To avoid complaints about this, Stockfish does not blindly follow the DTZ moves, but searches, in the hope that it will find a quicker mate. The search itself is aware of the ply counter. So if it can see a mate-in-5 without zeroing the ply counter (implying that the initialcounter must have been below 91), it would prefer it over forcing acceptance of a Queen sac in 3. This is why Stockfish always searches.

Crappov
HGMuller wrote:
Crappov wrote:
Anyway, it's normal for the engine to still calculate, even when there's 5 or less pieces on the board.  It won't necessarily make instant moves, as is common with Nalimov or Gaviota.

This might be normal for Stockfish, but it doesn't have to be generally true for every implementation using Syzygy EGTs. Like you say, these EGTs contain DTZ information, and you could make an engine instantly play the move that leads to the position with the lowest DTZ. That means you go to the fastest zeroing ('Z') of the reversible-ply counter, i.e. try to force a capture or Pawn push as quickly as possible.

Although this method of play gives you a 100% guarantee that ever position that can be won will indeed be won, most people would be very dissatisfied with it. Because in cases like KQBNK it would typically throw his Q against the bare King, forcing the latter in two or three moves to capture it. To then conduct a lengthy KBNK mate. The justification for this silly behavior is that you don't want the info in the EGT to be dependent on the value of the ply counter (that would enormously drive up the size). And the theoretical possibility exists that the ply counter already was at 94 in the start position, so that forcing the opponent to accept your Queen sac in 3 moves would be the only way to avoid the 50-move draw.

To avoid complaints about this, Stockfish does not blindly follow the DTZ moves, but searches, in the hope that it will find a quicker mate. The search itself is aware of the ply counter. So if it can see a mate-in-5 without zeroing the ply counter (implying that the initialcounter must have been below 91), it would prefer it over forcing acceptance of a Queen sac in 3. This is why Stockfish always searches.

Thanks to HGM, who I recognize as a bona fide authority, for shedding more light on this.