Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Quick question on Killer heuristic

Author: Dan Newman

Date: 23:02:30 05/03/00

Go up one level in this thread


On May 03, 2000 at 18:20:36, Robert Hyatt wrote:

>On May 03, 2000 at 14:31:19, Dan Newman wrote:
>
>>On May 02, 2000 at 21:29:46, Robert Hyatt wrote:
>>
>>>On May 02, 2000 at 20:35:09, William Bryant wrote:
>>>
>>>>In my program my killer table is simply an array of [ply][2] with two killers
>>>>allowed per ply.  When updating the killer table, I replace the first killer
>>>>with the new one (assuming it is not the same move), and move the old first
>>>>killer to the second killer position, dropping what ever move is in the second
>>>>killer position.
>>>>
>>>>In the introductory paragraphs of Ernst's book, he describes using counters
>>>>to order the killer moves (page 23)
>>>>"The killer moves carry "hit" counters with them which specify their priorities
>>>>for sorting and replacement."
>>>>
>>>>This would, of course, require a larger table, and more time spent updating
>>>>and sorting the killer table.
>>>>
>>>>Is this more efficient or effective than a standard replace table?  Other
>>>>thoughts or comments about organizing the killer moves?
>>>>
>>>>Thanks.
>>>>
>>>>William
>>>>wbryant@ix.netcom.com
>>>
>>>
>>>I use counters...  I think this is the right way to do this...
>>
>>Bob,
>>
>>I just looked at Crafty v17.10 (to see if and where you zero the counters)
>>and didn't see them.  I suspect you got rid of the counters when you went
>>SMP (otherwise you'd have to do some locking to keep the counters and moves
>>coherent, I suppose).  [I've been zeroing the counters in my program in the
>>wrong spot I think...]
>>
>>-Dan.
>
>
>you are right.  I don't know when I did that.  I now just always add a new
>killer by bumping #1 to #2, and #2 out.  Unless the move is already in the
>list in the #1 spot.  Then I leave it alone.
>


I just tried this in my program.  It seems like it doesn't work quite as
well as the counting scheme, but the difference was almost too small to
measure accurately.  The node rate went up a bit but so did the node
count--both about 1%, I think--for a fixed depth=8 search of WAC.  So I
put back the counting version...

>I'm not sure when I did this.  But for your question of zeroing the counts,
>I did it in search...  when I entered search, I would clear killer_count[ply+1]
>(the next ply's counters).


Thanks.  That's actually where I was doing it, but for some reason it looked
wrong to me--now it looks OK :).

-Dan.



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.