Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Zero window question ?

Author: Peter Fendrich

Date: 06:28:32 10/25/02

Go up one level in this thread


On October 25, 2002 at 08:39:47, Nagendra Singh Tomar wrote:

>Hi everybody!
>
>In my endeavour to understand the techniques of comp chess I am in the process
>of understanding the benefits (what/why/how) of a zero window search. Told
>superficially it can be said that since we have a very small window to search we
>search less nodes, but I want to understand it to the minute details.
>
>What I observe and understand is follows.
>
>score = -alphabeta(board, -beta, -alpha, depth-1) <-- 1st call (full width)
>.
>. update alpha if score more than alpha
>.
>score = -alphabeta(board, -alpha-1, -alpha, depth-1) <-- subsequent calls
>                                                         zero window
>
>Any saving whatsoever that can be achieved by reducing the window size, should
>be because of beta cutoffs (fail-highs) increasing.
>Here we are keeping beta as -alpha (same as we would have kept it for a full
>window search, though we have kept alpha as -alpha-1 in contrast to -beta for a
>full win search)
>But in the subsequent call (child nodes) this alpha (-alpha-1) will be negated
>and passed as beta, which will be very less. Is the saving in nodes searched,
>due to this beta being passed as a very small value in the child->child nodes
>searched.
>I know I have made it complex, but I hope you understand me.
>
>IOW changing the value of alpha cannot reduce the number of nodes searched. But
>the fact that this alpha will be passed as beta in the subsequent call to
>alphabeta,   results in lot of beta cuts and hence reduced nodes searched.
>
>
>Am I thinking on the right lines ?
>
>tomar

I think that you've mixed up the alpha and beta values from the calling nodes
view. -alpha-1 is a temporary beta value and not a new alpha.
I would explain it for myself like this:
I assume that the first search (the full width) is with the best move in the
node. Therfore I reduce the beta value to the most narrow window possible,
namely alpha+1. So the the rest of the searches will use (alpha, alpha+1) until
proved wrong (score >= alpha+1) and I have to re-search with a wider window.
Now beta replaced by alpha+1 negated is -aplha-1.

Maybe that's what you said?

Peter










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.