Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: simple question about null-move

Author: William Bryant

Date: 09:03:36 11/05/99

Go up one level in this thread


I would suspect that there may be errors in you implementation.  It took several
weeks to debug my null move code.

You may be doing all of these things, but issue to consider include:

Make sure you make and unmake null move to set the hashtable signature for
the new side to move, update ep square, etc.

You must avoid making null moves where not making a move improves you position
or the other side is in check, and if you just made a null move.

There are a series of test my program does before making a null move.
If I just made a null move -- don't do it again immediately.
If in check, null is out.
If material is low, this sets up for a zugswang(SP-- no dictionary right here
right now)and null should be avoided.

Also, since the goal of null move is to fail high, avoid doing a null if
there is not chance it will fail high. When you probe the hash table, if the
value is exact, or a upper bound (fail low) score, check the score to see if
there is any point in doing the null move at all.  Bob calls this the null move
'trick', which is well documented in the Crafty source code.  Look in the file
hash.c which will return a don't do a null move flag.

William
wbryant@ix.netcom.com



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.