Computer Chess Club Archives




Subject: table-based SEE or "evaluation in rebel (hanging pieces)"

Author: martin fierz

Date: 04:54:50 11/27/03


i have a question about ed schröder's webpage, specifically on the hanging
pieces part.

ed explains that he has two tables which contain attack info for each square of
the board, they look like this:

| BIT0 | BIT1 | BIT2 | BIT3 | BIT4 | BIT5 | BIT6 | BIT7 |
|      Number of     | PAWN |KNIGHT| ROOK | QUEEN| KING |
|      ATTACKERS     |      |BISHOP|      |      |      |

so if you have a square attacked by a white pawn and a white bishop, you get the
value 00011010 in binary notation for this square, or 26.
next, ed explains that he has a 3D table

[piece_type][white_attack][black_attack] ([12][256][256]), which contains the
expected value for a capture on a square.

for example, if you have a pawn which is attacked by 2 pawns and is defended by
a knight, you will find in your table that the expected material gain is 1 pawn.
up to here i understand all of this, and it seems like a great idea - you have a
SEE based on a single table lookup. it doesn't deal with xray-attacks, of

but now for the real problem: let's say, you have a bishop attacked by 2 knights
and 1 rook, defended by 1 knight and 2 rooks in the first case, or defended by 2
knights and 1 rook in the second case.
in the first case, you are winning material. in the second case not. how do ed's
tables distinguish these two cases?

am i missing something here, or is this just another inaccuracy that such a
table-based SEE has (like not resolving xray attacks)? is it simply unimportant
to resolve such details?


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.