Author: Stuart Cracraft
Date: 22:08:30 09/10/04
Go up one level in this thread
On September 11, 2004 at 00:05:06, Rick Bischoff wrote: >You already count your legal moves through the loop-- that is how you determine >mates, right? Why not, instead of just having a bool variable for >legalMoveFound, change it to an integer. Then, mark the move with a special >"only legal move bit"-- on the next iteration (with iterative deepining) or >maybe in the same loop. > So it would not have to be re-searhed to know that it is the only legal move bit? That would presume that I'm saving my move gens at each ply which I'm not. These are getting allocated from the stack by the runtime and once the node is exited gets deallocated. Hence there's no movelist to save against which to set an only legal move bit. Unles I'm missing something. I know a lot of people keep their own stack and I suppose it is for these reasons. But again I am not visualizing in my mind how keeping the stack can help though I not it must. Coming from the genmove-in-current-node-with-stack old school, I am still thinking it is wiped out when the routine exits searching this node. I liked that Chess 0.5 program Slate and Atkin published years ago in Byte. Would like to see an extension of that in C these days with all the latest bells and whistles. Probably much of it is old hat but I always liked the incremental approach to the attack tables. I'll be doing something like this for a future program but it may not force me to keep my own stack either. Have to think about it. Stuart
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.