Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: SEE Function

Author: KarinsDad

Date: 13:53:00 04/03/00

Go up one level in this thread


On April 03, 2000 at 15:35:57, Robert Hyatt wrote:

[snip]
>
>
>What it does is ask the following question:
>
>If I capture the piece on square X, what will I gain (or lose) in terms of
>material.  You just enumerate the white and black pieces that attack square
>X, and then do the exchanges to see if it is good or bad to do.  Just like a
>human asks "Can I move my knight to e5?" by noticing the pieces for both sides
>that are currently attacking e5...

Thanks Robert,

What does SEE stand for? Static Exchange Evaluation?

Also, is there an efficient way to do this (structure-wise)? I can easily put
together an array of 8 directions of uint32s to hold upwards of 7 pieces in each
rank, file, or diagonal (for batteries and hidden batteries) and use them in
conjuction with a count of knight attackers/protectors (per color) for the
square. However, most of these types of structures are wasted white space. It
would seem that there is a better way to do it, but every one that I have
thought of has some deficit or other.

It appears that Swap() doesn't add into it's calculations a given battery piece
unless the piece in front of it is actually "used" in the calculation. This
would gain two things: 1) only pieces that directly attack the square have to be
calculated in initially, 2) the colors of alternating battery pieces can be
ignored since only the "top-most" piece will ever be looked at (until it is
used).

I'll have to think more on this.

Thanks,

KarinsDad :)



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.