Author: Tord Romstad
Date: 06:24:46 08/09/04
Go up one level in this thread
On August 08, 2004 at 19:50:15, José Carlos wrote: > Another idea that seems to work for me (in my non-released private engine, >where I evaluate internal nodes) is to consider the king safety changes along >the path. A single move is not likely to make a big change (unless some crazy >sacrifices in king's pawn shelter), but some manoeuvres do the trick. I don't >recall the details, but the idea goes like this: > >if (eval[ply] > eval[ply-1] + MARGIN1) > extend; >if (eval[ply] > eval[ply-2] + MARGIN2) > extend; >if (eval[ply] > eval[ply-3] + MARGIN3) > extend; > > Where MARGIN3 > MARGIN2 > MARGIN 1, and eval means king safety evaluation of >the opponent. Or maybe I used full moves (ply-1,ply-3,ply-5), I'm not sure. It's >been a long time without doing chess programming. > But the idea worked very well in tests, and made the engine play interesting >games also. I've thought about similar ideas, but never tried them out in practice. If they work for you, I should probably give it a try as well. Thanks for the encouragment! Another idea, which I have tried from time to time but never decided whether I like or not, is what I call "compensation extensions". These are triggered when one side has a big material advantage, but the other side has a sufficiently big positional advantage that the static eval returns a score close to 0. This usually happens in very wild positions, where the static eval tends to be extremely inaccurate. The position will most often be lost for one of the players, despite the static eval near 0. It makes some sense to extend in such positions. Currently, I use this idea only in a limited way. My attack extensions and mate threat extensions are bigger when the attacking side is behind in material than when the material is equal or the attacking side is ahead. Tord
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.