Author: Scott Gasch
Date: 16:21:34 05/23/02
Go up one level in this thread
On May 23, 2002 at 14:47:19, Peter McKenzie wrote: >On May 23, 2002 at 05:13:42, Andrew Williams wrote: > >>On May 23, 2002 at 03:40:29, Steve Maughan wrote: >> >>>I have recently been tinkering with threat extensions (TE). I'd definitely like >>>to include some form of TE but I have encountered some problems of tree >>>explosion. >>> >>>What is happening is that the null move routine is detecting a mating threat and >>>I'm extending by one ply at ply[x]. I then try a move (at ply[x]) that doesn't >>>aviod the threat. In reply the opponent plays a sub-optimal move at ply[x+1] >>>that does not lead to mate even though a forced mating move does exist. At >>>plt[x+2] I then detect a threat and extend again... >>> >>>This sequence leads to a tree explosion. Is there any common wisdom as to how >>>to avoid this? Some ideas that I've had are: >>> >>>1) Only extend by a fraction - inelegant solution IMO >>>2) Store the rely to the null move that gave the checkmate and make this the >>>Killer move for the next ply - didn't seem to work well - still some tree >>>explosion. >>> >>>Has anyone any ideas? >>> >>>Thanks, >>> >>>Steve >> >>Why not restrict your search to one threat extension per line? ie Keep track of >>whether you've had a TE in the current path, and if so don't check for it again. > >I do this in Warp, and I'm not that happy with the it. Its seems pretty >artificial, and doesn't scale well with deep searches. > >I'm planning to try partial ply pretty soon. > >I suspect Steve has a move ordering problem though. An interesting issue. > Personally, I like the proposal of saving the nullmove response (that caused a FH on the next ply) as one of the killers. I do something similar... when I get a FL score back from the nullmove I grab the nullmove response. If it took a piece I store the square the piece was taken on and pass it into the move generator as a potentially dangerous place to have a piece. Combined with partial incremental attack tables this "danger square" idea improves move ordering significantly, IMHO. My first instinct as to why a full ply extension for nullmove mating threat is causing someone an explosion, though, is that something is wrong with move ordering. Personally I do a 3/4 ply extension here... but when I get back home from work tonight I'll put it back at a full ply and post some node counts. Scott
This page took 0.01 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.