Papers
Topics
Authors
Recent
Search
2000 character limit reached

HDDL -- A Language to Describe Hierarchical Planning Problems

Published 13 Nov 2019 in cs.AI | (1911.05499v1)

Abstract: The research in hierarchical planning has made considerable progress in the last few years. Many recent systems do not rely on hand-tailored advice anymore to find solutions, but are supposed to be domain-independent systems that come with sophisticated solving techniques. In principle, this development would make the comparison between systems easier (because the domains are not tailored to a single system anymore) and -- much more important -- also the integration into other systems, because the modeling process is less tedious (due to the lack of advice) and there is no (or less) commitment to a certain planning system the model is created for. However, these advantages are destroyed by the lack of a common input language and feature set supported by the different systems. In this paper, we propose an extension to PDDL, the description language used in non-hierarchical planning, to the needs of hierarchical planning systems. We restrict our language to a basic feature set shared by many recent systems, give an extension of PDDL's EBNF syntax definition, and discuss our extensions with respect to several planner-specific input languages from related work.

Citations (14)

Summary

  • The paper introduces HDDL as a standardized language to describe hierarchical planning problems by extending PDDL.
  • It details explicit syntax and semantics for defining compound tasks, methods, and task networks within an HTN planning framework.
  • HDDL aims to facilitate system comparisons and integration, while paving the way for incorporating extensions like temporal and resource constraints.

HDDL: A Language to Describe Hierarchical Planning Problems

Introduction

The paper "HDDL -- A Language to Describe Hierarchical Planning Problems" (1911.05499) addresses the need for a standardized description language in hierarchical planning domains. The current landscape of hierarchical planning systems is marked by a diversity of approaches, which complicates the comparison and integration of different systems. The proposed Hierarchical Domain Definition Language (HDDL) extends PDDL, the widely adopted language in non-hierarchical planning, to accommodate the nuances of hierarchical planning. The establishment of a common language aims to streamline system comparisons, foster feature standardization, and facilitate integration with other systems.

Hierarchical Task Network (HTN) Planning Framework

The theoretical foundation for HDDL is rooted in Hierarchical Task Network (HTN) planning, a dominant model in hierarchical planning. HTN planning involves decomposing high-level tasks into primitive actions through a hierarchy of methods. The formalism adopted by the authors outlines the elements necessary to define HTN planning problems: predicates, tasks, and decomposition methods. Each component is meticulously defined to ensure compatibility with existing systems while enabling extensions for advanced features in the future. The choice of a basic feature set ensures broad applicability across various hierarchical planning systems.

HDDL Syntax and Semantics

HDDL builds upon the syntactic structure of PDDL 2.1, retaining core elements while integrating new constructs essential for hierarchical planning. Key extensions include the explicit definition of compound tasks and methods, as well as the introduction of task networks in problem definitions. Method preconditions and variable constraints are carefully structured to maintain backward compatibility and ease of adoption. By adopting a syntax familiar to users of PDDL, the paper endeavors to lower the barrier for transitioning to hierarchical planning.

The language's syntax is exemplified through a series of use cases, such as a simple transport domain, highlighting the practical application of HDDL. These examples demonstrate the expressiveness of the language in capturing complex hierarchical planning scenarios, including task decomposition, ordering, and constraints. The emphasis on a common syntax facilitates the development of parsers and other tools necessary for HDDL's widespread adoption.

Implications and Future Directions

The establishment of HDDL lays the groundwork for a unified platform for hierarchical planning research. The authors articulate the potential for HDDL to simplify system comparison and integration, thereby accelerating research progress and real-world application deployment. In addition to fostering collaboration among diverse research groups, HDDL also sets the stage for extensions that integrate advanced features like temporal and resource constraints, further aligning hierarchical planning with real-world requirements.

The introduction of HDDL represents a critical step toward formalizing the input specification for hierarchical planning systems, aligning efforts with those in non-hierarchical planning. Future work may involve extending HDDL to incorporate more sophisticated constraint handling, support for numeric fluents, and the development of a comprehensive standard that encompasses all variants of hierarchical planning problems.

Conclusion

This paper presents HDDL as a promising candidate for standardizing the representation of hierarchical planning problems. By extending PDDL with constructs specific to HTN planning, HDDL provides a common framework that can be enhanced with future advancements in the field. The proposed language is poised to facilitate greater interoperability among planning systems and contribute to the maturation of hierarchical planning as a distinct and well-defined paradigm within AI. The authors encourage the research community to adopt and further refine HDDL, promoting collaboration and expediting the practical deployment of hierarchical planning solutions.

Paper to Video (Beta)

Whiteboard

Explain it Like I'm 14

Overview

This paper introduces HDDL, a simple, shared language for describing “hierarchical” planning problems in artificial intelligence. Think of planning like writing a recipe: you want a machine to figure out the steps to reach a goal. In hierarchical planning, big tasks are broken down into smaller tasks (like “make dinner” becomes “cook pasta,” which becomes “boil water,” “add pasta,” and so on). HDDL aims to be the common way to write these plans so different AI systems can understand and compare them easily.

What are the main questions?

The paper asks:

  • Can we extend the popular planning language PDDL (used for non-hierarchical plans) to cleanly support hierarchical plans?
  • What basic features should this new language include so it works across many modern planners?
  • How should we write this language so it’s clear, consistent, and easy to use?

How did the authors approach it?

The authors did three main things:

  1. Explained hierarchical task network (HTN) planning in clear, formal terms. In HTN:
    • A “task” can be either a simple action (like drive) or a compound task (like deliver) that gets broken into subtasks.
    • A “method” tells you how to break a compound task into subtasks.
    • Some tasks must happen before others; sometimes you can partially order them (not strictly step 1, step 2, step 3) if the order doesn’t always matter.
  2. Designed HDDL as an extension of the STRIPS part of PDDL 2.1. In everyday terms, they added the extra pieces needed for hierarchical plans while keeping everything else familiar to PDDL users.
  3. Gave a full, precise grammar for HDDL (the exact rules for writing HDDL), plus examples, and compared HDDL’s choices with other existing languages (like SHOP, HPDDL, ANML, and older PDDLs). This is like making sure everyone agrees on the same “recipe format.”

What did they create and find?

HDDL adds a small set of clear pieces to PDDL so you can define hierarchical plans. Here are the key parts:

  • Explicit abstract tasks: You define compound tasks up front, like (:task deliver ...). This avoids confusion between simple actions and tasks that need decomposition.
  • Methods: You define how to break a compound task into subtasks:
    • :task says which abstract task the method decomposes, e.g., (deliver ?p ?ld).
    • :parameters list all variables used inside the method and their types.
    • Subtasks can be:
    • Totally ordered with :ordered-subtasks when the exact sequence is required.
    • Partially ordered with :subtasks plus an :ordering section when only some “must come before” rules are needed.
  • Optional method preconditions: :precondition lets you specify conditions that must be true before a method can be used (e.g., “already at the destination”). These are common in practice, but optional in HDDL to keep the core language simple.
  • Constraints: :constraints lets you add simple variable checks (like saying two locations must be different). This makes models safer and clearer.
  • Actions stay PDDL-style: Primitive actions (like drive) keep standard PDDL preconditions and effects.
  • Initial task network: In the problem file, the (:htn ...) section defines the starting set of tasks, their order, and any constraints. Goals are optional because HTN problems often don’t need a separate state-based goal—the task hierarchy itself defines what to achieve.
  • Requirement flags: HDDL uses :htn to signal the planner must support HTN, and :htn-method-prec if method preconditions are used. This makes capabilities explicit.

Why this matters:

  • It standardizes the basics across different planners, making it much easier to compare systems and share models.
  • It’s close to PDDL, so people who already know PDDL can learn HDDL quickly.
  • It avoids tricky or planner-specific features that can cause confusion (for example, they do not include “method effects” in the core, which are rarely used and can be hard to define correctly).

Implications and potential impact

HDDL is a practical step toward getting the HTN planning community on the same page. With a common, simple language:

  • Researchers can compare different planning systems fairly using the same models.
  • Developers can model a problem once and try multiple planners without rewrites.
  • The field can build shared benchmarks and test suites, speeding up progress.
  • Future extensions (like time, numbers, richer constraints, or decomposing goals) can be added in a structured way, similar to how PDDL grew over time.

In short, HDDL makes hierarchical planning clearer and more consistent, helping both research and real-world applications move faster.

Collections

Sign up for free to add this paper to one or more collections.