Computer Chess Club Archives




Subject: Re: Double Null move?

Author: Vincent Diepeveen

Date: 15:13:21 07/13/01

Go up one level in this thread

On July 13, 2001 at 16:50:26, Uri Blass wrote:

>On July 13, 2001 at 14:25:23, Robert Hyatt wrote:
>>On July 13, 2001 at 12:28:01, Steve Maughan wrote:
>>>I'm thinking of implementing double null move in my program.  Now as far as I
>>>know the most conventional way is to do the normal null move search and if there
>>>is a cutoff follow it with a normal search at reduced depth to confirm no
>>>zugwag.  However I do remember that someone here (Vincent?) outlined a different
>>>way of doing double null move.  Is there another way?  If there is, what are the
>>>pros and cons of each?
>>That's the gist of it.  If the position is a zugzwang position, the second
>>null-move search will fail high, which will cause the first to fail low and
>>you don't run into the zug problem.
>>The downside is the cost.  The second null will fail low most of the time and
>>just generate wasted nodes.
>>The other downside is that not all null-positions are zugzwang problems.  In
>>fact, most null-move problems are caused by the R-value which bring the horizon
>>too close to spot a tactical threat.  Double null won't find any of those...
>>So you expend quite a bit of effort, to eliminate one small part of the total
>If you search to clearly reduced depth(for example before normal search with
>null move pruning to depth d when d>=6 you search without null move to depth
>d/2-2) then you may be less than 1% slower.
>I believe that it is a good deal to be 1% slower in order to avoid not seeing
>simple zunzwangs.
>I guess that you may earn 3 elo from not falling in some zunzwangs and lose only
>1 elo from being slightly slower.

Double nullmove wasn't invented for this math. Double nullmove was invented
at a time when many people doubted whether nullmove was a smart way
to search.

Double nullmove you can proof that at depth == n you get the same best move
as at depth n-i fullwidth (where i >= 0).

Nowadays the discussion is completely different. Nullmove has proven
to be such a winner that most even don't care for correctness of

They just nullmove *always*, some nullmove only if some kind of
static score >= beta. That's fine with me.

It only shows the success of nullmove and that searching fullwidth
is nowadays outdated.

This page took 0.03 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.