Author: Ed Schröder
Date: 14:36:38 01/23/04
Go up one level in this thread
On January 23, 2004 at 15:26:39, milix wrote: >On January 23, 2004 at 14:53:17, Harald Lüßen wrote: > >>On January 23, 2004 at 14:22:28, milix wrote: >>>I tried to implement the long checks idea of Ed Schröder >>>(http://members.home.nl/matador/chess840.htm#QS) but not worked for me. >>>Maybe my QS is not implemented correctly to have this checks concept but I can't >>>figure it by myself. I wish for some help here (maybe from Ed himself) :-) >>> >>>In my main search, before I enter the QS I set the variable MAX_CHECKS_DEPTH to >>>2. >>> >>>My quiescent in pseudo code: >>> >>>quiescent(alpha, beta) >>>{ >>> save the MAX_CHECKS_DEPTH >>> score = full_evaluate() >>> if (score < alpha) return score >> >>Change the last line to >>if (score >= beta) return beta; >>And again >>if (score >= beta) return beta; >> >>> if (score > alpha) alpha = score; >>> } >>> MAX_CHECKS_DEPTH = MAX_CHECKS_DEPTH - 1 >>> >>> return alpha >>>} >>> >>>Thanks in advance! >> >>Harald > >Thanks for the response but this didn't work also. Returning beta seems to not >work with long checks concept (I get wrong evaluations and bad moves). >Ed writes in his article: > > Get_a_Move_Until_No_More_Moves -> following the move ordering > if (Lazy_Eval_is_true) -> done, return score, see elsewhere > Evaluate_Position(); > if (Trick_one_is_true) -> done, return score, see elsewhere > if (move_does_check_the_opponent_king) -> go one ply deeper in QS > if (ALPHA >= SCORE) -> done, return score > if (Trick_two_is_true) -> done, return score, see elsewhere > else: go one ply deeper in QS > >I do not use Lazy_Eval, Trick_one and Trick_two. >When I return when alpha >= score get correct move but I doesn't found the >mates. For example: >2k4r/ppp5/2p1b1Q1/4q3/3bP3/3B2P1/PPP1N2P/5R1K b - - 0 26 >it see the Rxh2 but evaluates it with -4.86, not mate score >5n2/B3K3/2p2Np1/4k3/7P/3bN1P1/2Prn1P1/1q6 w - - 0 1 >doesn't find the mate > >The long checks concept supposed that it will find these mates in the first >iteration of main search (and it does in Rebel) but it doesn't for me... Have you set ALPHA to LOW_VALUE when the king is in check? My best, Ed
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.