Author: William Bryant
Date: 06:30:07 06/14/99
Go up one level in this thread
On June 13, 1999 at 21:10:57, Pat King wrote: >Before implementing null move, I had a simple aspirated AB search, and would >research with a window of (Beta, Infinity) for fail highs and (-Inifinity Alpha) >for fail lows. And life was good. With null move, however, it's not uncommon for >my program to get stuck, alternately failing high and low, without ever properly >resolving the score. What's up with that? Must the research be done >(-Infinity Infinity)? Or is this a sign that I've a bug in the null move code? Pat, I just struggled with the same think, and I agree with Will that this should be part of a FAQ. It was explained as follows, when switching from a alpha-beta window to a beta-Infinity window, the search allows other possibilities that now return a fail low score. It happens. I track it and I get a fail low following a fail high about every 100 test positions or so. I can send you some positions that seem to cause this. Now for practical advice gleaned from this group. Beleive the initial fail high. If I fail low after a fail high, I ignore the fail low -- keep the fail high. Therefore the move that failed high should become the new PV move although you don't have a continuation and an exact score. Start the next iteration with alpha = failhighscore - 1, beta = infinity using the fail high move as the initial move to search. There is no point in researching with -infinity, infinity. If you run out of time, you still have the move -- the fail high move -- but just not a score or a continuation. 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.