Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: History Heuristic

Author: Robert Hyatt

Date: 20:32:52 08/28/00

Go up one level in this thread


On August 28, 2000 at 22:36:26, Larry Griffiths wrote:

>On August 28, 2000 at 22:21:40, Robert Hyatt wrote:
>
>>On August 28, 2000 at 19:32:05, Larry Griffiths wrote:
>>
>>>I have been reading about the History Heuristic and have seen pro's and con's
>>>about it.
>>>
>>>I plan on implementing it to see what happens.  This heuristic is related to
>>>killer moves and uses the from and to squares in a 64 x 64 array to maintain
>>>history information when moves are bestmoves or cutoffs.  Each entry has 2 to
>>>the depth power added to it when a bestmove or cutoff is found.
>>>
>>>Would you recommend the History Heuristic, and has anything changed for the
>>>better with the method described above?
>>>
>>>Thanks in advance.
>>>
>>>Larry.
>>
>>
>>Works fine, but don't use 2^depth...  for reasonable search depths, that will
>>overflow 32 bit counters almost immediately.  I use depth^2 which is much
>>safer...
>>
>>Other than that it works fine.  If you don't get a cutoff by the time you have
>>tried a few history-ordered moves, you probably should give up and just search
>>the rest of the moves in random order.
>
>I have Jonathan Schaeffer's paper "The History Heuristic and Alpha-Beta Search
>Enhancements in Practice".  I also figured the counters might overflow and it
>looks like he ran his tests to around 9 plys.  He also describes that the
>history tables can become flooded with information, decreasing their usefulness.
> I wondered if this was due to an overflow of his counters at plys 8 and 9.
>
>Excuse me Bob, but I have not done powers in quite a while and I was thinking
>2^depth amounted to shifting the binary value 2 left depth positions.  Maybe I
>am just tired, but is depth^2 like depth squared?  I plan on using 64 bit
>counters so I am not worried about overflowing the counters.  I thought I would
>also try different formula's for calculating the weights.
>
>Larry.


Yes, depth^2 is depth squared, which is much safer than 2^depth.

Another point is that after each search, you need to scale the history counts
back a bit. I shift them all right 8 bits, which means after 4 moves they are
zero, if a particular entry has had no use in the previous 4 searches.


64 bit counters would solve the problem for now, allowing 2^depth to work.
slower of course.



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.