Computer Chess Club Archives




Subject: Re: passed pawn evaluation.

Author: Robert Hyatt

Date: 17:21:45 01/12/04

Go up one level in this thread

On January 12, 2004 at 19:33:04, scott farrell wrote:

>On January 12, 2004 at 13:05:38, Robert Hyatt wrote:
>>On January 12, 2004 at 10:24:59, scott farrell wrote:
>>>On January 12, 2004 at 05:52:07, Tord Romstad wrote:
>>>>On January 11, 2004 at 21:18:30, macaroni wrote:
>>>>>I have recently been fiddling arround with some passed pawn code, however I just
>>>>>can't seem to get it working very well. Can you give me an idea of what sort of
>>>>>values you give different types (in different stages) of passed pawns?
>>>>Here is a rough description of what I do:
>>>>Start by giving the passed pawn a bonus depending on which rank it occupies.
>>>>You then adjust this bonus depending on the placement of the other pieces
>>>>on the board.  Some examples:
>>>>Protected passed pawns and passed pawn duos are especially dangerous.
>>>>Adjust the bonus up if there is a friendly pawn beside or diagonally
>>>>behind the passed pawn.
>>>>Adjust the bonus up if there is a friendly rook behind the pawn, and down if
>>>>there is an enemy rook behind it.
>>>this is where you need to be careful if you have a pawnhash, you cant hash in
>>>other pieces :) you have to put it into the rook/king eval instead.
>>Everybody needs to debug _that_ problem at least once.  Some of us more
>>than once.  :)
>Tords answer was just to hash where the passers are.

You can hash _everything_ about pawns, just so your scores have _only_
information about pawns in them.  If you add a piece, you have to hash the
piece into the signature, which will drive pawn hashes way way down.

>What do you do in crafty?
>I know I just just asked in another part of this thread, but this seemed more
>I am thinking of hashing in the number of wach type of piece or something, that
>doesnt change too much I dont think, obviously you can hash the position of the
>pieces, as you would increase the number of unique hashes too much.

If you do that, you will be debugging until you take it out.  :)  Your
hash signature only includes the pawn positions.  Many positions with the
same pawn location but different piece locations will produce different
scores that go into the same pawn hash entry, and you won't be able to
tell which is which.

>>>>A passed pawn is usually more dangerous if it is supported by a king.
>>>>Increase the bonus if the friendly king is close, especially if it is
>>>>somewhere in front of the pawn.  Likewise, you should increase the bonus
>>>>if the enemy king is far away.  In rook endgames, it is probably a good
>>>>idea to further increase the bonus if the enemy king is cut off by
>>>>a rook (I don't do this yet, but I plan to add it in the near future).
>>>>Passed pawns are most dangerous if they are able to advance safely.
>>>>If the passed pawn is blocked by an enemy piece, adjust the bonus down.
>>>>If it is unblocked, increase the bonus if your static exchange evaluator
>>>>decides that it is safe to push the pawn, and reduce the bonus if it is
>>>>not safe to push it.

This page took 0.1 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.