Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: KRBKPP

Author: Robert Hyatt

Date: 08:08:10 10/30/01

Go up one level in this thread


On October 30, 2001 at 10:37:04, Dan Andersson wrote:

>I agree. That logic is like evaluating a KRPkrp endgame by looking first at The
>corresponding KRPkr EGTB. And seeing only a draw for white, thus concluding that
>black must be better. Bad things are sure to happen then, since that extra black
>pawn may hurt black. You can't even be certain of it if the corresponding KRkrp
>is won for black. Chess don't work this way (subgames are not additive), and I
>remember quite a few endgames where I would gladly have given a pawn away for
>free. To secure a draw. Faulty logic.
>
>MvH Dan Andersson


That is the _wrong_ way to look at this.  The question is probability.  How
many positions in KRB vs KRPP do you think are _won_ for the KRB side?  And
how many are not?

If you believe, as I do, that the vast majority _are_ draws, and this is
provable pretty easily, then I certainly want my program to avoid such a
position if it has the KRB, because it isn't going to win.

IE if crafty has a KRBP vs KRPPP, it is _not_ going to trade away that
last pawn to reach a KRB that is most likely drawn.  While many programs
will do this (I see this rule kick in with reasonable frequency on ICC).

When I see an exception that causes it to misevaluate and lose, I certainly
modify the code to recognize the exception.  But so far, it hasn't happened
that I have seen.

It is very difficult to make evaluations 100% perfect, which is getting
overlooked here.  IE most programs are probably under 75% in evaluating
king safety correctly.  That is going to have a much more significant
effect on how the program does than this simple ending heuristic.

Meanwhile I don't have to suffer through the embarassment of seeing my
program trade into a KRB vs KR with an evaluation of +3, or into a KRB
vs KRPP with an evaluation of +1.  Particularly when _before_ the trade
it really _was_ winning.

If you strive for 100% accuracy, you are doomed to failure from the beginning,
until your program can search to a forced mate from the starting position.  I
haven't suggested that anyone copy this rule if they don't want to.  I didn't
suggest that anyone copy the bishop trapped at a7/h7 stuff either, but when I
first did it, I busted most every program around with that trap, over and
over, until they decided it was time to fix it too. And I can show you
exceptions where the rule doesn't work.  But they are rare enough that the
risk of mis-evaluating is much lower than the risk of not evaluating that at
all..



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.