Petri Net Plans
PNPs are more expressive than Finite State Machines (FSM) and allow for automatic plan analysis, which can provide formal guarantees on the performance of the plans. Execution of PNPs is extremely efficient and allows the design of real-time pro-active and reactive behaviors. PNPs have been used in several robotic applications, including soccer (Best Demo Award at AAMAS 2008), search and rescue, surveillance, multi-robot cooperation, social robots, etc.
Petri Net Plans (PNP) is a formalism for high level description of complex plans (i.e., set of actions interacting in a complex way). PNP is useful to program cognitive agents (such as robots, videogame agents, multi-robot/multi-agent systems, etc.).
PNPs are inspired to languages for reasoning about actions, yet they are more expressive than most of them, offering a full fledged set of operators for dealing with non-instantaneous actions, sensing actions, action failures, concurrent actions and cooperation in a multi agent context. PNPs include also choice operators used for non-deterministic execution and for learning in the plan space through a Reinforcement Learning algorithm.
A new development in Petri Net Plans is the implementation of algorithms for the generation of PNPs,
More details are illustrated in the web page PNP Generation.
ROSPlan is a ROS interface for some standard planners using PDDL model language.
PNP_ROSPlan is a component for receiving plans from ROSPlan, transforming them into PNP, adding Execution Rules and executing them according to the PNP semantics.
More details are given in the web page ROSPlan_to_PNP.
PNP has been used as a formalism to generate and execute conditional plans based on HATP formalism.
More details are given in these web pages.
ICAPS 2017 Tutorial on AI Planning for Robotics and Human-Robot Interaction (ROSPlan-PNP integration)
A VirtualBox virtual machine with ROSPlan and PNP installed and the demo shown during the ICAPS2017 tutorial is available. Follow instructions in the README files on the desktop of the machine.
LearnPNP (learning in plan space through PNP)
SPQReL RoboCup@Home team (2017)
Search and Rescue (S.P.Q.R. Rescue)