Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: negative extensions

Author: Miguel A. Ballicora

Date: 12:14:51 01/25/01

Go up one level in this thread


On January 25, 2001 at 13:37:31, Edward Screven wrote:

>On January 25, 2001 at 13:12:55, Miguel A. Ballicora wrote:
>
>>>applying david's suggestion to a null move implementation would
>>>mean reducing the search depth after a null move failed high
>>>instead of simply returning immediately with a fail high.
>>
>>That is what I do with in my program Gaviota (not a good example since
>>it is still a beginning project). Instead of returning beta I do
>>
>>depth = depth - R;
>>
>>I does not reduce the tree as much as classic null-move but still reduces
>>enough. The advantage is that it is not fooled as easily by zugswang-type
>>positions. A couple of plies more and it sees it. Some of the positions
>>that have been posted here that are tough for excellent null-move programs
>>Gaviota was ok.
>>Probably not as good as null-move since zugswangs are rare but I just like it.
>
>what do you do when the null-move fails high, then the reduced
>depth search doesn't?  do you then re-search at the original
>non-reduced depth?

Tough luck :-), I returned the value obtained after the reduced search.
If it is truly inaccurate, it will be corrected in the following iterations.
It is actually like a negative extension.
It is risky, as any selective method will be. After some thought I conclude
it is less risky than the classic null-move. In fact, using null-move in the
same situation I would have returned beta, which is terrible. It is better to
have a value with a reduced depth than pruning a branch incorrectly. At least,
that is the assumption. I did not do any statistics at all about how many times
these things might happen, I just implemented it because I like the idea of not
to fall for zugswangs. In the future I might test it seriously since I think
that zugswangs are rare and can be disable in the endgame. In fact, I have to
disable it anyway as it is now because the performance decreases.
I might be better to have a plain null-move that might save me more
nodes to search but I do not know.

>i vaguely remember trying something like this as a kind of null
>move test verification step.  i took it out, so i must not have
>liked it.  i'm pretty sure i heard about the idea from someone
>else.

If it has been used before and you remember, let me know.

Regards,
Miguel

>
>  - edward



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.