Hierarchical Task Network Planning in Common Lisp: the case of SHOP3
Description
This paper describes the use of Common Lisp (CL) to develop a new version of the Hierarchical Task Network (HTN) planner, Shop2, first developed at the University of Maryland (UMD). which we are dubbing Shop3. We will describe ways in which we have profited from language features offered by CL to build a more solid, efficient, yet flexible planning system, review lessons learned and suggest some best practices. Shop3 is an open source tool made publicly available by SIFT, hosted on GitHub. It is freely available for use under the terms of the Mozilla Public License. CL provided a good foundation for extensibility and refactoring of the Shop2 planner to support both more flexibility and extensibility and, at the same time, more usability as a practical tool. By comparison, the Java version of Shop2 was rigid, and rapidly abandoned after the original developer left UMD. By then it already lagged behind the CL version in terms of features because of Java’s rigidity, and poor support for symbolic programming.
Notes
Files
GoldmanKuterSHOP3ELS.pdf
Files
(4.4 MB)
Name | Size | Download all |
---|---|---|
md5:a6b0e742dd2433bfa1b0ec9c5d3ef9a3
|
4.4 MB | Preview Download |