Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Very strange crafty analysis ( I think) with a simple mate

Author: Les Fernandez

Date: 10:44:26 06/10/02

Go up one level in this thread


On June 10, 2002 at 13:15:55, Andrew Williams wrote:

>On June 10, 2002 at 11:18:25, Les Fernandez wrote:
>
>>On June 10, 2002 at 11:01:50, Robert Hyatt wrote:
>>
>>>On June 10, 2002 at 03:22:55, Andrew Williams wrote:
>>>
>>>>On June 10, 2002 at 00:18:51, Les Fernandez wrote:
>>>>
>>>>>On June 10, 2002 at 00:02:39, Robert Hyatt wrote:
>>>>>
>>>>>>On June 09, 2002 at 23:45:38, Les Fernandez wrote:
>>>>>>
>>>>>>>I rarely come across strange output using Crafty but this position doesnt seem
>>>>>>>to work right.  The ce after analysis I think should be -32765 but in fact it is
>>>>>>>reporting a "0"??? Either I am dead tired or something is screwy.  Would
>>>>>>>somebody using Crafty run this epd string? It is a very simple mate and I cant
>>>>>>>seem to find the problem.  Its probably just late <S>.
>>>>>>>
>>>>>>>Here is Crafty analysis:
>>>>>>>
>>>>>>>rnb4k/5r2/2p1p1Q1/pp3pP1/3P4/b2B1KP1/1PPB4/7R b - - acd 1; acn 1; acs 1; ce 0;
>>>>>>>pv Rh7;
>>>>>>>
>>>>>>>The pv appears to be right but the ce value is dead wrong!!
>>>>>>>
>>>>>>>If you find the same results can someone please explain the nature of this?
>>>>>>>
>>>>>>>[D]rnb4k/5r2/2p1p1Q1/pp3pP1/3P4/b2B1KP1/1PPB4/7R b - -
>>>>>>>
>>>>>>>
>>>>>>>Thanks
>>>>>>
>>>>>>Can you describe _exactly_ how you produced that?  IE post the epd file
>>>>>>you used, etc...
>>>>>>
>>>>>
>>>>>EPD Kit revision date: 1996.04.21
>>>>>unable to open book file [./book.bin].
>>>>>book is disabled
>>>>>unable to open book file [./books.bin].
>>>>>search time set to 180.00.
>>>>>hash table memory = 48M bytes.
>>>>>pawn hash table memory = 10M bytes.
>>>>>Crafty 18.9 vs ferret
>>>>>kibitz Hello from Crafty v18.9!
>>>>>pondering enabled.
>>>>>play best book line after search.
>>>>>EGTB access enabled
>>>>>using tbpath=./TB
>>>>>4 piece tablebase files found
>>>>>1406kb of RAM used for TB indices and decompression tables
>>>>>PFGA: EPD record: 1
>>>>>
>>>>>The exact epd string that was in epd.epd was:
>>>>>
>>>>>rnb4k/5r2/2p1p1Q1/pp3pP1/3P4/b2B1KP1/1PPB4/7R b - -
>>>>>
>>>>>And the epd.out file was:
>>>>>
>>>>>rnb4k/5r2/2p1p1Q1/pp3pP1/3P4/b2B1KP1/1PPB4/7R b - - acd 1; acn 1; acs 1; ce 0;
>>>>>pv Rh7;
>>>>>
>>>>>
>>>>>The analysis report can be found in my original post here.  This one puzzles me
>>>>>too Bob but I could not rule out that its late <S>.  If you need any additional
>>>>>info let me know.
>>>>>
>>>>>Thanks
>>>>
>>>>Is this because Black has only one move? In my program, if there's only one move
>>>>available *during a game* it only searches to depth 4. For testing epd
>>>>positions, it searches normally, even if there is only one move.
>>>>
>>>>Andrew
>>>
>>>
>>>That might be the reason.  With only one move, the epd code in Crafty might
>>>not do a search at all, and that would leave the score unchanged from the last
>>>epd position perhaps...
>>
>>Um I am not sure that is what is going on here, let me explain.  What I did was
>>I took an epd position that reported a mate sequence and then made the pv moves
>>and then created all the following epd positions that eventually led to the
>>reported mate based on the pv sequence from the first position.  Following is
>>the results of Crafty which ran the epd's that I created based on the pv line
>>from the first position:
>>
>>rnb4k/5r2/2p1p1Q1/pp3pP1/3P4/b2B1KP1/1PPB4/R7 w - - acd 4; acn 10909; acs 1; ce
>>32764; pv Rh1+ Rh7 Rxh7#;
>>rnb4k/5r2/2p1p1Q1/pp3pP1/3P4/b2B1KP1/1PPB4/7R b - - acd 1; acn 10909; acs 1; ce
>>0; pv Rh7;
>>rnb4k/7r/2p1p1Q1/pp3pP1/3P4/b2B1KP1/1PPB4/7R w - - acd 4; acn 7328; acs 1; ce
>>32766; pv Rxh7#;
>>rnb4k/7R/2p1p1Q1/pp3pP1/3P4/b2B1KP1/1PPB4/8 b - - acd 1; acn 1; acs 1; ce
>>-32767; pv;
>>
>>As you can see the second epd string reports a "0" but the one before it and
>>after it are in fact reporting a value.  If your thought "With only one move,
>>the epd ..... " is correct then why would the last epd position which is the
>>actual final move show a ce of -32767 ???  Any other thoughts Bob?
>>
>>Thanks
>
>I think the explanation is correct. The only position you listed which has
>*exactly* one legal move is the second one, the one where crafty reports 0. The
>problem is probably that as a way of saving time in games, many programs just
>make the move without searching it (because there's no choice). For the last
>position, there are *zero* legal moves. Presumably crafty treats this as a
>special case as well (my engine does). If there are no legal moves and the side
>to move is in check my engine returns -M00. If it's not in check, it returns
>DRAWSCORE. I can't be sure if this applies to crafty too, but I think it's
>consistent with the original explanation.

Hi Andrew,

I see what you are saying but doesn't this pose a problem.  ie suppose I have an
engine which is doing some type of lookup and sees the ce=0 versuses a mate
announcement.  If what you are saying is correct does that mean we will never
see a ce value = -32765 ??? In the past I know I have gone through millions of
epd strings from various sources with the intention of extracting only those epd
strings that are end in mate.  I look up ce values and only keep those positions
that have an abs(ce)>=32000.  How do I get around this delemna?

Thanks,

Les
>
>Andrew



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.