Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: A question about quiescence search

Author: Antonio Dieguez

Date: 22:08:46 10/19/02

Go up one level in this thread


>>>Not always..
>>>At least not for forced-capture cases. let me explain forced capture. Suppose at
>>>the end of the extensive search (qsearch root)
>>>we have our rook(trapped or pinned to a higher value piece so that it is
>>>immobile) and suppose the
>>>opponent's pawn is attacking it. The attacking pawn is also guarded by another
>>>pawn. The only way for us to avoid losing our rook is to capture the atatcking
>>>pawn by say our knight. This is a forced capture. now in the next move the
>>>opponents other pawn will take our knight so we lose our knight to the
>>>opponent's pawn. In this case the capture is leading to a worse score than the
>>>static score.
>>>We can have many such cases during the search. Rook and pawn are just symbolic
>>>of a high value and low value piece.
>>
>>you are completely right in what you mean. Personally I get out of the qsearch
>>in a few cases only sometimes when a pawn is attacking a piece, or a horse
>>attacking a rook or queen, or a bishop at.a rook on a corner, or a rook at.a
>>queen at b2/g2/b7/g7. That is something minimal to do though, I suposse there is
>>nothing so great to do in the qsearch anyway because that is the reason for the
>>main fullpowered search. At least one could add all the cases when there are a
>>piece enprise, but I didn't like that when I tried(so often not affecting in
>>nothing, except taking more time to reach depth)
>>
>>seeyou.
>
>
>All of that botheration can be taken care of just by being pessimistic and not
>assume that the static score is the best one

I suposse you mean the worse one?

(this is what I think Alessandro
>meant)

may be altough the details of that nullmove qsearch details I don't know. A
trivial implementation of that is nonsense.

> So just if we remove the line as shown below
>
>if(score > alpha)
>        {
>            if(score >= beta)
>                return score;
>	    alpha = score; /* remove this line */
>	}

well... and what you achieve with that?, you will use the static evaluation or
not?, you are just using a wider window and not using the eval, afai can see.

look above, you believe the eval when returning above beta, but not enough to
change alpha...

>we can have a pessimistic (and so more accurate) qsearch.

actually a very bad one if you don't use the eval and force the side to capture.

what one do usually in a qsearch? well as you know we are finishing the lines
here so one must use the eval. But just returning it is too drastic so one keep
seeing moves but tightening the spectrum, seeing only the ones that could change
the situation too much, tipically captures or checking moves.

Note that the eval must be threated as any other move.
One can make an exception to that if the enemy has a threat, so we don't allow
to stand pat with eval neither change alpha, but in that case we try not only
_just_ captures (unless eval<=aplha), because if you don't use the eval then you
are forcing to make a move of those.



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.