Author: Nagendra Singh Tomar
Date: 16:16:59 10/19/02
Hi All,
In quiesce search as soon as we enter the quiesce() routine and we find that
the the side to move is not in check, we call static evaluation to get the
static score(say sval). Now if sval >= beta, we simply return sval/beta
(depending on whether its a fail-soft search), *without* doing the quiesce
search. Does that mean that we are assuming that the quiesce search will only
increase the score, because if the quiesce score were to be less than the static
board score then failing high would not have been correct.
We fail-high when we know that anything else will only better the score.
An incomplete routine highlighting the above point is shown below.
int quiesce(alpha, beta, depth)
{
if(ptm_not_in_check)
{
sval = evaluate();
if(depth == 0)
return sval;
if(sval > alpha)
{
if(sval >= beta)
return sval; /* why this */
}
}
}
\tomar
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.