Computer Chess Club Archives




Subject: Re: Finding mate in the quiesce search

Author: Alessandro Scotti

Date: 06:33:29 08/24/04

Go up one level in this thread

On August 24, 2004 at 09:26:36, Uri Blass wrote:

>On August 24, 2004 at 08:45:56, Alessandro Scotti wrote:
>>What value do you return when you find a mate in the quiesce search? I used to
>>return a "mate" score but then I found this is not correct because many paths
>>were not considered in quiesce, so sometimes I got a "mate in n" score at the
>>root which wasn't really a forced mate. I've patched the bug by returning a
>>fixed value for now, but... which value is best?
>I return mate.
>I simply do not keep the mate backward.
>If I have RxR RxR mate then the capture RxR is not good and I return the same
>value that I return when RxR is illegal.
>When you are in the qsearch you evaluate the position.
>The evaluation of the position is a lower bound for the evaluation of the
>you cannot return mate against the side to move if the side to move is not in
>position that you search all of it's moves and the worst that you can evaluate
>for that side is the static evaluation.

Ok let me put this in code. So far I have used:

    return quiesce( ... );

I will now use:

    int result = quiesce( ... );

    if( isMate(result) ) result = -5000; // Any "bad" value...

Is that correct?

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.