Author: Tord Romstad
Date: 08:33:49 11/06/01
Go up one level in this thread
On November 05, 2001 at 14:32:50, Robert Hyatt wrote: >On November 05, 2001 at 07:00:48, Tord Romstad wrote: > >>On November 04, 2001 at 17:41:06, Michel Langeveld wrote: >> >>>Don't forget to look at Bruce Mooreland's excellent homepage about >>>computerchess: http://www.seanet.com/~brucemo/toc.htm >> >>This looks like a very good site --- thanks to you for mentioning it, and >>to Bruce for writing it! >> >>I was a bit surprised to see the suggested implementation of the null move >>heuristic on Bruce's homepage, the alpha-beta window is different from what >>I have always used. This is the code fragment: >> >> MakeNullMove(); >> val = -AlphaBeta(depth - 1 - R, -beta, -beta + 1); >> UnmakeNullMove(); >> if (val >= beta) >> return beta; >> >>In my code, I have something like >> >> val = -AlphaBeta(depth - 1 - R, -beta, mate_value); > > > >No reason. All you want to do, is with minimal effort, prove that if you >do _nothing_ the score will return >= beta. Whether it is > beta, or = beta >means nothing here. using mate-value means you will not be able to prune >many lines in the null-move search that would be discarded by alpha/beta >with X, X+1 as the bounds. I don't follow you here, I'm afraid. My code will never return a value bigger than beta. It returns a number between -mate_value and beta. The point is that if the value returned is close to -mate_value, I know that the side which tried the null move is threatened with a mate in a few moves, and I can extend the search. >>which I always thought was the normal way of doing things. The advantage >>of my method is that I can often detect serious tactical threats, while >>Bruce's approach has the obvious advantage that it searches fewer nodes. >>Without extensive testing, it is not clear to me which technique works >>better. >> >>What alpha-beta window do the rest of you use? If anybody has tried both, >>which approach works better? >> >>Tord > >I've always used X,X+1 for null-move. I've tried others, but none were as >efficient. I don't see how it would matter if the score is == beta, or way >above beta. I agree, of course, but I really don't understand how you think this relates to the discussion. > All that says is that you are winning, or you are _really_ >winning, without having to play a move. Now if the null-move search fails >_low_ that tells you something. IE the difference between alpha and alpha-100 >would be interesting. Alpha means doing nothing is not good. alpha-100 >failing low means doing nothing loses a pawn. Which may mean the opponent >has a serious threat that you have to actively hold off by playing a move. How do you determine how serious the opponent's threat is if you search with a window smaller than (-mate_value, beta)? 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.