Author: Mike Byrne
Date: 21:27:40 04/30/04
Go up one level in this thread
On April 29, 2004 at 04:56:30, Daniel Shawul wrote:
>Hello
>
>My question is about normal futility at depth==1 and lazy evaluation.
>What i do is as follows
>
> search()
>{
> for each move {
> MAKEMOVE()
> if( depth == 1 &&
> move is not checking &&
> score + 300 < alpha
> prune;
> ..
> recurse to next ply
> }
>}
> quiescent()
>{
> if(lazy score + margin < alpha ||
> lazy score - margin > beta)
> score = lazy score modified by margin
> else
> score = eval()
>
> if(score > beta)
> return beta;
>
>}
>
> i am thinking the futility is redundant if the second case for lazy
>eval is present [lazy score - margin > beta]. What does the futility save me?
>i already made the move so only a call to quiescent is left which will
>immediately return??
lazy in crafty will cutout expensive evaluation functions but does not impact
search, futility reduces the search in unpromising lines
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.