1 Jet Propulsion Laboratory California Institute of Technology Oct 23 2008 Save the Bits! Scheduling NASA’s Deep Space Network Mark D. Johnston Jet Propulsion.

Slides:



Advertisements
Similar presentations
Project management software is a term covering many types of software, including scheduling, cost control and budget management, resource allocation,
Advertisements

Design by Contract.
ECHO Test Track Pro User’s Guide
Home This training presentation is designed to introduce the Residency Management Suite to new users. This presentation covers the following topics: Login.
What is a Database By: Cristian Dubon.
Decision Analysis Tools in Excel
Scheduling.
6 th Annual Focus Users’ Conference 6 th Annual Focus Users’ Conference Scheduling Requests and Request Reports Presented by: Sara Sayasane Presented by:
Optimizing Windows Vista Performance Lesson 10. Skills Matrix Technology SkillObjective DomainObjective # Introducing ReadyBoostTroubleshoot performance.
An Approach to Evaluate Data Trustworthiness Based on Data Provenance Department of Computer Science Purdue University.
1RADAR – Scheduling Task © 2003 Carnegie Mellon University RADAR – Scheduling Task May 20, 2003 Manuela Veloso, Stephen Smith, Jaime Carbonell, Brett Browning,
Overview of Software Requirements
Oct. 30, 2003CS WPI1 CS 509 Design of Software Systems Lecture #9 Thursday, Oct. 30, 2003.
Outlook Lesson 6 Managing Calendars and Tasks Microsoft Office 2010 Advanced Cable / Morrison 1.
Phase II Instructor: Dr. Lawrence Chung Rachel Bock, Ruben Cavazos, Chih-Lin Cheng, Victor Isbell, Swathi Kandimalla, Nikhil Mishra, Amy Polcari, Ramon.
Refining Your Project Plan Lesson 4. Skills Matrix SkillsMatrix Skill Apply a task calendar to an individual task Change task typesChange scheduling formula.
Ch 11 Managing System Reliability and Availability 1.
A Product of Copyright © ANGLER Technologies AURA – Quality Compliance Monitoring & Process Management System.
S/W Project Management
Open source administration software for education research administration Awards Module Susan Mundt, University of Arizona KCC Award Subcommittee Co-Lead.
Day 2.  Questions??  Blackboard updates  IP Projects discussions  Why project management??  Assignment 1 posted in Blackboard ◦ Due in one week;
Lecture 1 Saima Gul. What is a Project? A Project is a job that has a beginning and an end (time), a specified outcome ( scope) at a stated level of quality.
1 Jet Propulsion Laboratory California Institute of Technology IWPSS 2006 Multi-Objective Scheduling for NASA’s Future Deep Space Network Array Mark D.
Requirements Review – July 21, Requirements for CMS Patricia McBride July 21, 2005.
Distributed Network Scheduling Bradley J. Clement, Steven R. Schaffer Jet Propulsion Laboratory, California Institute of Technology Contact:
At A Glance VOLT is a freeware, platform independent tool set that coordinates cross-mission observation planning and scheduling among one or more space.
1 Adaptive Problem-Solving for Large-Scale Scheduling Problems: A Case Study by Jonathan Gratch and Steve Chien Published in JAIR, 1996 EARG presentation.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
Microsoft ® Office Outlook ® 2003 Training See and share multiple calendars CGI presents:
Windows Vista Inside Out Chapter 22 - Monitoring System Activities with Event Viewer Last modified am.
The Deep Space Network Scheduling Problem Brad Clement, Mark Johnston Artificial Intelligence Group Jet Propulsion Laboratory California Institute of Technology.
Probabilistic Reasoning for Robust Plan Execution Steve Schaffer, Brad Clement, Steve Chien Artificial Intelligence.
Approaching a Problem Where do we start? How do we proceed?
Lecture 7: Requirements Engineering
Microsoft ® Office Outlook ® 2007 Training Calendar basics [Your company name] presents:
Instructore: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Requirement engineering.
11 Version Control Systems Mauro Jaskelioff (originally by Gail Hopkins)
Shared Memory Consistency Models. SMP systems support shared memory abstraction: all processors see the whole memory and can perform memory operations.
March 2004 At A Glance autoProducts is an automated flight dynamics product generation system. It provides a mission flight operations team with the capability.
Steps for posting a training (single event or series) to the regional calendar R&C Regional Calendar.
MBAT User Workflows View an Atlas Open Data Upload Data Run a Query –Search Data Further Examination Microarray Data Further Examination of 2D Data –Search.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with the IBM Rational Software Architect, V7.5 Module 15: Traceability and Static Analysis.
Project Setup and Execution For PMPlan Enterprise Presented by AlNik Solutions Copyright ©
Considerations for the Service Package Request/Service Package Recommended Standard October 2013 San Antonio, TX John Pietras Global Science and.
Design of a Deep Space Network Scheduling Application Bradley J. Clement, Mark D. Johnston Jet Propulsion Laboratory, California Institute of Technology.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
3/12/2013Computer Engg, IIT(BHU)1 OpenMP-1. OpenMP is a portable, multiprocessing API for shared memory computers OpenMP is not a “language” Instead,
National Aeronautics and Space Administration Jet Propulsion Laboratory California Institute of Technology Pasadena, California CLARREO GPS RO/AJM-JPL.
TEAM FOUNDATION VERSION CONTROL AN OVERVIEW AND WALKTHROUGH By: Michael Mallar.
HighImpactSoft 2010 Organizing a Better Future. Agenda Specify Goals ScopeDefinitions Process Model Preliminary Requirements Issues and solutions TraceabilityPrototype.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
National Aeronautics & Space Administration European Space Agency & 1 Modulation and Coding: Draft IOAG Resolutions to CCSDS September 9, 2008 Les Deutsch.
Information Systems and Network Engineering Laboratory I DR. KEN COSH WEEK 1.
CSCE 240 – Intro to Software Engineering Lecture 3.
CIS-NG CASREP Information System Next Generation Shawn Baugh Amy Ramirez Amy Lee Alex Sanin Sam Avanessians.
Distributed Control and Autonomous Systems Lab. Sang-Hyuk Yun and Hyo-Sung Ahn Distributed Control and Autonomous Systems Laboratory (DCASL ) Department.
Ocean Observatories Initiative OOI CI Kick-Off Meeting Devils Thumb Ranch, Colorado September 9-11, 2009 Observation Planning and Autonomous Mission Execution.
Overview Rental Quote Overview
Innotas Reports, Dashboards, and Filters
Tutorial 5: Working with Excel Tables, PivotTables, and PivotCharts
Contractor Mode Administration Tab Overview
Service Management Time Slots
Computer Engg, IIT(BHU)
Introduction to Computers
Process Description and Control
Process Description and Control
Innotas Reports, Dashboards, and Filters
and Forecasting Resources
Pacific International Maritime Conference 2019
Presentation transcript:

1 Jet Propulsion Laboratory California Institute of Technology Oct Save the Bits! Scheduling NASA’s Deep Space Network Mark D. Johnston Jet Propulsion Laboratory — California Institute of Technology 4800 Oak Grove Dr., Pasadena CA

2 Jet Propulsion Laboratory California Institute of Technology Oct Overview The Deep Space Network – Overview –Users –Assets –Scheduling Drivers –Process Automated scheduling software: SSAS = Service Scheduling Application Software Conclusions

3 Jet Propulsion Laboratory California Institute of Technology Oct The Current Deep Space Network Current DSN comprises –3 sites roughly equally spaced in longitude –26m, 34m, 70m antennas, at each site DSN supports all planetary missions + some earth orbiters Drivers on evolution include: –more missions (3x by 2030) –data rates and volumes increasing by 100x by 2030 –manned missions place stringent availability and reliability requirements –more cluster (multi-spacecraft) missions –reduce costs (operations and maintenance) –maintain high level of 24x7 support

4 Jet Propulsion Laboratory California Institute of Technology Oct Goldstone

5 Jet Propulsion Laboratory California Institute of Technology Oct DSN Scheduling Process

6 Jet Propulsion Laboratory California Institute of Technology Oct User Requirements User requirements drive the scheduling of the DSN –missions place a variety of constraints and preferences into their requirements for communications support data downlinks command uplinks navigation critical events s/c emergencies –other user categories include radio science radio astronomy

7 Jet Propulsion Laboratory California Institute of Technology Oct Tracks, Viewperiods & Activities A track is an allocation of an antenna to a mission over some time interval A viewperiod is the time interval when a spacecraft is visible to an antenna An activity is a track plus setup and teardown time

8 Jet Propulsion Laboratory California Institute of Technology Oct Constraints No two spacecraft can use antenna at same time –except MSPA where antenna points to both (2 at most) and uplinks to at most one Spacecraft must be in view of antenna –generally, centered is better At Goldstone, no track/activity may be scheduled where two other tracks/activities start within 15 minutes –except the four Cluster s/c At other complexes, no two may start within 5 minutes of each other U/L D/L U/L D/L MEX MRO viewperiod track

9 Jet Propulsion Laboratory California Institute of Technology Oct SSAS: Service Scheduling Application S/W

Requirements-Driven vs. Activity-Oriented Scheduling users create edit scheduled activities conflicts reports displays ACTIVITY-ORIENTED SCHEDULING

Requirements-Driven vs. Activity-Oriented Scheduling users create edit scheduled activities conflicts reports displays ACTIVITY-ORIENTED SCHEDULING Why consider requirements-driven scheduling? efficiency: one requirement can generate many activities  major labor savings enables automated support for conflict resolution

Requirements-Driven vs. Activity-Oriented Scheduling scheduling requirements & constraints users create edit scheduled activities conflicts reports displays create edit check/validate expand resolve conflicts improve quality override reqts violations find opportunities REQUIREMENTS-DRIVEN SCHEDULING

Requirements-Driven vs. Activity-Oriented Scheduling scheduling requirements & constraints users scheduled activities conflicts reports displays create edit check/validate expand resolve conflicts improve quality override reqts violations find opportunities REQUIREMENTS-DRIVEN SCHEDULING role of scheduling engine create edit

Requirements-Driven vs. Activity-Oriented Scheduling scheduling requirements & constraints users create edit scheduled activities in multiple private workspaces conflicts reports displays create edit check/validate expand resolve conflicts improve quality override reqts violations find opportunities REQUIREMENTS-DRIVEN SCHEDULING role of scheduling engine

Scheduling Engine Functionality Categories CategoryDescription Conflict CheckCheck schedule for conflicts per DSN standards (down to equipment instances) Requirement – error checkCheck requirement for consistency, completeness, correctness, feasibility Requirement – satisfaction checkCheck requirement vs tracks to see if satisfied (also identify unexpanded requirements) Requirement – expand (single)Expand one requirement into tracks on a schedule, try to avoid conflicts, respect locked tracks, respect mission priorities Requirement – expand (multiple)Expand >1 requirement into tracks on a schedule (same conditions as above) Schedule inquiryAnswer query about (a) the state of the schedule or, (b) additionally, about potential ways to satisfy a specified requirement Resolve conflicts — automaticGiven a schedule with conflicts and filters (time/mission/assets, etc.), use requirement flexibility to find a way to remove conflict(s) Resolve conflicts — generate optionssame input, but generate multiple different suggestions and return them to the user Improve schedule qualitysame, but focused on improving schedule quality, not conflicts: reduce gaps, adjust tracks to preferred timing & assets, etc.

16 Jet Propulsion Laboratory California Institute of Technology Oct Collaborative Conflict Resolution with Private Workspaces

R1 R2 R3 expanded requirements unexpanded requirements scheduletracks reference to parent schedule Schedule – master or workspace schedule a workspace schedule has a time bound and a parent schedule from which it originated Track or activity– associated with a single schedule, but possibly multiple requirements Requirement – associated with multiple tracks, and possibly multiple schedules can be in expanded or unexpanded states

Scenario: Conflict exists in master schedule two users: U0, U1 x conflict ? requirements violation T1 T0 U1 – R1 U0 – R0 master schedule x x

child (private workspace) schedule U0 creates a private workspace to work the conflict activities are copied but (in this case) requirements are not) x conflict ? requirements violation U1 – R1 U0 – R0 master schedule T1 T0 x x T1’ T0’ x x

child (private workspace) schedule U0 makes changes to resolve the conflicts, here moving both conflicting tracks x conflict ? requirements violation U1 – R1 U0 – R0 master schedule T1 T0 x x T1’ T0’

child (private workspace) schedule U0 invites U1 to review and approve the changes U0 can give U1 write access to the schedule, to make a counter proposal U0 and U1 can view the workspace simultaneously while on audio/video chat to discuss resolution: changes made by one are visible to the other U1 could create their own workspace schedule to explore additional alternatives, and invite U0 to participate U0 or U1’s changes could introduce requirement violations, which either could resolve or choose to ignore x conflict ? requirements violation U1 – R1 U0 – R0 master schedule T1 T0 x x T1’ T0’ Proposal: here is a suggestion for the DOY 145 conflict… Concur:  U0 ☐ U1 Proposal: here is a suggestion for the DOY 145 conflict… Concur:  U0 ☐ U1

child (private workspace) schedule Once concurrence is reached, the private schedule can be merged back into the parent to resolve the conflict by either U0 or U1 since both have concurred If a change to a U1-owned track is made after U1 concurrence but before merging, SSAS knows to clear the concurrence flag and re-request x conflict ? requirements violation U1 – R1 U0 – R0 master schedule T1 T0 T1’ T0’ Proposal: here is a suggestion for the DOY 145 conflict… Concur:  U0  U1 Proposal: here is a suggestion for the DOY 145 conflict… Concur:  U0  U1 merge

23 Jet Propulsion Laboratory California Institute of Technology Oct Scheduling Requirements and Constraints

24 Jet Propulsion Laboratory California Institute of Technology Oct Requirements and Constraint Language Instead of “atomic” detailed requirements, define a “request” as a pattern of items or “requirements” Adopt familiar “recurrent appointment” metaphor for specifying repetitions while allowing individual exceptions Identify ways to hide detail unless needed, yet still support complexity when truly required Utilize service configurations/aliases to specify antenna equipment choices/preferences

26 Jet Propulsion Laboratory California Institute of Technology Oct

27 Jet Propulsion Laboratory California Institute of Technology Oct Repeated requests and events Repeated requirement support, e.g. repeat 4 more times every other week Complex event support: –arbitrary interval intersection, optionally inverted –expand or contract windows, then used to constrain where tracks may be allocated –convert viewperiods into constraining event windows

28 Jet Propulsion Laboratory California Institute of Technology Oct Resolving Conflicts/Violations The engine considers as distinct conflicts (on tracks) vs. violations (of requirements) –there are basic strategies for focusing on each of these and trying to re-layout requirements to resolve conflicts, fix unsatisfied requirements –these strategies exploit flexibilities in the requirements (start time duration, antennas, splitting, gaps, overlaps...) to find good allocations –although a good starting point, there remains work to do on more sophisticated conflict/violation resolution techniques

29 Jet Propulsion Laboratory California Institute of Technology Oct Expanding Requirements The engine expands requirements to tracks as follows: –try to find conflict- & violation-free allocations –if can’t find any, try a series of “fallbacks”: temporarily ignore lower priority tracks, equal priority tracks, all other tracks relax requirement parameters: timing relationships, gap/overlap parameters, event windows,... ultimately considering only viewperiods Goal: always try to return something “reasonable” rather than nothing at all (sometimes this can be very hard!)

30 Jet Propulsion Laboratory California Institute of Technology Oct Performance Conducted scaling performance test on 6-month schedules with excellent results: roughly linear time and memory usage –~10s/week for schedule generation, ~15Mb week memory consumption –scaling for a full DSN schedule size appears reasonable –no performance optimization has been conducted to date

31 Jet Propulsion Laboratory California Institute of Technology Oct