Author: Uri Blass
Date: 09:55:58 05/04/05
Go up one level in this thread
On May 04, 2005 at 12:04:44, Kevin K wrote:
>On May 04, 2005 at 09:31:44, Uri Blass wrote:
>
>>On May 04, 2005 at 07:27:02, Kevin K wrote:
>>
>>>int Quies(int alpha, int beta)
>>>
>>>{
>>>
>>> if (InCheck()) // check detection part
>>> return AlphaBeta(1, alpha, beta);
>>> val = Evaluate();
>>> if (val >= beta)
>>> return beta;
>>> if (val > alpha)
>>> alpha = val;
>>> GenerateGoodCaptures();
>>> while (CapturesLeft()) {
>>> MakeNextCapture();
>>> val = -Quies(-beta, -alpha);
>>> UnmakeMove();
>>> if (val >= beta)
>>> return beta;
>>> if (val > alpha)
>>> alpha = val;
>>> }
>>> return alpha;
>>>
>>>}
>>>This code came from http://www.seanet.com/~brucemo/topics/quiescent.htm
>>>He said that "This version will find mates in quiescence if they involve
>>>captures. Which version to use is a matter of taste and testing."
>>>I thought check detection is compulsory not optional.
>>>How does it work without check detection in qsearch?
>>
>>What do you mean by check detection.
>>
>>Do you mean checking if the last move allow the opponent to capture the king or
>>Do you mean checking if the last move threat the opponent king?
>>
>>InCheck() can be understood in both ways and it may cause confusion.
>>
>>Bruce means to check if the last move threat the opponent king.
>>checking if the last move allow the opponent to capture the king is not needed
>>in a legal move generator.
>>
>>If your move generator generates illegal moves then you need more code than the
>>code in bruce page and you need to add to bruce's code something like
>>
>>if last_move_is_illegal()
>> val=-Mate;
>>else
>
>
>In Bruce's sample program Gerbil, he called VGenMoves which also generates
>illegal moves in qsearch. And he didn't call InCheck() either.
>He allowed both, last move allow the opponent to capture the king and last move
>threat the opponent king.
>
>I don't know how it works.
I guess that it simply works by evaluating position without king as minimal
score against the side with no king.
Uri
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.