Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: PV length ???

Author: Nagendra Singh Tomar

Date: 01:14:25 10/27/02

Go up one level in this thread


On October 27, 2002 at 04:05:19, José Carlos wrote:

>On October 26, 2002 at 19:04:33, Nagendra Singh Tomar wrote:
>
>>On October 26, 2002 at 12:27:46, José Carlos wrote:
>>
>>>On October 26, 2002 at 12:07:16, Antonio Dieguez wrote:
>>>
>>>>>>score = -alphabeta(board, -alpha-1, -alpha, depth-1);
>>>>>>
>>>>>>if(score > alpha && score < beta)
>>>>>                  ^^^^^^^^^^^^^^^
>>>>>
>>>>>  Don't use beta there. You just want to know you're above the pv score (which
>>>>>is alpha now).
>>>>
>>>>if I am not mistaken it depends on the exact writing.
>>>>
>>>>he can write
>>>>
>>>>make...
>>>>score = -alphabeta(board, -alpha-1, -alpha, depth-1);
>>>>if(score > alpha && score < beta)
>>>>{
>>>>    unmake & make(depends on the program)
>>>>    score = -alphabeta(board, -beta, -alpha+1, depth-1);
>>>>}
>>>>
>>>>unmake
>>>>
>>>>if (score>alpha)
>>>>{
>>>>    blabla
>>>>    if (score>=beta)
>>>>    { update killer; update hash; etc. }
>>>>}
>>>>
>>>>-------------------
>>>>or he can write something like this?
>>>>
>>>>make
>>>>score = -alphabeta(board, -alpha-1, -alpha, depth-1);
>>>>if(score > alpha)
>>>>{
>>>>    if (score>=beta)
>>>>    { unmake; update killer; update hash; return beta; }
>>>>    unmake & make(depends on the program)
>>>>    score = -alphabeta(board, -beta, -alpha+1, depth-1);
>>>>    unmake
>>>>    if (score>alpha) // 'cause it could fail low right?
>>>>    {
>>>>        if (score>=beta)
>>>>        { update killer; update hash; return beta; }
>>>>        etc.
>>>>    }
>>>>}
>>>>
>>>>I have written the first option, I think I can't make it prettier with the
>>>>second option or something else but may be you can write it better off corse.
>>>>
>>>>Ah if the search always return alpha or beta then that can change things.
>>>>
>>>>
>>>>antonio's usefull post.
>>>
>>>  I don't quite follow. He's talking about the null window searches after the
>>>pv. He's searching [alpha,alpha+1] so he might fail high with alpha+1 or
>>>alpha+500, and beta isn't useful here at all. All you know if you fail high is
>>>"I've found a move that seems to be better than my current pv".
>>
>>That <beta check is needed because if the score is >beta, then also we are not
>>interested in the score because we know that this is too good a score for
>>us for the opponent to allow .. so the opponent will not let us lead to
>>the board where we can play this move.. thats why we ignore for >alpha and >beta cases.
>
>  Wrong. In the root you consider every move. There's no way for your opponent
>to avoid any of your root moves ;)
>
>  José C.
>
>

You are right .. But I meant the non-root case !!


>>So you open the
>>>window and research to get a true score (note that you can also forget about the
>>>true score and keep searching the other moves with [alpha,alpha+1] hoping no
>>>other move fails high and trust your fh and go to the next ply).
>>>  Beta only matters if you search [alpha,beta], this is, if it is one of the
>>>bounds.
>>>
>>>  José C.



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.