Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Nullmove question

Author: Vincent Diepeveen

Date: 05:59:38 11/05/01

Go up one level in this thread


On November 05, 2001 at 07:00:48, Tord Romstad wrote:

>On November 04, 2001 at 17:41:06, Michel Langeveld wrote:
>
>>Don't forget to look at Bruce Mooreland's excellent homepage about
>>computerchess: http://www.seanet.com/~brucemo/toc.htm
>
>This looks like a very good site --- thanks to you for mentioning it, and
>to Bruce for writing it!
>
>I was a bit surprised to see the suggested implementation of the null move
>heuristic on Bruce's homepage, the alpha-beta window is different from what
>I have always used.  This is the code fragment:
>
>  MakeNullMove();
>  val = -AlphaBeta(depth - 1 - R, -beta, -beta + 1);
>  UnmakeNullMove();
>  if (val >= beta)
>    return beta;
>
>In my code, I have something like
>
>  val = -AlphaBeta(depth - 1 - R, -beta, mate_value);
>
>which I always thought was the normal way of doing things.  The advantage
>of my method is that I can often detect serious tactical threats, while
>Bruce's approach has the obvious advantage that it searches fewer nodes.
>Without extensive testing, it is not clear to me which technique works
>better.
>
>What alpha-beta window do the rest of you use?  If anybody has tried both,
>which approach works better?
>
>Tord

I have used both. your approach i used when i used mating extensions a lot
in DIEP. Right now i use a minimal window on beta. It's simply what you
want to do. If you want to do mating extensions, you have to need the
mate_value. If you want to go for fewer nodes and only pick up mate threats
by accident now and then, then go for the minimal window!

Nullmove is eating up so little nodes of the total, that the real difference
in node counts is not that bad. But definitely you shouldn't use a wide
window without good reasons.





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.