# Computer Chess Club Archives

## Messages

### Subject: Re: Zero-width Window Null Move Search

Author: Don Dailey

Date: 11:52:20 06/22/98

Go up one level in this thread

```On June 22, 1998 at 13:35:02, Roberto Waldteufel wrote:

>
>Hi Guido,
>
>It seems I had misinterpreted Negascaout. Perhaps my misinterpretation even
>constitutes a new variant of this family of search algorithms. My metod on each
>iteration is as follows:
>
>At each node, I search the first move with window {alpha,beta):
>
>value=-Search(-beta,-alpha,depth-1)
>If value>alpha then
>   If value>=beta then
>      Search=value
>       Exit
>    End If
>    Alpha=value
>End if
>
>
>
>Then, if I did not get a beta cut-off, for each subsequent move from that node I
>do a null width search, with a research if necessary,like this
>
>value=-Search(-alpha-1,-alpha,depth-1)

I think you really mean this:

value = -Search( -alpha, -(alpha-1), depth-1 )
or
value = -Search(-alpha, -alpha+1, depth-1 )

>If (value>alpha) and (value<beta) then
>   value=Search(-value,beta,depth-1)
>End if
>
>If value>alpha then
>   If value>=beta then
>      Search=value
>       Exit
>    End If
>    Alpha=value
>End if
>
>This was my interpretation (or misinterpretation) of Reinfeld's pseudo-code. To
>be more precise, I search to depth instead of depth-1 if the side to move is in
>check. Compared to classical alpha beta with infinite window, it was a great
>improvement. I'll have to look at Reinfeld's code again a bit more closely, but
>my method seems to work so well that I would need to be really convinced before
>recoding it all over again. Do you think I could improve my speed with a proper
>PVS? Maybe I waste a lot of time searching the first move to full width instead
>of with a null window.
>
>Best Wishes,
>
>Roberto

This is exactly the way I understand negamax.  You can put a window
on the first move but I have not found this to be useful although
others have reported it to be a gain.

- Don

```