Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Extend or not extend in a nullmove tree

Author: Ernst A. Heinz

Date: 05:04:04 06/11/98

Go up one level in this thread


On June 10, 1998 at 16:33:26, Don Dailey wrote:

>Is my understanding correct that you are always trying a null move,
>regardless of the static score?

Yes, I suspect many/most people do it this way -- "DarkThought" incl.

>For me it seems to work best to
>have a static score very close (or above) beta.  The algorithm as
>I once saw it in the ICCA journal used a half pawn margin.

Up to which depth to you use the static scores for deciding about
null-move trials?

>I found it slightly faster to simply do a test search with a zero
>width alpha/beta window around beta.  The idea being I only care
>if we get a beta cutoff on the null move search.  I'm not using
>the result of one of these searches to tighten the Alpha side of
>the bound either.   With MTD this is a non issue but I found
>it works find even with conventional alpha/beta.

Again I think many/most people only do the zero-window test ...

>Depth-3 selectivity does not work for me, although others report
>great results.  I always get nice speedups but find the program
>weakens just enough to measure.  Even when I'm very careful about
>endgames and special case things.

Yep, same for "DarkThought".

>My biggest improvement is to not use null move near leaf nodes of
>the main search.  A "global" static attack test seems to be a very
>nice improvement.  It must be tuned but not too strict.  It makes
>the search much faster and it benefits from the speed.  I can
>easily measure the improvement in testing.  It turns out that I
>actually pick up a few things null move misses although visa-versa
>is also true.  I can only do a couple levels of these, then null
>move is superior for its ability to see longer range threats.
>
>The basic idea of our static routine (much of it designed by Larry
>Kaufman) is that we notice the highest valued piece attacked, and
>then assume part of its value will be returned, so if a queen is
>attacked, we assume only 2/3 of a queen is attacked.  This is a
>major speedup and the assumption is very good for all the pieces.
>There is a value that seems to be on the threshold of right and
>wrong, and it can be found by noticing a sudden drop in problem
>solution depth when you get too agressive (like 1/2 attacked value.)

I must admit that I do not quite understand how you actually prune.
Could you please elaborate on this?

=Ernst=



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.