Next: SPLIT-TRACE. Up: Adding Cooperative Procedures to Collective Memory Previous: Summarization

From Summary To Memory

After the execution trace has been summarized, additional processing is required in order to add cooperative procedures to collective memory. ADD-C-PROCS (again see Figure 3) next calls function SPLIT-TRACE, which generates a list of operator chunks and the goals they achieve. PREPARE-CHUNK modifies each chunk to make a cooperative procedure that is suitable for reuse. The procedural knowledge case-base is then modified to include the novel procedures by MODIFY-PKCB. These three support routines are outlined in Figure 5.

  
Function SPLIT-TRACE(summary)
  union ( Temporal-chunks (summary),
          Goals-oriented-chunks (summary) )
Function PREPARE-CHUNK(chunk)

  foreach operator in chunk
    Consistently replace goal literals with
      the same, newly generated variable
    Convert agreement into WAIT-FOR
    Augment operator with additional
      planning binding information
Function MODIFY-PKCB(new goals)

  foreach old in PKCB indexed by goals
    if (plan old) maps to (plan new)
       if (context old) maps to (context new)
         if GENERALIZED-CONTEXT(old new) exists
           set (context old) to generalization
         else if contexts differ
            add entry to PKCB
       else add entry to PKCB
       return
Figure 5: Support algorithms for ADD-C-PROCS.


Subsections:


Andrew Garland
1998-05-22