Scheduling Scientific Experiments on the Rosetta/Philae Mission G. - - PowerPoint PPT Presentation

scheduling scientific experiments on the rosetta philae
SMART_READER_LITE
LIVE PREVIEW

Scheduling Scientific Experiments on the Rosetta/Philae Mission G. - - PowerPoint PPT Presentation

Scheduling Scientific Experiments on the Rosetta/Philae Mission G. Simonin - C. Artigues - E. Hebrard - P. Lopez CP 2012 LAAS-CNRS Toulouse, France 09/10/2012 Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 1 / 27 mardi 9 octobre


slide-1
SLIDE 1

Scheduling Scientific Experiments

  • n the Rosetta/Philae Mission
  • G. Simonin - C. Artigues - E. Hebrard - P. Lopez

CP 2012

LAAS-CNRS Toulouse, France

09/10/2012

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 1 / 27

mardi 9 octobre 12

slide-2
SLIDE 2

Context

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 2 / 27

ROSETTA-PHILAE

Texte

Spacecraft Rosetta

mardi 9 octobre 12

slide-3
SLIDE 3

Context

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 2 / 27

ESA/CNES mission Sent by Ariane 5 on 2004

ROSETTA-PHILAE

Texte

Spacecraft Rosetta

mardi 9 octobre 12

slide-4
SLIDE 4

Context

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 2 / 27

Objective (2014): Land on a comet Analyze its surface

ROSETTA-PHILAE

Texte

Spacecraft Rosetta

mardi 9 octobre 12

slide-5
SLIDE 5

Context

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 2 / 27

Trajectory: 4 gravitational accelerations Intercept the comet far from the sun

ROSETTA-PHILAE

Texte

Spacecraft Rosetta

mardi 9 octobre 12

slide-6
SLIDE 6

Context

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 2 / 27

The comet: Churyumov-Gerasimenko Mass of ice and snow powder Limited knowledge Get information from the past

ROSETTA-PHILAE

Texte

Spacecraft Rosetta

mardi 9 octobre 12

slide-7
SLIDE 7

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 3 / 27

ROSETTA-PHILAE

Texte

Spacecraft Rosetta

mardi 9 octobre 12

slide-8
SLIDE 8

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 3 / 27

ROSETTA-PHILAE

Texte

Spacecraft Rosetta Lander Philae Rosetta stays in orbit and deploys Philae

mardi 9 octobre 12

slide-9
SLIDE 9

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 3 / 27

3 phases of experimentation: SDL (Separation - Descent - Landing) FSS (First Science Sequence) LTS (Long Term Science)

ROSETTA-PHILAE

Texte

Spacecraft Rosetta Lander Philae Rosetta stays in orbit and deploys Philae

mardi 9 octobre 12

slide-10
SLIDE 10

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 3 / 27

3 phases of experimentation: SDL (Separation - Descent - Landing) FSS (First Science Sequence) LTS (Long Term Science)

ROSETTA-PHILAE

Texte

Spacecraft Rosetta Lander Philae

Instruments: Civa Sd2 Consert Romap Ptolémé Cosac Apxs Sesame Mupus

Rosetta stays in orbit and deploys Philae

mardi 9 octobre 12

slide-11
SLIDE 11

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 3 / 27

ROSETTA-PHILAE

Texte

Spacecraft Rosetta Lander Philae

Instruments: Civa Sd2 Consert Romap Ptolémé Cosac Apxs Sesame Mupus

Transfers Experiment memory to Mass Memory Transfers Lander to Orbiter Transfers Orbiter to Earth

mardi 9 octobre 12

slide-12
SLIDE 12

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 3 / 27

ROSETTA-PHILAE

Texte

Spacecraft Rosetta Lander Philae

Instruments: Civa Sd2 Consert Romap Ptolémé Cosac Apxs Sesame Mupus

Transfers Experiment memory to Mass Memory Transfers Lander to Orbiter Transfers Orbiter to Earth Constraints: Energy Limited memories Limited transfers to Orbiter

mardi 9 octobre 12

slide-13
SLIDE 13

Problem

Outline

1 Problem

Data Transfer

2 Mathematical modeling of transfers

A Simplified model of Data Transfer

3 Algorithms

Sweep Algorithm Filtering algorithms

4 Benchmarks

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 4 / 27

mardi 9 octobre 12

slide-14
SLIDE 14

Problem Data Transfer

Data transfer problem

CDMS Experiment Memory Mass Memory Orbiter Data Production

Data flow Experiments produce data and store it into their own memories The CDMS manages data transfers (following a fixed policy)

Transfer data from an experiment to the mass memory

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 5 / 27

mardi 9 octobre 12

slide-15
SLIDE 15

Problem Data Transfer

Data transfer problem

CDMS Experiment Memory Mass Memory Orbiter Data Production

Data flow Experiments produce data and store it into their own memories The CDMS manages data transfers (following a fixed policy)

Transfer data from an experiment to the mass memory Transfer data from the mass memory to the orbiter

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 5 / 27

mardi 9 octobre 12

slide-16
SLIDE 16

Problem Data Transfer

Data transfer problem

CDMS Experiment Memory Mass Memory Orbiter Data Production

Data flow Experiments produce data and store it into their own memories The CDMS manages data transfers (following a fixed policy)

Transfer data from an experiment to the mass memory Transfer data from the mass memory to the orbiter Transfer data from an experiment directly to the orbiter

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 5 / 27

mardi 9 octobre 12

slide-17
SLIDE 17

Problem Data Transfer

CDMS - Command and Data Management System

CDMS Experiment Memory Mass Memory Orbiter Data Production

Transfers to the mass memory Repeat as long as the mass-memory is not full:

Scan experiments by decreasing priority Stop at the first experiment holding some data Transfer one block of data from this experiment to the mass memory

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 6 / 27

mardi 9 octobre 12

slide-18
SLIDE 18

Problem Data Transfer

CDMS - Command and Data Management System

CDMS Experiment Memory Mass Memory Orbiter Data Production

Transfers to the orbiter When Rosetta is visible (over the horizon):

If the mass memory is empty: do as above, but directly to the orbiter Otherwise, do as above and transfer data from the mass memory to the

  • rbiter

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 7 / 27

mardi 9 octobre 12

slide-19
SLIDE 19

Problem Data Transfer

Data loss The CDMS policy may lead to data loss

When an experiment of low priority produces too much data too quickly When the mass memory is full and the orbiter is not visible

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 8 / 27

mardi 9 octobre 12

slide-20
SLIDE 20

Problem Data Transfer

Data loss The CDMS policy may lead to data loss

When an experiment of low priority produces too much data too quickly When the mass memory is full and the orbiter is not visible

How to avoid data loss Other than assigning priorities, we have no control on data transfer Priorities are fixed for long periods

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 8 / 27

mardi 9 octobre 12

slide-21
SLIDE 21

Problem Data Transfer

Data loss The CDMS policy may lead to data loss

When an experiment of low priority produces too much data too quickly When the mass memory is full and the orbiter is not visible

How to avoid data loss Other than assigning priorities, we have no control on data transfer Priorities are fixed for long periods One needs to schedule data producing tasks so that those circumstances will not occur

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 8 / 27

mardi 9 octobre 12

slide-22
SLIDE 22

Problem Data Transfer

Data loss The CDMS policy may lead to data loss

When an experiment of low priority produces too much data too quickly When the mass memory is full and the orbiter is not visible

How to avoid data loss Other than assigning priorities, we have no control on data transfer Priorities are fixed for long periods One needs to schedule data producing tasks so that those circumstances will not occur

Global constraint on data producing tasks

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 8 / 27

mardi 9 octobre 12

slide-23
SLIDE 23

Problem Data Transfer

Previous approach (CNES)

MOST Development of a model/solver tool named MOST Constraint Programming (with ILOG Scheduler/Solver) Model for data transfer Modeled with reservoir resources (IloReservoir)

Production tasks fill the resources Predefined transfer tasks (of variable duration) empty the resources

Many extra variables, poor propagation, precision loss

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 9 / 27

mardi 9 octobre 12

slide-24
SLIDE 24

Mathematical modeling of transfers

Outline

1 Problem

Data Transfer

2 Mathematical modeling of transfers

A Simplified model of Data Transfer

3 Algorithms

Sweep Algorithm Filtering algorithms

4 Benchmarks

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 10 / 27

mardi 9 octobre 12

slide-25
SLIDE 25

Mathematical modeling of transfers A Simplified model of Data Transfer

Constraint checking - Computing the transfers

Constraint checking We need to compute memory occupation through time Once data producing tasks are scheduled, it is possible to “unroll” the policy of the CDMS

Costly: we may need as many steps as blocks of data to transfer!

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 11 / 27

mardi 9 octobre 12

slide-26
SLIDE 26

Mathematical modeling of transfers A Simplified model of Data Transfer

Constraint checking - Computing the transfers

Constraint checking We need to compute memory occupation through time Once data producing tasks are scheduled, it is possible to “unroll” the policy of the CDMS

Costly: we may need as many steps as blocks of data to transfer! Let π be the production rate and τ the transfer rate If π < τ there are gaps that can be used for other experiments

Production π = 1, 5 blk/s Transfer τ = 3 blk/s

1 π 1 τ 1 π − 1 τ 1 2 Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 11 / 27

mardi 9 octobre 12

slide-27
SLIDE 27

Mathematical modeling of transfers A Simplified model of Data Transfer

Example with two experiments

τ1 τ2 π1 π2 mm

Lowest priority Highest priority

time memory

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 12 / 27

mardi 9 octobre 12

slide-28
SLIDE 28

Mathematical modeling of transfers A Simplified model of Data Transfer

Modification Approximate switches between experiments by the partition of a bandwidth The bandwidth is allocated proportionally to the usage of the bus

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 13 / 27

mardi 9 octobre 12

slide-29
SLIDE 29

Mathematical modeling of transfers A Simplified model of Data Transfer

Modification Approximate switches between experiments by the partition of a bandwidth The bandwidth is allocated proportionally to the usage of the bus

The area (transfer time x rate) is equivalent We create only one transfer

1 2 3

Transfer 1 : Transfer 2 :

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 13 / 27

mardi 9 octobre 12

slide-30
SLIDE 30

Mathematical modeling of transfers A Simplified model of Data Transfer

Same example, using the “bandwidth” view

τ1 τ2 π1 π2

Lowest priority Highest priority

mm time memory time τ1 τ2

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 14 / 27

mardi 9 octobre 12

slide-31
SLIDE 31

Algorithms

Outline

1 Problem

Data Transfer

2 Mathematical modeling of transfers

A Simplified model of Data Transfer

3 Algorithms

Sweep Algorithm Filtering algorithms

4 Benchmarks

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 15 / 27

mardi 9 octobre 12

slide-32
SLIDE 32

Algorithms Sweep Algorithm

For the transfers A sweep algorithm to check the constraint

Given a schedule of production, the transfers are computed in O(n log n)

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 16 / 27

mardi 9 octobre 12

slide-33
SLIDE 33

Algorithms Sweep Algorithm

Principle of the sweep algorithm for computing transfer We consider a list of events in a chronological order

start/end of an experiment start/end of data production start/end of visibility

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 17 / 27

mardi 9 octobre 12

slide-34
SLIDE 34

Algorithms Sweep Algorithm

Principle of the sweep algorithm for computing transfer We consider a list of events in a chronological order

start/end of an experiment start/end of data production start/end of visibility

At each step, we apply the policy rules of the CDMS (priority) in order to determine the current transfers

Nothing will change until the next event If the current transfer empty a memory until the next event, then we create the event "Memory emptied" If the mass memory is full before the next event, we create the event "Full mass memory"

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 17 / 27

mardi 9 octobre 12

slide-35
SLIDE 35

Algorithms Sweep Algorithm

Principle of the sweep algorithm for computing transfer We consider a list of events in a chronological order

start/end of an experiment start/end of data production start/end of visibility

At each step, we apply the policy rules of the CDMS (priority) in order to determine the current transfers

Nothing will change until the next event If the current transfer empty a memory until the next event, then we create the event "Memory emptied" If the mass memory is full before the next event, we create the event "Full mass memory"

If at any time the capacity of an experiment memory is exceeded, then data is lost and the constraint is violated for this schedule.

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 17 / 27

mardi 9 octobre 12

slide-36
SLIDE 36

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3

mardi 9 octobre 12

slide-37
SLIDE 37

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1

mardi 9 octobre 12

slide-38
SLIDE 38

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3

mardi 9 octobre 12

slide-39
SLIDE 39

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3

mardi 9 octobre 12

slide-40
SLIDE 40

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3

mardi 9 octobre 12

slide-41
SLIDE 41

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3

mardi 9 octobre 12

slide-42
SLIDE 42

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3

mardi 9 octobre 12

slide-43
SLIDE 43

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-44
SLIDE 44

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-45
SLIDE 45

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-46
SLIDE 46

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-47
SLIDE 47

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-48
SLIDE 48

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-49
SLIDE 49

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-50
SLIDE 50

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-51
SLIDE 51

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-52
SLIDE 52

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

mardi 9 octobre 12

slide-53
SLIDE 53

Algorithms Sweep Algorithm

time memory Priority

π1 π2 π3 τ1 τ3 τ2

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 18 / 27

mardi 9 octobre 12

slide-54
SLIDE 54

Algorithms Filtering algorithms

First filtering algorithm

We study a list of production tasks Ω from an experiment Objective: Compute the minimum duration necessary to transfer data without saturating the experiment’s memory 5 time memory

100 200 300 400 Mk

4

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 19 / 27

mardi 9 octobre 12

slide-55
SLIDE 55

Algorithms Filtering algorithms

First filtering algorithm

We study a list of production tasks Ω from an experiment Objective: Compute the minimum duration necessary to transfer data without saturating the experiment’s memory 5 time memory

100 200 300 400 Mk

4

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 19 / 27

mardi 9 octobre 12

slide-56
SLIDE 56

Algorithms Filtering algorithms

First filtering algorithm

We study a list of production tasks Ω from an experiment Objective: Compute the minimum duration necessary to transfer data without saturating the experiment’s memory 5 time memory

100 200 300 400 Mk

4

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 19 / 27

mardi 9 octobre 12

slide-57
SLIDE 57

Algorithms Filtering algorithms

First filtering algorithm

We study a list of production tasks Ω from an experiment Objective: Compute the minimum duration necessary to transfer data without saturating the experiment’s memory 5 time memory

100 200 300 400 Mk

4

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 19 / 27

mardi 9 octobre 12

slide-58
SLIDE 58

Algorithms Filtering algorithms

Rule Induce constraint: end(tn) − start(t1) ≥

(

tki ∈Ω πipi)−Mk

τ

time memory

100 200 300 400 Mk

5 4

(

tki ∈Ω πi pi )−Mk

τ Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 20 / 27

mardi 9 octobre 12

slide-59
SLIDE 59

Algorithms Filtering algorithms

Improvement We can improve the filtering if we take into account the other experiments with a higher priority. time memory

100 200 300 400 Mk

5 4 2

(

tki ∈Ω πi pi )−Mk

τ Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 21 / 27

mardi 9 octobre 12

slide-60
SLIDE 60

Algorithms Filtering algorithms

Improvement Constraint: end(tn) − start(t1) ≥

(

tki ∈Ω πipi)−Mk

τ

+ j<R(k)

j=1

Tj time memory

100 200 300 400 Mk

5 4 2

(

tki ∈Ω πi pi )−Mk

τ

+ j<R(k)

j=1

Tj

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 22 / 27

mardi 9 octobre 12

slide-61
SLIDE 61

Algorithms Filtering algorithms

Second filtering algorithm

Second rule Periods preceding visibility are critical for data loss

No transfer to the orbiter is possible Data accumulates on the mass memory At t, the mass memory is saturated

Data produced after t and before v must remain in exp memory

VISIBILITY VISIBILITY v a b t mt

m

mv

m

Mm Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 23 / 27

mardi 9 octobre 12

slide-62
SLIDE 62

Algorithms Filtering algorithms

Second filtering algorithm

Second rule For each experiment Expk:

The data produced between t and v may exceed its capacity

Either it should be run earlier when it was possible to transfer Either it should be run later, that is in visibility

It induces forbidden interval: |tki ∩ [t, v]| ≥ δk − γk + (|tki ∩ [t, v]| ∗ πki) πki

VISIBILITY VISIBILITY v a b t mt

m

mv

m

Mm Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 24 / 27

mardi 9 octobre 12

slide-63
SLIDE 63

Benchmarks

Outline

1 Problem

Data Transfer

2 Mathematical modeling of transfers

A Simplified model of Data Transfer

3 Algorithms

Sweep Algorithm Filtering algorithms

4 Benchmarks

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 25 / 27

mardi 9 octobre 12

slide-64
SLIDE 64

Benchmarks

Benchmarks

SCENARIO PARAMETERS MOST+Ilc-Reservoir MOST +DataTransfer Mm Visi.

  • Init. time (s)

CPU time (s)

  • Init. time (s)

CPU time (s) Consert 17456 Periodic 4.06 20.07 0.88 0.08 Consert/Romap 17456 Periodic 11.13 Time out 1.17 0.1 Consert/Romap 37456 Periodic 11.03 Time out 1.17 0.1 SD2/Ptolemy 17456 Periodic 26.71 41.72 3.37 0.09 SD2/Ptolemy 17456 Continuous 32.78 79.48 3.25 0.08 SD2/Cosac/Civa 37456 Periodic 50.20 181.91 2.75 0.14 SD2/Cosac/Civa 17456 Periodic 50.84 179.19 2.95 0.15 SD2/Cosac/Civa 17456 Continuous 25.12 91.08 1.82 0.10

Table: Old vs. new version of MOST on 8 standard scenarios

Simonin (LAAS-CNRS) Rosetta/Philae Mission 09/10/2012 26 / 27

mardi 9 octobre 12

slide-65
SLIDE 65

Texte

Thank for your attention Resume

Transfer problem A better modeling A Faster transfers computing Need propagation Results Improvement of computing times An exact and approximate modeling Two filtering algorithms

mardi 9 octobre 12