Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Use of square eval using Bit Boards aka Ed's Rebel Evaluation,but fo

Author: Robert Hyatt

Date: 11:57:11 01/08/03

Go up one level in this thread


On January 08, 2003 at 04:43:12, scott farrell wrote:

>My chompster is bit board .... bit boards rule 4ever !!!
>
>I really like Ed's code for eval/SEE, call it what you like, by calculating all
>the attack and defend squares.
>
>MSCP does this to a lesser extent.
>
>Crafty doesnt seem to do it at all. Robert, am I correct here? do you eval each
>square in a 64 byte array at all? I couldnt see it.

No, no need to.


>
>Having used bitboards in chompster I have almost no loops anywhere in my
>program. 1 or 2 for move generation, and 1 for move ordering and 1 for searching
>each move, and only a very few in eval but all guarded by a simple bit board &
>so they dont fire too often.
>
>The only way I can think to implement the above, it to iterate over each
>attackBoard for each piece, which I have available during eval, but I dont
>really want to iterate over it, yuk ... too sssllloooowwwww.

That is what you have to do in SEE...


>
>It seems to me, without bit boards, you have to iterate everything, so it seems
>no problem to be iterating over attack vectors. But for us bit-boarders it seem
>ugly (too me anyway).
>
>All I could think of was to keep each attackVector for each piece. And when
>traversing each quare on the board, do something like this:
>
>for (sq=0; sq<64;sq++){
>  if(  (mask[sq] & whiteQueenAttacks) !=0)
>    attackers++;
>  if(  (mask[sq] & blackQueenAttacks) !=0)
>    defenders++;
>  ......
>}
>if (attackers>defenders)
>    ATTACK_NOW_!!!!!
>
>atleast this method I dont have ot itereate the actuall attack vectors, and
>avoid slow msb/pop type routines.
>
>Any help / ideas appreciated.
>
>Scott



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.