NASA Logo, National Aeronautics and Space Administration

Planner and Scheduler

              <img src="/m/project/remote-agent/images/psbig.png" alt="Cartoon" style="float: left;" height="172" width="200">
                Planning and scheduling is a complicated part of
                spacecraft control. Planning, for our purposes, can be
                thought of as determining all the small tasks that must
                be carried out in order to accomplish a goal.  Let's
                say your goal is to buy a gallon of milk.  It may
                sound like a simple task, but if you break it down, there
                are many small tasks involved: obtain keys, obtain
                wallet, start car, drive to store, find and obtain milk,
                purchase milk, etc. Planning also takes into account
                rules, called constraints, which control when certain
                tasks can or cannot happen.  Two of the many
                constraints in this example are, you must obtain your
                keys and wallet before driving to the store and you must
                obtain the milk before purchasing it.
              <p>Here is what a simple plan for buying milk at the store might look like:</p>
              <img src="/m/project/remote-agent/images/diagram1.gif" height="162" width="486">
                Scheduling can be thought of as determining whether
                adequate resources are available to carry out the plan.
                Two resources that scheduling would have to take into
                account for our example above are fuel and time. If it
                takes two gallons of gas to get to the store and back and
                your car only has one gallon, you must develop a plan
                which includes a stop at the gas station. If it takes 15
                minutes to drive to the store, the store closes at 10:00,
                and it is currently 9:30, you must also take that time
                constraint into account when scheduling your tasks. 
              <h2>Benefits of Remote Agent's Planner/Scheduler</h2>
                On an autonomously controlled spacecraft like Deep
                Space One (DS1), creating plans and schedules is the work
                of the Planner/Scheduler (PS) component of Remote
                Agent. Mission Control engineers program Remote
                Agent with the general goals of the mission, and PS
                designs the plans to achieve those goals.  A <strong>goal-based</strong>,
                on-board planner has many benefits. PS can create plans
                that are more <strong>flexible</strong> and better able to take
                advantage of <strong>unexpected opportunities</strong> than plans
                created by ground controllers.  Leaving planning and
                scheduling to Remote Agent's PS also helps <strong>decrease costs</strong>;
                planning and scheduling normally is performed through
                communication with the Deep Space Network (DSN) on the
                ground, and this communication time is very costly. 
                Less expensive missions mean more missions and more
                scientific knowledge gained. 
              <h2>How Planner/Scheduler Works</h2>

PS creates detailed plans of what must happen during a given time period, called a "schedule horizon." The time periods are usually about one week long. The following is a summary of the work of PS:

  • Receive a request from Smart Executive (EXEC) for a plan for the next schedule horizon.
  • Obtain mission goals for the next schedule horizon, programmed by mission controllers.
  • Break goals into smaller tasks, called tokens, needed to accomplish the goals.
  • Gather needed information from "planning experts," pieces of flight software outside Remote Agent.
  • Determine rules which govern when certain tokens can or cannot take place.
  • Generate the plan and send it to EXEC.

More details about PS in action.

First Gov logo
NASA Logo -