Publications

Issue Archive

Translating MAPGEN to ASPEN for MER

Tuesday, 11 June 2013

Faithful translation is achieved from mixed-domain representations into the ASPEN
Modeling Language.

This software translates MAPGEN(Europa and APGEN) domains
to ASPEN, and the resulting domain can be used to perform planning
for the Mars Exploration Rover (MER). In other words, this
is a conversion of two distinct planning languages (both declarative
and procedural) to a third (declarative) planning language in
order to solve the problem of faithful translation from mixeddomain
representations into the ASPEN Modeling Language.

The MAPGEN planning system is an example of a hybrid procedural/ declarative system where the advantages of each are
leveraged to produce an effective planner/scheduler for MER
tactical planning. The adaptation of the same domain to an
entirely declarative planning system (ASPEN) was investigated,
and, with some translation, much of the procedural knowledge
encoding is amenable to declarative knowledge encoding.

The approach was to compose translators from the core languages
used for adapting MAGPEN, which consists of Europa and
APGEN. Europa is a constraint-based planner/scheduler where
domains are encoded using a declarative model. APGEN is also
constraint-based, in that it tracks constraints on resources and
states and other variables. Domains are encoded in both constraints
and code snippets that execute according to a forward
sweep through the plan. Europa and APGEN communicate to
each other using proxy activities in APGEN that represent constraints
and/or tokens in Europa. The composition of a translator
from Europa to ASPEN was fairly straightforward, as ASPEN is also
a declarative planning system, and the specific uses of Europa for
the MER domain matched ASPEN’s native encoding fairly closely.

On the other hand, translating from APGEN to ASPEN was considerably
more involved. On the surface, the types of activities and
resources one encodes in APGEN appear to match one-to-one to
the activities, state variables, and resources in ASPEN. But, when
looking into the definitions of how resources are profiled and activities
are expanded, one sees code snippets that access various information
available during planning for the moment in time being
planned to decide at the time what the appropriate profile or
expansion is. APGEN is actually a forward (in time) sweeping discrete
event simulator, where the model is composed of code snippets
that are artfully interleaved by the engine to produce a
plan/schedule. To solve this problem, representative code is simulated
as a declarative series of task expansions.

Predominantly, three types of procedural models were translated:
loops, if-statements, and code blocks. Loops and if-statements
were handled using controlled task expansion, and code
blocks were handled using constraint networks that maintained
the generation of results based on what the order of
execution would be for a procedural representation.

One advantage with respect to performance for MAPGEN is
the use of APGEN’s GUI. This GUI is written in C++ and Motif,
and performs very well for large plans.

The software used in this innovation is available for commercial licensing.
Please contact Dan Broderick at This email address is being protected from spambots. You need JavaScript enabled to view it.. NPO-48597

This Brief includes a Technical Support Package (TSP).

Translating MAPGEN to ASPEN for MER (reference NPO-48597) is currently available for download from the TSP library.

Question of the Week

This week's Question: Last week, Elon Musk, chief executive of Tesla, said that the electric car maker would introduce autonomous technology, an autopilot mode, by this summer; the technology will allow drivers to have their vehicles take control...