Author: Sune Fischer
Date: 13:26:37 04/28/04
Go up one level in this thread
On April 28, 2004 at 16:14:39, Gerd Isenberg wrote:
>On April 28, 2004 at 13:45:05, Ed Schröder wrote:
>
><snip>
>
>>What is double nullmove? I only know recursive nullmove allowing multiple
>>nullmoves. I also read about "allowing 2 nullmoves in a row". What are the
>>differences?
>>
>>I use recursive nullmove, not allowing the next ply after the nullmove to
>>nullmove. So:
>>
>> e2-e4
>> e7-e5
>> **-** // nullmove
>> d7-d5 // do no allow nullmove
>>
>>When I remove that check I get a few percent speedup, results look okay.
>>
>>Ed
>
>
>Hi Ed,
>
>yes Double Nullmove, suggested and invented by Vincent, allows to play two
>nullmoves in a row, to efficiently get rid of zugzwang problems. It is recursive
>too, and if i understand correctly, it works fine without any nullmove
>precondition:
>
> if (!inCheck)
> {
> if ( move2thisNode != null || move2ParentNode != null ) (
> val = -doNullMoveSearch(depth-1-R,...);
> if ( val >= beta ) return val; // return beta;
> }
> }
I understand it differently, like this:
if (!inCheck)
{
if ( nullmoves<2) (
nullmoves++;
val = -doNullMoveSearch(depth-1-R,...);
nullmoves--;
if ( val >= beta ) return val; // return beta;
}
}
So you may have:
e2-e4
e7-e5
**-** // nullmove
**-** // another nullmove to quickly test if parant nullmove fails-low!
Nf3 // nullmove NOT allowed here, max 2 nullmoves along each line
-S.
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.