The HATP hierarchical planner: Formalisation and an initial study of its usability and practicality
Résumé
HTN planners have generally relied on specialised languages for domain and problem representations. To facilitate adoption by other communities such as robotics, however, and integration with real world applications written in standard programming languages, we need HTN planners that are based on more familiar concepts from structured programming, and that come ready with features supporting integration. In this paper, we demonstrate how the HATP (Hierarchical Agent-based Task Planner) HTN planner offers such “syntactic sugar” and some of these features. Moreover, since it has a conceptually distinct syntax compared to traditional HTN planners, we also develop a formalism to unambiguously capture HATP's syntax and an important subset of its semantics, which we then use to compare against the formalism of a well understood family of HTN planners and to show that the former is sound. Finally, we demonstrate that despite quite possibly using “heavier” data structures to naturally capture HATP's syntax/semantics, and thereby facilitate extensions to HATP and integration with other applications, the implementation still performs acceptably.
Mots clés
- structured programming
- HATP semantics
- data structure
- conceptually distinct syntax
- syntactic sugar
- HTN planner
- Hierarchical Agent-based Task Planner
- specialised language
- programming language
- robotics
- problem representation
- domain representation
- planning
- HATP hierarchical planner
- usability
- practicality