Computer Chess Club Archives


Search

Terms

Messages

Subject: Symbolic: Status report 2005.06.02

Author: Steven Edwards

Date: 07:04:08 06/02/05


Symbolic: Status report 2005.06.02

I've added a few routines to Symbolic's Lisp source to handle predicated
variation extension.  This extension is done only at the end of a search and,
when a certain evaluation move sequence exists, it is appended to the PV.  An
example case is when the PV ends in a tablebase position; the appropiate
sequence of successor tablebase moves gets added to the PV, all the way to mate
if all the required tablebase files are present.

The PV extension also works for non-tablebase positions, such as a forced mate
in two.  This helps support the built-in MateIn2 predicate that only returns a
move and not a three ply PV.

While the PV extension is not necessary for move selection, it does make for a
better narration, plus it also helps with testing the overall Lisp code.

Following the addition of the PV extension, the narrative has been modified to
include the terminal analysis position resulting from an execution of the PV.

An example of the above in Symbolic's HTML narration can be seen at:

  http://www.geocities.com/chessnotation/Web.html

--------

The very first construction of a plan from themes was accomplished.  Although
the result is trivial, the process did demonstrate the validity of the dozens of
Lisp functions involved.  Also of importance is that having an established
plan/goal framework (and the constraints it imposes) better defines the
remaining work.  For one thing, it separates the plan formation process from the
subgoal elaboration process.

The plan formation process is controlled from KsSelector (called only at nodes
that might require planning); it calls KsSurveyor (produces strategic themes)
and then calls KsPlanner to produce a plan from the themes followed by pattern
matching appropriate to the theme goals.  The resulting plan is an adversarial
HTN (Hierarchical Task Network, a tree) that is from one to about seven goals
deep.  Each goal represents a positive, odd number of (potential) plys in the
position search tree, and each goal has a indication as to which color is on the
move at the start of the goal.  All of this initial plan formation is done
without any position search and only with pattern matching in the IDB (Instance
Data Base) corresponding to the planning node.

Some subgoal elaboration occurs in the plan formation process but only for
subgoals of the root goal as only these goals correspond to data in the planning
node's IDB.  All other elaboration happens during the plan exploration process
as the exploration process is needed to expand nodes in the position search
tree, and the IDBs associated with these nodes are then used for elaborating
goals that are not root level subgoals.

--------

More to come on plan exploration and subgoal elaboration.




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.