Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: How do program find if a position is in book?

Author: Peter Schäfer

Date: 04:58:32 05/17/04

Go up one level in this thread


afaik, Crafty uses an approach similar to (2): 15 bits of the hash key are used
to address a lookup table. Each entry in that table points to a "cluster" of
position records.

Each cluster contains all positions that share those 15 bits plus their
follow-up positions (i.e. the positions that can be reached from a given
position). Obviously, such a cluster contains many unneeded positions but it can
be accessed with very few disk reads (as compared to a binary search).

Some space is wasted if the lookup table is sparsely populated, but it's only
128 kBytes. I think it's a pretty good time/space tradeoff.


The issue has been discussed recently on the Arena forum; another idea was to
use linked lists of position records (allowing files to be edited more easily).

-- Peter



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.