Author: KarinsDad
Date: 14:58:41 07/20/00
Go up one level in this thread
On July 19, 2000 at 18:13:30, Peter Kappler wrote: >On July 19, 2000 at 17:56:44, Larry Griffiths wrote: > >>Hi, >> >>I have been re-programming my chess engine lately and have been implementing a >>concept that I saw posted here about a year ago. >> >>The concept is to look out from the FROM and TO squares when a piece is moved to >>determine what pieces need to have their moves re-generated. >> >>I am having second thoughts about this since it is about equal to >>generating moves for 2 Queens, 2 Kings, 2 Knights and 2 Pawns looking out >>from the FROM and TO squares. >> >>Is anybody using something like this, or even tried this? >> >>Larry > > >A couple of months ago, I seriously considered scrapping my move generator and >using an incremental scheme, like the one you described. I spent a couple of >nights thinking about the design, and then decided it was too much work. :) > >The big advantage I see is that you automatically get up-to-date attack >information, which is extremely valuable in an eval function. > >I asked Bob about this a long time ago, and he said he started down this path >with Crafty before switching to bitboards. I also think KnightCap does >incremental move generation, and the source code is available. > >--Peter I will someday be doing something similar to this, but in a slightly different order and for a slightly different reason. I have a Position Information structure where I store bitmaps and piece attack information. When a position is first generated, I calculate this POSINFO structure from scratch. It is then used to calculate eval and moves for the position. I wrote a DeltaCreatePosInfo method which would copy the structure from the parent and change it accordingly for the child, but have not yet implemented it. It currently consists of a series of comments as to the steps required. It should be faster than creating the entire set of data from scratch, but how much so is hard to determine. One thing I do know is that I call CreatePosInfo at least once for every position and it takes up a considerable amount of time. Even cutting the time in half would be very helpful. But, as other people have posted, creating delta information (list of moves in the original post, other data in my post) is a fairly complex thing. KarinsDad :)
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.