Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: movelist insertion question

Author: Landon Rabern

Date: 15:21:04 01/05/00

Go up one level in this thread


On January 05, 2000 at 09:21:25, Robert Hyatt wrote:

>On January 05, 2000 at 01:24:52, Landon Rabern wrote:
>
>>On January 05, 2000 at 01:03:47, Robert Hyatt wrote:
>>
>>>On January 05, 2000 at 00:49:50, Landon Rabern wrote:
>>>
>>>>After move generation, when putting a killer/pv/hash table move on top of the
>>>>list I search through the list of moves until I find the move I am looking for,
>>>>shift the whole list down and put the move I wanted on top.  Is there a better
>>>>way to do this? The way I am doing it seems inefficient.
>>>
>>>There are multiple answers.
>>>
>>>1.  Don't generate moves before you try the hash move.  If it produces a
>>>cutoff you avoid generating anything.  Otherwise, try it, and if it doesn't
>>>cutoff, generate only captures (if you can do this easily).  Try them next.
>>>Before generating other moves, try the killer moves since they can be tried
>>>without generating moves and they too may produce a cutoff that will avoid
>>>move generation.  Otherwise, generate all moves and then for the first pass
>>>to select a history move, delete the killer moves and the hash move.
>>>
>>>2.  Don't shift things around. Just make the move you want and zero it in
>>>the list.  no move should be represented as 0, so you can tell that an
>>>entry is a move that has already been tried and cleared...  no point in
>>>shuffling stuff around as it uses a lot of memory bandwith, something the
>>>PC has very little of.
>>
>>
>>What if a killer move is not a legal move at some nodes?
>>
>>Landon
>
>
>I store FROM, TO, MOVING_PIECE, CAPTURED_PIECE, PROMOTION_PIECE in my 21 bit
>move format.  With that information, I can test for psuedo-legality by making
>sure that MOVING_PIECE is on FROM, CAPTURED_PIECE is on TO, etc.  IE I have
>enough information to be sure that moves are legal enough to not corrupt the
>board.  Later the in_check legality check will finish the testing..

Ok, I store all this stuff too except promotion piece, because I always have it
setting it to a queen for now.  What about sliding pieces?  Checking that from
is moving and to is captures works for non-sliding pieces, but for sliding
pieces, do you check the squares in between from and to, to make sure nothing
has moved there, to block the piece from moving?  I guess you could just get a
bitboard with the squares in between 1's and & it with all the pieces on the
board, to test this.

Thanks,
Landon W. Rabern



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.