Computer Chess Club Archives




Subject: Re: Move table

Author: Robert Hyatt

Date: 08:00:34 01/13/99

Go up one level in this thread

On January 13, 1999 at 02:32:49, Will Singleton wrote:

>On January 13, 1999 at 01:18:17, Bruce Moreland wrote:
>>>>The current positional value is in a global variable.  I mess with it in
>>>>"makemove" and I put it back in "unmakemove".
>>>Hmm, so if you incrementally update the positional value, as well as the
>>>material value, what's left for the eval to do?
>>Nothing, if you don't have any king safety, pawn structure eval, or evaluation
>>terms that have anything to do with the pieces surrounding a piece, rather than
>>just the piece itself.
>I thought you meant that the entire positional value was incrementally updated.
>Someone must have tried that at some point.

when you think about it, it isn't practical.  Because if you have any eval
terms for piece interaction, then when you move one piece, you have to update
the eval stuff for all the other pieces that depend on that piece.  And your
eval will be slower than if you just wait to do it at endpoints.  In Cray Blitz
we did a lot of incremental updating like this, but only on non-interactive
stuff, like isolated pawns, passed pawns, and so forth.  Then, in the eval,
we only had to sum/interact the stuff that interacts, since we already had
the piece/pawn independent scores done.  This worked on the Cray because each
cpu has so many instruction pipes that we could do the incremental eval stuff
and hide it behind the time needed to update the chess board and hash key

There are lots of things to try, however.  IE doing a full eval somewhere
between the root and tip, and then only incrementally updating some of the
stuff between that point and the tip.  Several already do a variant of this
no doubt.

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.