Author: Robert Hyatt
Date: 09:18:44 08/15/01
Go up one level in this thread
On August 15, 2001 at 11:58:28, Alvaro Jose Povoa Cardoso wrote: >My program (checkers) does hashing in all but the root and quiescence search. >This is quite standard I think. >So I decided to changed that to only store in hash, nodes that are 2 plies above >quiescence while keeping hash probing in all nodes as before (except root and >quiescence). >I got some tree size increase, but in spite of this I got a pretty good time >reduction. >Since it is faster now, I decided to keep it. It seems my hashing is slowing >things down considerably. >I would like to ask if anybody has tried this in chess and what results did get. > >Thank you, >Alvaro Cardoso I found, several years ago, that hashing in a simple q-search was really not worth the effort. In my case, hashing in the q-search reduced the total tree size by 10%, but it slowed the program by an equivalent amount. Which meant it was a "wash" or "break-even" deal. And since it was simpler, I chose to not hash in the q-search at all. This has another advantage later on. If you don't hash in the q-search, then your hash table "loading factor" will drop significantly, meaning that if you must play a game with a smaller-than-optimal hash table, you will be hurt significantly less since you are storing far less information in the table. YMMV of course. And if your q-search is not "simple" things may change a lot. Cray Blitz didn't just do captures, it did checks, check-evasion, and even some threat moves in the q-search, and I did hash the q-search stuff as in Cray Blitz it was faster to do so. But with a simple captures-only q-search the opposite seems to be true. And so far, I don't see any evidence of any kind that suggests that a simple q-search isn't just as effective as a complex one. And it is definitely easier to write/debug.
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.