Computer Chess Club Archives


Search

Terms

Messages

Subject: Move ordering - How do I know if I have played this move already?

Author: Steve Maughan

Date: 14:39:23 04/06/99


Hi Folks!

In my progam I have been playing around with move ordering.  If possible I would
like to play certain moves (e.g. Hash move, killer move) before I call the
general MoveGeneration routine.  Hopefully this will save time as the hash move
etc will often cause a cutoff.  However, in the common case were these do not
create a cutoff I will still need to generate all the other possible moves.  My
question is - what is the best method for keeping track of moves played or
testing whether or not a move has already been played?

Do people;

a) iterate through all moves generate?
b) iterate through special moves such as hash?
c) create a 64 bit integer for each piece, with each bit representing a 'to'
square.  If the 'OR' gives a new number then it is a new move.
d) Generate all the moves in the first place and give a high weight to special
moves as desired?
e) Use some form of hash table?

I am favouring 'c' at the moment but am not sure if there isn't an easier way.

All ideas and help appreciated.

Steve Maughan



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.