Asynchronous Runtime Replanning

next up previous
Next: Architecture Up: CYPRESS: Reacting and Planning Previous: The ACT Language

Asynchronous Runtime Replanning


CYPRESS contains a domain-independent run-time replanning capability, which allows PRS-CL to invoke SIPE-2 to perform replanning for failures that cannot be remediated locally by the application of predefined ACT procedures. The replanning framework supports the following behavior:

  1. PRS-CL detects an irrecoverable failure during plan execution.
  2. PRS-CL communicates the current state of execution to SIPE-2, then continues executing those parts of the plan that are unaffected by the failure.
  3. SIPE-2 invokes its replanner to produce an alternative plan.
  4. The new plan is translated to an ACT and forwarded to PRS-CL.
  5. PRS-CL merges the new plan with its current activities and continues execution.

The second step above highlights an important characteristic of our replanning framework, namely its asynchronous mode of operation. For asynchronous replanning, plan execution continues on those branches of the plan that are not affected by the failure. This mode of operation contrasts with synchronous replanning, in which plan execution is halted while an alternative plan is generated. Asynchronous replanning presents greater technical challenges, the most critical of which is to reconcile the state to which plan execution has progressed during generation of a new plan with the new plan itself. Asynchronous replanning is critical in many domains, since it is infeasible to halt execution while replanning occurs for some parts of the plan.

Aaron Heller
Wed Mar 29 19:31:38 PST 1995