Generating High Quality Schedules for a Spacecraft Memory Downlink Problem

15
Generating High Quality Schedules for a Spacecraft Memory Downlink Problem ? Angelo Oddi, Nicola Policella, Amedeo Cesta, and Gabriella Cortellessa Planning & Scheduling Team — http://pst.ip.rm.cnr.it Institute for Cognitive Science and Technology National Research Council of Italy Viale K. Marx 15, I-00137 Rome, Italy {oddi | policella | cesta | corte }@ip.rm.cnr.it Abstract. This work introduces a combinatorial optimization problem called Mars Express Memory Dumping Problem (Mex-Mdp), which arises in the European Space Agency program Mars Express. It con- cerns the generation of high quality schedules for the spacecraft mem- ory downlink problem. Mex-Mdp is an NP-hard combinatorial problem characterized by several kinds of constraints, such as on-board memory capacity, limited communication windows over the downlink channel, deadlines and ready times on the observation activities. The contribu- tion of this paper is twofold: on one hand it provides a CSP model of a real problem, and on the other it presents a set of metaheuristic strate- gies based on local and randomized search which are built around the constraint-based model of the problem. The algorithms are evaluated on a benchmark set distilled from ESA documentation and the results are compared against a lower bound of the objective function. 1 Introduction Tackling hard optimization problems by means of metaheuristic strategies has became a pervasive technique not only in Constraint Programming, but also in many Artificial Intelligence research areas. In solving such problems, metaheuris- tics bridge the gaps between contrasting needs, such as anytime availability of a solution, bounded computational time and solution quality. This paper describes, analyzes and models through the CSP paradigm a space mission planning problem within the ESA program Mars-Express which has launched a spacecraft toward Mars on June 2, 2003. This problem, referred to as the Mars Express Memory Dumping Problem (Mex-Mdp), is aimed at syn- thesizing sequences of on-board memory dumps during the space probe’s regular scientific activities around Mars. Any sequence of dump operations should satisfy a number of complex constraints such as limited availability of communication windows, maximal data rate in communication links, operation ready times and ? This work describes results obtained in the framework of a research study conducted for the European Space Agency (ESA-ESOC) under contract No.14709/00/D/IM.

Transcript of Generating High Quality Schedules for a Spacecraft Memory Downlink Problem

Generating High Quality Schedules for aSpacecraft Memory Downlink Problem ?

Angelo Oddi, Nicola Policella, Amedeo Cesta, and Gabriella Cortellessa

Planning & Scheduling Team — http://pst.ip.rm.cnr.it

Institute for Cognitive Science and TechnologyNational Research Council of Italy

Viale K. Marx 15, I-00137 Rome, Italy{oddi | policella | cesta | corte }@ip.rm.cnr.it

Abstract. This work introduces a combinatorial optimization problemcalled Mars Express Memory Dumping Problem (Mex-Mdp), whicharises in the European Space Agency program Mars Express. It con-cerns the generation of high quality schedules for the spacecraft mem-ory downlink problem. Mex-Mdp is an NP-hard combinatorial problemcharacterized by several kinds of constraints, such as on-board memorycapacity, limited communication windows over the downlink channel,deadlines and ready times on the observation activities. The contribu-tion of this paper is twofold: on one hand it provides a CSP model of areal problem, and on the other it presents a set of metaheuristic strate-gies based on local and randomized search which are built around theconstraint-based model of the problem. The algorithms are evaluated ona benchmark set distilled from ESA documentation and the results arecompared against a lower bound of the objective function.

1 Introduction

Tackling hard optimization problems by means of metaheuristic strategies hasbecame a pervasive technique not only in Constraint Programming, but also inmany Artificial Intelligence research areas. In solving such problems, metaheuris-tics bridge the gaps between contrasting needs, such as anytime availability of asolution, bounded computational time and solution quality.

This paper describes, analyzes and models through the CSP paradigm a spacemission planning problem within the ESA program Mars-Express which haslaunched a spacecraft toward Mars on June 2, 2003. This problem, referred to asthe Mars Express Memory Dumping Problem (Mex-Mdp), is aimed at syn-thesizing sequences of on-board memory dumps during the space probe’s regularscientific activities around Mars. Any sequence of dump operations should satisfya number of complex constraints such as limited availability of communicationwindows, maximal data rate in communication links, operation ready times and

? This work describes results obtained in the framework of a research study conductedfor the European Space Agency (ESA-ESOC) under contract No.14709/00/D/IM.

2 Proceedings of Principles and Practice of Constraint Programming, CP 2003

bounded on-board packet store capacities. The results we present are spawnedfrom a study [1] aimed at demonstrating the effectiveness of Artificial Intelli-gence and constraint-based techniques in mission planning domains like MarsExpress.

Space domains are very rich of challenging optimization problems. Similarproblems to Mex-Mdp arise also in satellite domains. Some of the previousworks, see for example [2, 3], confirm the complexity of the domain constraintsand show also how not all the best solutions are obtained by a single solv-ing technique. Different needs —and, dually, different trade-offs between qualityand computational times— are addressed by different algorithms or combina-tions of solving techniques in a metaheuristic schema. In a similar light, thiswork proposes a quite general constraint-based model for the on-board space-craft memory scenario and a portfolio of heuristic strategies for Mex-Mdp. Theseheuristic strategies, which are defined around the CSP formulation, join knowl-edge from different research areas such as Constraint Reasoning, Local Searchand Randomized Algorithms [4, 5].

We will begin by describing the details of the Mex-Mdp problem, and con-tinue with an analysis of its complexity (Section 2). Section 3 contains the de-scription of the CSP model, whereas Sections 4 and 5 describe and experimen-tally evaluate a portfolio of solving methods. We conclude with some commentsabout the results obtained, and more in general, about the experience describedin this work.

2 The Mars Express Memory Dumping Problem

Inside the complex domain of a space mission like Mars-Express we havebeen concerned with the issue of data transmission to Earth. A space probecontinuously produces a large amount of data from both scientific observationsand house-keeping. Because Mars-Express is a single pointing probe, it pointseither to Mars (data production) or to Earth (data downlink). As a consequencedata are first collected in the finite capacity on-board memory. The problemsolving goal consists in synthesizing spacecraft operations for emptying as muchas possible the on-board memory during downlink time intervals, in order toallow the spacecraft to save new information without losing previous data.

Different constraints are conflicting with the data preservation. Besides thecommunication channel availability there are different transmission rates to betaken into account. Additional constraints rise from the specific use of the on-board memory, which is subdivided into different memory banks (or packetstores), each of them having a finite capacity. For each piece of informationproduced inside the probe, a packet store is also defined in which such datashould be stored. Different data are stored in a sequential way and the packetstores are managed cyclically. As a consequence, if the memory is full and newdata becomes available, the stored data are lost.

Proceedings of Principles and Practice of Constraint Programming, CP 2003 3

VC 1

VC 0

Real−Time

Priority Scheme

SSMM Packet Stores

STORE

SSMM

DMS

TM RouterTM

TM

DUMP

TFG

TM

Fig. 1. On-board telemetry flow. Telemetry (TM) data produced on board are storedon the on board memory (SSMM) subdivided into packet stores. Memory stores arethen downloaded with different dumps that transfer the data to the ground. The figurecontains also the real-time communication path to Earth that is not considered in thisstudy.

We have formalized this problem as the Mars Express Memory DumpingProblem (Mex-Mdp) whose different components are described in the rest ofthis section.

Problem Description. The basic ontological objects of the Mex-Mdp domainare either resources or activities: resources represent domain subsystems able togive services; activities model tasks to be executed using resources over time. Aset of constraints defines needed relationships between the two types of objects.Figure 1 shows a sketch of the Mars Express modules that are relevant toMex-Mdp. Three kinds of resources are present in Mex-Mdp:

– Packet Stores. The on-board memory (Solid State Mass Memory or SSMM)is subdivided into a set of separated packet stores pki, i.e. they cannot ex-change data among them. Each one has a fixed capacity ci and a priorityvalue pi. Each packet store can be seen as a file of a given maximal size thatis managed cyclically.

– On-Board Payloads. An on-board payload can be seen as a finite state ma-chine in which each state has a different behavior in generating observationdata. In particular, each possible state of the payload corresponds to a dif-ferent generation data rate.

– Communication Channels. These resources are characterized by a set of sep-arated communication windows identifying intervals of time for downlink.Each temporal window has a constant data rate 1.

1 It will be 0 in case of no-transmission window.

4 Proceedings of Principles and Practice of Constraint Programming, CP 2003

Activities describe how the resources can be used. Three types are relevant inMex-Mdp: payload operations, memory dumps and continuous data streams.Each activity ai has an associated execution interval, which is identified by itsstart time s(ai) and end time e(ai).

– Payload Operations. A payload operation pori corresponds to a scientificobservation. According to the Mars Express operational modalities eachobservation generates an amount of data that is decomposed into differentstore operations, and distributed over the set of available packet stores.

– Memory Dumps. A memory dump operation mdi transfers a set of data froma packet store to a transfer device (Transfer Frame Generator - TFG). Thoseactivities represent the transmission of the data through the communicationchannel.

– Continuous Data Streams. The particular case of the continuous data streamoperations cdsi is such that s(cdsi) = 0 and e(cdsi) = +∞. Each data streamis given a packet store. This activity represents a continuous generation ofdata with a fixed average data rate. We choose to model also a cdsi as aperiodic sequence of store operations.

Each type of activity is characterized by a particular set of resource requirementsand constraints. Given these basic domain entities, let us now define the Mex-Mdp. A set of scientific observations, POR = {por1, por2, . . . , porn} and a set ofhousekeeping productions, CDS = {cds1, cds2, . . . , cdsm}, are both reduced toa set of store operations on the on-board memory. A solution to a Mex-Mdp,is a set of dumping operations S = {md1,md2, . . . ,mds} such that:

– the whole set of data are “available” on ground within the considered tem-poral horizon H = [0,H].

– Each dump operation starts after the generation of the corresponding data.For each packet store, the data are moved through the communication chan-nel according to a FIFO policy.

– Each dump activity, mdi, is executed within an assigned time window wj

which has a constant data rate rj . Moreover, dump operations cannot recip-rocally overlap.

– At each instant t ∈ H, the amount of data stored in each packet store pki

has to be less or equal to the packet store capacity ci (i.e., overwriting is notallowed).

The additional goal is to find high quality solutions with respect to a set ofevaluation parameters: a high quality plan delivers all the stored data as soonas possible according to a definite policy or objective function. A relevant pieceof information to define an objective function is the turnover time of a payloadoperation pori:

tt(pori) = del(pori)− e(pori)

where del(pori) is the delivery time of pori and e(pori) is its end time. Thus, weintroduce as an objective function the mean α-weighted turnover time MTTα ofa solution S:

Proceedings of Principles and Practice of Constraint Programming, CP 2003 5

MTTα(S) =1n

n∑

i=1

αi tt(pori) (1)

Given an instance of a Mex-Mdp, an optimal solution with respect to a weightα is a solution S which minimizes the objective function MTTα(S). Two weightsα have been found to be interesting, namely data priority and data volume gen-erated by the observations (see [1] for a detailed description). The experimentalevaluation in this paper considers the Mean Turnover Time (MTT ) with αi = 1,i = 1..n.

Complexity Analysis. The Mex-Mdp can be shown to be NP-hard by reduc-tion from the problem 2 1|chains; ri; pmtn|∑Ci, i.e., a single-machine optimiza-tion scheduling problem where the goal is to minimize the sum of the activitycompletion times Ci [7]. There are n activities, each one having a ready timeri and a duration pi. Preemption (pmtn) is allowed, hence the execution of anactivity ai can be suspended and a new one can be resumed or started fromscratch. Finally, among the set of activities, a partial order ≺, imposed by a setof precedence constraints, is defined 3 which partitions the set of activities intoa set of separate chains of activities.

The problem 1|chains; ri; pmtn|∑ Ci can be reduced to Mex-Mdp con-sidering: (1) each packet store with an infinite capacity; (2) the communica-tion channel having a uniform data rate r over the total problem horizon;(3) an unbounded problem horizon; (4) each pori stores data in a single packetstore, and there is no pair of activities, pori and porj , which store data inthe same packet store at the same time. These hypotheses allow to reduce1|chains; ri; pmtn|∑Ci to Mex-Mdp. In fact, the single-machine correspondsto the communication channel. Each activity ai with duration pi and ready timeri, corresponds to a pori which contains a single store activity with end-timeri and size equal to the duration pi multiplied by the channel data rate r. Thenumber of packet stores is equal to the number of chains. Each chain of activ-ities, corresponds to a set of activities in Mex-Mdp which stores data in thesame packet store and has the same temporal total order imposed by the chains(remember that each packet store is a FIFO buffer). Finally, we observe that thecompletion time Ci and the turnover time tti are equivalent objective functions.In fact, Ci = tti + ri, hence a solution is optimal with respect to

∑Ci if and

only if it is optimal with respect to∑

tti.The complexity of the Mex-Mdp is a strong limitation to problem scalability

for systematic solving methods in finding optimal (or near-optimal) solutionsunder tight temporal bounds on the computational time. For these reasons thiswork proposes a set of meta-heuristic strategies based on local and randomizedsearch.

2 Expressed in the α|β|γ-notation of [6].3 Such that ai ≺ aj means aj must start only after the end of ai.

6 Proceedings of Principles and Practice of Constraint Programming, CP 2003

3 CSP Representation

A Constraint Satisfaction Problem, CSP, consists of a set of variables X ={X1, X2, . . . , Xn} each associated with a domain Di of values, and a set of con-straints C = {C1, C2, . . . , Cm} denoting the legal combinations of values for thevariables s.t. Ci ⊆ D1 × D2 × · · · × Dn [8]. A solution consists of assigning toeach variable one of its possible values so that all the constraints are satisfied.The resolution process can be seen as an iterative search procedure where thecurrent (partial) solution is extended on each cycle by assigning a value to a newvariable. As new decisions are made during this search, a set of “propagationrules” removes elements from domains Di which cannot be contained in anyfeasible extension of the current partial solution. In general, it is not possibleto remove all inconsistent values through propagation alone. Choices are madeamong possible values for some variables, giving rise to the need for variable andvalue ordering heuristics.

A CSP representation for a problem should focus on its important features.In the case of Mex-Mdp, the following characteristics have been selected:

1. the temporal horizon H = [0, H],2. the amount of data stored at the end time of each operation,3. the channel communication windows,4. the finite capacity ci of each memory bank pki and its FIFO behavior.

It is worth noting that the FIFO behavior of the packet stores allows us to makean important simplification. In fact, it is possible to consider both the datain input and those in output to/from the memory as flows of data, neglectingthe information about which operations those data refer to. In this way, givena generic time window over the communication channel, it is possible to splitthe problem into two levels of abstraction. A first one, where we just considerthe constraints on the flows of data: for each generic dump window and eachpacket store the amount of residual data in the packet store should not exceedits capacity. And a second level, where a sequence of memory dump operations(generation of data packets) is generated over the communication link. In par-ticular, we divide the temporal horizon H into a set of contiguous temporalwindows wj = (tj−1, tj ], with j = 1 . . . m, according to the domain’s significantevents, that is: store operations and changes of transmission data rate. This par-tition allows us to consider temporal intervals, wj , in which store operations donot happen (except for its upper bound tj) and the data rate is constant.

As a consequence, the CSP decision variables are defined according to theset of windows wj and to the different packet stores pki. We defined δij as theamount of data dumped from the packet store pki within the window wj . Wealso introduce: (1) dij , the amount of data stored 4 in pki at tj , (2) lij , theamount of data 5 that pki can hold within wj and (3) bj , the maximal dumpingcapacity in the interval wj . These represent the input of Mex-Mdp.4 The variables di0 ≤ ci represent the initial level of data in the packet store pki.5 Defining lij = ci for j < n and lij = 0 for j = n we model that a solution has to

download the whole set of spacecraft data.

Proceedings of Principles and Practice of Constraint Programming, CP 2003 7

A fundamental constraint captures the fact that for each window wj thedifference between the amount of generated data and the amount of dumpeddata cannot exceed lij the maximal imposed level in the window (overwriting).Additionally, the dumped data cannot exceed the generated data (overdumping).We define the following inequalities as conservative constraints

j∑

k=0

dik −j∑

k=1

δik ≤ lij

j−1∑

k=0

dik −j∑

k=1

δik ≥ 0

(2)

for i = 1 . . . n and j = 1 . . .m. A second class of constraints considers the dump-ing capacity imposed by the communication channel. The following inequalities,called downlink constraints, state that for each window wj it is not possible todump more data than the available capacity bj , j = 1 . . . m,

0 ≤n∑

i=1

δij ≤ bj (3)

Each decision variable δij has a potential interval of feasible values [lbδij , ubδij ]defined by its lower and upper bounds lbδij and ubδij . For i = 1 . . . n, j = 1 . . .m:

lbδij =max{0, max{0,

j∑

k=0

dik − lij} −max{j−1∑

k=1

bk,

j−2∑

k=0

dik}} (4)

ubδij = min{bj ,

j−1∑

k=0

dik −max{0,

j−1∑

k=0

dik − li(j−1)}} (5)

Equation (4) states that a lower bound of δij is represented by the differencebetween the amount of data generated at tj over the packet store capacity lij(∑j

k=0 dik − lij}) and the maximal amount of data which is “downloadable” bytj−1 (max{∑j−1

k=1 bk,∑j−2

k=0 di,k}}). Whereas (5) claims that an upper bound of δij

is the minimal value between bj and the maximal amount of data which is really“downloadable” within the window wj (

∑j−1k=0 dik−max{0,

∑j−1k=0 dik− li(j−1)}).

Grounded on these constraints, a set of propagation rules (or domain filteringrules) are defined to further reduce the domain intervals [lbδij , ubδij ].

Domain Filtering Rules. Domain filtering rules are fundamental componentsof a CSP solver aimed at pruning the problem search space by removing incon-sistent values in the decision variable domains.

On the basis of the conservative constraints, the following two rules updatethe bounds lbδij and ubδij

8 Proceedings of Principles and Practice of Constraint Programming, CP 2003

lbδij= max{lbδij

,

j∑

k=0

dik − lij −j∑

k=1,k 6=j

ubδik} (6)

ubδij= min{ubδij

,

j∑

k=0

dik −j∑

k=1,k 6=j

lbδik} (7)

The intuition behind (6) is that the value∑j

k=0 dik − lij −∑j

k=1,k 6=j ubδikis

the minimal value for δij in order to avoid overwriting in pki within wj . In(7),

∑jk=0 dik −

∑jk=1,k 6=j lbδik

is the maximal value for δij in order to avoidoverdumping. A third rule, based on communication constraints, updates thevalues ubδij

.

ubδij = min{ubδij , bj −n∑

k=1,k 6=i

lbδkj} (8)

In this case the basic intuition is that bj−∑n

k=1,k 6=i lbδkjrepresents the maximal

value allowed for δij on the basis of the other lower bounds lbδij .The application of the previous set of filtering rules generally updates the

values ubδij and lbδij . In particular, when the condition lbδij ≤ ubδij is violatedfor at least one window, the partial solution is not consistent. In Section 5 wewill show how these rules effect our solving methods and we will highlight theirimportance to achieve a feasible solution.

4 Problem Solving

The further contribution of the paper is to propose a portfolio of heuristic strate-gies for Mex-Mdp defined on the CSP formulation which joins knowledge fromdifferent research areas such as Constraint Reasoning, Local Search and Ran-domized Algorithms. One or more meta-heuristic strategies can be built on topof the set of basic solving components. In particular, we propose two basic solvingstrategies: a greedy solver and a tabu search strategy for improving an initial solu-tion. Furthermore, these basic procedure are combined in three meta-strategies:(1) a serialization of greedy and tabu search; (2) an iterative sampling approachwhich uses a randomized version of the greedy procedure; (3) a serialization ofiterative random sampling and tabu search.

A Greedy Solving Method. The basic greedy solving method uses two levelsof abstraction for the Mex-Mdp problem: (1) a first one called data dump level,where the horizon is partitioned into a set of windows w1, w2, . . . , wm, such thatfor each window wj only the decision variables δij , representing the amount ofdata to be dumped in the window, are considered; (2) a second level, called pack-etization level, where a sequence of memory dump operations is generated overthe communication links according to the constraints imposed on each windowwj .

Proceedings of Principles and Practice of Constraint Programming, CP 2003 9

MakeConsistentDataDump:

Input: mexmdp instanceOutput: a consistent assignment of the set of decision variables δij

1. {2. Propagation(mexmdp)3. j ← 14. while (j ≤ m and Feasible(mexmdp)) {5. AssignDecisionVariables∆(j)6. Propagation(mexmdp)7. j ← j + 18. }9. }

Fig. 2. Algorithm to generate a consistent assignment of the set of variables δij

Data Dump Level. Figure 2 shows the algorithm MakeConsistentDataDump().At first (Step 2) a propagation procedure is called. Such a procedure imple-ments the propagation features described above and basically sets the domains[lbδij , ubδij ] of possible values for all the decision variables δij . In addition, eachtime the algorithm performs a solving decision (Step 5), the Propagation() pro-cedure is called again in order to further reduce the domains [lbδij , ubδij ] (Step6).

The algorithm considers the set of windows w1, w2, . . . , wm in increasingorder of time, and for each window wj , it considers the amount of data bj

that can be dumped within the window. Subsequently, by the sub-procedureAssignDecisionVariables∆(), it iteratively executes the following steps: selects apacket store (according to a given priority rule); computes an amount of datato be dumped from the selected packets store; updates the lower bound of thedomain of the involved decision variable. For each window wj the previous stepsare executed until a dump capacity is available or a failure state occurs.

It is possible to implement different solving priority rules inside the stepAssignDecisionVariables∆(). Two rules are currently used: CFF (Closest to FillFirst) that selects the packet store with the highest percentage of data volumeand HPF (Highest Priority First) which selects the packet store with the highestpriority. In case that a subset of packet stores has the same priority, the packetstore with the smallest store as outcome data is chosen.

It is worth noting that the greedy solver is based on the composition of effectsbetween a dispatching strategy that takes decisions proceeding ahead in time andthe propagation rules on the CSP representation that propagate decision effectsforward and backward on the structure adjusting values according to problemconstraints.

Packetization Level. The second step of the greedy procedure generates thefinal solution S, that is the sequence of memory dump operations. It works

10 Proceedings of Principles and Practice of Constraint Programming, CP 2003

move

��������������������

��������������������

��������������������

��������������������

��������������������

pk2

pk1 pk1

pk2

TT1

TT2

TT1

TT2

Fig. 3. An example of move

in analogous way to MakeConsistentDataDump() with the difference that nopropagation function is called. In fact, when all the variables δij are consistentlyassigned, it is possible to generate the sequence of data dumping operationswithout the risk of finding inconsistent states. Hence, the algorithm considersthe set of windows w1, w2, . . . , wm in increasing order of time, for each windowwj , considers the set of decision variables δij (with i = 1 . . . n) representing theassigned dumping capacity to each packet store i and generates a correspondentsequence of memory dumping operations (stream of data packets from the set ofpacket stores). Two alternative priority rules are currently used: SDF (Smallestto Dump First) which selects the packet store with the smallest value of thedecision variable δij and HPF (Highest Priority First) that selects the packetstore with the highest priority.

A Tabu Search Strategy. Tabu search [9] is a well-known local search ap-proach for solving hard combinatorial optimization problems. A tabu algorithmstarts from an initial solution S0. At each step it looks at the neighborhood ofthe current solution SC , that is, a subset of solutions obtained from SC by theapplication of a local transformation operator called move. Next the algorithmfinds the solution SN with the best value of a given objective function. SN be-comes the new current solution and the process is iterated until some terminationconditions met and the best solution S* is returned. The search process is notallowed to turn back to solutions visited in the previous MaxSt steps (cycles).For this purpose a tabu list, managed as a first-in-first-out queue, is defined withthe last MaxSt moves.

A tabu search strategy for solving a given optimization problem, requiresthe definition of some parameters (e.g., the tabu list length) and operators,in particular the move operator. For the sake of space we do not present adetailed description of the move here, but just give the intuition behind it by anexample. Let us consider the Mex-Mdp example in Fig. 3, there are two scientificobservations, the grey and the black one, which respectively are stored in thepacket store pk1 and pk2 and it is possible to dump data over the communicationchannel only within the periods containing the represented dumping activities.In the left-hand side of Fig. 3 a possible solution of the problem is shown, where

Proceedings of Principles and Practice of Constraint Programming, CP 2003 11

IterativeRandomSampling:

Input: mexmdp instance, termination conditionsOutput: best sequence S∗ of memory dumps over the communication links

1. {2. S∗ ← ∅3. while (termination conditions not met) {4. S ← GreedyRandomSampling(mexmdp)5. UpdateBestSolution(S, S∗)6. }7. }

Fig. 4. An algorithmic template for iterative sampling

both the level of data in the packet stores and the turnover times TT1 and TT2

are represented. After the application of the move operator 6 a new solution isobtained (shown in the right part). The new value of TT1 improves the averageturnover time.

Meta-Heuristic Strategies. Meta-heuristics are obtained by the applicationof two operators on the basic solving components: random iteration, a random-ized version of a core solving procedure is iterated many times until some ter-mination conditions are met; serialization, the output of one procedure becomesthe input of the next one.

The random iteration is defined as the iterative random sampling strategy ofFig. 4 which samples the space of feasible solutions until a termination conditionis met. Solutions are sampled by a randomized version of the greedy procedure(called GreedyRandomSampling()) which incrementally generates a solution ora failure. The overall process generates a stream of feasible solutions with differ-ent values of the objective function (together with a set of failures). When theprocedure stops, the best solution is returned. It is worth noting that the inte-gration of a propagation mechanism inside the random sampling has the mainbenefit of increasing the probability of finding feasible solutions during each iter-ation. This property is very useful when the optimization problem is formulatedwithin a set of tight constraints, such that, the set of feasible solutions is sparseover the search space.

The procedure in Fig. 4 takes as input an instance of Mex-Mdp problem(that is, a temporal horizon H, a set of store activities, a description of the com-munication links, and the set of packet stores) together with a set of terminationconditions: for example a maximal number of iterations or a cpu time bound.The output of the algorithm is the best sequence S∗ of memory dumps over thecommunication link consistent with all the domain constraints or a failure, inthe case no iteration finds a feasible solution. The iterative sampling procedure

6 Basically it performs a swap of data packets over the communication link.

12 Proceedings of Principles and Practice of Constraint Programming, CP 2003

is composed by these main steps: a random seed is generated and then used bythe procedure GreedyRandomSampling(), after each random sampling, the bestsolution found so far is stored in S∗.

The next experimental section evaluates the iterative random sampling pro-cedure together with two other strategies obtained by serialization: greedy andtabu search, iterative random sampling and tabu search.

5 Evaluation

An important step in the evaluation of a set of different solutions is to selecta touchstone. Since it is not possible to easily obtain a reference set of optimalsolutions for our Mex-Mdp benchmark instances, we choose to analyze the per-formance of the solving procedures through a lower bound of the Mean TurnoverTime. In particular, in order to find a representative lower bound we considertwo relaxed formulation of Mex-Mdp:

– first, we consider the relaxed version of the problem such that each packetstore has an infinite capacity and there are no chain constraints among theactivities. Under this hypothesis, the problem can be reduced to a classicaloptimization scheduling problem of minimizing the mean flow time (in ourcase called MTT ) on a single machine (i.e., the communication channel)where preemption is allowed. For this problem a polynomial strategy whichgives the optimal value is known 7,

– the second relaxed version of Mex-Mdp considers that each packet storehas a dedicated communication channel with identical characteristics to theoriginal one. In this way any linear sequence of activities (chain) which storesdata in a packet store has a dedicated channel for data dumping and theoptimal solution can be easily computed in polynomial time.

Hence, we define the lower bound of Mex-Mdp as the maximal value of themean turnover times for the two relaxed formulations of the problem.

Experimental Results. During our study different benchmark sets have beengenerated based on the test data provided by the ESA mission planning experts.However, in this section we just present the results for one of these benchmarksets, which can be seen as the most critical with respect to, on one hand, thecompetition among the packet stores for the same channel bandwidth, and withrespect to the limited capacity of the packet stores in comparison to the amountof generated data on the other. All the algorithms presented in this paper areimplemented in Java 1.4.1 and the cpu times presented in the following tablesare obtained on a Pentium III machine under Windows 98. A more completeexperimentation and analysis can be found in [1]. In this section we consideronly the Mean Turnover Time (MTT) and present five different types of result:

7 Shortest Remaining Processing Time (SRPT) [10].

Proceedings of Principles and Practice of Constraint Programming, CP 2003 13

pr. # pr. size greedy no propagation greedy+tabu random sampling rs+tabu1 60 143,39 - 126,28 15,63 14,992 66 48,30 - 45,80 10,30 9,253 86 333,73 333,73 164,61 42,77 40,674 76 357,18 357,18 164,22 47,77 44,645 87 271,95 271,95 133,30 31,38 30,316 66 138,14 - 128,58 15,44 13,637 66 140,24 - 134,63 13,00 10,598 58 140,34 - 120,55 16,52 14,959 81 272,36 272,36 171,97 29,63 29,1410 62 155,84 - 147,61 18,34 18,0511 66 - - - 25,10 22,5712 91 311,81 311,81 139,79 41,45 40,0913 96 295,14 295,14 149,02 39,01 38,1914 56 136,93 - 116,92 16,26 14,9815 71 324,43 324,43 169,66 34,50 33,7716 15 26,80 26,80 26,80 11,38 10,2117 12 34,28 34,28 34,28 14,32 12,83

Table 1. Each column represents percentage difference between the solution obtainedwith each approach and the lower bound.

– the lower bound of the MTT values,– the values generated by the greedy (one-pass) strategy with the best combi-

nations between the two levels of priority rules (see Section 4),– the values generated by the greedy strategy without the support of the do-

main filtering rules,– the best MTT values obtained with the application of the iterative sampling

optimization strategy (the number of iterations is set to 100),– the results of the application of the tabu search procedure 8 to the solutions

obtained with the greedy algorithm and to the best solution found by therandom sampling algorithm.

Table 1 presents the performance results for the solving procedures described inSection 4. Basically we evaluate and combine two types of metaheuristic strate-gies: improving an initial solution by local search and performing a broad randomsampling of the search space. A third one is a combination of the previous two.The experimental data show how the tabu search procedure always improvesan initial solution, even if we have different levels of improvement according todifferent methods used to construct the initial solution. When tabu search isapplied to the iterative sampling solutions, indeed, the improvement is muchless than what we obtain on the greedy solutions. That different behavior isjustified by the fact that the iterative sampling approach is an effective solutionmethod in itself for this kind of optimization problems. In fact, as it possible tosee in Table 1, the solutions are quite close to the lower bound values. However,from these experiments we can draw an additional conclusion about the tabusearch. Even if we have introduced a definition of move which is quite “natural”for the problem - we move data packets forwards and backwards in time (see

8 In particular, the tabu-list has a length set to 7 and the procedure stops when amaximal value of 100 neighborhoods are searched without solution improvement.

14 Proceedings of Principles and Practice of Constraint Programming, CP 2003

pr. # greedy greedy+tabu random sampling rs+tabu1 0,20 13,72 14,41 26,042 0,20 8,24 14,07 25,393 0,13 47,54 14,96 50,214 0,12 64,85 14,70 45,365 0,11 46,47 12,40 36,596 0,15 8,01 14,77 27,337 0,14 10,86 15,07 26,978 0,14 16,91 14,71 25,109 0,10 19,01 12,67 44,2510 0,13 11,25 13,99 25,2111 - - 13,37 30,6512 0,12 28,17 14,96 41,0413 0,13 37,41 14,93 37,5814 0,13 16,35 14,57 26,6115 0,10 26,63 12,47 27,5616 0,10 4,90 12,64 24,5417 0,10 4,84 12,63 19,59

Table 2. cpu time (sec.)

Fig. 3) - the local search can easily get stuck in local minima. In other words, thestructure of the search space is probably weakly (or not at all) connected withrespect to the move definition. That is, due to the rich set of constraints of Mex-Mdp, it is quite difficult (or impossible) to reach a near-optimal solution froma generic feasible solution through a sequence of move applications. This fact isconfirmed by the cpu results reported in Table 2. As it is possible to see, therandom sampling strategy shows the best trade-off between solution quality andcpu times compared to the tabu search performances. In fact, a broad randomsampling strategy, as the one introduced in this work, is quite effective when thesearch decisions are correctly driven in the right direction by the propagationrules. This last aspect is underlined in Table 1 where the performance resultsof the greedy strategy without propagation rules are shown in the column la-beled no propagation. The reader can see the main contribution of the deductionrules. Indeed, almost half of the problem instances are not solved because of thelack of propagation (for example, see the “-” reported for instances #1, #2 or#7). This proves the fundamental role of propagation rules: indeed, at each stepthey propagate the effects of current decisions on future ones, thus predictingunsuccessful decision branches.

6 Conclusions

This paper has presented a CSP approach to a real problem in the context ofspace missions. It is worth reminding that in Mars-Express the synthesis ofmemory dumping spacecraft operations is an activity which is decided manuallyby a human planner, for the entire life-cycle of the mission. In the study forMars-Express we have formalized the problem as a Mex-Mdp, and producedas set of algorithms grounded on a CSP representation. In addition, the algo-rithms described in this paper have been integrated in a decision support systemthat has been delivered to ESA in May 2002. The tool, called Mexar [11], is

Proceedings of Principles and Practice of Constraint Programming, CP 2003 15

an interactive system which allows the user to obtain solutions for Mex-Mdpproblems. In the process of doing so, the mission planner is given the opportu-nity to inspect different features of the solution. Mexar is a CSP tool whichbasically solves difficult problems for the human planner, but maintaining thecontrol over the strategic decisions in the hands of the user.

From the study the authors have derived an important experience in facingthe realm of space missions, a working environment in which criticality is thename of the game. They have also drawn a number of directions for furtherresearch on Mex-Mdp. At present the synthesis of different moves for the tabusearch is being studied to obtain a more effective use of the neighborhood. Thiswould enable both a reduction of the cpu time and the implementation of a fullgrasp metaheuristic strategy.

Acknowledgements. This work could not have been possible without the sup-port at ESA-ESOC of both the project officer Fabienne Delhaise and the Mars-Express mission planners Michel Denis, Pattam Jayaraman, Alan Moorhouseand Erhard Rabenau. We also would like to thank Prof. J.K. Lenstra for hisuseful notes about the complexity of the single-machine scheduling problem re-ported in Section 2.

References

1. Cesta, A., Oddi, A., Cortellessa, G., Policella, N.: Automating the Generationof Spacecraft Downlink Operations in Mars Express: Analysis, Algorithms andan Interactive Solution Aid. Technical Report MEXAR-TR-02-10 (Project FinalReport), ISTC-CNR [PST], Italian National Research Council (2002)

2. Verfaillie, G., Lemaitre, M.: Selecting and Scheduling Observations for Agile Satel-lites: Some Lessons from the Constraint Reasoning Community Point of View. In:Principles and Practice of Constraint Programming - CP 2001 - LNCS 2239. (2001)

3. Bensana, E., Lemaitre, M., Verfaillie, G.: Earth Observation Satellite Management.Constraints: An international Journal, 4 (1999) 293–299

4. Resende, M., Ribeiro, C.: Greedy Randomized Adaptive Search Procedures. InGlover, F., Kochenberger, G., eds.: Handbook of Metaheuristics. Kluwer AcademicPublishers (2002) 219–249

5. Motwani, S., Raghavan, P.: Randomized Algorithms. Cambrige University Press,New York, NY (1995)

6. Graham, R.L., Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G.: Optimizationand Approximation in Deterministic Sequencing and Scheduling: a Survey. Annalsof Discrete Mathematics 4 (1979) 287–326

7. Lenstra, J.K.: Notes from Berkeley, July 11, 1980. Personal Communication (2002)8. Tsang, E.: Foundation of Constraint Satisfaction. Academic Press, London and

San Diego, CA (1993)9. Glover, F., Laguna, M.: Tabu Search. Kluwer Academic Publishers, Boston (1997)

10. Lenstra, J.K., Rinnooy Kan, A.H.G., Brucker, P.: Complexity of Machine Schedul-ing Problems. Annals of Discrete Mathematics 1 (1977) 343–362

11. Cesta, A., Cortellessa, G., Oddi, A., Policella, N.: A CSP-based Interactive DecisionAid for Space Mission Planning. In: Proceedings of AI*IA ’03. Lecture Notes inArtificial Intelligence, Springer (2003)