Optimized Contact Scheduling for NOAA Search and Rescue
Overview 2 Orbit Logic Proprietary
Not Just Clouds NOAA satellites don’t just collect weather data NOAA satellites also assist in Search and Rescue 3 Orbit Logic Proprietary
What is SARSAT? NOAA operates the Search And Rescue Satellite Aided Tracking (SARSAT) system to detect and locate distress signals around the world 4 Orbit Logic Proprietary
Importance of Maintaining Contact Satellite data is only useful if it can be sent to a ground station via a space to ground contact Maintaining consistent contact means more data is available 5 Orbit Logic Proprietary
The Problem For the best chance at finding distress signals, the space to ground contact schedule for the GPS satellites must be optimized to maintain a low DOP 6 Orbit Logic Proprietary
What is DOP? DOP Dilution of precision Measurement of error propagation when making position measurements via satellite DOP values range from 1 to ∞ 1 is ideal 2-5 is reliable for navigation 5-10 is moderately reliable for some calculations 10-20+ is poor 7 Orbit Logic Proprietary
System Design 8 Orbit Logic Proprietary
The Team Orbit Logic Isabel Martinez, Zachary Roberts, Ella Herz NOAA Jesse Reich, Larry LeBeau, Kris Tai AGI Chris Mulcahy, Reggie Pforter, Jens Ramrath 9 Orbit Logic Proprietary
The Solution Orbit Logic, in collaboration with NOAA and AGI, developed a software suite to solve this problem: STK Coverage tool for DOP calculations Scheduler Manages scheduling resources Deconfliction for scheduling tasks Plugin Code (python / C#) Manages creation of STK scenario Tracks DOP values Adjusts scoring of tasking opportunities based on DOP 10 Orbit Logic Proprietary
Inputs and Outputs Inputs Satellite orbit data Ground station location and obscuration masks Ground targets / Areas of Regard (AOR) Outputs (UI, .csv, keyword/value text files) Contact schedules 11 Orbit Logic Proprietary
Workflow SARSAT User service Schedule configures performs generated inputs optimization Access and DOP Reports 12 Orbit Logic Proprietary
The First Approach 13 Orbit Logic Proprietary
Proof of Concept Did initial prototyping demo using a python script Controlled STK and Scheduler via API commands Created tasks in Scheduler based on satellite to ground station access times Queried STK for DOP reports, adjusted task timeslot scoring in Scheduler Used default algorithms (One-Pass) DOP optimization done in script, not in Scheduler itself Contact tasks were broken up into 9 minute chunks Each satellite to ground contact was a minimum of 9 minutes Original optimization of schedule took 11 minutes from start to finish Original script was not parallelized Used an average DOP value for several targets across continental US 14 Orbit Logic Proprietary
Original Demo Screenshots 15 Orbit Logic Proprietary
How’d It Do? Pros Okay performance (took 11 minutes for whole optimization run) Some optimization based on good satellites to use for good DOP Cons Timeslot scores were all set to 100 (highest) as long as they used any of the best satellites Did not include actual DOP values for timeslot scoring Not easily configurable Points in US had to be chosen prior to scheduling Doesn’t check if best satellites actually have access to a ground station 16 Orbit Logic Proprietary
The Second Attempt 17 Orbit Logic Proprietary
Goals For This Attempt After Orbit Logic received the official statement of work, it was time to make some updates to the proof of concept Goals for the first round of updates included: Checking that there was actually access between the ground stations and the chosen best satellites Tracking the actual computed DOP value for better use in optimization Creating a mesh of points based on user-defined AOR instead of selecting all points manually Converting python to C# for performance purposes Also, NOAA said that the scheduling system no longer had to schedule LEO contacts Instead, Scheduler will ingest the LEO contact schedule The LEO contact schedule would become windows of unavailability on the resources 18 Orbit Logic Proprietary
Script Updates Of the previously listed goals, all were accomplished In the transition from python to C#, Orbit Logic also updated the following: DOP value now tracked for each point, and the average DOP value across all points was used for scoring timeslots Made input parameters configurable outside of code Refactored method used for setting access restrictions in STK which boosted performance 19 Orbit Logic Proprietary
But Was It Better? Pros Very fast performance (~2 minutes) Optimization now based on actual DOP values and best set of available satellites Easily configurable Cons Poor coverage in some locations Antennas not fully scheduled for contacts throughout the entire scheduling period 20 Orbit Logic Proprietary
Closing the Gaps 21 Orbit Logic Proprietary
What Was Going Wrong? NOAA’s analysis showed there was poor DOP coverage near Alaska and the dateline But in the schedule itself, it appeared all satellites that had access to that region were already contacting the ground station for the full time of access Needed to investigate the problem setup in Scheduler 22 Orbit Logic Proprietary
Fixing Access The first problem was related to how the access time constraint was used in STK The access check added in the previous major update would send all access windows per satellite into STK separately STK would in turn intersect all of the provided access times This overly constrained the tasks to only occur if all ground stations had access to a given satellite Changed the access constraint Access windows were unioned prior to going to STK Now it allows access as long as any one of the ground stations can see the satellite 23 Orbit Logic Proprietary
Allowing multiple Satellite Contacts NOAA pointed out that satellites were allowed to contact multiple ground stations at a time Original implementation assumed each satellite could only contact 1 ground station at a time (ie. accommodation = 1) Updated the scheduling method First algorithm run assumes all satellites have accommodation = 1 Locks all assignments in place from first algorithm run Second algorithm run assumes all Blue = Locked tasks from first run satellites have accommodation = unlimited Green = Assigned tasks from second run Second algorithm run fills in the gaps This method prevents contact over- assignment for satellites 24 Orbit Logic Proprietary
How Are the Results Now? Pros Much longer contacts DOP improvements Cons Gaps that are less than the minimum contact duration length are still unscheduled 25 Orbit Logic Proprietary
Discussion 26 Orbit Logic Proprietary
Further Work Improvements needed to resolve the small gaps Could be problem setup updates in Scheduler Could be algorithm updates for Scheduler 27 Orbit Logic Proprietary
Conclusions Final software suite does create optimized contact schedules based on DOP Needed to iterate on the problem setup many times based on results from testing Each iteration improved the DOP optimization Final software suite is easy to use as well Minimal user involvement needed to create optimized schedules Scheduling method could be applied for any system to optimize contact schedules for DOP Configurability allows users to run analysis for any satellite constellation, ground station and AOR combination 28 Orbit Logic Proprietary
Rescues This Year 29 Orbit Logic Proprietary
Contact Us Orbit Logic 7852 Walker Dr., Suite 400 Greenbelt, MD 20770 www.OrbitLogic.com Email: Isabel.martinez@orbitlogic.com sarsat@orbitlogic.com Phone: (301) 982-6232 x7103 30 Orbit Logic Proprietary
Backup 31 Orbit Logic Proprietary
Acronyms AGI LEO Low Earth Orbit Analytical Graphics Incorporated NOAA AOR National Oceanographic and Atmospheric Administration Area of Regard PDOP DOP Position Dilution of Precision Dilution of Precision SARSAT GEO Search And Rescue Satellite Geostationary Orbit Aided Tracking USMCC GPS United States Mission Control Global Positioning System Center 32 Orbit Logic Proprietary
Glossary Accommodation Number of tasks a resource can support simultaneously Resource Any object or entity required for schedule creation (ex. a satellite) Task An action in the schedule that requires resources to complete (ex. satellite contact) Timeslot Windows of time in which task assignments may occur. They are constrained by access and resource availability times 33 Orbit Logic Proprietary
Recommend
More recommend