Computer Chess Club Archives




Subject: Re: Singular Extensions, Nullmove deepsearch

Author: Robert Hyatt

Date: 07:43:38 02/19/99

Go up one level in this thread

On February 18, 1999 at 20:56:05, Dave Gomboc wrote:

>On February 16, 1999 at 04:45:43, Frank Schneider wrote:
>>I experimented a little bit with nullmove deepsearch extensions and with
>>singular extensions and now I have some questions:
>>1. In all my tests the searchtree (#nodes to finish n iterations) increased
>>   by a factor of 1.5 to 4. Although testresults were interesting I believe
>>   this is too much. What are your experiences?
>>2. Is it correct to assume that singular extensions work best if there are
>>   only few other extension heuristics.
>>3. How would you describe the difference between nullmove deepsearch extensions
>>  (Donninger) and the nullmove threat detection by Deep Thought?
>>4. Who uses
>>   - singular extensions
>>   - nullmove deepsearch extensions
>>   - nullmove threat detection
>>5. What is the best (easiest) way to implement singular extensions?
>>Thanks in advance,
>Okay, I know what "null-move" is, and what "singular extensions" are.  Now, what
>is the difference between "nullmove deepsearch extensions" and "nullmove threat
>detection", and which is the one that I know of as simply "null-move"?

the 'null-move threat extension' mentioned here is usually the one Bruce
mentioned a couple of years ago.  In the normal null-move search, if the
result you get back is >= beta, we return beta (fail high at this node).  If
not we normally ignore it.  But if we look and see -MATE, that means if we do
nothing, we get mated.  These positions we extend as there must be a strong
threat present.

the null-move deep search extension was written up in the JICCA several years
ago.  It works like this:  if you reach a position where you are going to return
a non-alpha value (ie you are backing up a good score, or failing high by
returning beta) you first do a null-move search but with an offset window
(alpha-X, alpha-X+1).  If that fails low, something is up.  IE this best move
appears to be holding off some serious threat, because this move is a PV or
fail-high move, but doing nothing makes us fail _really_ low.  The most common
issue is this might be a 'horizon-effect' move.  So we extend and search it
again, but one ply deeper.

As you can see, they are related.  But Bruce's idea only counts 'getting mated'
as the threat, while Donningers idea just says 'if null-move value is
significantly lower'.

You should try both.  They produce interesting things.

>I am also interested to know if implementing both singular extensions and
>null-move together makes sense or not.  Are they complementary?  Or will they
>interfere with each other and degrade search quality?
>Dave Gomboc

This page took 0.03 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.