Author: Jari Huikari
Date: 06:28:48 12/10/97
Go up one level in this thread
On December 09, 1997 at 19:35:23, Dan Newman wrote: >On December 08, 1997 at 15:00:20, Jari Huikari wrote: > >> <snip> >>Last night :-) I decided not to have any maximum of legal moves in >>my program. Or more probably I set it to very high number ... >>say 500. (It doesn't cost much in my program.) >> <snip> >Hi, > No need to set the maximum number of moves as high as 500: all >you need to do is calculate the sum of the absolute maximum number >of moves of each piece from the set (9Q, 2R, 2B, 2N, 1K)--the idea >being that a queen's absolute maximum number of moves is greater >than that of a pawn or any other piece--so just promote all the >pawns to queens and calculate. If we do this we get an upper >bound on the maximum number of moves possible from any legal >position: > > 9*27 + 2*14 + 2*13 + 2*8 + 8 = 321. I'm going to allow more pieces than these: maximum number 9 for every kind except kings... (Positions with no empty squares at board if someone wanted to create them...) Maximum 500 for possible moves was sure too pessimistic. :-) 300 _must_ be enough... In my program I only save list of _first_ moves. Generating moves and searching nodes in further plies are done simultaneosly. I have only two tables: one for 300 moves and another for their scores. My 386SX can visit 7000 positions per second. But it doesn't see yet much in one, only material points and some small bonuses e.g. whether a knight is at the edge of board etc. I'll add refinements sometime later to my program. Thanks for your pseudo-code! Jari
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.