Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Extended Futility Pruning

Author: Antonio Dieguez

Date: 09:02:00 04/06/02

Go up one level in this thread


On April 06, 2002 at 03:48:28, TEERAPONG TOVIRAT wrote:

>
>Hi,

Hi,


>2)
>Extended Futility Pruning method from Ernst Heinz's recommendation :
>....
>fscore=material_balance+razor margin
>if(!extend&&(depth==pre_pre_frontier)&&(fscore<=alpha)&&(...))
>depth=prefrontier
>fscore=material_balance+extd_fut_margin
>if(!extend&&(depth==pre_frontier)&&(fscore<=alpha))
>{score=fscore
> fprune=1
>}
>....
>It's obvious that if the first if statement is true the second if must be true.
>Just curious to know why the author didn't avoid testing the second if?
>?

Without {} for the body of the first if then the only instruction in it is
depth=prefrontier, but I don't know if you forgot to put it or not but my
estimate is that you don't forget it and it is the only instruction there
because you want to do the second thing always. So the second if is outside.

>3)
>Some programs have an evaluation hashtable to store the score from
>evaluation(). I think we already have transposition table for this job.
>And nowaday, we can provide plenty of entries.The chance of collision in
>transposition table is not so significant. So,why?
>?

for my proggy in my computer it is a 20% speed up when many pieces on the board.
I evaluate at almost all nodes so that may have an influence. At the moment I
don't do much prunning in adition to nullmove but that will change and obviusly
you can't do it without the eval.



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.