Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Simple Crafty Source Question

Author: Robert Hyatt

Date: 21:52:26 07/27/99

Go up one level in this thread


On July 27, 1999 at 15:12:24, William Bryant wrote:

>Under what circumstances would Crafty store a position in the hash table as
>AVOID_NULL_MOVE rather than LOWER, UPPER, or EXACT.  I understand the concept
>of storing the Null Check Threat in the hash table.  Because a number of factors
>may influence wither or not a null move is made, and these may vary at the same
>position depending upon the path the search has taken to that position, storing
>the threat makes sure that the search is exteneded weither or not an actual null
>move is done.   But I am at loss when the program would use AVOID_NULL_MOVE
>rather than other search flags.
>
>BTW, have carefully reread iterate.c, searchr.c and search.c, I do not find this
>flag used in storing any position.
>
>Thanks in advance,
>
>William
>wbryant@ix.netcom.com


It never does.  That is a possible return value however... think about this:

you do a probe, and 'hit' but when you check the table depth, it is a bit
'short' of what you need so you can't use it.  But you _can_ make one more
good check...

Because the next thing you are going to do is a null-move search to some
depth...  and if the depth from the table meets or exceeds the depth your
null-move search requires, you can tell whether the null-move search will
likely fail high (good) or low (bad).  Because after playing a null-move
(not moving, and then subtracting an extra two plies, you reach the same
position again, and if the table value says this is < beta, then there is
no point in doing a null-move search as it will fail low.

This was mentioned in one of the papers by the deep thought group many years
ago...



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.