Author: rasjid chan
Date: 12:24:11 04/05/04
Go up one level in this thread
On April 05, 2004 at 14:44:04, Dann Corbit wrote: Maybe you miss my point. Actually I have no references about the technical "intricacies" about hash table implementation and I rediscover "new" things about hashing all the time which is BAD. So I post this to hope someone just confirm with me once if my analysis could be way wrong! I did have all the assert()s, you mentioned and I may be the top in using assert(). Best Regards Rasjid >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. >> >>Hope I am not missing something big ? > >Here are some hashing safeguards: >1. If you are in debug mode, do a full recompute of the hash and compare it to >the incremental hash (both after makemove and unmakemove). If something is >different you have a bug. >2. Check reversing colors -- is the hash different? >3. Check all castle states -- is every hash different? >4. Check all 16 e.p. values -- is every hash different? > >Check what happens when you do a null move both make and unmake
This page took 0.01 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.