Author: Vasik Rajlich
Date: 03:25:19 04/06/04
Go up one level in this thread
On April 05, 2004 at 12:54:30, rasjid chan wrote: > >I think most chess programmers implement hash tables my way, ie >by thinking it thru themselves. All the internet articles I found >about hashing only mention the the bare idea of hashing. I am not sure >whether any book on chess programming devote a full chapter on hashing >and if they do, what details do they provide. > >I remember a certain professor (Marsland) who wrote something like... >the bulk of chess programming bugs come from hash-tables.... >alpha-beta interacts with hash-tables in strange ways... > >At least they interact strangely for me. Every a little while, it seems >something new turn up and I just have to post one example, a recent >observation,to this forum to be safe that I am not way wrong ! > >I do fail soft and fails / hash outside window bounds. >If on a hash probe and the hash is EXACT and fails high, >I return hash value ( > beta). The ply below fails low with >this "exact score". > >If after seaching all moves of a node and it fails low with a best-score >< alpha, the normal hash is hash as best-score as upper bound. >But if this best-score happen to be "exact", I fail low but hash as >EXACT. > This is absolutely correct. Good fail soft has a lot of subtle points, and you just discovered one of them. If you use PVS, then according to various stuff I've read here fail soft does not offer any serious improvement over fail hard. In MTD (f), fail soft is extremely important. However, your idea, which I also have implemented, is even then still not especially important. Usually, when you fail high, you are failing purely with an open-ended bound. (Ie score to +infinity - or another way to say it is that you can only set the lower bound.) There are some rare exceptions to this, mainly from the q-search. So, when you fail low at the next iteration, you generally are failing low with another open-ended bound. (Ie -infinity to score, or only upper bound.) The exceptions to this are when you had failed high with a true bound in q-search, or when you had previous bound information. Both are extremely rare. I would suggest you first decide whether you will use PVS or MTD (f). This will determine how much work fail soft merits. Vas >Hope I am not missing something big ? > >Rasjid
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.