Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: quiesce node explosion

Author: José Carlos

Date: 23:53:37 01/25/04

Go up one level in this thread


On January 24, 2004 at 17:12:45, Tord Romstad wrote:

>On January 24, 2004 at 15:57:50, Mike Siler wrote:
>
>>In an average middlegame position, around 80-85% of the nodes my program
>>searches are quiesce nodes. I have a static exchange evaluator and I only search
>>captures with SEE value > 0. It seems like other engines are always under 25%
>>qnodes. What else should I be doing to reduce these numbers?
>
>Use the SEE more aggressively.  When the static eval is below beta, but
>static_eval+(value of capturing biggest hanging enemy piece) > beta+margin,
>return beta.  This is too risky unless your SEE is very sophisticated.

  This doesn't make sense unless you do a real qsearch in your SEE, which is
ridiculous of course. Otherwise, you simply assume the opponent doesn't have a
capture anywhere else on the board that can bring his score above alpha again. I
do not understand why you assume that.

  José C.


>There are
>two ways to solve this problem:  You can improve the accuracy of your SEE, but
>this tends to make it much slower (of course).  You can also use your static
>evaluation function to estimate the tactical complexity of the position, and use
>this estimate to decide whether it is safe to trust your SEE at this node.  If
>there
>are pinned, trapped or overloaded pieces or too many pieces are hanging, you
>search the captures, if not you just return beta.
>
>I use the second approach.  My SEE is rather simple, and my qsearch uses
>information
>computed by the static eval to decide whether (and which) captures should be
>searched.
>
>Tord



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.