Author: Bob Durrett
Date: 06:49:55 11/27/02
Disclaimer: I do not know the specifics of how position evaluation is accomplished in the top chess engines. From what I have read here, position evaluation is typically accomplished with a "function." This function appears to be fairly simple. Otherwise it would be called a position evaluation "subprogram." Since a large number of positions are evaluated, the evaluation must be very quick and hence simple. Less processor time is available for searching if the amount of processor time used for position evaluation is increased. In an extreme example, one might devote 90% of the processor time to position evaluation. I do not know what this percentage is in practice. If a huge number of positions are evaluated, then the total amount of processor time devoted to evaluation might be large. It seems that there is a tradeoff between complexity of position evaluation and the number of positions evaluated. My impression is that current engines devote only a very small percentage of the processor time to evaluation of any given position. Devoting a large amount of processor time to position evaluation of each individual position would make sense, or so it seems, only if the evaluation were very very good. Essentially, this would mean evaluating only a relatively few positions but evaluating them extremely well, using a complex position evaluation subprogram. In theory, a perfect evaluation subprogram would have to evaluate only one position for each move made. Maybe someone would say that chess engines do just that. They "evaluate" the position after the move was made. They just do it using search algorithms. So, this leads to the following question: Has anybody yet explored the option of using complex evaluation subprograms [which do not rely primarily on the use of search algorithms] for position evaluation? Bob D.
This page took 0.01 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.