Author: Robert Hyatt
Date: 08:09:26 09/18/04
Go up one level in this thread
On September 18, 2004 at 04:05:38, Sune Fischer wrote: > >I decided to try out the triangular PV thing Bob >speaks so highly of, to see if it improves move ordering... > >I was careful to terminate the PV on all exact scores - of course. >Still I was getting illegal moves in the PV. > >It turned out to be a hash/nullmove problem. > >See, in the hash I adjust the window down on UPPER bounds, ie. >something like: > if (flag==UPPER && score<beta) > beta = score; Are you doing PVS? If so you won't do this a dozen times during a long search, most likely. But I do this in Crafty as well, and it doesn't _ever_ get illegal moves in the PV. > >The idea is that if we know the score is in the interval [x,y] >then there is no reason to search with a window of [x,y+z]. >It's a common trick I believe. > >Unfortunately, the search will occasionally fail high on the new beta, in my >case it was a nullmove that failed-high. > >That's clearly contradictive with what the hash just told us so >it doesn't actually make any sense, but apparently it happens anyway >(instability?). > >Now the score at the previous node might be an exact value (or a fail high later >on), and the PV will now be concatenated from an old search branch. > That can't happen. You don't update the PV on a fail high, ever. Only if score is > alpha and < beta... > >I can't see that I am doing anything wrong. >Perhaps adjusting beta is just not a good idea? > >-S.
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.