The Planning Domain Definition Language (PDDL) is a standardized, formal language used to model automated planning problems by cleanly separating the domain (a reusable set of actions, predicates, and types) from a specific problem instance (objects, initial state, and goal). This separation allows generic planners to solve any problem expressed in a compatible domain, enabling research and tool interoperability. It is the lingua franca for classical planning competitions, directly descended from the STRIPS representation.
Glossary
Planning Domain Definition Language (PDDL)

What is Planning Domain Definition Language (PDDL)?
A formal language for defining problems in automated planning and scheduling.
A PDDL model defines a state space where actions transform states. Each action is specified with preconditions (logical conditions that must be true for it to execute) and effects (changes to the world state). The planner's task is to find a sequence of actions—a plan—that transforms the initial state into a state satisfying the goal condition. While foundational for symbolic AI planning, it contrasts with reinforcement learning and Markov Decision Processes (MDPs), which typically learn policies from interaction rather than reasoning with an explicit, declarative model.
Core Components of a PDDL Model
The Planning Domain Definition Language (PDDL) is a formal, standardized language for modeling automated planning problems. Its core strength lies in the strict separation between the reusable domain (the rules of the world) and the specific problem instance to be solved.
Domain: The World's Rulebook
A PDDL domain file defines the static rules, capabilities, and logic of the planning environment. It is a reusable template that specifies:
- Types: A hierarchy of object categories (e.g.,
location,robot,package). - Predicates: Boolean properties that describe the state of the world (e.g.,
(at ?robot ?location),(loaded ?package)). - Actions: The operations an agent can perform. Each action is defined by:
- Parameters: Variables that are instantiated with objects.
- Preconditions: Logical statements that must be true for the action to be executable.
- Effects: How the action changes the world state, including add effects (new true predicates) and delete effects (predicates that become false).
Example: A logistics domain defines types like truck and city, predicates like (at ?truck ?city), and an action drive with preconditions (at ?truck ?from) and effects (not (at ?truck ?from)) (at ?truck ?to).
Problem: The Specific Instance
A PDDL problem file defines a concrete planning instance within a given domain. It provides the specific details that the planner must reason about:
- Objects: The concrete instances of the domain's types (e.g.,
truck1 - truck,paris - city). - Initial State: A complete snapshot of the world at the start, expressed as a conjunction of ground predicates that are true (e.g.,
(at truck1 london),(fuel truck1 100)). All unmentioned predicates are assumed false (the closed-world assumption). - Goal Specification: A (possibly complex) logical formula describing the desired end state (e.g.,
(and (at packageA paris) (at packageB berlin))).
The planner's task is to find a sequence of instantiated domain actions that transforms the initial state into a state satisfying the goal.
Actions: Preconditions & Effects
Actions are the fundamental operators that drive state transitions. Their formal structure is what makes planning deterministic and verifiable.
- Preconditions: A conjunction of literals (positive or negated predicates) that must hold in the current state for the action to be legally applied. This enforces the causal laws of the domain.
- Effects: Describe the state change. PDDL uses the STRIPS assumption: effects explicitly list all predicates that change.
- Add List: Predicates that become true.
- Delete List: Predicates that become false (also known as negative effects).
This (precondition → effect) model allows planners to perform forward search (applying actions to the initial state) or backward search (regressing from the goal).
Types and Object Hierarchies
PDDL supports a simple type system to categorize objects and constrain action parameters, making domain models more compact and less error-prone.
- Objects are declared with a type (e.g.,
parcel23 - parcel). - Types can be organized in an inheritance hierarchy using the
eitherkeyword or a direct subtype notation (in later PDDL versions), allowing for generality. For example, a typevehiclecould have subtypestruckandairplane. - Action parameters are typed, so
(drive ?v - vehicle ?from ?to - location)can only be instantiated with objects of typevehicleandlocation. This typing is crucial for efficient grounding—the process of creating all possible concrete action instances from the domain and problem objects.
Derived Predicates & Axioms
Derived predicates (or axioms) are a PDDL feature that allows certain facts to be inferred logically from the current state, rather than being directly changed by actions. They are defined by a logical rule.
- Syntax:
(:derived (predicate ?args) (logical-formula)) - Use Case: They model state constraints or abstract properties. For example,
(connected ?x ?y)might be derived from a complex graph structure of(road ?a ?b)facts. Or(above ?a ?b)could be derived from a stack of blocks. - Semantics: The truth value of a derived predicate is re-evaluated in every state based on its rule. This separates definitional knowledge from causal knowledge (actions), leading to more expressive and maintainable domain models.
PDDL Versions & Expressivity
PDDL has evolved through standardized competition versions, each adding expressivity for more complex planning problems.
- PDDL 1.2 (STRIPS): The base level with types, actions (preconditions, add/delete effects).
- PDDL 2.1: Introduced numeric fluents (e.g.,
(fuel-level ?truck)) and durative actions for temporal planning. - PDDL 3.0: Added state trajectory constraints and preferences, allowing for soft goals and constraints on the entire plan execution path.
- Later Extensions: Include probabilistic effects (for non-deterministic planning), hierarchical task networks (HTN) for task decomposition, and constraints for integrated planning and scheduling. This layered design allows planners to support only the features they need, from simple classical planners to complex temporal/numeric solvers.
Evolution of PDDL: Key Versions and Extensions
This table compares the core features and expressive capabilities introduced in major versions of the Planning Domain Definition Language, from its inception to modern extensions supporting temporal, numeric, and probabilistic planning.
| Version / Extension | Year | Core Innovation | Planning Class Supported | Key Syntax Additions |
|---|---|---|---|---|
PDDL 1.0 (STRIPS-style) | 1998 | Foundational separation of domain and problem files; basic STRIPS semantics. | Classical (Fully Observable, Deterministic) |
|
PDDL 2.0 | 2000 | Introduction of numeric fluents and durative actions for temporal planning. | Temporal, Numeric |
|
PDDL 2.1 | 2002 | Refined semantics for timed initial literals and object fluents. | Temporal, Numeric |
|
PDDL 2.2 | 2004 | Added derived predicates (axioms) and timed initial literals as standard. | Classical, Temporal |
|
PDDL 3.0 | 2005 | Introduced state trajectory constraints and preferences (soft goals). | Classical with Constraints |
|
PDDL 3.1 | 2008 | Minor clarifications and extensions to constraints and preferences. | Classical with Constraints | Refined constraint semantics. |
Probabilistic PDDL (PPDDL) | 2004 | Enabled modeling of probabilistic effects and reward-based goals. | Probabilistic (MDPs) |
|
PPDDL 1.0 | 2011 | Standardized probabilistic extension with discrete distributions. | Probabilistic (MDPs) |
|
Conformant PDDL | N/A | Extends PDDL for planning under initial state uncertainty (no observations). | Conformant (Fully Observable, Non-Deterministic Init) |
|
MA-PDDL (Multi-Agent) | N/A | Extensions for decentralized multi-agent planning with joint actions. | Multi-Agent |
|
HDDL (Hierarchical Task Network PDDL) | 2020 | Standard for Hierarchical Task Network (HTN) planning, separating task and method networks. | HTN Planning |
|
Frequently Asked Questions
A standardized formal language for modeling automated planning problems, separating the general domain logic from specific problem instances. It is foundational for classical planning research and AI-driven corrective action systems.
The Planning Domain Definition Language (PDDL) is a formal, standardized language used to model automated planning problems. It works by separating the planning domain (a reusable model of actions, predicates, and types) from the planning problem (a specific instance with objects, an initial state, and a goal). A planner—an automated reasoning engine—reads these PDDL files to search for a sequence of actions (a plan) that transforms the initial state into the goal state.
For example, a logistics domain defines actions like (drive ?truck ?from ?to) with preconditions (the truck must be at ?from) and effects (the truck is now at ?to). A specific problem defines objects (truck1, cityA, cityB), an initial state ((at truck1 cityA)), and a goal ((at truck1 cityB)). The planner uses this model to find a valid plan: [(drive truck1 cityA cityB)].
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
PDDL is a cornerstone of classical automated planning. These related concepts define the broader ecosystem of algorithms, frameworks, and mathematical models used for sequential decision-making and plan generation.
STRIPS
STRIPS (Stanford Research Institute Problem Solver) is the foundational representation language and planning system from which PDDL was derived. It introduced the core logical formalism for describing planning problems using:
- States: Represented as conjunctions of ground literals (facts).
- Actions: Defined by preconditions (what must be true to execute), add effects (facts made true), and delete effects (facts made false).
- Goals: A set of literals the planner must make true. PDDL extends STRIPS with typing, conditional effects, and durative actions, but the core action representation remains STRIPS-based.
Automated Planning
Automated planning is the overarching field of AI concerned with the algorithmic generation of action sequences (plans) to achieve specified goals. PDDL serves as the standard modeling language for defining problems within this field. Key sub-areas include:
- Classical Planning: Assumes a deterministic, fully observable, static environment (PDDL's primary domain).
- Temporal Planning: Incorporates time and concurrent actions (modeled in PDDL 2.1).
- Probabilistic Planning: Deals with uncertainty in action outcomes.
- Hierarchical Task Network (HTN) Planning: Decomposes high-level tasks into primitive actions. Planners that read PDDL files, like Fast Downward or POPF, are the solvers in this paradigm.
Markov Decision Process (MDP)
A Markov Decision Process (MDP) is a mathematical framework for modeling sequential decision-making under uncertainty. It contrasts with classical PDDL planning by incorporating:
- Probabilistic State Transitions: Actions lead to a distribution of possible next states.
- Reward Function: Quantifies the desirability of state-action pairs (vs. a Boolean goal in PDDL).
- Optimization Criterion: Seeks to maximize cumulative reward over time. While PDDL models deterministic environments for plan synthesis, MDPs model stochastic environments for policy learning (e.g., via Reinforcement Learning). They represent complementary approaches to solving action-selection problems.
Hierarchical Task Network (HTN) Planning
Hierarchical Task Network (HTN) planning is an approach where the planner decomposes high-level tasks into networks of subtasks until primitive actions are reached. It differs from PDDL's state-space search:
- Domain Knowledge: Uses hand-crafted methods that define how to achieve a task, providing strong guidance.
- Task Reduction: Focuses on refining abstract tasks, not just satisfying preconditions.
- Expressivity: Often more natural for modeling complex, procedural domains. Extensions like PDDL3.0 allow for expressing some HTN-like constraints, but HTN remains a distinct, more knowledge-intensive planning paradigm.
Satisfiability (SAT) & Satisfiability Modulo Theories (SMT)
SAT and SMT solving are core technologies behind many modern optimal PDDL planners. This approach, known as planning as satisfiability:
- Encodes the planning problem (states, actions, goals over n steps) into a gigantic logical formula.
- Uses a SAT/SMT solver to determine if a satisfying assignment exists, which corresponds to a valid plan.
- Enforces optimality by iteratively checking for plans of length k, finding the shortest possible plan. This method transforms the search problem into a logical inference problem, leveraging highly optimized solvers like Glucose or Z3 to handle the combinatorial complexity of planning.
Model Predictive Control (MPC)
Model Predictive Control (MPC) is an online, receding-horizon control technique used in robotics and process engineering. It shares a conceptual lineage with planning:
- Uses a Model: Relies on an explicit model of system dynamics (similar to a PDDL domain).
- Solves an Optimization: At each control cycle, it solves a finite-horizon planning/optimization problem to generate a sequence of actions.
- Implements First Action: Executes only the first action, then re-plans with new state feedback. While classical PDDL planners often seek a full plan to a fixed goal, MPC is characterized by continuous re-planning based on a changing objective and state, making it suitable for dynamic environments where PDDL alone is insufficient.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us