Author: Stuart Cracraft
Date: 10:50:28 01/08/06
Go up one level in this thread
On January 07, 2006 at 12:09:49, Robert Hyatt wrote: >On January 07, 2006 at 09:14:03, Michael Neish wrote: > >> >>I hope this doesn't come across as too much of a beginner's question. >> >>Is it beyond question that null move improves search? >> >>The reason I ask is that I recently dusted off my old program, and ran a few >>tests on it, and was dismayed to discover that I seem to be getting very little >>benefit from using it. This is trying out different parameters (R-2, R-3, at >>depth >2, >3, etc.). >> >>I thought the whole idea of using null was that you could get a swifter cut-off >>and hence reduce the number of nodes searched to reach a given depth, but I'm >>getting little or no reduction at all, and in some cases even an increase. >> >>Depending on the position, and the parameters used, about 40-60% of null moves >>performed fail high and return immediately. The remainder move on to a normal >>search. So I thought that, in my program's case, perhaps the nodes wasted on >>null move searches that don't fail high is almost the same as those saved by >>null move searches that do fail high. Does this make sense? >> >>Is a cut-off rate of about 40-60% to be expected, or should it be higher? >> >>For what it's worth, around 80% of nodes in the tree are in Quiesce(). Could >>this have something to do with it? >> >>So barring an error in my implementation, can anyone comment on why null move is >>giving me virtually null benefit? >> >>Thanks in advance to anyone who takes the time to reply. >> >>Regards, >> >>Mike. > >The obvious question is, "where is your bug?" :) > >null-move should _greatly_ reduce the size of the tree. And reduce it enough >that you get another 1-2 plies of search depth in the same time. So, are you >sure you are doing the null-move test correctly? > >make a null move >search resulting position to depth-R-1 >if result >= beta, just return beta here and don't search any real moves at all. >otherwise, do a normal search and pretend the null-move search was never done. What is the effect of returning the value of the null move search if result >= beta instead of returning beta in a PVS search? Deleterious? Also, do you store the null move in the hash table? If so, why? Thanks ahead, Stuart
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.