Computer Chess Club Archives




Subject: Re: Null-Move: Difference between R = 2 and R = 3 in action

Author: Omid David

Date: 18:26:30 07/13/02

Go up one level in this thread

On July 13, 2002 at 11:52:36, Vincent Diepeveen wrote:

>On July 13, 2002 at 11:09:19, Omid David wrote:
>>On July 13, 2002 at 10:33:19, Vincent Diepeveen wrote:
>>>On July 13, 2002 at 04:47:16, Omid David wrote:
>>>>On July 13, 2002 at 02:39:38, Dann Corbit wrote:
>>>>>On July 13, 2002 at 02:22:00, Omid David wrote:
>>>>>>On July 13, 2002 at 02:07:17, Vincent Diepeveen wrote:
>>>>>>>I still do not understand which positions you talk about which R=2
>>>>>>>is finding and R=3 isn't.
>>>>>>I read your other post, that's also my point: Although at fixed depth, R=2 is
>>>>>>much better than R=3 (see also "adaptive null-move pruning" Heinz 1999), in
>>>>>>practice R=3 performs about the same as R=2 since on many occasions it finds the
>>>>>>correct move one ply later with lower search cost.
>>>>>By the way, if you have not found Vincent's post on double null move you should
>>>>>look it up.  It is a clear win for sure.
>>>>Yes it's a nice idea. But the main null-move pruning deficiency is its tactical
>>>>weakness due to horizon effect. Zugzwangs are not a major problem, and as
>>>>Vincent points out, he invented the double null-move idea just to show that
>>>>null-move pruning is OK. Now nobody doubts effectiveness of null-move pruning at
>>>>all, the only discussion nowadays is the depth reduction value.
>>>I'm missing any position where you have a problem though. Seems to me
>>>your thing is incredible weak, and or doing other dubious things which
>>>gets looked up in hashtable, after which it weakens your program.
>>>In DIEP i don't have all these problems.
>>>  - no dubious forward pruning
>>>  - no futility
>>>  - no razoring or any of these techniques.
>>>  - checks in qsearch
>>>Just PVS with nullmove R=3 and a bunch of extensions. That's it.
>>>Means that after a nullmove i don't get transpositions to positions
>>>where you have stored a score which is based upon a dubious score.
>>>Best regards,
>>Why do you think there is a problem?! All the results I got are natural. I'm
>>sure even in DIEP, R=2 works better under "fixed theoretical" conditions.
>No it works worse, because i search at least a ply less deeply. If i search
>a ply deeper that doesn't only mean i get a ply more. Because the depth
>is already pretty decent it also means all extensions might get triggered
>a ply extra (like singular extensions).
>>However in practice you don't search to fixed depth and thus R=3 might be better
>>in practice.
>>My only point is that "R=3 might be better than most people consider it." (Take
>>DIEP as a successful use of R=3)
>>Have you published anything regarding double null-move?
>I simply posted in CCC and RGCC. the thing is real easy.
>allow 2 nullmoves in a row always, but not 3.
>Exception is if both sides only have pawns (of course you
>can solve a few testset positions sooner by saying that
>if either side has only pawns you don't allow nullmove
>FOR BOTH SIDES, but that's in reality not so smart to do).
>Apart from that the normal conditions that i don't nullmove
>when in check.
>This in fact results in nullmove not missing zugzwangs anymore.
>Of course for more than 1 zugzwang the extra depth needed is
>pretty big.
>Best regards,

I'd rather see such articles as "double null-move pruning" in ICCA than the
usual pure-theoretical-non-practical articles!

This page took 0.18 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.