Author: Robert Hyatt
Date: 11:47:13 12/01/99
Go up one level in this thread
On December 01, 1999 at 02:50:01, Inmann Werner wrote: >On November 30, 1999 at 20:04:00, Gerrit Reubold wrote: > >>On November 30, 1999 at 18:26:27, Inmann Werner wrote: >> >>>Since some time, I do the following. >>> >>>when I am in the loop in alpha-beta, trying all moves of a position and find a >>>new bestmove I do not stuff it in the hashtable (what others normally do?). I >>>look at all moves till all searched or a cutoff occurs. Then I stuff only the >>>cutoff or best move in the hash. >>> >>>Difference is, that i only stuff in hash one time and i do not have a "best move >>>so far" in the hashtable. >>>In my prog it works some better then the "normal" method. >>> >>>Has anyone tried this also? >>>Did I miss something in my idea? (don“t think so, cause it works well..) >>> >>>Werner >> >>Hi Werner, >> >>I do the same (in Bringer) as you do, however, I consider "our" way to be the >>standard way! If you store "best-so-far" moves, it would make little difference; >>those HT entries will be eventually overwritten by the best move anyway. >>Two Months (?) ago we had a thread "what should we store if all moves fails >>low?" with the answer: Nothing! There should be a saving of a few percent of >>treesize if you don't store "random" moves in the HT. Maybe this could be an >>improvement of your algorithm? >>Hope this makes sense. >> >>Greetings, >>Gerrit > >Hello Gerrit,Bob. > >I am astonished, that "my way" is the normal way cause it was "invented" by me. >Another thing of inventing old stuff new..... > >With "best so far" moves, I needed 2% to 5% more nodes. Do not know why.. > >Why stuff in nothing at fail low? >fail low is bad for move ordering, so I do not use it there. Ok. >But for normal hashing, I use fail low, if the value<alpha. At mate values, I >give back something like mate in 500....(brings my prog to sometimes not show >right "mate in #", bothers me not much) >I overwrite fail low values first, cause they are the "less value" entrys. >Why should I search all moves, only to recognize, that it again is a fail low? >I see nothing good in it. > >Werner You should _always_ store a fail-low result so you can fail low the next time without the search. That is the point of doing hashing in general. If you get a true score in position A, if you reach this position again you should get a true score from hash. If you failed high at position A, you should fail high if you reach it again (assuming bounds haven't made this impossible.) Ditto for fail low at A...
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.