Author: Dave Gomboc
Date: 08:21:53 10/27/99
Go up one level in this thread
On October 27, 1999 at 10:42:35, Ratko V Tomic wrote: >> When I spoke of a "good evaluation function", I did not mean a highly >> accurate one. I meant one that isn't random, isn't constant, has a >> reasonable, if minimal, understanding of what is going on, i.e. it >> doesn't think that getting oneself checkmated is a good thing. I'm >> not asking for a "highly-tuned specimen" here. > >The problem with minimaxing (via alpha-beta, or in any other way) of inexact >values is that due to the error propagation up the tree, the evaluation error >increases with depth. Of course, in chess (checkers and similar strategy games), >there are other beneficial effects of minimaxing unrelated to the positional >evaluation (such as detection of material loss, traps which cause early >termination), which for most root moves offset the drawbacks of the larger >positional error. Are you not relying on the independence of leaf node evaluations to show that the evaluation error increases? This assumption is false in practice. >Additional serious problem with adding a large number of positional terms in >evaluation function (the "lump sum" dogma of the conventional chess programming) >is, as suggested earlier, that the error also increases with the number of such >terms. Used in such manner the multitudes of terms cause the program to follow >(through the larger part of the game) the ficticious "gains" which are artifacts >of the noise band of the "lump sum" positional evaluation, i.e. among the >several candidate root moves close in the backed up "value" to each other, the >program's choice is essentially a coin-toss. > > >> All of that multi-level stuff can be done in one function. One. > >In principle, yes. In the similar way, you don't need even that single function >-- a single lookup in the appropriate table base will give you the best move. >Again, in principle. In practice (with limited computing resources) it isn't so >in either case. A single lookup in an approriate table is an implementation of an evaluation function, but I digress. >The "multi-level stuff" is a way to express how are chess knowledge and the >search most effectively applied, in a way most suitable to the strengths and the >limits of each. Stuffing the positional knowledge into the "lump sum" at the >terminal nodes of the alpha-beta tree, as the current dogma prescribes, is quite >different than using the knowledge to guide and constrain the search. >If you have ever analyzed positions in depth, with the help of a chess program, >you are aware that letting program think on its own for a day isn't nearly as >effective as playing out the lines you identify as important, and letting >programs "think" few minutes per proposed move, even though you may have a >highly negative score against that program. A much weaker human player (other >than a novice) + program used in this manner will be stronger than the same >program alone, in the longer time limits (i.e. in the limit of the maximum >strength of each opponent). > >This is true, even though the program may have explicitly more positional chess >knowledge packed in its evaluation function than a human player aiding the >program. The reason for increased strength of the combined player is in the >manner the little chess knowledge the human may have is used in a more effective >way and in a way more in tune with the nature and purpose of the positional >chess knowledge (i.e. it was designed for human-like search, which goes with a >great deal of reasoning and common sense, especially with checking out specific >kinds of followups for specific types of advice, and not to be converted to >points and all added together at some "quiescent" node). I suggest there are many more positions where the human would do worse than simply to let the machine grind. The difference is that a human operator has a good understanding of certain positions, and will know when they can step in to make a difference. If I selected 100 positions from GM play, and gave a 1800 player Crafty for a day for each position, and had Crafty analyze each position for the same length of time on its own, I do not believe that the 1800 would come up with superior analysis most of the time. I believe that after this 3-month experiment we would find that Crafty alone would consistently chose more reliable PVs, even if they were not so understandable to 1800s. Of course, I am discounting the possibility that the 1800 will elect to leave their Crafty alone to ponder. ;-) >> You can denigrate a "lump sum" evaluation function all you want, >> but in the end you have to make a choice between various positions. > >I didn't "denigrate" but merely presented an argument from several angles why >the "lump sum" isn't a very good method (the only advantage it has is the ease >of programming compared to other ways). You didn't exactly address any of the >specific points presented. The method you propose is reducible to alpha-beta with a single function, so what is left to address? There is no theoretical advantage to doing it a la Botwinnik. Currently, there is a severe practical disadvantage, which doesn't help the cause. >> When you do this, you are "lump summing", whether your >> evaluation architecture has five levels of indirection or >> none. Whatever evaluator you have is selecting a preference >> between a countably infinite number (or less) of possibilities, >> which means the evaluation function is representable as a >> mapping from a position to an integer. > >The same goes for direct full chess-tree table-base lookup. In principle yes, >but without practical relevance. The actual positional evaluation terms as used >in the chess programs are based on human chess theory. So these concepts (and >the corresponding derived formulas/algorithms used in the programs) are >optimized for use in particular manner -- for human-like search guidance / >constraints, reasoning and followups. What is without practical relevance is a method espoused by a fraud for thirty years. There are lots of people doing AI, and I have no doubt that many would like your proposal. However, straightforward search actually works. Dave
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.