Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Pawn Transposition Table

Author: Stuart Cracraft

Date: 07:49:20 01/12/98

Go up one level in this thread


The 93% table-probe match I mentioned before for pawn transposition
table was for discrete, unrelated positions, such as from a problem
suite.

When the pawn tranposition table is not cleared between moves in
a regular game, I am getting typically 95-99%.

I'm pretty sure of my hash function, however I'll try some other
things. Formerly, I just took a mask of the bits for the index into
the hash table. Recently I've done a modulo of the hash to determine
the index.

--Stuart

On January 12, 1998 at 00:07:20, Don Dailey wrote:

>On January 11, 1998 at 21:13:33, Stuart Cracraft wrote:
>
>>I wanted to share my experience with the group regarding
>>implementation of the pawn transposition table this weekend.
>>
>>It took about an hour to put in and another few hours to
>>test. I do like the result. Now I just probe the table and
>>if the score is there, use it, avoiding costly pawn structure
>>evaluation, the bane of programmers, the preventer of positional play.
>>
>>On the Win-at-Chess suite, it is able to get the pawn structure
>>score about 93% of the time from the pawn transposition table,
>>avoiding calculation.
>>
>>There was a lot of pawn logic (backward pawns, pawn holes,
>>attacks by pawn on the center, pawns in the center, wing pawn
>>advances, .etc) that I had written but kept out of the evaluation
>>function because it slowed down the search and resulted in worse scores
>>on tactical suites. I tossed it back in and retested at WAC and there
>>was no horrible slow-down.
>>
>>But, due to the tactical nature of WAC, this extra pawn evaluation
>>logic, once running at normal program-speed without slowdown, was not
>>helpful in getting a better score though. I suspect it might be more
>>helpful in real games or positional positions like levers in Bratko-
>>Kopec or the positional and endgame problems in Louguet II.
>>
>>One point: I don't clear the pawn transposition table between searches
>>unless solving a problem suite on the theory that in a real game,
>>the table will be filled with useful pawn structure evaluations.
>>Actually it needn't ever be cleared since there is no real replacement
>>scheme other than just over-write/replace-with-new, so having a few
>>pawn structures in the table from any previous search is always better
>>than having none.
>>
>>My experience with pawn transposition table has been positive;
>>however I do not see 98% successful probes, only 93%, on average.
>>
>>--Stuart
>
>There is more than likely a problem.  93% sounds more like a worst
>case situation, look for a bug.   The first thing I would check is
>the quality of the hash function.  This is the easiest thing to get
>wrong and is very non-intuitive.
>
>Here are some things that might explain your numbers:
>
>  1. You're testing with short searches.
>  2. You're testing the opening position or positions near it only.
>  3. Your hash table is pretty small.
>
>If one or more of these things are true you may be ok. Otherwise
>look at your hash function, your address calculation etc.  Is your
>table size correct?   Is your address calculation mask correct (assuming
>you are using the power of 2 method?)
>
>At the Dutch championship I had a bug in my hash tables.  My
>random number table was constructed wrong (my fault) and we were
>effectively only using 1/8 of our hash table.  Every 8th bit in each
>number was the same!  This kind of bug is very hard to catch.  It
>was quite a relief since I had been sensing something wrong with the
>program and could never put my finger on it.  We think this had a
>lot to do with our bad results.
>
>- Don



This page took 0.01 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.