Author: Nagendra Singh Tomar
Date: 01:14:25 10/27/02
Go up one level in this thread
On October 27, 2002 at 04:05:19, José Carlos wrote: >On October 26, 2002 at 19:04:33, Nagendra Singh Tomar wrote: > >>On October 26, 2002 at 12:27:46, José Carlos wrote: >> >>>On October 26, 2002 at 12:07:16, Antonio Dieguez wrote: >>> >>>>>>score = -alphabeta(board, -alpha-1, -alpha, depth-1); >>>>>> >>>>>>if(score > alpha && score < beta) >>>>> ^^^^^^^^^^^^^^^ >>>>> >>>>> Don't use beta there. You just want to know you're above the pv score (which >>>>>is alpha now). >>>> >>>>if I am not mistaken it depends on the exact writing. >>>> >>>>he can write >>>> >>>>make... >>>>score = -alphabeta(board, -alpha-1, -alpha, depth-1); >>>>if(score > alpha && score < beta) >>>>{ >>>> unmake & make(depends on the program) >>>> score = -alphabeta(board, -beta, -alpha+1, depth-1); >>>>} >>>> >>>>unmake >>>> >>>>if (score>alpha) >>>>{ >>>> blabla >>>> if (score>=beta) >>>> { update killer; update hash; etc. } >>>>} >>>> >>>>------------------- >>>>or he can write something like this? >>>> >>>>make >>>>score = -alphabeta(board, -alpha-1, -alpha, depth-1); >>>>if(score > alpha) >>>>{ >>>> if (score>=beta) >>>> { unmake; update killer; update hash; return beta; } >>>> unmake & make(depends on the program) >>>> score = -alphabeta(board, -beta, -alpha+1, depth-1); >>>> unmake >>>> if (score>alpha) // 'cause it could fail low right? >>>> { >>>> if (score>=beta) >>>> { update killer; update hash; return beta; } >>>> etc. >>>> } >>>>} >>>> >>>>I have written the first option, I think I can't make it prettier with the >>>>second option or something else but may be you can write it better off corse. >>>> >>>>Ah if the search always return alpha or beta then that can change things. >>>> >>>> >>>>antonio's usefull post. >>> >>> I don't quite follow. He's talking about the null window searches after the >>>pv. He's searching [alpha,alpha+1] so he might fail high with alpha+1 or >>>alpha+500, and beta isn't useful here at all. All you know if you fail high is >>>"I've found a move that seems to be better than my current pv". >> >>That <beta check is needed because if the score is >beta, then also we are not >>interested in the score because we know that this is too good a score for >>us for the opponent to allow .. so the opponent will not let us lead to >>the board where we can play this move.. thats why we ignore for >alpha and >beta cases. > > Wrong. In the root you consider every move. There's no way for your opponent >to avoid any of your root moves ;) > > José C. > > You are right .. But I meant the non-root case !! >>So you open the >>>window and research to get a true score (note that you can also forget about the >>>true score and keep searching the other moves with [alpha,alpha+1] hoping no >>>other move fails high and trust your fh and go to the next ply). >>> Beta only matters if you search [alpha,beta], this is, if it is one of the >>>bounds. >>> >>> José C.
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.