Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: an evaluation problem of chess programs

Author: Robert Hyatt

Date: 17:47:47 10/02/98

Go up one level in this thread


On October 02, 1998 at 19:35:26, blass uri wrote:

>
>On October 02, 1998 at 18:39:04, Robert Hyatt wrote:
>
>>On October 02, 1998 at 15:06:17, blass uri wrote:
>>
>>>
>>>On October 02, 1998 at 13:12:02, Robert Hyatt wrote:
>>>
>>>
>>>>>I understand that tablebases provide -MatNN,+MAtNN and draw scores
>>>>>but I do not understand how can you go to positions that you use tablebases
>>>>>at depth 12 from the initial position because tablebases are for KPP against K
>>>>>or KP against KP and not for positions with more pieces.
>>>>>You need to calculate more than 16 plies to go to positions that you can
>>>>>use tablebases if you do not do special extensions in pawn endings.
>>>>>
>>>>>I thought that If you can see by tablebases that the position is -MatNN because
>>>>>it is KPP against K then you can see without tablebases that the position is not
>>>>>-0.xx because the static evaluation function without tablebases is not -0.xx
>>>>>
>>>>>Uri
>>>>
>>>>
>>>>You are misunderstanding how I use them.  Imagine a position with KBN vs K.
>>>>You understand that in that position, crafty will play perfectly, and will win
>>>>with the KBN side, correct?
>>>>
>>>>IE in this position:
>>>>
>>>>       +---+---+---+---+---+---+---+---+
>>>>    8  | *K|   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    7  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    6  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    5  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    4  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    3  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    2  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    1  | K | B | N |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>         a   b   c   d   e   f   g   h
>>>>
>>>>crafty promptly says Kb2 Mat25...  ok so far...
>>>>
>>>>now lets modify the position to this:
>>>>
>>>>
>>>>       +---+---+---+---+---+---+---+---+
>>>>    8  | *K| *R| *Q|   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    7  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    6  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    5  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    4  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    3  |   | R |   |   |   |   | B |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    2  |   |   |   |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>    1  | K | B | N |   |   |   |   |   |
>>>>       +---+---+---+---+---+---+---+---+
>>>>         a   b   c   d   e   f   g   h
>>>>
>>>>
>>>>In this position. crafty says Be4+ Mat34, with a 2 second search.  How did
>>>>it do that?  like this:
>>>>
>>>>                8     2.03  Mat34   1. Be4+ Ka7 2. Bxb8+ Ka6 3. Bb7+ Qxb7
>>>>                                    4. Rxb7 Kxb7
>>>>                8->   3.27  Mat34   1. Be4+ Ka7 2. Bxb8+ Ka6 3. Bb7+ Qxb7
>>>>                                    4. Rxb7 Kxb7
>>>>
>>>>What it did was to search deeply enough to see that it could trade bishop
>>>>and rook for the opponent's rook and queen, leaving it in a KBN vs K position.
>>>>And after searching the 8 plies into the future (as it did above) it then found
>>>>the endgame database position and said "aha, Mate in N from this point."
>>>>
>>>>This is why my current version (15.21) won't play Rxb2, because it can see
>>>>deeply enough into the future to see the white king eating the black pawns
>>>>and that gives "mate in N". Or in some variations it sees one black and one
>>>>white pawn being traded, and that also leads to mate in N.
>>>
>>>The difference is that in your example you have a line of 8 plies leading to the
>>>position that you use tablebases and
>>>you have not a line of 12 plies from the position before Rxb2 that can lead to
>>>KPP against K or KP against KP
>>>
>>>because the white king must do at least 9 moves to eat the black pawns
>>>Kxb2,Kc2,Kd3,Ke4,Ke5,Kf6,Kg7,Kxh7,Kxg6
>>>
>>>Uri
>>
>>
>>I'm not sure what your point is, however.  I do quite a few search
>>extensions, and the hash table has the effect of letting the search go
>>deeper than normal as well, in simple endings like this.  9 moves is
>>really 16 plies plus q-search, which means a 12 ply search only needs to
>>extend 4 plies to see that...  not difficult at all...
>
>my point is that I do not understand why crafty without tablebases does the move
>Rxb2 at depth 12
>If it can see the position of KPP against K then the evaluation without
>tablebases should prevent it to play it
>and if it cannot see the position of KPP against K then tablebases cannot help.
>
>Uri


because crafty doesn't evaluate KPP vs K or KP vs KP as won, in that
position.  Which is the point here.  If the black king couldn't get
into the square of the white pawn, it would say this is lost instantly,
or if it could get to KP vs K it can evaluate that perfectly.  But not
KPP vs K or KPP vs KP or whatever...

And tablebases introduce a new bit of data, namely that white is not a
pawn ahead, but that white is *mating* black.  The difference is in the
value of the evaluation.  With the tablebase it is perfect and says mate.
Without it, it just counts pawns and comes to the wrong position.  Without
tablebases, my current version will play rxb2 at depth=10, because of the
new extension stuff I am doing.  But with tablebases it won't play it ever.




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.