Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: are you saying deep blue cleared hash with every move

Author: Robert Hyatt

Date: 14:06:32 09/09/01

Go up one level in this thread


On September 09, 2001 at 15:09:44, Vincent Diepeveen wrote:

>On September 09, 2001 at 09:51:42, Robert Hyatt wrote:
>
>>On September 09, 2001 at 08:39:13, Vincent Diepeveen wrote:
>>
>>>On September 08, 2001 at 23:18:09, Robert Hyatt wrote:
>>>
>>>>On September 08, 2001 at 14:02:41, Vincent Diepeveen wrote:
>>>>
>>>>>On September 08, 2001 at 13:53:03, K. Burcham wrote:
>>>>>
>>>>>Yes it had to, because it was a preprocessor program,
>>>>>perhaps it didn't clear 'best move' entries in the software.
>>>>
>>>>
>>>>This is not a given.  You can be a pre-processor without clearing the hash
>>>>between _every_ pair of moves.  You only need to clear the hash scores if you
>>>>change some of the evaluation weights.  Nothing says a pre-processor has to
>>>>do this after each move.  Early versions of crafty did some pre-processing, but
>>>>only at two distinct places in the game, namely on the transition between
>>>>opening to middlegame and middlegame to endgame.  That resulted in _exactly_
>>>>two hash table clear operations in a game.  I see no reason why your assumption
>>>>has to be valid at all.
>>>
>>>the important thing is that it didn't use hashtables at all in
>>>hardware and that it of course couldn't use transposition entries from
>>>a previous search. Obvoiusly you don't need to clea rit, but practically
>>>it comes down to the same thing.
>>
>>
>>Why?  If the root positions for move #X and move #X+1 are similar, then no
>>evaluation weights need to be changed.  And the hash table _and_ scores can
>>be re-used just fine.  This is what I did in early versions of Crafty.
>
>right but that is very primitive chess code. If they would do the
>same their evaluation would be even more primitive and they completely
>unnecessary would load each time new PSQ values to the processors.


I think that is a ridiculous statement to make.  _your_ program is a form
of pre-processor.  It loads the piece/square tables _one_ time at the beginning
of the game.  Just like I do.  Is that even more primitive than a program that
adjusts them 3 times during a game?  Which is more primitive than a program
that adjusts them after _every_ move in a game?

I don't follow this reasoning at all...




>
>>
>>
>>>
>>>If you can't use search scores from a previous search, then in human
>>>eyes it is completely justified to say that this sucks bigtime!
>>
>>
>>
>>But there is nothing to say they couldn't.  Crafty used to be a pre-processor
>>for lots of things, and it knew when to clear the hash and when it didn't need
>>to, with a simple check in the preprocessor phase.
>
>>
>>
>>>
>>>>
>>>>
>>>>>
>>>>>Note that it didn't use hashtables onboard of each hardware
>>>>>cpu either.
>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>i assume deep blue had some type of memory storage for eval
>>>>>>    of previous lines searched. if it did are you saying  that
>>>>>>       deep blue cleared its memory (hash), with each move?
>>>>>>
>>>>>>if it did not clear its memory with each move then your seven
>>>>>>   second search limit does not make sense to me.
>>>>>
>>>>>>and can you tell me which game this move was taken from, so that i
>>>>>>  can get a better analysis of this position. i can find it, but you
>>>>>>    can save me a lot of time, if you will.
>>>>>>
>>>>>>i will post my results after the analysis of this position.
>>>>>>
>>>>>>kburcham



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.