Author: Sune Fischer
Date: 05:08:48 04/06/04
Go up one level in this thread
On April 06, 2004 at 07:45:51, rasjid chan wrote: >On April 06, 2004 at 05:28:54, Sune Fischer wrote: > >> >>>> else Record(a,ALPHA_FLAG,0); >>>Here may be the problem and here you deviate from the "full fail-soft" >>>model as you did not collect the best of the scores < alpha. >>> >>>I actually made this post because of the way I do fail-soft and I am not >>>sure yet I got it right and it posed problems. >>> >>>My answer >>>========= >>> >>>Let x_eval = eval() score for the node.(so cannot ignore standpat ) >>>let best_searched_score be the best score for all moves searched. >>> >>>best_searched_score <= alpha >> >>You should keep a best_searched_score and check for this independently of >>alpha. Initialize it to x_eval and if score>best_searced_score you update the >>best_searched_score along with alpha. >> >>>so either :- >>>a) alpha = x_eval (when set after eval() ) >>>b) x_eval < alpha (when no alpha improvement and this is your a0) >> >>yes, adjusting alpha to x_eval would be good. >> >>>my hash is as follow:- >>> >>>if (x_eval >= best_searched_score){ >>> storehash(x_eval, EXACT, depth = 0); >>> return x_eval;//****** fail low >>>} >>> >>>storehash(best_searched_score, UPPER_BOUND, depth =0); >>>return best_searched_score;//****** fail low >>> >>>Two different way to fail low, but I like exact more than upper bound >> >>You shouldn't return on an exact score if you have more moves to search, so this >>goes to the end of the search. >> >>I would write it as: >> >>if (best_searched_score > alpha_origial){ >> storehash(best_searched_score, EXACT, depth = 0); >>} else { >> storehash(best_searched_score, UPPER_BOUND, depth =0); >>} >>return best_searched_score; //****** fail low or exact >> >>-S. >>>These are the subtleties (or erroneous method) I find. >>> >>>Rasjid > >I think the misunderstanding is about how we store hash and how we >retrieved what is stored. THEY MUST BE CONSISTENT. > >The hashing of exact for QS , depth == 0 enables me to immediately return >if ONLY WHEN I PROBE FROM QS and not in full search. You didn't mention anything about any probes, I assumed x_eval to be the static eval and not a hash value. -S.
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.