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.