Author: Tom Likens
Date: 07:13:03 08/25/03
Go up one level in this thread
On August 24, 2003 at 08:13:47, Ross Boyd wrote: >On August 23, 2003 at 02:18:33, Tim Foden wrote: > >>On August 23, 2003 at 01:53:11, Ross Boyd wrote: >> >>> >>>btw, I don't mean the standard hashing that nearly everyone uses. >>> >>>I've heard a few people talking about EH but can't imagine what the idea is. >>>Can someone enlighten me please... thanks! >>> >>>Ross >> >>Hi Ross, >> >>This is where you have a separate hash table that is used just by your >>evaluation. When you call Evaluate() it looks in this hash table to see if it >>has previously evaluated this position, and if so, it just returns the value. >>Otherwise it does it's normal evaluation, saves it in the evaluation hash table, >>and then returns the value. >> >>Depending on your evaluation function, this may or may not provide a speedup. >> >>Cheers, Tim. > >Thanks for explaining it. I thought it would be more elaborate than this. At >first thought, I would imagine the normal hash table lookups would make an extra >eval hash redundant. Perhaps the key to the eval hash is that the returned >scores are not bounded in any way or tied to a depth and will always be used if >found. > >I guess it would payoff most for really complex/slow evaluation functions. > >What size relative to a 64Mb TT would the eval hash be? Any idea? > >Thanks Tim, > >Ross One thing to be careful of is just what you allude to, as long as you hash only the evaluation terms that are path or depth independent (i.e. they depend *only* on the current board position and not what happened previously) it will be accurate. If you start including things like castling bonuses etc., then you can end up returning inaccurate values (as in, "been there, done that"). regards, --tom
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.