AIAI O-Plan

Plan Ontology based on <I-N-OVA> Constraint Model of Activity

Austin Tate, 16-Oct-96

Introduction

An introduction to the <I-N-OVA> Constraint Model of Activity and papers concerning the model and the Ontology of Plans which it relates to are given here.

This page provides an object model of <I-N-OVA> and the Plan Ontology suggested by these papers. It is still under development.

The ontology is intended to act as a minimum core on which extensions can be made in a consistent, structured fashion. It is meant to support both the meta-level of reasoning about the activities involved in the planning process and the domain object level in which the plans are meant to be executed.

Core Model of Plans and Activity

The model sits within the real world in which behaviour can occur. Behaviour is the performance of one or more real world activities (a non-empty set of activities). A description of the behaviour possible in the real world may or may not be included in the model - with more or less accuracy if included. The environment is notionally considered to be the agent supplying the force behind any non-modelled behaviour or the cause of any difference between behaviour that actually occurs in the real world and that predicted by the model. The real world behaviour is shown in the diagrams as lighter coloured boxes which are not actually represented within the model itself.

Part of the space of behaviour is modelled more or less accurately by activities.

A plan consists of a set of constraints on the behaviour possible in the real world. The plan specifies, more or less accurately, a sub-set of real world behaviour.

An activity models, more or less accurately, a sub-set of real world behaviour.

An activity takes place over a period of time from its begin time point to its end time point. The begin of an activity is temporally before the end of the activity. The distance between the begin and end time points is referred to as the activity duration.

It is possible to provide more or less accurate models of activities which occur through the force of the environment, in this case the activities are termed events. For the avoidance of doubt, the notes below which refer to activities also refers to the more specialised events.

An activity may optionally be modelled at a more detailed level of description by one or more alternative sets of constraints on real world behaviour (in the same format as plans). There is a deliberate uniformity of representation of the detailed decomposition of an activity and a plan (sub-plan).

An agent may hold purposes of two types: requirements (defined as hard constraints on a behaviour in the real world if the agent's requirements are to be satisfied) and preferences (desirable or soft constraints which may be partially satisfied). An agent may also adopt plans to relate to their requirements and preferences.

Each constraint is added to a plan by an agent. This may be because the agent is setting the requirements (task, aim or objectives) on the plan by including the agent's requirements or preferences directly. Or the agent may be part of the planning process and add a constraint on real world behaviour in a way which supports the executability and relevance of a plan. The agent adding the constraint will provide an indication of the hard or soft nature of the constraint. Its is likely that objective functions or other evaluation criteria will be given which can allow the degree of satisfaction of a soft constraint to be measured.

Organisational Context

Agents may also have relationships with other agents, which can express organisational and authority relationships.

This simple model forms a basis for extensions while allowing some context to be provided for the relationships between agent's requirements, preferences, adopted plans and constraints added into plans.

Entities Used in Various Places

Defining Constraints

The content of a constraint is represented by any one of a range of different constraint types. These are: Include Activity and Issue constraints are separated out as they are so important to the reasoning methods normally associated with the planning and enactment processes. They also relate very strongly to defining the sub-space of real-world behaviours which are referred to by a plan. The rest of the constraints can be seen as further filtering the sub-space principally defined by the include activity and issue constraints.

Each of the other constraints includes an expression, nominally in first order logic, which specifies an assertion that can be evaluated with respect to a plan as "something that may or may not hold for behaviour performed in the real world". The format of this expression is different for each of the various other constraint types.

The terms of an expression may include:

Suggestions for Using the Representation

The following sections give ideas for ways in which the plan representation may be used, and are based upon the experience of using plan representations within the O-Plan project, and other planning systems and aids developed by AIAI.

Always Plan -- Representing Domain Constraints which "Always" Hold

A description of the invariant constraints on behaviour in the real world may or may not be included in the model - with more or less accuracy if included. The set of constraints which always hold may be held as a single Always Plan. Notionally, the planning process and plan reasoning should consider the constraints in the Always plan as a basis for all other plans in the domain. They need not be explicitly added to any plan - since they (more or less accurately) hold anyway. Usually, only those parts of the invariant constraints on behaviour in the real world which are analysed as possibily impacting upon the plans under consideration will be explicitly represented. Note that distribution of the "always" constraints to only those parts of the reasoning systems which need to make use of specific parts of the model is possible.

External Event and Process Models

It is possible to use the same representation to describe events and processes which are beyond the control of the agents which can perform activities which can be included in plans. The set of constraints which which represents these "external" events and processes may be held as a single External Event and Processes Plan (as is done in the DEVISER planner (Vere, JPL). Notionally, the planning process and plan reasoning should consider the constraints in the External Event and Processes Plan as a basis for all other plans in the domain. They need not be explicitly added to any plan - since they (more or less accurately) hold anyway. Usually, only those parts of the external events and processes which are analysed as possibily impacting upon the plans under consideration will be explicitly represented. Note that distribution of the "external events and processes" constraints to those parts of the reasoning systems which need to make use of parts of the model is possible.

Initial Plan -- Task Assignments, Options, Phases and Plans

In O-Plan, an Initial Plan is created which describes the mistask assignment to the O-Plan planner.

O-Plan allows for a task assigner to associate various meaningful names with different variants of task assignments (called options and sub-options). O-Plan also allows a task assigner to associate names with various phases and levels of a task assignment or plan. This can help in mixed initiative working between users and the planning system.

Cases, Plans, Process Models, Activities and Sub-activities

The plan representation allows for a uniform representation of case libraries and plans manipulated by a planning system. This can be useful for generalising plans for re-use in future, and for selecting from a case library to create an "Initial Plan" which the planner can be given as its task assignment.

Likewise, activities, the combination of them into Process Models, or the decomposition of them into sub-activities all can employ a common representation.

PlanWorld Views

The plan representation can support multiple types of user view. O-Plan differentiates technical plan structure oriented views (called Plan Views) and world or domain related views (called World Views). Plan Views may include such presentations as: World Views may include such presentations as:

Planning Annotations and Dependencies

The plan representation allows for direct recording of the agent which added each constraint and inter-constraint dependencies are recorded in key instances within the the expressions representing the constraints (e.g. in O-Plan, the "contributor" activities which provide world state effects which satisfy condition requirements on other activities are recorded explicitly in the goal structure expressions for each condition).

However, there are cases where other information about the planning process and the decision taken must be maintained. O-Plan provides a Notepad for this (this was called the Jotter in the earlier NONLIN planner. The entries on the Notepad are called notes and are handled in the same way as any other constraint. The notepad can be used in O-Plan to keep track of the approach being taken in different plan options and to provide guidance to the user by way of reminder notes about ways in which issues should be addressed within the approach adopted.

Plan Quality and Evaluations

It is possible to incorporate quality statements within a plan. These would be stored as miscellaneous constraints if they were described in a fixed syntax or could be kept as more informal "notes" in the "notepad" otherwise. Plan quality analysis functions could utilise these constraints or notes to add information to the plan for communication to other agents or system components.

Mixed Initiative Planning

The plan representation is intended to form a basis for links between planning agents, scheduling agents and enactment systems, where people and systems are working in a mixed initiative fashion. The model of mixed initiative planning supported is that is mutually constraining the space of behaviour.

Attributes of the Objects in the <I-N-OVA> Model

Plan

Constraint

OtherConstraint

HandleIssue

An Issue object is considered to be a specialised type of Constraint with a prespecified structure for some of the terms in that constraint. This allows for more regularity in handling.

IncludeActivity

An IncludeActivity object is considered to be a specialised type of Constraint with a prespecified structure for some of the terms in that constraint. This allows for more regularity in handling.

Expression

Node

Notionally, all nodes have an implied begin and end TimePoint object associated with them. They need only be explicitly provided if there are to be constraints specified that refer to such time points. Expression object terms which include beginTimePoint(Node) or endTimePoint(Node) are understood to stand in for these TimePoint objects.

Agent

EntityVariable

No attributes are defined in the basic <I-N-OVA> model.

TimePoint

No attributes are defined in the basic <I-N-OVA> model, though it will be usual to add specifications of minimum and maximum times along some time line which can be related to one or more calendars.

OtherEntity

No attributes are defined in the basic <I-N-OVA> model.

AgentRelationship

O-Plan Index | <I-N-OVA> Home Page
AIAI Page maintained by oplan@ed.ac.uk, Last updated: Fri Nov 12 10:03:00 1999