SIPE-2 Architecture

SIPE-2 has implemented several extensions of previous planning systems, including the use of constraints for the partial description of objects, the incorporation of heuristics for reasoning about resources, and replanning techniques. Its formalism allows description of planning and simple scheduling problems in terms of the goals to be attained and the various activities that can be undertaken to achieve these goals. One of the most powerful heuristics for avoiding combinatorics in SIPE-2 is the ability to avoid frequent consistency checks by temporarily producing invalid plans. The system relies on plan critics that check for and correct problems in these plans at certain intervals.

The inputs and outputs of SIPE-2 are depicted above. While the inputs to the planner attempt to model the "real world," current AI techniques cannot handle the full complexity of our everyday world and generally it is an abstraction of the real world that is represented. The vertical arrows in the figure indicate the relationship of representation, by which entities in the world are encoded internally in the planning system. The output is a plan --- a partially ordered set of primitive actions and conditions to be carried out. Conditions the plan expects to be true at certain times are also included in the plan. A plan can be represented as a directed, acyclic graph in which each node is an action or condition, and each edge represents a temporal ordering.

SIPE-2 takes as input a description of the initial state, a description of a set of actions, a problem descriptor, and a set of rules describing the domain. The initial state consists of a sort hierarchy, a world model, and a set of deductive rules. The sort hierarchy represents invariant properties of perpetual objects, describes the classes to which an object belongs, and allows for inheritance of properties. The world model is a set of predicates which hold over objects in the sort hierarchy. Some predicates are given explicitly in the data base, and others are deduced by applying deductive rules to the data base.


An operator is the planner's representation of actions or abstractions of actions that may be performed in the domain. An operator is input in the system's formalism, or graphically in the Act-Editor , which can translate Acts to SIPE-2's formalism. An operator specifies the conditions under which an action is appropriate, the constraints on the objects in the action, a set of instructions for performing the action, and the main effects accomplished by the action (additional context-dependent effects are deduced by the system from deductive rules).

To produce a plan, the planner instantiates operators by binding their variables, combines these instantiations by ordering them, and then adds additional constraints to avoid problematic interactions between actions. For example, if a potential resource conflict is detected between two actions, the planner may order the actions to execute sequentially or may constrain the action to use different resources. SIPE-2 chooses one of a set of operators for each goal in an abstract plan. This produces the more detailed plan to which the planner has added deductions and orderings that avoid problems it has detected (e.g. a resource conflict).


SIPE-2 also has execution-monitoring techniques that accept new information about the world and modify the plan to respond to unexpected events. The replanning module takes advantage of the rich structure of SIPE-2 plans to determine how unexpected events affect the plan being executed and, in many cases, to retain most of the original plan by making changes in it to avoid problems caused by these unexpected events. SIPE-2 is also capable of shortening the original plan when serendipitous events occur.

SIPE-2 and Act-Edtior are trademarks of SRI International.

David E. Wilkins
Last modified: Sat Apr 1 13:17:41 1995