Amedeo Cesta1 and Angelo Oddi2
Recent results in planning research have clarified several basic mechanisms involved in problem solving activity specialized to planning ---see [Chapman, 1987,Pednault, 1989,Bäckström, 1992,Kambhampati et al., 1995] and many others. Several planning systems have been applied to practical problems (e.g., SIPE [Wilkins, 1990], O-PLAN [Currie & Tate, 1991], OPIS [Smith et al., 1990], and HSTS [Muscettola et al., 1992]). The planning community has devoted several efforts to filling the gap between theoretical and application-oriented work, examples may be the Zeno planner [Penberthy & Weld, 1994] on one side and Tate's <I-N-OVA> formalism [Tate, 1995] on the other. This middle-ground work has the aim of both dealing with more complex domains and following a well-founded approach that allows the generalization of results.
Further work is needed in a knowledge engineering perspective to cope with the problem of building up knowledge-based planning systems that are validated enough to be delivered as complete applications. From the last standpoint, Knowledge Acquisition (KA) techniques may usefully integrate the current planning research in the design of engineered planning systems. KA's techniques are being applied to two different aspects of the planning problem:
The present work refers to the second approach and aims at presenting a formal language useful to describe relevant aspects of a planning domain. The domain description is a fundamental initial step to address both planning and scheduling problems. Knowledge-based domain independent planners are endowed with a Domain Description Language (DDL); a knowledge representation language that allows users to specify the basic components of a domain, to associate a description to those components and to specify the constraints and mutual relationships among components. Our efforts may be summarized in the aim to build a language that:
In our view, some aspects first proposed in the HSTS [Muscettola et al., 1992,Muscettola, 1994] domain description language are of interest for our aims because:
In this paper we propose a representation language named DDL.1, that uses the same ontology of the HSTS-DDL, but it is restricted in its expressive power in order to develop a clear semantics and to specify a temporal planner that exploits the formalized aspects of the language. Although the used ontology exploits ideas from control theory [Kalman et al., 1969] we propose here a formal account that refers to classical AI studies for describing both the semantics of the language and the planning process.
The paper is organized as follows: Section 2 introduces the features of DDL.1 language. Section 3 depicts more specifically the way of defining constraints in DDL.1 and presents the language complete syntax, while Section 4 presents its semantics. Sections 5 proposes a temporal planner that actually uses the formalism. Section 6 discusses related research while Section 7 concludes the paper.
DDL.1 representation adopts basic ideas from control theory [Kalman et al., 1969,Dean & Wellman, 1991] extended to allow the specification of constraints. The planning problem is seen as the problem of deciding the behavior of a dynamic domain. The behavior of a domain (its temporal evolution) is seen as the continuous interaction among different components. Each domain component is represented using state variables; a single state variable (SV) is a relevant feature of the component. DDL.1 allows the intensional description of any plausible temporal evolution of the state variables. Such evolution is defined describing the set of values a SV may assume over time, and a set of constraints, named compatibilities, a value should satisfy when assumed by the related SV. In DDL.1 state variables' values are restricted to a discrete set and are instances of predicates of the form . More formally, for each state variable , DDL.1 allows the specification of:
By defining compatibilities DDL.1 allows the user to represent constraints on the legal sequences of values that a state variable may assume over time. A given value may be constrained by different values on the same state variable, and by values on different state variables. Those further constraints express the domain theory, namely the description of the domain laws in terms of reciprocal adaptability, synchronization, and dependency relations among values. By constraining the situations in which a given value may be taken by a state variable a generic compatibility C represents a restriction of the possible evolutions of the domain, that is .
A (set of) goal(s) in this framework is the specification of a (set of) ``desired" value(s) to be taken by SVs. Planning means determining a particular temporal evolution (i.e., a function : for each state variable ) that satisfies both the goal(s) and all the specified compatibility constraints.
A simple example from a process planning domain may help to show the DDL.1 use. The domain consists of a drilling machine able to create holes of two different diameters by automatically switching between two different bits. The holes are executed when a piece of a certain material is blocked on the support of the drill. A domain model may contain two state-variables named: , that represents the operating status of the drilling tool, and , that represents the operating status of the support. The state-variables' dynamics is described defining the set of values each SV may assume. In this case:
To sum up, a domain description that can be built by a DDL.1 specification contains state-variables, state-variable values, and compatibilities. Compatibilities allow the user to represent constraints on the legal sequences of values that a state variable may assume. A given value may be constrained either by different values on the same state variable, and/or by values on different state variables. A compatibility asserts an intensional constraint on the behavior of a state variable. Such constraint consists of two components: (a) a causal component that defines a causal relation between two values: a reference value and a constraining value; (b) a temporal component that specifies a temporal constraint on the causal component. The temporal relation may contain both a qualitative and a quantitative constraint. Table 1 shows the whole specification of the language. May be observed that the causal component of a compatibility are described by the syntactic categories <RefValue> (the reference value) and <ConstrValue> (the constraining value). The temporal component is specified by a restricted number of the qualitative temporal relations usually defined in the literature [Allen, 1991] (to simplify matters only the MEETS, MET-BY and DURING are allowed). The MEETS and MET-BY relations constrain two values belonging to the same state variable to appear in strict sequence in any legal behavior of the SV (namely, MEETS (MET-BY) states that the end-time (start-time) of the reference value coincide with the start time (end-time) of the constraining value). The DURING relation constrains two values belonging to different state-variables. It is used to express synchronization constraints between the state variables' behaviors (more specifically DURING states that the start-time of the constraining value precedes the start-time of the reference, and its end-time follows the end-time of the reference).
Table 1: BNF Specification of DDL.1
Following the syntax in Table 1 we can describe the domain of the drilling machine according to the model previously introduced. Legal value sequencing are described by using compatibilities. Figure 1 shows the constraints relative to the values of the . It is possible to observe some characteristics of the language: (a) the first compatibility uses an OR-COMP to describe the constraints on the value WAIT. It enumerate the possible legal sequences that include WAIT, one of them should be verified on any legal temporal evolution including WAIT. (b) With MEETS and MET-BY constraints specification are specified to describe legal value transition on the SV. For example, the second and third compatibilities state the constraint that it is not possible to execute two consecutive holes without intermixing a WAIT value. (c) The DURING temporal relation is used to specify values synchronization between two state-variables. Again, in the second and third compatibilities of Figure 1, a DURING specification states that it is possible to drill with BIT only while a piece is BLOCKED on the support . Compatibilities related to the are not presented. The only constraint contained in it states that a BLOCKED value should be reasonably followed by a FREE one.
Figure 1: Compatibility constraints on the state variable
DRILL
For the sake of exemplification of single properties of the language, we have described a very limited behavior of the domain. It should be clear that the same language can be used for more fine-grained descriptions. For example it is possible to explicitly describe and represent the set-up times needed to arrive at different operating status of a certain represented instrument, etc. ---see [Muscettola et al., 1992,Muscettola, 1994] for several examples.
The language allows to represent quite complex aspects of the problem domain: (a) temporal evolutions of domain features: in fact, all the value specifications are enriched with duration constraints for the interval of time that a SV assumes the values. Durations are represented by an interval where d and D represent minimal and maximal time length; (b) physically realizable transition between values by the MEETS and MET-BY specifications; (c) different processes in the domain behaving in parallel by using state variables; (d) synchronization constraints between parallel processes by using the ; (e) simple resource constraints: in fact, we can consider a resource as described by a state-variable, and a value as a reservation on it for a given interval of time. With the syntactic restriction given here we can represent only binary capacity constraints ---extensions are investigated in [Muscettola, 1994].
An interesting aspect to notice is the intuitive and graceful methodology the language makes available to the user for describing the features of the domain. This methodology is made possible by having the state variables and their values as first class objects in the language at a symbolic level. Moreover, the compatibility specification allows to describe uniformly an interesting number of constraints governing the domain dynamics. Such constraints are also introduced using the uniform metaphor of the description language. More conventional languages may have a rather similar expressive power but have a representation metaphor different and less user-oriented. In our view, action-centered formalisms in general allow a description of a domain very atomic and not aggregated, not easily controllable by the user.
A further comment concerns the restricted use of qualitative temporal relations done in the language. The purpose of the paper was to show the main idea of the specification of constraints that frame state-variables evolutions due to ``internal'' or ``external'' causal effects. The three temporal relation described are enough for the purpose. Extensions are possible, also in the semantics that follows, to include the usual complete set of relations.
The constraints stated by compatibility specification bound the number of evolutions of the represented domain (the set previously introduced). The semantics of any language sentence is defined as the set of the evolutions compatible with the given constraints. To obtain a formal shape for such an intuitive idea some preliminary definitions are needed.
Considering the syntax in Table 1, denotes an element belonging to the syntactic category <Value> of the state variable . We designate with a ground element of a temporal evolution of the state variable . It is worth noting that is a 3-ple: , where and , with . Given a function : , an element of evolution is contained in (denoted by ), if and such that the function assumes the value in the interval . An element of evolution is contained in a value = (denoted by ) if a ground instance = of exists such that .
The DDL.1 semantics is defined by using the function: : where represents the set of sentences allowed by the DDL.1 grammar and is the power-set of . As said above, the semantics of a given domain description is a subset of . The subset can be obtained from the intersection of the sets of temporal evolution allowed by each constraint of the language (that is, by each compatibility). A function given a compatibility c computes the subset of admissible evolutions contained in . The function is of the kind : where is the set of compatibilities that can be defined using DDL.1. can be defined as follows (where represents the temporal evolution s of the SV in which the ground element e is assumed):
aaabbbbccc ¯=
...
To complete the definition of , a definition for the temporal predicates , e is needed. Given any couple of elements , and , and two intervals and those predicates are defined as follows:
Finally the formal semantics can be inductively defined as:
It is worth observing that according to this semantics when the domain description is inconsistent.
The previous Sections introduces a particular language to describe the constraints framing the evolution of a physical domain. This Section deals with the use of the language in a planner. First an intuitive description of what a planner is supposed to do with a DDL.1 specification is given and then a more formal specification of a planning algorithm is presented. To allow comparisons with more conventional planners, we adopt the formal approach currently used in planning literature (e.g., [Weld, 1994]).
The language allows the description of a discrete event dynamic system, a dynamic system in which state variables may have temporal evolutions that are piecewise constant functions of time. Such systems are studied in a sub-area of control theory and optimization (see for example [Ramadge & Wohnam, 1989]). Here we consider as a temporal planning problem the problem of deciding an evolution of such systems. While classical plan-space search planners built a partial plan that necessarily asserts a conjunction of predicates (goals) in any possible completion, here a planner searches in the state variable temporal evolution space to determine those evolutions that necessarily include certain piece of evolution given as goals. In other words, planning is this framework consists of determining the elements of a matrix where S is the space of the state variables and T is the time line. Some of the values (with a temporal duration) are given as goals and the planner should find a "convenient position" on the matrix for those values and fill the rest of the matrix with values compatible with the goal positioning (i.e., any positioned value should satisfy all the constraints specified in the DDL.1 domain definition). This view of planning was first used in HSTS [Muscettola et al., 1992,Muscettola, 1994].
The rest of this Section describes a planning algorithm, named TP-SV (Temporal Planner with State Variables) which works in the framework sketched above.
A TP-SV goal is a 3-ple where
and are values of the kind . Both and may be either ground or
unground. The tr is either one of the temporal constraints or
nil representing a null constraint:
A user goal may be described as the 3-ple: where is a completely ground value.
The goal definition allows to represent as planner's goal all the constraints that should be implemented in the solution. Both the external goals defined by the user and the domain goal generated by the compatibility specification are represented with a 3-ple. The value is intended to be a value existing yet in the current solution which produces (the subscript p stands for producer) a constraint that requires a new value ( c stands for consumer) according to the temporal relation tr. At present users goals are ground pieces of evolution independent from each other, this is represented by the nil ``producer'' and the nil ``temporal constraint''.
A plan in TP-SV is a 4-ple where:
The planning algorithm TP-SV is shown in Figure 2. The algorithm builds a ground evolution of the domain by incrementally posting goals (constraints) on a partial solution. TP-SV has three input parameters: a plan P, the list of goals to be achieved, and the domain theory of DDL.1 constraints specification.
The planner is given a set of user's goals and starts working on an empty plan in which any state variable is set to a steady rest evolution represented with the sequence of values (). The value is a rest value that should be defined for any state-variable. The value (undefined) initially represents the stretch of temporal evolution that the planner should define to satisfy goals. A plan is seen as a sequence of value transitions that starts from some rest values, evolves to satisfy some goals and return to the rest values.
More formally the empty plan is a 4-ple :
The symbol stands for MEETS.
Some further observation are worth doing to understand the algorithm
in Figure 2: (a) the planner uses the non-deterministic
operator choose to start separate computations in choice
points; (b) to perform Step 3.a of the algorithm the value
and the tr contained in the goal are used to filter the possible
positions to actually implement the constraint; (c) at Step 5 and 6
the MGU operator computes the Most General Unifier among its
parameters.
Figure 2: The basic TP-SV algorithm for DDL.1
The representation language described here has a number of connections with current research. Similar attempts are performed by different people with different points of view but with a common goal of associating ``good theories'' to realistic planning problems.
Extension to classical planning from the formal side. Extension to the STRIPS approaches have been continuously investigated: e.g., Allen's and his students' work on dealing with temporal models of the external world [Allen, 1991], Pednault's proposal for dealing with context dependent effects [Pednault, 1989], recent work by Penberthy's [Penberthy & Weld, 1994] for building up a UCPOP-like planner that uses explicit time, and models changes in the physical world. Our work shares some of these objectives (the representation of time, the representation of dynamic processes) but adopts a different planning perspective using an implicit representation of actions. The emphasis is here on a pragmatically oriented modeling of the world.
Improvements to application-oriented architectures. At least two recent works contain attempts similar to ours to describe more complex domain constraints: (a) the EXCALIBUR planner [Drabble, 1993] uses a qualitative process simulator at execution time to better choose repair strategies; (b) Tate's <I-N-OVA> formalism [Tate, 1995] sees the whole planning process in O-PLAN as the management of various set of constraints.
Planning and Control. The similarity between planning and control problems was remarked in [Passino & Antsaklis, 1989] and deepened in [Dean & Wellman, 1991]. Different uses have been done of this similarity: (a) to investigate planning with uncertainty within a solid formal framework [Dean & Wellman, 1991]; (b) to consider particular domains in which tractability results are possible as Bäckström did with the formalism [Bäckström, 1992]. The representation language we are studying is different from , in particular an explicit representation of time constraints is here a basic feature. Our aim is somewhat similar to Dean's but we restrict our analysis to deterministic discrete event systems.
Other unconventional approaches. Maybe the more similar approach is Lansky's attempt to see planning as reasoning about events, instead of reasoning about actions [Lansky, 1987]. Starting from that formalism Lansky investigates the use of locality while planning. The problem of decomposing the domain to speed up the resolution process was also one of the main inspirations of the HSTS architecture in its space probe application [Muscettola, 1994].
Knowledge acquisition for planning. As stated in the introduction several studies have recently concerned KA aspects and planning systems. Some work, not strictly related to ours, is devoted to the development of generic models of planning activity (e.g., [Valente, 1995]). Other works are more connected to the DDL.1 effort because it concerns the definition and manipulation of planning knowledge-bases. In [Chien, 1996] a set of tools, in particular static and completion analyzers, is described that support a rule-based planning language definition and maintenance. [desJardins, 1996] is an example of application of learning technique to the refinement of a knowledge-base written in a classical formalism. Close to ours is the work of [Biundo & Stephan, 1996] that presents an approach to the modular and incremental definition of domain descriptions written in a formal language based on temporal logic.
This paper has formally introduced a language for the description of domain planning knowledge. The language is used to specify the relevant constraints in a planning knowledge base. In the paper after a BNF specification of the syntax, a model theoretic semantics for DDL.1 is introduced. Furthermore a planning algorithm is described that uses the features of the language.
Let us now consider again some of the requirements mentioned in the introduction and summarize how they are addressed in DDL.1.
The formal analysis presented in the paper is a starting point for the
creation of a set of tools helping the user in the definition or
revision of a knowledge base. For example, as observed in Section 4,
for a given specification it is possible that . This means that it is possible to check
whether a given domain specification is inconsistent. It should be
also useful to investigate the possibility for the automatic checking
of such a property.
Finally, it is worth remembering that the language is a restricted version of
HSTS-DDL which has been used in relevant practical applications both
in space probes activities management and in the description of
complex transportation scheduling problems ---see [Muscettola et al., 1992,Muscettola, 1994].
Although preliminary our work is meant to fill the gap between formal and applicative work in planning and scheduling research. Our contribution to the debate related to KA techniques and planning systems stands in the definition of a language that is centered on the idea that a relevant part of planning knowledge is played by the domain constraints. In our view the elicitation of such constraints is a major point in acquiring knowledge for planning systems, the other point being the extraction of domain heuristics to guide search during problem solving.
This research is partially supported by: ASI - Italian Space Agency, Esprit III BRWG project No.8319 "ModelAge", CNR Committee 04 on Biology and Medicine.
A Representation Language for Domain Knowledge in Planning Architectures
This document was generated using the LaTeX2HTML translator Version 95.1 (Fri Jan 20 1995) Copyright © 1993, 1994, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
The command line arguments were:
latex2html -split 0 kaw-96.tex.
The translation was initiated by Vittorio Giannini on Thu Oct 10 16:49:52 MET DST 1996