Author: Will Singleton
Date: 11:54:24 06/13/04
Go up one level in this thread
On June 13, 2004 at 14:24:57, GeoffW wrote: >Hi > >I was thinking how I would add pawn hashing to my program. Having read a little >of the Crafty source I have a rough grasp of the idea, however there are a >couple of things I am hazy on. > >Q1) >I understand the pawn hash score stored must not contain any piece related >scoring as that must be factored in later. In my program even the simple choice >of which pawn position look up table is determined by the phase of the game, i.e >it will be piece dependent. How would I get over that obstacle ? Score the pawns >for end game, opening and middle in the hash, and choose which one to use later >? > >Q2) >Crafty uses an 8 bit bitmap to store file for passers, this is ok for a bitboard >program as it is probably trivial to find the exact location later. However for >a non bitboard program it is non trivial to find the exact locations. Do I have >any alternative but to store the passer locations in the hash ? That would be 16 >bytes just for the passed pawns for both sides? > >Hope my questions made sense I typed them quickly as the England match is about >to start, must dash ................... > >Thanks for any help > > Regards Geoff I don't know if my implementation is best, probably not. Testing shows it works ok. I adjust the hashkey by the castle status, king positions, endgame flag, as well as piece count and material value. So, any factor that might affect the pawn scoring, that isn't accounted for elsewhere, will be allocated its own position in the table. Since we've got a lot of memory to play around with, and the pawn table doesn't have to be big to yield its max benefit (which isn't much anyway), I store tons of stuff in the table. Passed pawn arrays, number of passers, pawn holes, pawn blocks,
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.