Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: An improvement to null move search

Author: José Carlos

Date: 07:05:49 04/07/04

Go up one level in this thread


On April 07, 2004 at 07:14:36, Tord Romstad wrote:

>On April 07, 2004 at 05:11:44, José Carlos wrote:
>
>>  You share your ideas, and that's great. Keep doing so please.
>
>I will, whenever I think I have something interesting to share.
>
>I'll now make an attempt to give a simple explanation of the more general
>idea I mentioned:
>
>Like most programmers, I don't do a null move search at all nodes, but only
>at nodes where I am reasonably sure of a fail high.  I regard the null move
>search as a technique to prune moves which does not even threaten to bring
>the score up to alpha.
>
>At the node directly following the null move, the side to move should try
>to prove that the move played before the null move contained some important
>threat.  Therefore, it makes sense to search some moves more deeply than
>others after the null move.  Moves which were made possible by the previous
>move should be searched deeply, and also moves which attack squares and
>pieces which were also attacked by the previous move.  Other moves, which
>have no logical connection to the move played before the null move, could
>be searched with reduced depth.
>
>It would clearly take a lot of thought and experimentation to make something
>like this work well, but I think the idea might have some potential.

  Yes, the idea looks interesting. In Averno I try null move everywhere (even in
PV nodes) except some critical type of endings. However, in Anubis, where I have
a lot of information in every node because I evaluate interior nodes, I try to
guess whether a null move has any chance to fail high. I also try to guess
whether a null move might hide a potential king attack due to reduced depth. All
of this work is stopped now because I'm looking for a new job (got many problems
in my current job) and I spend all my time preparing interviews and studing, but
the ideas have potential and a good implementation will surely pay off. I also
use evaluation of interior nodes to calculate what I call a "degree of
uncertainity", meaning that some positions are pretty clear and don't need
further analisys (and can thus be safely pruned) and some others are very
complex and even a big material and positional advantage is not enough to safely
prune. As an example, I set uncertainity to "high" in pawn endings if there's at
least a passed pawn. There're many possibilities to this concept which I need to
explore further when I have time.

  José C.

>> Even if you make
>>a mistake, you:
>>  -get feedback and avoid useless developing+testing
>>  -give something interesting to think about
>
>Yes, but in this case my mistake was so obvious that I was just wasting
>everybody's time and bandwidth.
>
>>  Congratulations on your success with Gothmog. Really impressive how your
>>"stupid" ideas are working on your program. I wish I was so "stupid" as you.
>
>Thanks, but it seems to me that Averno is around the same strength.  :-)
>
>Tord



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.