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.