PDDL+ builds directly on the discrete fragment of PDDL2.1: that is, the fragment containing fixed-length durative actions. This is supplemented with the timed initial literals of PDDL2.2 [Hoffmann EdelkampHoffmann Edelkamp2005]. It introduces two new constructs: events and processes. These are represented by similar syntactic frames to actions. The elements of the formal syntax that are relevant are given below <these are to be read in conjunction with the BNF description of PDDL2.1 given in>pddl2.
<structure-def> ::= <event-def>
<structure-def> ::= <process-def>
The following is an event from the Planetary Lander Domain. It models the transition from night to day that occurs when the clock variable daytime reaches zero.
:precondition (and (not (day)) (>= (daytime) 0))
The BNF for an event is identical to that of actions, while for processes it is modified by allowing only a conjunction of process effects in the effects field. A process effect has the same structure as a continuous effect in PDDL2.1:
<process-effect> ::=(<assign-op-t> <f-head> <f-exp-t>)
The following is a process taken from the Planetary Lander Domain. It describes how the battery state of charge, soc, is affected when power demand exceeds supply. The interpretation of process effects is explained in Section 4.2.
(:process dischargingWe now provide the basic abstract syntactic structures that form the core of a PDDL+ planning domain and problem and for which our semantic mappings will be constructed. Core Definition 1 defines a simple planning instance in which actions are the only structures describing state change. Definition 1 extends Core Definition 1 to include events and processes. We avoid repeating the parts of the core definition that are unchanged in this extended version.
:precondition (> (demand) (supply))
:effect (decrease soc (* #t (- (demand) (supply))))
Ground events, , are defined by the obvious generalisation of Core Definition 6 which defines ground actions. The fact that events are required to have at least one numeric precondition makes them a special case of actions. The details of ground processes, , are given in Definition 2. Processes have continuous effects on primitive numeric expressions (PNEs). Core Definition 1 defines PNEs as ground instances of metric function expressions.
The PDDL family of languages imposes a restrictive formalism for the representation of plans. In the temporal members of this family, PDDL2.1 [Fox LongFox Long2003], PDDL2.2 [Hoffmann EdelkampHoffmann Edelkamp2005] and PDDL+, plans are expressed as collections of time-stamped actions. Definition 3 makes this precise. Where actions are durative the plan also records the durations over which they must execute. Figure 1 shows an abstract example of a PDDL+ plan in which some of the actions are fixed-length durative actions (their durations are shown in square brackets after each action name). Plans do not report events or processes.
In these plans the time stamps are interpreted as the amount of time elapsed since the start of the plan, in whatever units have been used for modelling durations and time-dependent effects.
Derek Long 2006-10-09