Author: Bruce Moreland
Date: 15:59:21 11/26/00
Go up one level in this thread
On November 26, 2000 at 14:40:16, Dieter Buerssner wrote: >On November 26, 2000 at 13:03:49, Bruce Moreland wrote: > >>The quiescent search included at the end of this does null-moves implicitly. If >>the score returned after a null-move is better than the score returned after any >>capture, it will return the null-move score. > >... > >>int qsearch(int alpha, int beta) >>{ >> int cur; >> >> cur = eval(); >> if (cur >= beta) >> return beta; >> if (cur > alpha) >> alpha = cur; >> while (captures()) { >> make_next_capture(); >> cur = -qsearch(-beta, -alpha); >> unmake_move(); >> if (cur >= beta) >> return beta; >> if (cur > alpha) >> alpha = cur; >> } >> return alpha; >>} > >I cannot see any null move here. What am I missing? The usual definition of >null move is, that you pass the right to move to the opponent. For qsearch, this >would mean, instead of me, let the opponent capture. If I am still better than >beta, this is a fail high node. Otherwise, I try my captures in the ususual way. >While I have not tried this idea, I would think, that it won't save anything in >qsearch, to the contrary, probably more nodes will be searched on average. > >The qsearch routine above looks to me like a "standard" qsearch, that returns >the stand-pat when >= beta without generating any moves. It is a standard qsearch. I argue that this could be called a null-move quiescent search, since you can choose from amongst several possible moves, or you can choose not to move. The terminology isn't that big a deal, I think. >Let me add one thing to the good advice you gave in you other post. >Skipping moves, that obviously cannot bring the score to alpha can have a few >traps. I.e. say alpha is -0.5 and the stand-pat is -4.5 in KNPK. Capturing >the last opponent pawn would not bring back the stand-pat to alpha, even not >with a considerably large safety margin. Nevertheless, the score is 0.0 which is >> alpha. Yes, there are some problems, and in fact I had this bug. I simply turn this off when there are only a few pieces. It's not perfect. You could be giving a huge bonus for connected passed pawns, and not allow one of them to be captured. bruce > >-- Dieter
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.