Author: Pat King
Date: 12:22:50 07/20/00
Go up one level in this thread
On July 19, 2000 at 20:37:45, Hugh Cumper wrote: >The chess programs I have seen evaluate every position as if the pieces had just >been set up that way. Humans do not work like that nad I see no reason why >programs should. Most of the work in an evaluation function relates to >individual pieces - its value, whether the square it is on is in general a good >one for that rype of piece; or a small cluster of pieces - whether a pawn is >isolated, doubled etc. Most moves do not change these things for an arbitrarily >chosen piece so why work it all out again each time? The evaluation functions >could be distributed around the move generation and search code which would >maintain running totals. This would require a form of evaluation to be performed >at all nodes not just terminal ones but overall it would be more efficient. Has >anyone done this, or can someone explain why? I did this for a while, but in the end decided that doing all those additions and subtractions over the whole tree could be no better (and probably worse)than doing them all together at the leaves. Further, with lazy eval, doing it all at the end can be cheaper, as it's easier to know when to quit. And finally, I found the division of logic easier (object oriented design, with pieces ending up knowing more than they needed to for little or no gain for the running evaluation). Pat
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.