Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: (EPD standard broken?) EPD opcodes and mate scores

Author: Dann Corbit

Date: 11:37:49 12/18/01

Go up one level in this thread


On December 18, 2001 at 14:28:00, Miguel A. Ballicora wrote:

>On December 18, 2001 at 13:09:21, Miguel A. Ballicora wrote:
>
>[snip]
>
>from the EPD standard:
>
>>A value of -32767 indicates an illegal position.  A stalemate position has a
>>centipawn evaluation of zero as does a position drawn due to insufficient
>>mating material.  Any other position known to be a certain forced draw also has
>>a centipawn evaluation of zero.
>
>Now, the EPD standard is seriously broken. I just thought for a little while
>after I post. What kind of evaluation is expecting me to return when
>my program receives this position to be analyzed?
>
>[D]k6R/8/K7/8/8/8/8/8 b - -
>
>On the other hand, I did a search on CCC and I found a piece of an article,
>supposedly written by Steven Edwards (author of the EPD standard} on how to
>convert the evaluation from the the EGTBs to EPD evaluation. To my surprise,
>unless the EPD standard changed along the way, what it is said contradicts the
>current EPD standard. What is going on?
>
>This is part of the article you can find at
>http://www.it.ro/ccc_search/ccc.php?art_id=25216
>
>My comments are between {}
>Regards,
>Miguel
>
>-----------------------------------------------------------------------------
>EPD Value transformation:
>
>For those incorporating these tables into a chessplaying program, it is
>suggested that the appropriate value transformation be used to convert
>from
>the single byte encoding scheme to the signed sixteen bit integer EPD
>(Extended Position Description) standard. Programs that use EPD help
>support
>quick integeration. Fortunately, conversion to EPD evaluations is easy
>to do.
>
>Description Signed Byte EPD Signed Word
>----------- ----------- ---------------
>unknown -128
>transition -127
>lost-in-0 -126 -32767 (checkmated)           {This value is illegal position!!}
>lost-in-1 -125 -32765
>lost-in-2 -124 -32763
>...
>lost-in-N (N - 126) ((N * 2) - 32767)
>...
>lost-in-125 -1 -32517
>draw 0 0
>mate-in-126 1 32516
>...
>mate-in-N (127 - N) (32767 - (N * 2) + 1)
>...
>mate-in-3 125 32762
>mate-in-2 125 32764
>mate-in-1 126 32766
>illegal 127 -32768    {This value is out of range of the current EPD stadard!!}
>
>The EPD signed 16 bit words are usually interpreted as centipawn values.
>However, scores less than -31744 are treated as forced losses while
>scores
>greater than 31743 are treated as forced wins.
>
>More information about the EPD standard can be found in the appropriate
>section of the Portable Game Notation standard (pub/chess/PGN/Standard
>at the
>ics.onenet.net ftp site).

Yes, this is exactly what I meant when I said that the 32767 for illegal
position was broken.  One of several things that could use a spruce up.

There was some work on a binary standard for EPD, but it never became reality.
I think it would be very nice, since we could greatly compact the data.




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.