Author: Brian McKinley
Date: 16:45:53 10/08/99
Go up one level in this thread
This discussion has given me some ideas. I believe it may be possible to solve this problem for draw by repetition without the sacrificing the advantages of the hash table. First lets break a draw by repetition into two categories: 1. The last repetition occurred before the start of our search. 2. The last repetition is part of our search. In the first instance, we can safely store the hash value, because this position will always return a draw value. In the second instance, we need to discard all of the hash values we stored after reaching the draw by repetition when we get back to the last repetition for this position. This could be implemented by switching to a new hash table until we back up the search to the repeated position, at which point we can switch back to the original hash table. Of course to do this right, we would need to keep a small stack of hash tables, and whether or not we need to start a new hash when a draw by repetition is encountered then becomes dependent on the node where we plan to discard the current hash table instead of the start of the search. The stack should remain small and these hash tables could be smaller than our main hash table. The 50 move rule has me stumped, but then it look like I am in good company. :) Brian McKinley
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.