Computer Chess Club Archives


Search

Terms

Messages

Subject: Symbolic: Status report 2005.04.17

Author: Steven Edwards

Date: 13:32:27 04/17/05


Symbolic: Status report 2005.04.17

As mentioned earlier, Symbolic's Lisp knowledge sequencers use a KSP association
list as the input parameter.  Early on I had included in the KSP a Reason
binding, a string that gave a brief explanation as to why a particular KS was
called.  I've now dumped this because the strings weren't providing information
specific enough to be helpful.  I'll work more on this later as one of the goals
of the project is for the program to be able to explain why a move was selected.

Also in the KSP association list, I've added a BaseNode binding.  It's value is
the position search tree node that was used at the last invocation of the
KsSelector routine and it is required by KS calls deeper in the search to be
able to reference the IDB (Instance Data Base) in use at the time of the
preceding planning activity.  This is because the deeper KS calls need to access
the current plan, and that plan is stored in the IDB of a node that might be
several ply above the current position.

Another new binding in the KSP is the PPOrdinal pair.  The value, if any, is the
generation ordinal of a PlanPaint instance in the IDB associated with the
BaseNode; the indicated instance is the base of the current subplan being
explored.  It is set to the root of the current plan by KsSelector and is
advances one step at a time to a succeeding PP instance as the plan is explored.

The very first (and quite trivial) plan has been formed by KsPlanner.  It is
nothing more than the top level BestMove goal (represented as a Goal pattern
instance) bound to a plan structure (a PlanBranch instance with a PlanPoint
instance at each end).  This tests the basic plan creation mechanisms, but not
(yet) the plan edit functions.  KsPlanner also now understands how to activate
re-planning at different effort levels (progressive deepening) and this includes
clearing out the IDB of any prior planning activity.

The Big Work ahead can be divided into two chunks: the first is the plan
elaboration process and the second is the plan exploration process.  The
elaboration process has to come first; a plan must exist before it can be
explored.  The elaboration process includes two major subtasks: the creation of
the appropriate plan editing support and the implementation of the production
sequencers that will perform the actual elaborations.  These will be done
concurrently.



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.