Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Anybody else using this hair-brained concept...

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.