03.01.2013 Views

TECHNOLOGY DIGEST - Draper Laboratory

TECHNOLOGY DIGEST - Draper Laboratory

TECHNOLOGY DIGEST - Draper Laboratory

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Autonomous Mission Management for Spacecraft Rendezvous Using an Agent Hierarchy<br />

and any applicable constraints. Subplanner 1 returns the<br />

cost of the optimal trajectory from A to B, call it J1.<br />

Similarly, the supervisor planner may request subplanner<br />

2 to solve the B to C problem and receives the B to C<br />

cost, J2. The total cost, J1 + J2, is plotted topographically<br />

on the right as a function of the interface states<br />

(coordinates of B). The supervisor optimizes the A to C<br />

trajectory by searching for the optimal coordinates of B.<br />

Depending on the attributes of the problem, the supervisor<br />

may find the optimal solution by using one of any<br />

number of optimization techniques, gradient descent for<br />

example.<br />

Figure 2. Optimization or decision-making via hierarchical<br />

planners.<br />

On the other hand, the supervisor may not be required to<br />

find the optimal solution at all. It may instead search<br />

through a predefined set of interface states (red Xs in the<br />

figure) choosing the option with the lowest cost. When<br />

the supervisor evaluates a set of options, we shall call the<br />

process decision-making. When an iterative search is<br />

used, the process may be an optimization process. The<br />

multilevel optimization technique described here is<br />

referred to as interaction coordination. Other techniques,<br />

such as price coordination are also available. [2]<br />

Of course, this iterative process is not new to those familiar<br />

with optimization. Many optimization algorithms<br />

work by iterating on a set of control variables to minimize<br />

a cost function. But diagramming the problem this<br />

way highlights some of the advantages of thinking about<br />

planning in a hierarchical sense. Each subplanner may be<br />

an expert at its piece of the problem. Subplanner 2 need<br />

not have any knowledge of subplanner 1’s problem and<br />

vice versa. Further, the supervisor need not have all the<br />

details of the subproblems to solve the overall problem.<br />

Second, once the vehicle has passed point B, there is no<br />

longer any need to consider the A to B problem, and subplanner<br />

1 (and all its associated data and memory) may<br />

be deactivated. Finally, note that the time horizon for<br />

each planner gets longer as we move up the hierarchy<br />

with the supervisor having the lowest level of detail while<br />

planning over the longest time horizon.<br />

It is easy to imagine an extension of the two-level hierarchy<br />

described above in which each subplanner in turn<br />

solves its problem by invoking subplanners of its own.<br />

44<br />

A<br />

Subplanner<br />

1<br />

Cost = J1<br />

Supervisor<br />

Planner<br />

B = interface<br />

state<br />

B<br />

Subplanner<br />

2<br />

Cost = J2<br />

Total Cost, J = J1 + J2<br />

(out of page)<br />

B2<br />

J=50 J=40<br />

B1<br />

C<br />

Discrete decision points<br />

J=30<br />

J=50<br />

Optimum<br />

This sort of hierarchical planning breakdown has one<br />

other very important advantage. The same process that<br />

creates the planning tree results in a natural breakdown<br />

for all the functions required of a mission manager. In<br />

fact, the process of invoking subplanners and sub-subplanners<br />

can be used to create a hierarchy of agents, each<br />

responsible for monitoring, diagnosing, planning, and<br />

executing a section of the mission. We shall refer to these<br />

agents as activity agents. Activity agents that are connected<br />

to a superior agent in the hierarchy are referred to as<br />

children of the superior, while the superior agent is the<br />

parent of each child. Agents without children (bottom<br />

level nodes) are referred to as leaf agents, or leaf nodes.<br />

Figure 3 shows an example for a spacecraft rendezvous<br />

and docking mission. Each of the activity agents has four<br />

sub-boxes, corresponding to monitoring, diagnosis,<br />

planning, and execution. Just as for planning, the time<br />

horizons for each activity increases with its level in the<br />

hierarchy, while the detail of its functions decreases.<br />

This process of breaking down a complex problem or<br />

mission into activities or phases is referred to as temporal<br />

decomposition. The process of defining the functionality of<br />

each activity agent is referred to here as functional decomposition.<br />

In this context, the functional decomposition<br />

consists of defining the monitoring, diagnosis, planning,<br />

and execution functions required by each<br />

activity.<br />

Rendez<br />

D P<br />

M E<br />

Burn<br />

D P<br />

M E<br />

D P<br />

M E<br />

Survey<br />

D P<br />

M E<br />

Acquire Insert<br />

D P<br />

M E<br />

Mission<br />

D P<br />

M E<br />

Maneuver<br />

D P<br />

M E<br />

Approach<br />

D P<br />

M E<br />

Maintain Init Final<br />

D P D P D P<br />

M E M E M E<br />

Figure 3. Example hierarchy of activity agents.<br />

The interfaces between parent and child activities in<br />

Figure 3 consist of problem specifications from parent to<br />

child and solution information from child to parent. For<br />

vehicle applications, the problem specification usually<br />

consists of a start state for the child activity, a goal state,<br />

and a set of constraints. Sometimes, the goal state is only<br />

partially specified or constrained, so the child must<br />

return the final state in the solution information.<br />

Solution information may also contain sensitivity data,<br />

resource data, and cost data, etc. At the lowest level, the<br />

interfaces are commands to the GN&C and subsystems.<br />

These commands may be thought of as problem specifications<br />

to the vehicle.<br />

The implementation of these hierarchical mission management<br />

architectures requires a software framework

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!