Author: rasjid chan
Date: 09:10:13 01/24/04
Go up one level in this thread
I do not fully understand your post especially about calling q-search without alpha, beta. I don't know about the long check part but his quiescent search itself seems obviously wrong.His style of QS follows that of TSCP and it should fit into this :- int search(depth, alpha, beta){ int score; if (depth <= 0) return quiescent(alpha, beta); for (all moves){ makemove(); score = -search(depth - 1, -beta, -alpha); etc... } return alpha; } if that is basically his search() then this line in his q-search cannot work: if (score < alpha) return score quiescent(alpha, beta) { save the MAX_CHECKS_DEPTH score = full_evaluate() if (score < alpha) return score if (score > alpha) alpha = score if (side_to_move_is_in_check) generate_legal_moves() else if (MAX_CHECKS_DEPTH > 0) generate_good_equal_captures_queenpromotions_and_checks() else generate_good_equal_captures_queenpromotions() sort_the_moves() for each move in the list { make_the_move() score = - quiescent(-beta, -alpha) undo_the_move() restore MAX_CHECKS_DEPTH if (score < alpha) return score; if (score > alpha) alpha = score; } MAX_CHECKS_DEPTH = MAX_CHECKS_DEPTH - 1 return alpha } Best Regards Rasjid
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.