Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: WAC 141 blowup

Author: Robert Hyatt

Date: 19:16:22 09/01/04

Go up one level in this thread


On September 01, 2004 at 19:56:30, GeoffW wrote:

>On September 01, 2004 at 18:20:20, Robert Hyatt wrote:
>
>>On September 01, 2004 at 00:51:47, Stuart Cracraft wrote:
>>
>>>I know this is a long shot throwing this out there without much more
>>>info, but perhaps I'll get lucky and someone has seen this before.
>>>It's appeared on this bulletin board about 6 years ago.
>>>
>>>[D]4r1k1/p1qr1p2/2pb1Bp1/1p5p/3P1n1R/1B3P2/PP3PK1/2Q4R w - - bm Qxf4; id
>>>"WAC.141";
>>>
>
>This was an interesting post as I have just been adding mate threat extensions
>to my program and fixing a bug or several at the same time.
>
>One of the things I noticed that was a little puzzling was the +2
>
>if (value == -MATE + ply + 2)
>        mate_threat = 1;
>
>For my program it needs to be +1 to make this work correctly. I discussed this
>with Ross (Trace) and it was +1 for him too, yet for Stuart and Crafty that
>needs to be +2, still havent explained that one ?


OK.  we search a move at ply=1, a move at ply=2, and a move at ply=3.  When we
get to ply=4 I try a null-move.  I go to ply=5 and try a move that just happens
to mate my opponent.  But I don't notice here.  I then advance to ply=6 and try
all moves and discover there are no legal moves.  The side to move is in check,
with no legal moves, which is checkmate.  I return MATE-6 to ply=5 which is
happy with that.  Ply=5 returns MATE-6 to ply=4 where I do the test.  At ply=4
now that test becomes

(remember value = -(MATE-6) here due to negamax and at the moment ply=4)



if (value == -MATE + ply + 2)

  if (-(MATE-6) == -MATE +4 +2)         mate_threat = 1;
  if (-MATE+6 == -MATE+6) and that is true.


>
>The thing I cant decide now is have I implemented this correctly without a bug ?
>From my results it seems that it could be correct, but the search explosion is
>very bad at deeper ply (compared to Bobs quoted figures )
>Maybe the threat extension code is OK, but just highlighting my poor move
>ordering ?
>
>Any thoughts would be appreciated
>
>here are my results
>
>
>check extensions, but no mate threat extensions
>
>Ply  Eval   Time      Nodes   Principle Variation
> 9   -151    606    5753869   g2f1 e8c8 c1b1 f4d5 h1g1 d6f4 b3d5 d7d5 f1e1
>10+  -106   1456   14387871   g2f1
>10+   194   2910   29451052   g2f1 g8f8 h4h5 g6h5 h1h5 e8e1 f1e1 f4h5 c1h6 f8e8
>h6h8 d6f8 h8h5 f8b4 e1d1
>10   9989   4514   49522394   c1f4 d6f4 h4h5 g6h5 h1h5 f4h6 h5h6 c7h2 h6h2 g8f8
>h2h8
>
>Computer's move: c1f4
>
>
>check extensions, and mate threat extensions
> 6   -210     10     106899   g2f1 a7a5 f6e5 f4d3 c1g5 d3e5 d4e5 d6e5 g5g6
> 7   -203     48     462385   g2f1 e8e2 c1b1 d6e7 h4f4 c7f4 f1e2 f4f6
> 8+  -158    214    2114011   g2f1 e8e2 c1b1 e2d2 f6g5 d2d4 g5f4 d6f4 b1g6
> 8+   142    237    2343262   c1f4
> 8     94    290    2904048   c1f4 e8e6 h4h5 g6h5 f4g5 g8f8 b3e6 f7e6 g5h5
> 9+   139    337    3307392   c1f4
> 9+   439    521    5024678   c1f4
> 9    462    810    7874059   c1f4 e8e6 f4g5 d6e7 b3e6 e7f6 g5g6 f6g7 e6b3 a7a5
>g6h5 d7d4 h4d4 g7d4
>10+   507   1128   10950029   c1f4
>10+   807   1945   19089764   c1f4
>10   9989  10639  144085366   c1f4 d6f4 h4h5 g6h5 h1h5 f4h6 h5h6 c7g3 g2g3 a7a5
>h6h8
>
>Computer's move: c1f4
>
>          Geoff



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.