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". >>>> >>>>bruce >>> >>>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. >> >>bruce > >I thought you meant that the entire positional value was incrementally updated. >Someone must have tried that at some point. > >Will 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 stuff... 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.