Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: crafty question !! (to bob mainly)

Author: Robert Hyatt

Date: 07:18:45 07/09/00

Go up one level in this thread


On July 08, 2000 at 14:33:13, pavel wrote:

>On July 07, 2000 at 15:23:44, Robert Hyatt wrote:
>
>>On July 07, 2000 at 12:33:10, pavel wrote:
>>
>>>about position.lrn
>>>
>>>
>>><snip>
>>>
>>>Crafty now has a permanent hash table that is kept from game
>>>to  game. A position gets into this hash table when a search
>>>value is significantly lower than the last search value. The
>>>permanent hash table can hold up to 65536 positions. Once it
>>>fills up, the positions are replaced on a FIFO basis, always
>>>keeping the most recent 64K entries. Each time Crafty starts
>>>a search, the positions  and  scores  from  this  table  are
>>>stuffed into the normal transposition table, and used during
>>>the search just like any other table entry.
>>>
>>>from the crafty ftp site (under crafty.doc)
>>>
>>>so it means that the position.lrn file doesnt get larger than 64000 entries. ;(.
>>>and its a default setting.
>>>why is it done ? I mean why is it restricted to only 64k?
>>>Is it possible to make it infinite? ( no size restriction)
>>>Is there a certain code that needs to be changed to overcome this problem,
>>>I would graetly appreciate your help. :)
>>>thanks
>>>Pavel
>>
>>
>>This is not intended to be 'permanent'.  Think about the casual user...  the
>>position.bin file would grow and grow, and eventually reach the size of the
>>_real_ hash table.  Now you have a _big_ problem as all the hash entries would
>>be marked 'never overwrite'...
>>
>>You can easily modify LearnPosition() (in learn.c) to increase this limit.  I
>>don't think it will help a thing...
>
>
>there must be a good reason you implimented this feature (learning feature), If
>it wont help a thing then why would you implement such feature?
>I am guessing that you did such thing mainly for people like me who learn from
>your source codes (as an standard example). but is it the only reason?
>also are there any other more_effective learning feature that can be implimented
>other than the one you are using.
>thanks
>Pavel


The "I don't think it will help a thing" was referring to making the file
_larger_.  This is an 'evasive maneuver' to handle the case where someone
finds a short/narrow book line and gets Crafty out of book quickly.  It would
normally play the same game, over and over, at the same time control.  This
lets it vary to avoid losing the same way two times in a row.  It helps in
this specific case, only.  But on a chess server this is not uncommon if your
program is automatic and will play as many consecutive games as the human wants
to play.  Without this, he will find a hole and drive a truck through it.



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.