Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: TableBase Query

Author: William Bryant

Date: 16:03:25 08/16/00

Go up one level in this thread


On August 16, 2000 at 11:11:14, Hans Havermann wrote:

>On August 15, 2000 at 22:52:36, William Bryant wrote:
>
>>Endgame Tablebases are the _definitive_ knowledge.  They tell you exactly
>>what you want to know as fast and cheep(time and processor wise) as anything.
>
>Thank you, first of all, for this TB-capable build of Screamer. I downloaded the
>five-man TB files overnight. :)
>
>Even with the definitive knowledge that Endgame Tablebases provide,
>implementation may still be an issue. I'm curious: Why does Screamer need to run
>through all those plies?

I suppose it doesn't.  I don't have any specific code in the program that says
if you see a draw score so many plies in a row, exit the search.  What it is
doing is searching either to max time or max depth.  In this case it reaches
max depth (ply 62) in about 2 seconds.


Do the tablebases not automatically dictate
>win/lose/draw based on position? Or, do the tablebases only tell you the next
>move?

The tablebases tell you the score of each move after it has been made.  Your
generate all the moves, and then search each move.  If the number of pieces is
low enough you probe the tablebases for a score.  If you get a score, (Mate in
so many moves, or a draw score), you exit the search of this move and go to the
next move at this ply.

In the test position, all moves generated a tablebase hit making the ply easy to
search.  Note: in some positions, the tablebase size will only be accessable
after a capture, so that the tablebase probing will occur on some but not all
moves.

>
>I don't think Screamer, at the moment, can play against itself but this can be
>set up in ExaChess.


With it's ExaChess compatibility, I don't plan to implement an autoplay feature.


For example, using 7n/8/8/2P5/8/8/8/K6k w - - as a starting
>position, we eventually get to a Screamer "Draw: Lack of Material" with
>8/8/2n5/3K4/8/5k2/8/8 w - - but, of course, ExaChess doesn't see this and forces
>continuation of play (strangely: Kd6 next move, rather than Kxc6) until
>repetition draw appears.

If all positions return the same draw score, it will in effect chose a random
move which may not make sence as an OTB move.  But if it is also a draw, then it
is no worse.

>
>Will an ExaChess TB draw-position playing Screamer against itself always end
>with a repetition draw? Might there be a more complex (draw) situation that
>forces ExaChess to continue play until the 50-move draw is invoked?

At present, Screamer will return a draw score, but not a request for a draw.
This will change.
So, if a draw position is reached, ExaChess will play it out until a 3 move
repitition.

>
>It would be nice, in order to see tablebase-positions played out, to have
>ExaChess recognize the Screamer-determined draws or, alternatively, to allow
>Screamer to play against itself.

William
wbryant@ix.netcom.com



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.