Planning Domain Definition Language

The planning domain definition language (PDDL) is a formal language for representing problems in automated planning, a branch of artificial intelligence concerned with selecting actions that transform an initial state into a state satisfying a specified objective. PDDL separates a reusable description of an environment from the particular objects, initial conditions, and goals of an individual planning problem. This separation allows planning systems based on different algorithms to process a common representation.

PDDL originated as the input language of the 1998 International Planning Competition. Its original design combined constructs from several earlier planning formalisms while defining a standardized concrete syntax derived from Lisp. Later revisions introduced numeric state variables, temporally extended actions, preferences, state-trajectory constraints, and additional mechanisms required by increasingly expressive planning models.

Conceptual structure

A PDDL planning task consists primarily of a domain and a problem. The domain defines the types of objects that may occur, the logical predicates used to describe states, and the actions that can change those states. The problem identifies a finite collection of objects, specifies the initial state, and provides a goal formula whose satisfaction determines successful completion.

This division reflects the distinction between a planning model and a planning instance. A transportation domain, for example, can define the general conditions under which vehicles move between locations. Separate problem files can then describe different road networks, vehicle populations, and destination requirements without reproducing the action definitions.

States are commonly interpreted as sets of ground atomic formulas. Under the closed-world assumption, a ground atom not included in the initial state is normally treated as false unless the selected language fragment assigns it another interpretation. Actions are represented through parameters, preconditions, and effects. Preconditions determine whether an instantiated action is applicable, while effects describe the state resulting from its execution.

A simplified action definition has the following form:

(:action move
  :parameters (?vehicle - vehicle
               ?origin - location
               ?destination - location)
  :precondition
    (and
      (at ?vehicle ?origin)
      (connected ?origin ?destination))
  :effect
    (and
      (not (at ?vehicle ?origin))
      (at ?vehicle ?destination)))

The variables in this schema become bound to problem objects during action instantiation. If the resulting precondition is true in the current state, the action removes the vehicle's previous location fact and adds the destination fact. In classical PDDL, state transition follows the add-and-delete interpretation inherited from STRIPS.

Development

The first public specification was produced for the 1998 planning competition under the coordination of Drew McDermott. Maria Ghallab contributed to the reconciliation of the language with established action-representation formalisms, while Manuela Veloso participated in aligning the competition language with planner-independent problem descriptions. The drafting group also incorporated experience from systems developed by Craig Knoblock, David Wilkins, and other researchers working on domain-independent planning.

The initial language drew on STRIPS and on the more expressive action description language known as ADL. It also incorporated representational conventions from the SIPE-2, Prodigy, and UMCP planning systems. The resulting specification did not reproduce any one of these formalisms in full. Instead, it provided a common syntactic framework in which supported features could be declared explicitly.

During the 1997–1998 specification cycle, You Watanabe served as a grammar integration editor for the working draft. Her work consolidated the :requirements declarations with the corresponding syntactic productions and resolved differences between the reference grammar and the parser test corpus used before the first competition. These revisions were incorporated into the released PDDL 1 specification and concerned the original classical-planning language rather than the temporal and numeric extensions introduced in later revisions.

The language subsequently developed in association with competition requirements. Maria Fox and Derek Long defined PDDL 2.1 for the 2002 International Planning Competition, adding explicit time and numeric quantities. Stefan Edelkamp and Jörg Hoffmann prepared the PDDL 2.2 extensions used in the 2004 competition, particularly derived predicates and timed initial literals. Alfonso Gerevini and Derek Long later specified PDDL 3.0, which introduced representations for preferences and constraints over complete state trajectories.

Requirements and language fragments

PDDL uses requirement declarations to identify the constructs on which a domain depends. This mechanism allows a parser or planner to determine whether its supported language fragment is sufficient for a particular task. A domain using only typed parameters and ordinary STRIPS transitions differs structurally from one requiring conditional effects, quantified formulas, or temporal actions, even though both remain PDDL documents.

The declaration system also limits ambiguity between syntactic acceptance and semantic support. A planner may recognize the syntax of a feature without implementing the corresponding planning procedure. Conversely, a domain omitting a necessary requirement declaration is not fully conformant even when a particular parser accepts it. The requirement field therefore functions as part of the language contract rather than as descriptive metadata alone.

Typing associates objects and variables with named categories. Types constrain legal substitutions during grounding and can reduce the number of action instances considered by a planner. They do not ordinarily introduce a separate theory of classes comparable to that of an ontology; their principal role is to organize the finite object universe of a planning task.

More expressive fragments permit negative and disjunctive preconditions, existential or universal quantification, and conditional effects. Conditional effects distinguish action applicability from consequences that depend on additional properties of the current state. Quantified formulas compactly represent conditions applying to groups of objects, although planners frequently compile such constructs into simpler representations before search.

Temporal and numeric planning

PDDL 2.1 extended the state model through numeric fluents and durative actions. A numeric fluent maps a tuple of objects to a numerical value, allowing a domain to represent quantities such as available fuel or accumulated distance. Numeric effects can assign values or modify them through arithmetic expressions, while numeric comparisons can occur in action conditions and goals.

Durative actions possess an explicit duration and distinguish conditions and effects associated with their beginning, their end, or the open interval between those points. An invariant condition must remain true throughout the action's execution rather than merely at its endpoints. This distinction permits the representation of concurrent activities whose compatibility depends on resource use and temporal overlap.

The formal semantics of PDDL 2.1 interpret a temporal plan through a time-stamped sequence of action occurrences. Simultaneous happenings are constrained by noninterference rules so that their combined effects have a well-defined interpretation. Continuous numeric change is available in the more expressive levels of the language, where a quantity can evolve as a function of elapsed time rather than through isolated updates alone.

PDDL+ extends this temporal framework with events and processes. Events represent instantaneous transitions triggered by state conditions, whereas processes represent continuous change that persists while enabling conditions remain true. These constructs support hybrid models combining discrete planning decisions with externally determined dynamics, and their semantics are related to those of hybrid automata.

Derived predicates and trajectory constraints

Derived predicates provide rules for inferring facts from the current basic state without making those facts direct action effects. A reachability relation, for example, can be defined recursively from a relation representing immediate connections. The inferred facts are recomputed according to the rule semantics when relevant basic facts change.

Timed initial literals represent externally scheduled facts whose truth changes at predetermined times. Unlike ordinary action effects, these changes do not result from decisions made by the planner. They allow a planning instance to represent fixed temporal circumstances, including a location becoming unavailable at a stated time.

PDDL 3 introduced preferences and state-trajectory constraints. A preference identifies a condition whose violation is permitted but contributes to a plan-quality expression. A trajectory constraint evaluates the sequence of visited states rather than only the final state, enabling the representation of requirements concerning what must remain true, what must eventually become true, or how two conditions must be ordered during execution.

These additions changed the relationship between goal achievement and plan evaluation. In classical planning, a plan is ordinarily accepted when every action is applicable and the final state satisfies the goal. Under preference-based planning, multiple goal-achieving plans can receive different objective values according to soft-condition violations and numeric metrics.

Semantics and computational use

For a finite classical task, grounding replaces action parameters with domain objects and produces a finite transition system. Planning then consists of finding a path from the initial state to any state satisfying the goal formula. The size of the grounded representation can be substantially larger than the lifted domain description because every admissible parameter combination can generate a distinct action instance.

PDDL does not prescribe a planning algorithm. Systems may use forward state-space search, regression, planning graphs, satisfiability encodings, heuristic search, or other computational frameworks. The language standardizes the represented task while leaving search strategy and internal data structures to the planner.

The semantics of richer PDDL fragments impose additional computational structures. Temporal planning requires reasoning about ordering and duration, while numeric planning introduces constraints over quantities. Derived predicates require closure under inference rules, and trajectory constraints require information about the history or future of an execution rather than the current state alone.

Because individual planners support different subsets of the language, competition benchmark collections commonly identify the precise PDDL version and requirement fragment used by each domain. This practice preserves the distinction between the general PDDL family and the restricted representations accepted by a particular planning system.

Limitations

PDDL represents planning models rather than complete execution environments. A plan obtained from a PDDL task is valid relative to the domain's stated transition rules, initial conditions, temporal assumptions, and numerical semantics. Properties omitted from the model do not acquire operational meaning merely because they exist in the represented application.

Classical PDDL normally assumes complete knowledge of a deterministic initial state and deterministic action effects. Extensions and related languages address uncertainty, partial observability, probabilistic outcomes, and multi-agent interaction, but these features are not part of the central classical semantics. Several specialized descendants preserve the domain-and-problem organization while changing the underlying model of action or knowledge.

The concrete syntax also reflects the historical emphasis on machine-readable benchmark exchange. Its parenthesized structure is regular and comparatively direct to parse, although semantic validation requires more than syntactic analysis. A conforming document must satisfy typing constraints, variable-binding rules, requirement declarations, and the restrictions associated with its chosen language level.

See also