Graphical Timeline Editing
by Patrick Meyer and John Jaap
National Aeronautics and Space Administration (NASA)
Marshall Space Flight Center, AL 35812
Phone (205) 544-2265 Fax (205) 544-5873
Email: Patrick.Meyer@msfc.nasa.gov
Presented to:
3rd International Symposium on Artificial Intelligence,
Robotics, and Automation for Space (i-SAIRAS 94)
October 18-20, 1994
Jet Propulsion Laboratory
Passadena, California, U.S.A.
ABSTRACT
Graphical Timeline Editing (GTE) will be an integral part of the
experiment scheduling systems used for Spacelab and Space Station. The
Experiment Scheduling Program (ESP), which is currently used for Spacelab
payload operations, is expanding its horizon of capabilities with the
addition of a GTE Clipboard. This new Clipboard will contain algorithms that
provide anticipated information and, in the future, conflict resolution
assistance using a popular click and drag Graphical User Interface (GUI)
that will aid users in making quick, effective, and resource valid
modifications to timelines.
GTE Graphic
KEY WORDS AND PHRASES
- Conflict Resolution
- Graphical Editing
- Rescheduling
- Scheduling
- Space Station
Outline and Cross Reference
- INTRODUCTION
- EDITING
- Activity Selection
- Adding Activities
- Deleting Activities
- Moving Clipboard Activities
- Modifying Activities
- Modifying Crew Usage
- Undoing Modifications
- Assisted Temporal Aligning
- Committing to the Timeline
- USER INTERFACE
- CONFLICT RESOLUTION/PREVENTION
- Visual Aid for Crew Conflicts
- Visual Aid for Temporal Constraints
- Visual Aid for Resource Constraints
- Automatic Assistance to Editing
- SUMMARY
NASA's Experiment Scheduling Program (ESP), which has been used for
approximately 12 Spacelab missions, is being enhanced with the addition of a
Graphical Timeline Editor. The GTE Clipboard, as it is called, was developed
to demonstrate new technology which will lead the development of International
Space Station Alpha's Payload Planning System and support the remaining
Spacelab missions.
ESP's GTE Clipboard is developed in C using MIT's X Windows System ® X11R5
and follows OSF/Motif ® Style Guide Revision 1.2.
Clipboard Concept
In ESP's GTE Clipboard concept, what is in the clipboard is not in the
timeline. This reduces the permutations of potential conflict and allows for
capabilities that would otherwise be too cumbersome or impossible. Activities
to be edited must be moved to the clipboard, edited within the clipboard, and
committed back to the timeline. When desired, a subset of the edited
activities in the clipboard can be committed to the timeline. Activities from
external sources can be added to the clipboard where possible conflicts can
be resolved before they are moved to the timeline.
Editing, the key word in Graphical Time line Editing, is a combination of
rendering the timeline as graphics objects and supporting user manipulation
of those objects. When rendering the data, pixel granularity inherent in
graphic editors is overcome by using a high resolution screen. However, when
manipulating data, the pixel granularity problem is exacerbated in the
clipboard because ESP can have a scheduling horizon of 90 days or more and
simultaneously maintain time accuracies to 1 second a ratio of 1 to 10
million. In addition, users of ESP frequently need to maintain scheduling
granularity at 1 minute. An eloquent solution to both problems was found and
implemented.
The clipboard provides two methods for addressing time
granularity problems. First, time quantization is used to round
modified times to the nearest multiple of a
user-specified constant. During an activity
modification, feedback provides the quantized placement times so
the user is constantly aware of the modified value. Second, a
mechanism which allows the user to make
micro-adjustments is provided.
Micro-adjustments are always made in a quantization unit
even when the unit is smaller than a pixel.
With a solution to the granularity problem in hand, fundamental graphical
editing features such as selecting, adding, deleting, moving, modifying,
undoing, aligning, and commiting back to the timeline can be straightforwardly
implemented.
Activity Selection
For the clipboard, three methods and two modes of selection were identified.
The methods include selecting the lowest integral part of a scheduled
activity (a step), selecting a whole activity (a performance), and selecting
all steps within a user-bounded box. For each of these methods,
the modes of selection are additive (extending) and toggle.
Selection order may be relevant for some manipulations. For instance, to
temporally align, both the activity which is aligned to and the activity
which is aligned with must be specified. By using selection order, the
alignment can be made consecutively; i.e. a successor can align with its
predecessor.
Selected activities are rendered with angled appendages because it provides
optimum view ability for overlapping and/or extremely small steps. Figure 1
below illustrates the usability of this method. Steps 1, 2, and 4 are shown
as selected.

Figure 1. Selected Activity.
Adding Activities
Activities can be added to the clipboard by moving them from the current
timeline to the clipboard, copying from the current timeline, importing from
an external timeline, including a template of a model, using the automatic
scheduler, and keying in data.
Each of these methods has unique applications and advantages. Activities which
could not be imported directly to the timeline may be imported to the
clipboard, repaired, and then moved to the timeline. Adding a template of a
model to the clipboard allows a user to start with a generic form of model and
massage it to fit the timeline constraints. Adding to the clipboard via
automatic scheduling provides conflict-free activities in the clipboard to
which the user can make minor adjustments before moving them to the timeline.
However, auto-scheduling into the clipboard checks constraints
only against the timeline and not against the clipboard.
Deleting Activities
Activities may be deleted from the clipboard. After deletion they may be
restored until they are purged or until the entire contents of the clipboard
is successfully committed to the timeline. As a shortcut, activities may also
be deleted directly from the timeline.
Moving Clipboard Activities
Moving activities is the most used manipulation of a timeline and therefore
should be robust and easy to use. In the clipboard, moving selected steps
is initiated with a mouse button press while the pointer is within one of the
selected steps. The initiating step's new start time is fed back to the user
during the modification to indicate where the step will be placed. Other
selected steps are also moved.
Modifying Activities
After moving or adding activities, small conflicts usually arise that require
simple modifications for them to validly schedule as a group. For example,
activity duration changes will routinely introduce overlap conflicts. By
proper definition of activity duration changes, the user can prevent overlap
conflicts. The definition chosen for the clipboard takes all succeeding (for
modified start time) or all preceding (for modified end time) activities which
are selected and shifts them to maintain the original time delay between the
changed activity and any other affected activity. In Figure 2 below, the
duration of B was changed causing C to be shifted.

Figure 2. Duration Change.
However, when changing the duration of an activity, the durations of
overlapping selected steps are also modifed rather than being shifted. This
overlap may or may not be due to scheduling concurrency constraints (see
Figure 3 below).

Figure 3. Overlapping Change.
Modifying Crew Usage
A portion of the display can be used to display crew usage data for both the
timeline and clipboard. Graphical manipulations within this area can remove,
add, or reassign crew on an activity.
Undoing Modifications
Undo, as the name implies, allows the user to undo the last edit made to the
clipboard. The last edit may be either a simple (one item) or compound
(multiple items) edit. In addition, undo can also restore activities to their
unedited state until they are committed to the timeline.
Assisted Temporal Aligning
The clipboard can align selected activity
steps or activity performances in four ways:
Steps are aligned consecutively in the order in which they were selected.
Committing to the Timeline
As stated before, activities in the clipboard are not in the timeline and must
be committed to the schedule. During committal to the time line, activities
are validated and any conflicts that the user has not resolved are reported.
If no conflicts are present, the activities are moved from the clipboard to
the timeline with no report.
While building the basic editing commands into a new timeline editor, concerns
of leaving behind old, but good, ways of editing arose. Therefore, the
clipboard brings forward text-based editing features similar to ESP's previous
timeline editing buffers. These include a table and command line which allow
the user to enter specific values for important aspects of an activity and
enter commands that can affect ranges of activities.
Tailorable Displays
Each Spacelab mission ESP supports has different objectives and resource
utilization. To accomodate the varying demands on the clipboard, a
tailorable display allows users to hone in on the information which is
important to the type of missions they are scheduling. Some of the options
included are -
The biggest drawback with many manual editors is their guess-again approach.
When the user moves an activity, the scheduler response is to report resource
constraint and scheduling conflicts and the user is forced to guess again
where the activity can be validly placed to avoid the conflicts. The
clipboard not only provides a report when edits are commit ted, it also
displays graphics information to help the user eliminate existing conflicts
and to avoid introducing conflicts when activities are manipulated. When
fully implemented, the clipboard will also provide automatic scheduling
assistance.
Visual Aid for Crew Conflicts
Since ESP enforces the Spacelab and International Space Station Alpha ground
rule that a crewmember cannot be scheduled to do more than one task at a
time, the clipboard provides a crew timeline area where the crew timeline
data is displayed, the crew clipboard data is overlayed, and any conflicts are
highlighted. Users can readily see where crewmembers are available or are in
conflict and can modify crew usage for activities in the clipboard.
Visual Aid for Temporal Constraints
An activity can have temporal constraints relative to other performances of
the same model or other models and can have fixed windows in which it must be
performed. While other displays in ESP can show the data which determines
where the temporal constraints are met, the clipboard can compute the
feasibility windows and present them to the user so that temporal conficts
can be avoided or removed. The clipboard uses an X Windows work procedure
to compute and display these computationally-intense windows. Work
procedures are executed when no events are pending execution; i.e., they use
idle computer time. The clipboard re-launches the work procedure
whenever the timeline is changed; therefore, the windows remain current.
Visual Aid for Resource Constraints
Each step of an activity can have many constraints which limit where on the
timeline a step can be validly placed. In addition to crew requirements,
these constraints include other shared resources and windows of opportunity.
For each step, the clipboard can compare each requirement to the current
timeline state, consolidate all the individual results, and present
feasibility windows on a single line of the display. Windows which are not as
long as the minimum step duration are not shown. By adhering to the
feasibility windows, the user can easily avoid introducing conflicts or remove
existing conflicts. A work procedure is also used for these feasibility
windows. Figure 4 shows a step which is too long for its nearest feasibility
window but which will fit within the next window.

Figure 4. Feasibility Windows.
Users may request that feasibilities for a step be presented on an individual
requirements basis. This separate display will show each requirement of the
selected step and the time periods when that requirement is met. The
composite feasibility windows are also shown.
Automatic Assistance to Editing
As an enhancement of the manual editing process, the clipboard provides
automatic assistance. In this mode, the user selects a performance that is
in the clipboard but conflicts with some constraints. The user specifies a
horizon over which scheduling is to take place, and an automatic scheduler
adjusts step start times, durations, and crew assignments to avoid conflicts.
An explanation facility which graphically explains what the scheduler did
allows the user to understand what conflicts were addressed or why a solution
was not found.
A future enhancement of automatic rescheduling
is to allow the user to specify another
horizon over which the program may
automatically adjust activities already on the
timeline. This process may proceed without
user interaction, or user approval may be required
for every change to the timeline. There
are several strategies for directly modifying the
existing timeline:
Advanced techniques such as simulated annealing are also candidates for
automatic assistance.
The X Windows Graphical Timeline Editor currently being added to the
Experiment Scheduling Program is based on a clipboard concept. Because
activities which are in the clipboard are not on the timeline, robust
capabilities which may not have been otherwise practical are being
incorporated. The GTE Clipboard is being implemented using Motif® and other
widgets and includes a complete suite of graphic manipulation features and a
complete suite of timeline editing features relative to Spacelab and
International Space Station Alpha. The GTE Clipboard is much more than a
guess-again editor in that it provides graphical assistance for conflict
resolution. Future plans will implement automated conflict resolution.