Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: SEE Function

Author: Robert Hyatt

Date: 18:09:23 04/05/00

Go up one level in this thread


On April 05, 2000 at 14:02:21, KarinsDad wrote:

>On April 05, 2000 at 08:56:17, Robert Hyatt wrote:
>
>[snip]
>>
>>
>>Yes. You can try making SEE "legal" for testing, but you'll find that the
>>cost in speed isn't offset by the increased accuracy.  Remember that in the
>>normal search, SEE is not throwing moves away, just helping to order them.
>>If it is wrong, it doesn't affect the chess, only the speed.
>>
>
>Actually, in my code, my PieceAttackers structure is used for move generation
>for the next ply, evaluation of the current node, and SEE. So, it already has
>legal move information embedded within it. What this means is that any piece
>that directly attacks/protects a piece within a given square will only do so if
>the piece is not pinned against moving to that square.
>


Remember that there are absolute pins (piece pinned on the king so that moving
out of the line of the pinning piece is illegal) and just pins (bishop pinned
on the queen by a rook, so that moving the bishop is legal, but unwise).

Both could/should be addressed in "the ultimate SEE code".  I ignore both in
Crafty's Swap().



>In other words, I get this level of legality for free in the SEE since I use it
>for the other two functions.
>
>However, at the moment, I use a set of bitmaps for calculating the x-raying
>pieces. And, I do not maintain the information as to which pieces are pinned.
>So, a pinned x-raying piece could accidentally modify the SEE when it should not
>(a low occurrence probably). At some point in the future, I will probably have
>to maintain the pinned pieces information (8 pieces max) in order to get this to
>work correctly in all cases if it becomes necessary (depending on if I use the
>SEE for anything other than move order).
>
>KarinsDad :)



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.