IEEE - Aerospace and Electronic Systems - August 2021 - 40

An Extended HTN Language for Onboard Planning and Acting Applied to a Goal-Based Autonomous Satellite
The library provides functions to perform planning actions
and access to state variables and enumerators of the HML
items (elements, events, actions, domain, etc.). Table 2
shows how the HML items are available to the onboard
HTN planning system from the library.
In brief, the HML model guides the onboard HTN
planner from an approach that basically consists of three
main stages: i) task decomposition, ii) state inference, and
iii) replanning. The first is present in all HTN models,
whereas the last two are different concerning further HTN
representations and complementary to each other. Such an
approach will be better outlined in our experimental study
that shows how an HTN planning algorithm uses the
HML model in practice.
As described in Table 2, the HML model can be used
by the planner, controller, and executor. This shows the
ability of our language to integrate planning, scheduling,
and execution. We applied this insight based on NASA's
experimental flights.
The first satellite software architectures conducted by
NASA (e.g., Remote Agent eXperiment-RAX-[28],
and Autonomous Sciencecraft Experiment-ASE-[34])
did not use the same semantic model of the autonomous
system for planning, diagnosis, and execution. According
to Amigoni et al. [12], this was discouraged since subtle
differences from the models can then result in planning or
execution failures that are difficult to debug.
We argue that disruption related to goal-based mission
planning should be addressed with replanning rather than
explicitly in the domain. On the other hand, faults related
to the health of the satellite platform should be addressed
by the OBSW using well-known Fault Detection, Isolation,
and Recovery (FDIR) techniques based on predefined
rules and not by the onboard planning and scheduling system.
This brings greater compatibility with traditional
OBSW and avoids decentralized reasoning of the modelbased
autonomous system.
DOMAIN REPRESENTATION
BACKUS-NAUR FORM GRAMMAR
Previous works related to goal-oriented autonomous
satellites (e.g., [29]) describe that they were based on
some planning language focused on the ground mission
framework (e.g., AML), but do not present the adaptations
made for the onboard model solution. This is
closer to the conventional programming than to properly
model planning systems, weakening domain legibility
and validation.
In order to avoid this, this work uses the Backus-Naur
Form (BNF) formalism. BNF is used to specify grammar,
usually programming languages. We take advantage of its
expressiveness to describe the hierarchical domain and
40
onboard problem representation. BNF is derived from a
set of rules, such that :: ¼¼ __expression__,
where  is a nonterminal symbol that has one or
more sequences of terminal and nonterminal symbols are
given by the expression, which consists of sequences of
symbols that could be separated by the vertical bar, " j , "
representing a choice. This notation indicates the substitution
possibilities for the symbol on the left. A symbol that
never appears on the left is called a terminal.
To simplify the grammar, an extended BNF syntax
is used. The "  " signal indicates that there are zero or
more possible symbols and " þ " shows that there may be
an instance of one or more symbols. The " # " signal
denotes that the symbol appears once or is optional. In
our representation, symbols preceded by " $ " denote variable
values (e.g., literals) and were treated as terminal
symbols. Symbols preceded by " & " are numeric variables
declared in the domain and also terminal symbols
for simplification.
REPRESENTATION OF HIERARCHICAL AND
STRUCTURAL DOMAIN
The simplified grammar in Listing 5 specifies the main
elements of the Hierarchical and Structural Domain. It
purposes to promote clarity on how the elements can
relate to each other according to the HML description
rules. In order to improve readability, XML formatting
syntax rules were disregarded in our grammar. The
HTN domain defines the hierarchical decomposition
models and relies on part of the structural description.
The latter includes, in addition to the elements, timelines,
and domain, it also defines consumers and attributes
of each resource.
The Behavioral Description will not be specified here,
as its syntax is similar to that of other languages based on
actions and effects (see Listing 3). To specify the onboard
problem, we also used the BNF formalism, as described in
Listing 6.
SATELLITE ONBOARD PROBLEM REPRESENTATION
To achieve goal-oriented mission planning, we need to
specify the problem representation, so that it is translated
as a valid input to the onboard planner. This representation
is useful for understanding in general terms
how the onboard HTN planner uses HML domain
descriptions.
According to the grammar in Listing 6, the following
information defines the onboard problem: goal list, the initial
states, and resource availability, planning horizon, and
exogenous events. Unlike classical planning, the problem
IEEE A&E SYSTEMS MAGAZINE
AUGUST 2021

IEEE - Aerospace and Electronic Systems - August 2021

Table of Contents for the Digital Edition of IEEE - Aerospace and Electronic Systems - August 2021

Contents
IEEE - Aerospace and Electronic Systems - August 2021 - Cover1
IEEE - Aerospace and Electronic Systems - August 2021 - Cover2
IEEE - Aerospace and Electronic Systems - August 2021 - Contents
IEEE - Aerospace and Electronic Systems - August 2021 - 2
IEEE - Aerospace and Electronic Systems - August 2021 - 3
IEEE - Aerospace and Electronic Systems - August 2021 - 4
IEEE - Aerospace and Electronic Systems - August 2021 - 5
IEEE - Aerospace and Electronic Systems - August 2021 - 6
IEEE - Aerospace and Electronic Systems - August 2021 - 7
IEEE - Aerospace and Electronic Systems - August 2021 - 8
IEEE - Aerospace and Electronic Systems - August 2021 - 9
IEEE - Aerospace and Electronic Systems - August 2021 - 10
IEEE - Aerospace and Electronic Systems - August 2021 - 11
IEEE - Aerospace and Electronic Systems - August 2021 - 12
IEEE - Aerospace and Electronic Systems - August 2021 - 13
IEEE - Aerospace and Electronic Systems - August 2021 - 14
IEEE - Aerospace and Electronic Systems - August 2021 - 15
IEEE - Aerospace and Electronic Systems - August 2021 - 16
IEEE - Aerospace and Electronic Systems - August 2021 - 17
IEEE - Aerospace and Electronic Systems - August 2021 - 18
IEEE - Aerospace and Electronic Systems - August 2021 - 19
IEEE - Aerospace and Electronic Systems - August 2021 - 20
IEEE - Aerospace and Electronic Systems - August 2021 - 21
IEEE - Aerospace and Electronic Systems - August 2021 - 22
IEEE - Aerospace and Electronic Systems - August 2021 - 23
IEEE - Aerospace and Electronic Systems - August 2021 - 24
IEEE - Aerospace and Electronic Systems - August 2021 - 25
IEEE - Aerospace and Electronic Systems - August 2021 - 26
IEEE - Aerospace and Electronic Systems - August 2021 - 27
IEEE - Aerospace and Electronic Systems - August 2021 - 28
IEEE - Aerospace and Electronic Systems - August 2021 - 29
IEEE - Aerospace and Electronic Systems - August 2021 - 30
IEEE - Aerospace and Electronic Systems - August 2021 - 31
IEEE - Aerospace and Electronic Systems - August 2021 - 32
IEEE - Aerospace and Electronic Systems - August 2021 - 33
IEEE - Aerospace and Electronic Systems - August 2021 - 34
IEEE - Aerospace and Electronic Systems - August 2021 - 35
IEEE - Aerospace and Electronic Systems - August 2021 - 36
IEEE - Aerospace and Electronic Systems - August 2021 - 37
IEEE - Aerospace and Electronic Systems - August 2021 - 38
IEEE - Aerospace and Electronic Systems - August 2021 - 39
IEEE - Aerospace and Electronic Systems - August 2021 - 40
IEEE - Aerospace and Electronic Systems - August 2021 - 41
IEEE - Aerospace and Electronic Systems - August 2021 - 42
IEEE - Aerospace and Electronic Systems - August 2021 - 43
IEEE - Aerospace and Electronic Systems - August 2021 - 44
IEEE - Aerospace and Electronic Systems - August 2021 - 45
IEEE - Aerospace and Electronic Systems - August 2021 - 46
IEEE - Aerospace and Electronic Systems - August 2021 - 47
IEEE - Aerospace and Electronic Systems - August 2021 - 48
IEEE - Aerospace and Electronic Systems - August 2021 - 49
IEEE - Aerospace and Electronic Systems - August 2021 - 50
IEEE - Aerospace and Electronic Systems - August 2021 - 51
IEEE - Aerospace and Electronic Systems - August 2021 - 52
IEEE - Aerospace and Electronic Systems - August 2021 - Cover3
IEEE - Aerospace and Electronic Systems - August 2021 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/aerospace_december2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_november2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_october2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_september2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_august2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_july2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_june2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_may2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_april2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_march2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_february2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_january2023
https://www.nxtbook.com/nxtbooks/ieee/aerospace_december2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_november2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_october2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_september2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_august2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_july2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_june2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_may2022_tutorial
https://www.nxtbook.com/nxtbooks/ieee/aerospace_may2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_april2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_march2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_february2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_january2022
https://www.nxtbook.com/nxtbooks/ieee/aerospace_december2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_november2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_october2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_september2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_august2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_july2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_june2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_may2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_april2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_march2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_march2021_tutorials
https://www.nxtbook.com/nxtbooks/ieee/aerospace_february2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_january2021
https://www.nxtbook.com/nxtbooks/ieee/aerospace_november2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_december2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_october2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_september2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_august2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_july2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_june2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_may2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_april2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_march2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_february2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_january2020
https://www.nxtbook.com/nxtbooks/ieee/aerospace_december2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_october2019partII
https://www.nxtbook.com/nxtbooks/ieee/aerospace_november2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_october2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_july2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_september2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_august2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_june2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_april2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_may2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_march2019
https://www.nxtbook.com/nxtbooks/ieee/aerospace_december2018
https://www.nxtbook.com/nxtbooks/ieee/aerospace_august2018
https://www.nxtbook.com/nxtbooks/ieee/aerospace_october2018
https://www.nxtbook.com/nxtbooks/ieee/aerospace_september2018
https://www.nxtbook.com/nxtbooks/ieee/aerospace_november2018
https://www.nxtbookmedia.com