MBP: a Model Based Planner
Synthesis of controllers
The NuPDDL input language
The Model Based Planner (MBP) is a system designed to perform plan synthesis,
plan validation and plan/domain simulation in non-deterministic domains.
MBP assumes a simple but general model of non-determinism, which encompasses
uncertainty on the initial situation, on the action effects, and on the
state in which the actions will be executed.
A general framework for modeling nondeterministic
domains with various degrees of observability, and a language to
A general plan model, and a language supporting it with powerful primitives.
validation capabilities, expressing plan validation as a model checking problem.
A set of efficient algorithms that perform plan
synthesis for a variety of classes of planning problems
A means for simulation of domains,
in isolation or driven by plans.
Given a non-deterministic planning domain, MBP can tackle a variety
of problems. Intuitively, these problems can be classified according to
the following two dimensions:
Degree of observability (i.e. what information can be gathered,
at run-time, on the state of the domain). This can range from full observability
(the whole state of the world is observable at run-time), to null
observability (no information is available at run-time), to the general
case of partial observability (only some domain information is available
at run time).
MBP has been the reference tool for the hands-on AIPS'02
Planning as Model Checking Tutorial.
Expressiveness of the goals. Planning problems can range from the
case where a set of final states must be reached (with different guarantees
of achievement), to the more general case of temporally extended goals,
i.e., where goals express conditions on sequences of states resulting from
the execution of a plan, rather than just on final states.
Here you can find the slides of the tutorial (ps.gz,
Here you can find the assignments given in the tutorial (ps.gz,
pdf) and download the solutions
to the assignments.
A detailed description of MBP can be found in this
MBP can plan for a variety of problem classes:
For each of these, MBP includes state-of-the-art algorithms; in many cases,
more than one algorithm is available.
MBP can validate plans, either generated by MBP itself or written by a
user in MBP's NuPDDL language. Plan validation
is performed against a domain and a problem, also expressed in NuPDDL:
Where <NuPDDL_files> is a list of files describing a domain
and a problem in NuPDDL.
Plan/ domain simulation
Plan/domain simulation allows a user to test a domain, either in isolation
or driven by a plan. The plan can be either an MBP-generated plan, or a
user-provided plan. Several modes of simulation are available, to allow
the user different degrees of control over the evolution of the environment:
MBP-simulate [-domain] [-random] <NuPDDL_files>
Where <NuPDDL_files> is a list of files describing a domain,
a problem and possibly a plan in NuPDDL.
MBP supports an extension of PDDL2.1
that allows modeling uncertainty in the initial situation, nondeterministic
action effects, partial observability in the domain. We named the language
In NuPDDL all the classes of problems above
can be described.
Moreover, NuPDDL embeds a powerful plan language
that reflects the conception of a plan as a finite state machine.
NOTE: The NuPDDL interface relies on a translator which is not
optimized yet. This can be a bottleneck when dealing withcomplex
domains. To run system comparisons, or deal with complex domains,
using MBP's SMV interface may be recommendable.
Here you can download the binary version
of MBP, for PCs supporting Linux.
Here you can download the
binary code for the MBP version presented at IJCAI'01, for PC
supporting Linux. This version supports
AR as an input language and is now considered obsolete.
Disclaimer:This software is for evaluation purposes only.
No permission is given to copy and modify this software and its
documentation. This software is provided on an "as is" basis. ITC-IRST
does not provide any guarantee upon the utilization of this software.
Several planners are related in some ways to MBP:
SIMPLAN (Simulation Based Planner) is a planner for non-deterministic domains
where goals are temporal constraints on the execution paths.
GPT. GPT is a tool for planning
with incomplete information, sensing, and probabilities.
QBFPLAN generalizes the idea of SAT based planning to nondeterministic
domains, by encoding problems in QBF.
UMOP (the Universal Multi-agent Obdd-based Planner) is a planning system
for multi-agent and non-deterministic domains.
SGP. SGP (Sensory
Graphplan) is a planner based on Graphplan that supports for conditional
effects, uncertainty, and sensing actions.
Last edited: 2005-02-16