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
HATP semantics
data structure
conceptually distinct syntax
syntactic sugar
HTN planner
Hierarchical Agent-based Task Planner
structured programming
programming language
robotics
problem representation
domain representation
specialised language
practicality
usability
HATP hierarchical planner
planning