Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Strange PVS results??? Q->Bob Hyatt

Author: Robert Hyatt

Date: 18:43:50 12/08/98

Go up one level in this thread


On December 08, 1998 at 16:00:23, Bas Hamstra wrote:

>Bob, I *try* to use PVS but get very strange results!
>
>Here is what I do:
>
>- At any node the first move is searched(a,b)
>- The first move is PV[0][Depth] *if* legal, otherwise best capture
>- Search rest (a, a+1)
>
>Now if a value > a is returned it is *at least* a+1
>
>Research that same move with (a,b)   a being *same* as above
>
>
>Now I get *NO* value > a???????????
>
>So *proven* value is at least a+1
>And proven value is not greater than a
>
>Something definitely wrong here. Can you point me to some pseudocode
>for PVS? Looked at Crafty source, but too complex to quickly see through
>all the extensions/null/futilities/razoring/delta's etc...
>
>
>Regards,
>Bas Hamstra.


the basic idea looks like this, which I think is what you are doing:
  if (first)
     v=-search(-beta,-alpha,etc);
  else {
     v=-search(-alpha-1,-alpha,etc);
     if (v > alpha & v < beta) v=-search(-beta,-alpha,etc);
  }


what this says is search the first move with the normal window, then search
each additional move with the null-window (-alpha-1,-alpha).  Normally this
will not fail low and we are done with that move.  On occasion it will return
a value > alpha, which means we may need to research...  but we avoid
researching if we are already being called ourselves with a null-window,
so that relaxing beta can't be done...

Note that it can happen that you get a fail high and then a fail low on the
research, thanks to our friend the hash table.  You might run without it for
testing...



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.