Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Adjusting mate scores

Author: Robert Hyatt

Date: 18:05:11 07/04/01

Go up one level in this thread


On July 04, 2001 at 18:02:46, Alvaro Jose Povoa Cardoso wrote:

>Some time ago I saw here a discussion about adjusting mate scores.
>Dr. Hyatt said we should do so only if they were exact scores.
>Others have said we could also adjust upper and lower bounds mate scores.
>Can some one please elaborate a 'complete' explanation on this?


If you have an exact score, and it is a MATE score, then it should be adjusted
(I am assuming you mean a hash table score here of course).  I store "Mate in N
from the current position" scores.  If I get a hit on this position from ply=6
later, I simply return current score + 6, since the score is a mate in 6 more
plies than the hash table says, since I am 6 plies into the tree when I get the
hit.

I don't see how you can adjust a "bound" mate score.  IE if you know the
current position is at least a mate in 5, can you adjust that to be at least
a mate in 8 or whatever?  When I did this a long while back it caused lots of
funny search inconsistencies.



>
>In my checkers program if I adjust every (exact, upper or lower) mate score I
>can get wrong mate positions from hash.
>For example: I can get a position that says white wins in 50 moves (!!!) but in
>reality it loses in 3 moves.
>
>On the other hand if I adjust only exact scores those errors disappear, but
>another one comes in.
>I get mate in 15, then mate in 14, then mate in 13, then mate in 15 again, then
>mate in 14, then mate in 13...
>I wonder how my program can make progress towards a win with these scores.


The first error was similar to what I saw.  I never see the second case
however, which suggests that maybe you have a bug in your "score adjustment"
code...




>
>Are these errors correlated?
>
>
>As an example here is the output of a (portuguese) checkers game in wich I
>adjust only exact scores:
>
>White:  20 ply              Black:  20 ply              IDS_Step = 2
>
> NÂș          Move        Score        Nodes
>
>  1W  8-19               31978     39,680,403
>  2B  3x13               31979     11,938,167
>  3W  19-14              31980      7,539,580
>  4B  18x11              31981         88,312
>  5W  9x18               31982             20
>  6B  25x14              31983             18
>  7W  5-10               31984         90,491
>  8B  14x5               31985             16
>  9W  1x14x4             31986            113
> 10B  17-13              31987         60,257
> 11W  4-14               31988          1,281
> 12B  13-9               31989          1,485
> 13W  14-32              31990            514
> 14B  31-27              31991            300
> 15W  32-14              31992             84
> 16B  27-22              31993             84
> 17W  14-1               31994            130
> 18B  22-18              31995             59
> 19W  1-32               31996             78
> 20B  9-5                31995            238
> 21W  32x1               31996             55
> 22B  18-13              31997              6
> 23W  1-14               31998             24
> 24B  13-9               31997             54
> 25W  14-19              31998             32
> 26B  9-5                31999              2
> 27W  19x1               32000              2
>
>             Totals ->             59,401,805
>
>
>If I adjust every mate score the progress towards a win is perfect, but as I
>said before I can get wrong mate positions from hash.
>Can someone please help with an explanation (as complete as possible) on the
>matter of adjusting mate scores?


If I am at ply=5, and I store a "mate in 20 plies" score, I change that to
"mate in 15 plies" before I stick it in the table.  Because this position is
a mate in another 15 plies...



>
>Thank you all,
>Alvaro Cardoso



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.