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.