Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: when to store nullmove failure in hashtable?

Author: Robert Hyatt

Date: 11:59:37 09/28/04

Go up one level in this thread


On September 28, 2004 at 13:59:58, Steve Maughan wrote:

>Bob,
>
>>What I do is this:  When I get a hash hit, and the draft is not enough to let
>>me stop the search at that point, I then test the table draft against the
>>depth I would use for a null move search at this point. If the table draft is >= that depth, and the table entry says "No way I would fail high here" then
>>there is no point in trying a null-move search, if a normal move search would
>>not fail high...
>
>Interesting - I know that you alluded to this in the past but this is the first
>time the penny has dropped for me as to exactly what you're doing.
>
>So to use example numbers:
>
>Alpha = 100
>Beta = 101
>Depth to Go = 5 ply
>
>Hash Score = 50
>Hash Bound = UPPER
>Hash Draft = 4 ply
>
>In this case you'd skip the null move - seems sensible.
>
>Do you know how much is it worth in speedup?
>
>Thanks for the explanation,
>
>Steve


Since WAC141 has been a hot topic, here is crafty with the normal avoid-null
stuff as I explained:

                9     3.95  -1.20   1. Kf1 a5 2. Rxh5 gxh5 3. Rxh5 Re1+
                                    4. Kxe1 Nxh5 5. Qg5+ Kf8 6. Qh6+ Kg8
                                    7. Qxh5
                9     4.42     +1   1. Qxf4!!
                9     4.67     +3   1. Qxf4!!
                9     5.16     +M   1. Qxf4!!
                9    50.78  Mat06   1. Qxf4 Bxf4 2. Rxh5 gxh5 3. Rxh5 Bh6
                                    4. Rxh6 Qh2+ 5. Kxh2 Kf8 6. Rh8#
                9->  50.78  Mat06   1. Qxf4 Bxf4 2. Rxh5 gxh5 3. Rxh5 Bh6
                                    4. Rxh6 Qh2+ 5. Kxh2 Kf8 6. Rh8#
              time=50.78  cpu=99%  mat=-1  n=79749173  fh=98%  nps=1.57M


Here is same thing but without the avoid-null stuff so it always tries a null
move:

                9     3.93  -1.20   1. Kf1 a5 2. Rxh5 gxh5 3. Rxh5 Re1+
                                    4. Kxe1 Nxh5 5. Qg5+ Kf8 6. Qh6+ Kg8
                                    7. Qxh5
                9     4.40     +1   1. Qxf4!!
                9     4.75     +3   1. Qxf4!!
                9     5.22     +M   1. Qxf4!!
                9    49.51  Mat06   1. Qxf4 Bxf4 2. Rxh5 gxh5 3. Rxh5 Bh6
                                    4. Rxh6 Qh2+ 5. Kxh2 Re2 6. Rh8#
                9->  49.51  Mat06   1. Qxf4 Bxf4 2. Rxh5 gxh5 3. Rxh5 Bh6
                                    4. Rxh6 Qh2+ 5. Kxh2 Re2 6. Rh8#
              time=49.51  cpu=99%  mat=-1  n=80501452  fh=98%  nps=1.63M

So about 1.5% better here.  Other positions might be even better...

Note ignore the time and just look at total nodes.  second run was not a full
PGO compile...




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.