## Definition **PDDL** (Planning Domain Definition Language) is the standard language for specifying [[Classical Planning]] problems. Introduced for the 1998 International Planning Competition (IPC), it provides a common format that all serious planners support. ## Structure A PDDL problem has two files: ### Domain file Describes the *general* structure: ``` (define (domain blocksworld) (:predicates (on ?x ?y) (ontable ?x) (clear ?x) (handempty) (holding ?x)) (:action pickup :parameters (?b) :precondition (and (clear ?b) (ontable ?b) (handempty)) :effect (and (holding ?b) (not (clear ?b)) (not (ontable ?b)) (not (handempty)))) (:action putdown :parameters (?b) :precondition (holding ?b) :effect (and (clear ?b) (ontable ?b) (handempty) (not (holding ?b)))) ) ``` ### Problem file Describes the *specific* instance: ``` (define (problem blocksworld-1) (:domain blocksworld) (:objects A B C) (:init (ontable A) (on B A) (on C B) (clear C) (handempty)) (:goal (and (on A B) (on B C) (ontable C))) ) ``` ## Versions - **PDDL 1.2 (1998).** STRIPS + ADL: basic strips, typing, equality, conditional effects. - **PDDL 2.1 (2002).** Durative actions, numeric fluents. - **PDDL 2.2 (2004).** Timed initial literals, derived predicates. - **PDDL 3.0 (2006).** Soft constraints (preferences), trajectory constraints. - **PDDL+ (2007).** Mixed discrete/continuous (hybrid systems). - **MA-PDDL.** Multi-agent variants. ## Why PDDL Matters - **Portability.** Same problem runs on dozens of competing planners. - **Benchmark suite.** IPC benchmarks let researchers compare planner performance objectively. - **Modular separation.** Domain (reusable) and problem (instance) split cleanly. - **Industry adoption.** Used in space mission planning (NASA), logistics, manufacturing. ## Notable Planners (2026) - **Fast Downward** — research-grade reference implementation. - **LAMA** — landmark-based heuristics; strong on classical IPC benchmarks. - **OPTIC, POPF** — temporal planners (PDDL 2.1). - **Madagascar / SAT-based planners** — compile to SAT for hard instances. ## Limitations PDDL inherits the assumptions of classical planning — fully observable, deterministic, single agent. For uncertainty: **PPDDL** (probabilistic PDDL) and **RDDL** (relational dynamic-influence diagram language). ## Connection to LLM Agents Modern research investigates LLMs generating PDDL problem files from natural-language descriptions, then handing them to classical planners for execution. The combination — LLM for translation, classical planner for guarantees — outperforms either alone on tasks with verifiable success criteria. ## Related - [[STRIPS]] - [[Classical Planning]] - [[Heuristic Planning]] - [[GRAPHPLAN]]