Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: question about futility pruning and positional evaluation

Author: Robert Hyatt

Date: 21:20:44 12/08/00

Go up one level in this thread


On December 08, 2000 at 11:57:49, David Rasmussen wrote:

>On December 08, 2000 at 06:18:45, Vincent Diepeveen wrote:
>
>>On December 07, 2000 at 13:56:31, Bert van den Akker wrote:
>>
>>>In a previous question about Futility pruning Vincent Diepeveen mentioned:
>>>
>>>>Futility pruning is very dubious. It sure speeds you up, but it's
>>>>dubious and tends to give you slight positional
>>>>differences that make a program play positional
>>>>a lot weaker.
>>>
>>>Can sombody explain me why Futility pruning tends to give slight positional
>>>differences?
>>
>>First of all it heavily relies on the positional evaluation of
>>a program. If you have a very simple evaluation with small scores
>>then the problem is a lot smaller when you have huge scores (no matter
>>the size of the evaluation).
>>
>>Suppose i am in a position X where evaluation of the position is
>>
>> 0.055
>>
>>Now suppose alfa is 0.500
>>
>>Suppose i use a value 0.400 to create a region but that
>>a move i delivers after making a move an evaluation of 0.700:
>>
>>  So for move i the rule:
>>   if( eval(X)-region <= alfa )
>>     prune move i
>>
>>Obviously this way of pruning is HEAVILY dependant upon what
>>a move positional can deliver to me. Is it a huge score, then
>>you have a major problem because the smaller the value 'region'
>>in the above example the more one can prune. The bigger i make
>>the value 'region' the less one can prune.
>>
>>Not to mention that a move can place down a tactical trick, like
>>threatening mate, and as i do checks in the qsearch,
>>i see the completion of it in the qsearch.
>>
>
>But this wont happen if your margin is large enough. As large as your largest
>position scores. As explained by Ernst. Very simple. And accurate.


Yes... but if the margin is "big enough" then you don't have futility pruning,
either.  That is the problem.  And if you eliminate _one_ node from the tree
search, you stand the chance of perturbing the score that eventually backs up
to the root of the tree, due to the hash table.

The problem with "big enough" is that for some programs, "big enough" might be
a pawn or two.  For other programs it might be way more than a queen.  Such a
window effectively disables futility pruning.  For those that want to produce
very large positional scores.



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.