Author: Bo Persson
Date: 10:51:17 04/14/04
Go up one level in this thread
On April 14, 2004 at 04:57:01, Dann Corbit wrote:
>Picking out the hash value and moving the lookup to the end gives a bit better
>result:
>
>/* MTD(f) is an alternative search to pvs */
>int mtdf(int f, int depth)
>{
> int beta;
> int smallest = -INFINITY;
> int greatest = INFINITY;
> TranspositionEntry *entry;
>
> do {
> if (f == smallest)
> beta = f + 1;
> else
> beta = f; /* beta is starting with a first best guess */
> f = AlphaBeta(beta - 1, beta, depth);
You have a problem right here, if you don't use fail-soft. The returned value
will always be either beta or beta-1.
> if (f < beta)
> greatest = f;
> else {
> int j;
> smallest = f; /* performs a cut-off */
Say you got beta-1 from AlphaBeta. Then you set greatest = beta-1, and try again
with a window one single point lower. How long does it take to reach down to the
the real upper bound?
Bo Persson
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.