Article View: gnu.chess
Article #5064Re: NULL move
From: Peter W. Gillgasch
Date: Wed, 30 Mar 1994 11:55
Date: Wed, 30 Mar 1994 11:55
39 lines
3099 bytes
3099 bytes
In article <CnG1G3.A6I@ecf.toronto.edu>,
manohar@ecf.toronto.edu (MANOHARARAJAH VALAVAN) writes:
>I am interested in knowing what the NULL move algorithm really is....
>Can someone post the algorithm on this news group. I looked at the article by
>D.F. Beal in Artificial intelligence (appeared sometime in 1990), but I am still
>not clear on the idea of the Null move. What kind of improvements does the NULL
>move bring about in GNU chess.
>
>
Null move algorithm literature:
HiTech implementation: See "Computers, Chess & Cognition"
Chrilly Donninger in one of the last issues of the ICCA Journal
Quick and dirty explanation:
If you are not in check and you can allow the enemy to continue the
play (that is you just do nothing - hence null move) and the enemy
can't harm you, then the position is very likely good for you.
Example implementation: You are not in check. You are not at the
root node and you are not at the frontier (1 ply above the horizon).
Then it makes sense to do nothing and test
nullresult := -pvs(xside,ToGo-1-R,minimal window centered around BETA)
if nullresult >= BETA then cut;
where R >= 1 (a search reduction).
---------
Note that you can do the null move on the PV too. And It doesn't make
too much sense to evaluate the interior node to decide if a null move
search is useful or not. If your evaluation is so good that you can
use it for such things then you don't need to search anyway.
Of course you have to take care that your tree won't degenerate to
a consecutive sequence of null moves. You can disable the null move
in subtrees generated by null move searches (HiTech implementation)
or you can apply it recursively when you make sure that the last
move was no null move (as Donninger does).
Hint: Ask such Q's in the rec.games.chess newsgroup.
I like some algorithms in GnuChess (the move generator is superb)
but the search/evaluation/hash table is buggy and often quite
inefficient. It took 5 years for the GNU fans to include a null move
search and now they don't include it on the PV... :-)
PWG
Technical Details
Message-ID:
<19940330115527UK4S@ibm3090.rz.uni-karlsruhe.de>Path:
arc1-ca.pugleaf.net!bga.com!news.sprintlink.net!qns1.qns.com!constellation!news.uoknor.edu!ns1.nodak.edu!netnews.nwnet.net!news.clark.edu!spool.mu.edu!howland.reston.ans.net!pipex!uknet!EU.net!Germany.EU.net!netmbx.de!zrz.TU-Berlin.DE!zib-berlin.de!news.belwue.de!news.uni-stuttgart.de!rz.uni-karlsruhe.de!ibm3090.rz.uni-karlsruhe.de!UK4SReferences:
<CnG1G3.A6I@ecf.toronto.edu>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 10d71d,384de4f30fb533c3 X-Google-Attributes: gid10d71d,public X-Google-ArrivalTime: 1994-03-30 11:55:00 PST Path: arc1-ca.pugleaf.net!bga.com!news.sprintlink.net!qns1.qns.com!constellation!news.uoknor.edu!ns1.nodak.edu!netnews.nwnet.net!news.clark.edu!spool.mu.edu!howland.reston.ans.net!pipex!uknet!EU.net!Germany.EU.net!netmbx.de!zrz.TU-Berlin.DE!zib-berlin.de!news.belwue.de!news.uni-stuttgart.de!rz.uni-karlsruhe.de!ibm3090.rz.uni-karlsruhe.de!UK4S From: UK4S@ibm3090.rz.uni-karlsruhe.de (Peter W. Gillgasch) Newsgroups: gnu.chess Subject: Re: NULL move Date: Wed, 30 Mar 1994 11:55 Organization: University of Karlsruhe, Germany Lines: 39 Sender: MVS NNTP News Reader <NNMVS@ibm3090.rz.uni-karlsruhe.de> Message-ID: <19940330115527UK4S@ibm3090.rz.uni-karlsruhe.de> References: <CnG1G3.A6I@ecf.toronto.edu> NNTP-Posting-Host: ibm3090.rz.uni-karlsruhe.de Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit