1 / 93

Satellite Mission Scheduling With Dynamic Tasking

Satellite Mission Scheduling With Dynamic Tasking. University of Colorado at Denver and Health Sciences Center Math Clinic, Spring 2006. Presentation Outline. Problem Description Hybrid Double Chromosome Genetic Algorithms Dynamic Scheduling Methods Top Priority Path Dependent Algorithm

elkins
Download Presentation

Satellite Mission Scheduling With Dynamic Tasking

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Satellite Mission Scheduling With Dynamic Tasking University of Colorado at Denver and Health Sciences Center Math Clinic, Spring 2006

  2. Presentation Outline • Problem Description • Hybrid Double Chromosome Genetic Algorithms • Dynamic Scheduling Methods • Top Priority Path Dependent Algorithm • Scatter Search/Path Relinking • Summary/Conclusions • Future Work

  3. Satellite Mission Scheduling • Satellite is equipped with camera for photographing earth-bound targets. • Thousands of task requests... • ...but only a few hundred can be performed. • Problem: Determine • which tasks to perform • and when to perform them. • Constraints: • tasks can’t overlap. • tasks have time windows of opportunity • Features • order dependent slew time • tasks are prioritized.

  4. Tasks • Associated variables • time window, preferred vs. effective • priority (0-99) • duration • Monitoring vs. Simple task Preferredwindow E f f e c t i v e w i n d o w

  5. Monitoring Tasks • Require a specified number of revisits for image recapturing at given target • Visits must occur at relatively evenly-spaced intervals • A minimum and maximum number of revisits is given • If revisits < minimum, the monitoring task is not considered “completed”

  6. The Schedule • 2 Common Ways to Think of a Schedule • Temporally (timeline) • Geographically (nodes and arcs) Task 3 Slew Task 1 Slew Task 7 Slew Task 2 Slew Task 5 Task 4 Task 8 2 3 slew time 5 6 1 4 7 8

  7. Scheduling - Objectives • Maximize number of tasks scheduled (images collected). • Collect as many high priority tasks as possible. • Be able to address incoming requests (dynamic tasking)

  8. Dynamic Scheduling • Insert new tasks into initial schedule (on the fly) • Must adjust remainder of schedule. 2 3 5 6 1 4 7 8 ? New task ? ? Task 3 Slew Task 1 Slew Task 7 Slew Task 2 Slew

  9. Team 1: A Hybrid Double Chromosome Genetic Algorithm Approach to the Satellite Scheduling Problem Cliff Bainter, Nima Lekmine, Jeremy Noe, Leslie Quinn, Whitney Rust, Dmitriy Vassilyev Math Clinic, Spring 2006

  10. Outline • Double Chromosomes and Scheduler • Genetic Algorithms Overview • Hybrid GA Overview • Future Work • Conclusion

  11. Solving The Satellite Mission Scheduling Problem • Combinatorial problem / NP-Hard • There are many ways to approach this problem using heuristic algorithms involving permutation vectors • Based on promising findings of the spring '05 Math Clinic we chose to implement a Genetic Algorithm to solve the problem • We used an approach that addresses the optimization of two things at once, priority and scheduling (hybrid).

  12. Task List (Next Priority) New Population Best Fit Chromosome Priority Order TimeOrder Mutation Scheduler Cross-Over Evaluator Current Population Selection Hybrid Double Chromosome GA Approach

  13. Chromosome1 Chromosome2 Scheduler Our Approach to the Satellite Problem: Hybrid Double Chromosome • Double (Parallel) Chromosomes • two chromosomes simultaneously run through the GA • Chromosome 1: • represents the order that the scheduler will attempt to insert tasks into the schedule. • Chromosome 2: • represents the chronological ordering of tasks (whether or not they are actually scheduled). • e.g. if tasks i and j are scheduled, they will occur in the order they appear in this chromosome. • Scheduler • takes information from both chromosomes to develop optimal schedule • fitness of double chromosomes measured by schedule evaluator

  14. Scheduler Priority Order Chromosome Time Order Chromosome 2 2 7 10 4 5 10 4 7 5 2 Start End Start End 2

  15. Scheduler Priority Order Chromosome Time Order Chromosome 2 7 7 10 10 4 4 5 5 10 4 7 5 2 Start Start 2 End 7

  16. Scheduler Priority Order Chromosome Time Order Chromosome 2 7 10 10 10 4 4 5 5 10 4 7 5 2 Start Start 7 2 End 10

  17. Scheduler Priority Order Chromosome Time Order Chromosome 2 7 10 10 4 4 4 5 5 10 4 7 5 2 Start 10 7 2 End 4 7

  18. Scheduler Priority Order Chromosome Time Order Chromosome 2 7 10 10 4 4 4 5 5 10 4 7 5 2 Start 10 7 2 End 5 2

  19. Scheduler • Uses input from both chromosomes to build schedule • Selects from priority chromosome first • Attempts to insert into schedule in order specified by time-order chromosome • Schedules each task as early as possible • Shifts already scheduled tasks as needed, but does not remove already scheduled tasks • Resulting schedule is evaluated, and this becomes the fitness of the chromosome pair • Scheduler ensures that all possible chromosome pairs correspond to a feasible schedule

  20. Evaluator (delete?) • Once schedule is built it is evaluated • Two Implementations • GA specific • Uses lexicographical ordering based on last priority iteration • General • Compares two schedules using both lexicographical ordering and penalizes for scheduling outside preferred time

  21. Evaluator • Motivation • Equal Weights • Evaluates one priority level at a time • Time window penalty • Determines the fitness of a given schedule • Determines the best schedule • This schedule is saved for later use

  22. Task List (Next Priority) New Population Best Fit Chromosome Priority Order TimeOrder Mutation Scheduler Cross-Over Evaluator Current Population Selection Hybrid Double Chromosome GA Approach

  23. Mutation New Population Cross-Over Current Population Selection Traditional GA

  24. Background: GA's • Genetic Algorithm • Search technique used in computer science to find an approximate solution to optimization problems • Particular class of evolutionary algorithms that use techniques inspired by evolutionary biology • inheritance • mutation • natural selection (survival of the fittest) • recombination (cross-over)

  25. Background: Traditional GA • Many steps to Genetic Algorithm • Initial Population • Fitness Function • function based on weighting of genes • Selection of chromosomes for mating • Recombination • combining the genes of two selected (parent) chromosomes to develop offspring (child) chromosomes • Mutation • to ensure the population remains sufficiently diverse

  26. Selection • Roulette Wheel strategy • Population of double chromosomes scored by schedule evaluator • Each chromosome is given a percent fitness based on total fitness of the population • Probability of selection is proportional to % fitness • Two parents are chosen for mating (P1,P2)

  27. Cross-Over • Syswerda’s Crossover Operation • Two (or more) random genes are chosen from P1 • Transferred to child chromosome in same gene positions • Task numbers corresponding to those genes are then eliminated in P2 • Now all remaining tasks from P2 are transferred in the same order to the child chromosome • Mutation • Mutation will occur with a certain probability (swapping 2 genes, randomly selected).

  28. Current Population 02 06 03 01 06 05 04 02 01 03 05 04

  29. Current Population 02 03 03 06 04 01 05 05 06 06 01 01 05 02 02 03 04 04

  30. Current Population 02 03 06 04 01 05 06 06 01 01 05 02 02 03 04 04 06 03 01 02 04 05 New Population

  31. Task List (Next Priority) New Population Best Fit Chromosome Priority Order TimeOrder Mutation Scheduler Cross-Over Evaluator Current Population Selection Hybrid Double Chromosome GA Approach

  32. Iterative Population Building • Addresses schedule building by priority • Iteratively cycles through tasks in priority order • Filtering next priority tasks to most fit previous priority chromosome • Allows other components to work faster

  33. Current Population Task List (Next Priority) Most Fit Chromosome Random Priority 1 Task Chromosome 01 01 03 03 02 02 14 14 17 17 15 15 16 16 18 18

  34. Current Population Task List (Next Priority) Most Fit Chromosome Random Priority 1 Task Chromosome 01 01 03 03 02 02 14 14 17 17 15 15 16 16 18 18 01 14 17 03 02 15 16 18 New Population

  35. Task List (Next Priority) New Population Best Fit Chromosome Priority Order TimeOrder Mutation Scheduler Cross-Over Evaluator Current Population Selection Hybrid Double Chromosome GA Approach

  36. Future Work • Cross-over • Try different algorithms (e.g. edge recombination) • Scheduler • Try scheduling for maximum flexibility • Evaluator • Account for more variables (e.g. distance between tasks, change in priority, etc…) • Overall • Experiment w/more parameter variations

  37. Conclusion • The Hybrid Double Chromosome approach to GA provides a novel method of traversing the solution space in an efficient manner • Addressing the population iteratively helped reach solutions more quickly • The scheduler proved to be extremely efficient • Many ways to expand upon this approach in the future

  38. Scheduler • Schedules are evaluated for fitness • These “fit” schedules are fed back into the GA and the next priority level is added • After a given priority level is scheduled, the scheduler will determine a best schedule and save it • Uses previous schedule to its advantage • The new population is fed into the scheduler and the cycle repeats, until all priority levels have been accounted for

  39. Presentation Outline • Problem Description • Hybrid Double Chromosome Genetic Algorithms • Dynamic Scheduling Methods • Top Priority Path Dependent Algorithm • Scatter Search/Path Relinking • Summary/Conclusions • Future Work

  40. Dynamic Rescheduling Tu Dinh Armen Zakharyan Scott Young Nadia Hamoude

  41. Outline • Problem Description • Genetic Algorithm Adaptation • Max-Flexibility Task Swapping • A* Algorithm • Conclusions

  42. Problem Description • Assumptions: • Inputs: static schedule and single dynamic task • Goals: • Incorporate dynamic task into schedule • Accommodate other tasks • Optimize schedule

  43. Genetic Algorithm adaptation for dynamic tasking (GAA)

  44. Overview • Two chromosomes: • Time • Priority • Includes all possible tasks • Scheduler benefits: • Accommodates as many tasks as possible • Previously unscheduled tasks

  45. Overview • Use GA chromosomes to produce a new “optimal” schedule, including dynamic task. • Runtime should be fast • Insertion time • Scheduler time

  46. Overview • Inputs: • Initial schedule • Time and priority chromosomes • Dynamic task • Insertion of dynamic task • Scheduler

  47. Dynamic Task Insertion Time chromosome: Dynamic Task Time Chromosome

  48. Dynamic Task Insertion Time chromosome: Dynamic Task Time window of DT Time Chromosome

  49. Dynamic Task Insertion Resulting time chromosomes:

  50. Dynamic Task Insertion Priority chromosome: Dynamic Task Priority Chromosome

More Related