Computer Chess Club Archives




Subject: MTD(f) and hash table size

Author: Tord Romstad

Date: 14:17:26 08/16/03

The last few weeks I have been experimenting with MTD(f).  It still does not
work quite as well
as my old aspiration alpha beta search, but I intend to keep working on it for
some more time.

One of my biggest worries right now is that the search slows down almost to a
full stop when
the hash table starts getting full.  For instance, here are the time (in
seconds) needed to
finish a 11-ply search from the starting position for different hash table sizes
from 5 to 320 MB:

5MB: 102 seconds
10MB: 88 seconds
20MB: 78 seconds
40MB: 55 seconds
80MB: 47 seconds
160MB: 34 seconds
320MB: 27 seconds

Is this normal, or do I have some kind of bug?  I really hope I don't need a
320MB hash table
to play decently at slow time controls.  Should I take a look at my hash table
scheme?  Currently I always replace if the depth of the new position is >= dept
of old

Another problem is that MTD(f) has very weird effects when combined with the
various forward
pruning techniques I use.  This is not entirely unexpected, because I use the
values of alpha
and beta for pruning decisions.  When I replace plain MTD(f) (which I haven't
been able to
make work very well; too many researches) with MTD(f) with a convergence
accelerator, I
often get entirely different search results for the same position.  If I remove
all selectivity
(except null move pruning) from my search, changing the test driver does not
have any
effect on the search results, but then my program becomes much too slow.  I
suppose I
will have to work out new forward pruning techniques.


This page took 0.07 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.