The ENHSP Planning System
Abstract
ENHSP, Expressive Numeric Heuristic Search Planner, is a PDDL automated planning system that supports:
Classical and Numeric Planning (PDDL2.1)
Optimal Simple Numeric Planning
Satisficing Non-Linear Numeric Planning
Planning with Autonomous Processes and Discrete Events (PDDL+)
Global Constraints and Expressive Formulas in Preconditions and Goals
Automated planning is what allows intelligent agents to come up with an organisation of actions (typically a sequence) to achieve some sort of goal state starting from an initial state of things.
Description
The planner reads in input a PDDL domain and problem file, and if you are lucky and your problem is not too complex, it provides you with a plan (a sequence of actions). In the case of planning with processes, the plan is a time-stamped plan (associated to each action, you find the time at which that instance of the action has to be executed). In dealing with autonomous processes, ENHSP discretises the problem (with a delta=1sec by default); so the plan is guaranteed to be valid only with respect to that discretisation. Depending on the problem and configuration, ENHSP can be run to find only optimal plans.
PDDL is the standard de facto language to express planning problems. The domain file expresses the signature of your predicates, functions (for the support of autonomous processes) and also all the actions/processes/events available, in a parametrized way. The problem file expresses the particular instance of the planning problem (e.g., what is the initial value of predicate A? What is the goal?). For more information on PDDL start from its wikipedia page, and follow the links. ENHSP supports PDDL 2.1 in particular, and PDDL+ (for the support of autonomous processes) and also events. We also allow to employ global constraint as a direct construct of the language (via the :constraint syntax).
Applications
Playing with a solar-powered UAV across clouds, and with multiple points of interest to visit (2019-2020). Click here.
Ubran Traffic Control. Deciding the right moment to switch the phase of traffic lights so as to decrease traffic congestion (2019). For more details Click here or here
Energy-Aware Path Planning for Autonomous Mobile Robot Navigation. This problem involves challenges for planners which need to reason over quadratic constraints and non trivial objective functions (2020). Click here. Video
How does it work?
ENHSP transforms the PDDL descriptions into a graph-search problem where nodes represent states visited by the planner. The planner builds this graph in an incremental-forward fashion, and is guided by a heuristic function to explore only those nodes whose associated state is reachable from the init and get the planner closer to the goals. A good heuristic function is crucial for such a kind of approach (see relevant papers), and ENHSP puts a lot of effort in finding heuristics that can reason effectively over numeric problems.
Download and Try the Planner!!
There are three main versions of ENHSP: ENHSP-20, ENHSP-19, ENHSP-18. Hopefully everything will converge into ENHSP-20; doing my best to make this happens at some point.
Click on source or binary to access the system:
ENHSP-20 (Source, Binary-JAR) - Relaxed Plan Lite Version. As a main feature, this version contains the new Relaxed Plan Based heuristics developed for ICAPS-20 and a subsets of the heuristics of previous versions (the ones who had more applications). There has been a substantial refactoring that gave important speed ups. Master Branch of Public Repository (for retro-compatibility, this also is in the enshp-20 branch)
ENHSP-19 (Source, Binary) - This version contains all functionalities of ENHSP-18, with bug fixes and new data structures. (Last Update May 2020). This is in the enhsp-19 branch of the repository
ENHSP-18 (Source) - First version of ENHSP (last update 2018): This can be downloaded from (Last Update 2018). This is in the enhsp-18 branch of the repository
What to choose? In general go with ENHSP-20. ENHSP-19 contains some feature, but is going to be deprecated. Only if nothing works, go to ENHSP-18
News! ENHSP can also be found wrapped in Singularity images, downloadable directly from here
Contact Information
For any kind of issues, curiosity and also just to let me know that you are actually using the planner, send an email to Enrico Scala : enricos83@gmail.com . I am always happy to hear from people using ENHSP.