Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: What are null moves?

Author: Bruce Moreland

Date: 15:52:03 09/20/98

Go up one level in this thread



On September 20, 1998 at 17:57:30, John Coffey wrote:

>More importantly:  Null-move is a new concept to me.  What is the idea
>behind it?

It is a domain-independent forward-pruning technique.

Imagine you have some position, which you are supposedly searching to 8 plies of
depth.  What you'll typically do is generate all legal moves and them to 7 plies
depth, except for a few, like checks, which you might extend.

Imagine that before you generate moves, you decide to check to see if the
opponent has any threats.  You do this by making no move (a null-move), then
searching the position as if it is the other side's turn to move.  You search
all of the opponent's moves to a depth that is reduced to some degree (maybe
you'd search all of them to 5 plies), so it takes less time to do this search.

If you do this search, and the score comes back >= beta, you can conclude that
even if you skip a move the position is so good for you that you'll still almost
certainly fail high.

So what you balance here is a reduced depth (cheap) null-move search that fails
high, against the odds that if you do normal (expensive) search, you'll still
fail high.

Normally, you will still fail high.

So often, you can get get away with returning beta in these cases, without going
to the trouble of doing the normal search.

There are some flaws in this technique.  A null-move isn't a legal chess move,
so you'll screw up if the side to move is in zugzwang, meaning that it is
compelled to move, when all moves wreck the position.  You'll also miss other
kinds of deep threats.

But what you get is an extra ply or two or three, in the same amount of time.
This will cause you to find most tactical tricks much much faster.

bruce



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.