Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: DB will never play with REBEL, they simple are afraid no to do well

Author: Ratko V Tomic

Date: 10:09:03 10/14/99

Go up one level in this thread


>>Of the commercial chess programs, as far as I can sense throuh play, only
>> Rebel has some appreciation of the error in the evaluation, and will
>> pass the small gain in a essentially won position, if the small gain
>> will bring complication (without there being any near term threat to it).
>> (Ed might be able to confirm whether it does it explicitly or such
>> behaviour may be a beneficial side-effect of something else.)
>
> I am under the impression that it is fairly common for programs to not
> switch to a new move unless it is some epsilon better than their previous
> move, where epsilon is larger than the difference in representable
> scores (e.g. epsilon 0.01 for centipawn evaluators.)
>

That's not quite the same thing. What I am saying is that a program should have
some heuristics to estimate more realistic uncertainty of an evaluation,
_specific_ to the position in the terminal node, and pick an almost sure but
slow win instead of what appears, within horizon, a quicker way to win (e.g. due
to apparent larger material gain) but with lesser certainty. Human players face
such choices in every game several times typically. For rated games, or
generally whenever the score is important, the slow but less uncertain road will
win more points than risky choices.

The error estimation specific to a terminal node (within alpha-beta type
searchers) and how to optimally deal with it are some of the most important but
generally ignored and still unsolved problems. I am sure some of the commercial
programs (Rebel at least) have some form of uncertainty estimation, based in
some way on the evaluation statistics collected during the search. Merely using
some fixed (or even computed at the root only) epsilon as your error interval,
isn't a real solution, but merely a sign of recognition of the problem.

The more realistic error would be some empirically derived function of the
parameters contained in the evaluation function, plus likely some others. picked
specifically for this purpose. Human chess theory unfortunately doesn't have
sharp enough criteria for this type of estimate and  I would guess only the
experimentation and a lengthy tuning process could produce something usable for
the programs.

Just playing against programs and observing evaluations as they iterate, one
good indicator of sharp, uncertain position, is the drop in the number of good
choices and their difference from the remaining choices. While one or two
choices may seem good, even winning, the rest is distinctly bad. In a
quiet/stable positions the score drop off is much slower, there are often 3-4
moves with almost equal score and only the outright blunders drop sharply. Now,
to get this kind of evaluation, one would need an accurate value for each ply 1
position, which is clearly much more expensive to compute than having the
accurate value for the PV only. Depending on move order, one would also have
accurate values for the superceded PVs, but not for the choices discarded due to
the cutoffs. So a poorer move order (at the root and elsewhere), while causing
extra work, does produce more data which could be used for the error estimation,
thus the results of that work shouldn't be thrown away (Rebel might be using
something of this sort for its error estimates). Of course, a real position
sensitive error estimation would go well beyond this kind of quick & dirty
heuristics.



>
>Wasn't it Lasker who said "when you find a good move, look for a better one"?
>

He didn't say "good enough" but just a "good" move. Like all folk wisdom, this
one has its opposite as a wisdom, too. Namely, it is actually true that a "good"
move is a sign of some weakness in the opponents position, so one might pursue
it further. The hard part is knowing when "good" is "good enough" and the
"wisdom" doesn't tell you that. The answer also depends on what type of game
you're playing. If you need very much the whole point, "good enough" is whatever
choice is very likely a win, e.g. a win of a piece in an otherwise quiet
position should be good enough. While winning two pieces or checkmating would be
even better, if that's going to cost you several minutes to find (if there is
anything more than the piece to find at all), it's unwise to waste time in that
type of situation (when the whole point is critical). If you're playing a
friendly game for fun, with relaxed time constraints and where result doesn't
matter much, you might look for and pursue more ambitious or double-edged
choices.




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.