Author: Andrew Williams
Date: 08:01:27 01/26/99
Go up one level in this thread
On January 26, 1999 at 10:05:09, KarinsDad wrote: >On January 26, 1999 at 05:12:09, Andrew Williams wrote: > >>On January 25, 1999 at 18:30:20, KarinsDad wrote: >> >>> >>>I don't understand. Couldn't you just as easily find positions that had castling >>>in the TT way before you actually castle in your position? What is so special >>>about castling? Is it that the number of transpositions drop drastically after >>>castling (even though some would still be there)? Also, wouldn't castling often >>>be within opening book moves so you are not yet in your TT? >> >>Sorry, I wasn't being particularly clear here. What I mean is that after I >>castle, I change the pawn scoring to reflect the side the King is now sitting >>on. So the pawns on that side are told to stay put, while the ones on the >>other side are allowed to advance (this is a simplification, of course). So >>I clear the TTs because the scores from before castling are not compatible >>with those after castling. >> >> >>Andrew > >Wow! What a good idea! Probably wouldn't have figured this one out on my own in >a long time. > I wish I could claim credit for this, but I think crafty (and probably everyone else!) does this too. >With this in mind, do you also modify the pawn information within the search >tree once you castle there as well (i.e. 6 ply down, it castles, hence the >evaluation function should have a pawn modification below that node which is >different than the pawn structure information, I assume you are using a >separate pawn structure evaluation)? > No. But this was my original intention. I didn't do this because.... Oh dear, I've forgotten now. I think it was something to do with the way I hash my pawn scores. The hashing only takes into account the location of the Pawns, so I can't include any scoring that depends on the location of the pieces. (It's coming back to me now). The original idea here was to have different pawn scoring in the endgame (try to get them to promote) from in the opening and middlegame (try to get them to stand still long enough so that I don't get mated). So, I devised a different piece/square table for my pawns once I reach the endgame, but "reaching the endgame" is dependent on how many pieces are on the board. If I try to switch halfway-through the search, it will mess up my pawn hashing (which I don't want because my pawn TT gives me a big speed boost). So I switch piece/square tables at the root of a search. While I was doing this (endgame piece/square tables), I thought it would be a good idea to have different ones to reflect where each side has castled - and I just incorporated this idea with the other. There is a slightly modified approach that would include the King's position in the pawn hash key. Then any scoring relating to the King that doesn't depend on other pieces (eg pawn shelter around the king) can be included in the score that is put in the pawn hash table. This would allow me to switch during the course of a search. This was being talked about here a few months ago, and I think that Ernst Heinz said he did this. I'm pretty sure that it's in crafty too. I hope this is clear (it's a bit "stream of consciousness", I'm afraid). I'm really glad you asked the question, because you reminded me that I've only done half of what I was thinking about doing. From the hints you've dropped, your program sounds like an interesting project. Any idea how long before it plays its first game? Are you going to play it on the servers? Cheers, Andrew
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.