Author: Alessandro Damiani
Date: 18:35:10 10/19/02
Go up one level in this thread
On October 19, 2002 at 21:12:20, Nagendra Singh Tomar wrote:
>See my comments inline
>
>On October 19, 2002 at 20:37:35, Alessandro Damiani wrote:
>
>>On October 19, 2002 at 20:34:19, Alessandro Damiani wrote:
>>
>>>On October 19, 2002 at 20:08:49, Nagendra Singh Tomar wrote:
>>>
>>>>Another question that is part of the same discussion is
>>>>if(sval > alpha)
>>>>{
>>>> if(sval >= beta)
>>>> {
>>>>
>>>> }
>>>> alpha = sval; /* why this */
>>>>}
>>>>
>>>>be setting alpha to sval we are telling the qsearcher that we will not be
>>>>interested in any score less than the static score at the qsearch root.
>>>>Why so?
>>>>Normally we decide bounds on the search with a previous search done with a
>>>>higher or same depth as the current search. But here we are deciding the bounds
>>>>of a deeper search (qsearch) with a lesser depth search (static eval at the
>>>>qsearch root).
>>>>
>>>>Any comments are highly welcome
>>>>
>>>>tomar
>>>>
>>>
>>>this is just maximizing. by using operator "max" one would write (pseudo
>>>language):
>>>
>>> alpha:= alpha max value
>>>
>>>as we know this is aquivalent to
>>>
>>> if alpha<value ->
>>> alpha:= value
>>> [] alpha>=value ->
>>> skip
>>> fi
>>>
>>>or in C:
>>>
>>> if (value>alpha)
>>> alpha= value;
>>>
>>>
>>>in the code you present maximazing and beta cut-off are just combined.
>>>
>>>Alessandro
>>
>>I should add that the static score is an approximation of the value for all
>>non-captures. So, the maximum is at least the static score.
>
>I believe we do qsearch to see if there are any hidden surprises (a solution for
>the horizon effect). So the objective of doing a qsearch is to find whether the
>current positions score is really what we think or whether there is a big
>surprise which pulls it down drastically. So if we assume that the score is at
>least the static score then we are losing the advantages of qsearch, the reason
>at first place why we opted to do a qsearch
>
There is no definition of quiescence search that tells you what exactly one
should do. By using the static score as the lower bound we only consider threats
by the player to move. Therefore your "if we assume that the score is at least
the static score then we are losing the advantages of qsearch" is not true. This
qsearch is optimistic.
By using the static score as the lower bound the search is optimistic for the
player to move. There is no qsearch definition that says you must do so. Just
take a look at Don Beals null-move qsearch. Null-move is used to determine
opponent's threats. The lower bound of the node's score is set to the score of
the null-move. This is the pessimistic approach.
In each case qsearch works, either optimistic or pessimistic. Of course one can
implement any kind between both approaches, sometimes pessimistic, sometimes
optimistic.
One can look at qsearch as a blown up static score.
Alessandro
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.