An Efﬁcient Local Search Heuristic for Earth Observation Satellite Integrated Scheduling

: Earth observation satellites (EOSs) are taking a large number of pictures with increasing resolution which produce massive image data. Satellite data transmission becomes the bottleneck part in the process of EOS resource management. In this paper, we study the earth observation satellite integrated scheduling problem (EOSIS) where the imaging activities and download activities are considered integratively. We propose an integer linear programming model to formulate the problem. Due to the NP-hardness of the problem, we propose an efﬁcient local search heuristic (ELSH) to solve problems of large size. ELSH uses a dedicated local search method to guarantee algorithm performance and efﬁcient constraint handling mechanisms to guarantee algorithm efﬁciency. Numerical experimental results show that the algorithm demonstrates excellent performance on a set of benchmark instances. The ELSH achieves optimal results for all small-size instances (with 50 targets, two satellites, and three ground stations), and is very robust for large instances with up to 2000 targets. Moreover, the proposed ELSH easily dominates the state-of-the-art algorithm.


Introduction
Earth observation satellites (EOS) are playing an increasingly important role in economic development, disaster countering, surveillance, and many other fields for both military and civilian purposes [1][2][3]. Satellites take pictures by their optical devices and send the data back to the ground for various purposes. With the development of technology, the resolution of the satellite camera is getting higher and higher. The massive image data impose a heavy burden on the transmission of data from satellites to the ground. Therefore, it is important to consider data transmission when managing satellite imaging activities.
Satellites need more time to send the data back to the ground, and data transmission management is certainly an important part of the satellite scheduling. In reality, the scheduling of EOSs with separate considerations for imaging and data transmission is quite difficult because the two operations are highly coupled [4]. There are many studies on the scheduling of satellites, but few have considered the data transmission activities integrated with the imaging ones. Most studies consider data transmission and imaging activities individually. The data transmission plan is usually created after the plan of imaging activities is determined. The satellite scheduling problem is actually divided into two subproblems: imaging scheduling given a set of user requests and data transmission scheduling given an imaging plan. Such a scheme will be easily trapped in a local optimum and therefore influences the final outcome of the algorithm.
In this paper, we consider the earth observation satellite integrated scheduling problem (EOSIS), whose output is an imaging plan as well as a data transmission plan. We first provide an integer programming model to formulate the problem. As EOSIS is a very complicated problem and an exact approach can only solve problem instances of very limited size, we propose an efficient local search heuristic (ELSH) to solve the problem of realistic size. We also present numerical studies to illustrate the excellent performance of the proposed ELSH.
The rest of the paper is organized as follows. Section 2 presents a detailed literature review on relative topics. Section 3 is the problem description. The proposed ELSH is introduced in Section 4 and experiments are presented in Section 5.

Literature Review
The earth observation satellite scheduling problem has attracted intensive research attention over the last two decades. They mostly focused on the scheduling of imaging activities. Ref. [5] proved that the scheduling of earth observation satellites is an NP-hard problem and proposed three simple heuristic approaches to solve the problem. Ref. [6] proposed a branch and bound algorithm for onboard satellite scheduling, and Ref. [7] used branch and price to solve the imaging scheduling problem. These exact algorithms can only deal with small-sized problems. Ref. [8] considered a simplified version of the problem and formulated the problem as a MIP model. Ref. [8] introduced several useful cuts to accelerate the solving process.
Due to the complexity and problem scale, most studies investigate the application of heuristics and meta-heuristics to solve the problem, including genetic algorithm [9][10][11][12], adaptive large neighborhood search [13], and other heuristics [14][15][16]. For a review of the planning and scheduling techniques for the EOS scheduling problem, readers could refer to [17].
The satellite data transmission scheduling problem is somewhat less studied. [18] introduced the basic concept and characterisitcs of the satellite data transmission problem. [19] proposed to use a genetic algorithm to solve the problem, and [20] adopted an ant colony algorithm. [21] studied the case where satellites can communicate and transfer data with each other. [22] studied a multiobjective variation of EOSIS. The solution methods applied to this problem mainly focus on heuristics and metaheuristics, due to its NP-hardness nature.
There are few studies on the EOS integrated scheduling where imaging and data transmission are considered simultaneously. Ref. [23] proposed a two-phase genetic annealing method for the EOSIS problem, where a genetic algorithm and a simulated annealing algorithm are combined to solve the problem. However, general-purpose metaheuristics, without adaptation, are not able to perform well on such a complex problem. Dedicated heuristics are usually needed in order to achieve a satisfactory result.
The ELSH we propose adopts several dedicated operators to improve algorithm performance. An efficient constraint handling mechanism is also incorporated to guarantee algorithm efficiency.

Problem Description
The scheduling of earth observation satellite is an NP-hard problem [5]; therefore, the EOSIS problem is also an NP-hard problem. Basically, satellites need to orbit around the earth and take pictures when they pass by a requested ground target. We call such a time interval when a requested target is visible to a satellite as a visible time window (VTW). Then, satellites download the image data to the ground when they pass by a ground station. Similarly, we define the time interval when a satellite is visible to a ground station as a download window (DW). The problem is defined by the following components: 1. a set of satellite resources A. Each satellite a is associated with an onboard memory capacity m a , an imaging data rate p a , a transmission data rate b a and a set of download time windows (DW) O a . 2. a set of user observation request R. Each request r is characterized by an observation profit p r , a minimal observation duration d r , and a set of visible time window (VTW) V t .
The EOSIS problem consists of selecting a subset of user requests and arranging observations within their available VTWs. The objective is to maximize observation profit without violating any constraint.

Mathematical Formulation
An observation activity is to be arranged within a VTW and a download activity within a DW. The basic elements of scheduling are VTWs and DWs. We use V to represent the union of available VTWs of all user requests and D to represent the union of all download windows. For simplicity, we define N = V ∪ D. A VTW i is associated with the feature of the corresponding request: p i , d i . p i is the profit, and d i is the minimum duration to accomplish the observation. For a satellite a to accomplish the request, the total occupied memory is the imaging data rate times imaging duration, d i p a . The total time required for downloading the image is d i p a b a . The start and end of a VTW or a DW i are denoted as s i and e i .
We use matrix H to identify the associated user request of a VTW and H ir equals 1 when VTW i is associated with request r, 0 otherwise. Matrix U indicates the associated satellite and U ia equals 1 if VTW i is associated with satellite a, 0 otherwise. As the VTW and DW are continuous time intervals, we discretize these time windows uniformly into K time points and we define K = {1, 2, ..., K}. TT k ij is the time required for a EOS to maneuver from i to j, starting at the k th time point of i.
We use the following decision variables to build our MIP model: 1. y i : is a binary variable that equals 1 if window i(VTW or DW) is included in the observation plan, 0 otherwise. 2. x ij : is a binary variable which equals 1 if a satellite reaches window j after i, 0 otherwise. 3. z k ij : is a binary variable which equals 1 if a satellite visits window j after i, leaving i at the k th time point of i, 0 otherwise. 4. s i : indicates the time instant at which the observation or download activity at window i starts. 5. w i : indicates the memory level of a EOS at VTW i. 6. t l : indicates the transmission duration of a download activity l.
Given the above definitions, we present an integer linear programming (ILP) model for the EOSIS problem: The goal of the EOS scheduling problem is to maximize the total profit. Constraint 3 ensures the integrity and validity of the observation schedule. Constraint 4 indicates the fact that each target should only be observed once.
Time constraints is modeled by 5 and 6. Constraint 5 models the time consumed by maneuver operation and imaging process. Constraint 6 is the VTW constraint.
Memory constraints are modeled by 7 and 8. Constraint 7 models the memory consumed by imaging process. Constraint 8 models the change of onboard memory level by download activity.
Constraints 9 and 10 define the relationship between three binary decision variables.
Given the above ILP model, the preliminary experimental results showed that CPLEX is able to solve instances with very limited size given a time limit of five hours. To solve large-sized real-life problems, we resort to a heuristic local search method introduced in the next section.

An Efficient Local Search Heuristic for Earth Observation Satellite Integrated Scheduling
In this section, we present an efficient heuristic for satellite integrated scheduling. First, we introduce a fast evaluation mechanism where constraint violation can be identified and evaluated with O(1) complexity. Then, we propose a local search heuristic to solve the EOSIS problem. The fast evaluation mechanism serves as a core component to guarantee the efficiency of the algorithm.

A Fast Constraint Evaluation Mechanism
In [24] a fast constraint verification mechanism was proposed by introducing the concept of Valid Observation Time Interval (VOTI). The VOTI allows fast verification of VTW constraints for insertion operation. We extend this idea in the context of memory constraint and constraint violation so that the constraint can be verified and evaluated with O(1) complexity in case of violation.

VTW Constraint
In [24] the concept of Valid Observation Time Interval (VOTI) was proposed, which allows fast verification of the VTW constraint for insertion neighborhood in the context of satellite imaging scheduling. For each observation, its VOTI is a time interval during which at least one feasible observation start time is available without violating the VTW constraint of any other observations in the schedule.
We follow the definition of the VOTI proposed by [24] and denote it for a window v as is the time interval during which the observation of v can start without violating the VTW constraint of any other observation in the schedule. For two consecutive windows v 1 and v 2 (VTW or DW), we define Transition (v 1 , v 2 , t) as the transition time from v 1 to v 2 when starting maneuvering at t. We define the violation in the VTW constraint of a schedule σ as TV(σ). Then, for an insertion where v 2 is inserted after v 1 , the increased violation of VTW constraint, TV(σ), and the violation level at v 2 are calculated as: where d 1 is the observation duration of v 1 . In this way, we can validate the VTW constraint in constant time and calculate the violation in the case of infeasibility. For each pair of consecutive VTWs v 1 and v 2 , the concatenation v 1 ⊕ v 2 also requires the updating of ES(v 2 ) and LS(v 1 ). The rule is as follows: where Transition −1 () is the reverse function of Transition(). Transition −1 (v 1 , v 2 , LS(v 2 )) returns the transition start time from v 1 , which makes the arrival time at v 2 equal to LS(v 2 ).
Each time a new VTW is inserted, it is necessary to update the value of ES(v) for each v before v 1 and the value of LS(v) for each v after v 2 . Note that, if a VTW violation is related to a VTW, v, then [ES(v), LS(v)] is reduced to a number and ES(v) = LS(v).

Memory Constraint
The evaluation of memory constraint is relatively easy since it is not related to transition activity. Let M(v) be the memory level at current window v and MV(v) be the violation of memory constraint. For an insertion which inserts v 2 after v 1 , the memory level and violation at v 2 can be calculated as where MV = max(0, MC − M(v 1 )). MC is the memory consumed by v 2 . MC = d 2 p a if v 2 is an observation window. Note that download activity inevitably increases the memory level onboard and MC = −t l b a (negative value) if v 2 is a download window.

Evaluation of a Schedule
Given the above feature values, we can evaluate a schedule σ easily as: where ρ 1 , ρ 2 are penalty parameters and c is a penalty parameter multiplier. The evaluation of a schedule is the sum of the total profit and penalties on constraint violation and resource consumption.
In this way, we can evaluate an insertion with O(1) complexity and improve the efficiency of our algorithm.

An Efficient Heuristic for EOS Integrated Scheduling
In this section, we present an efficient heuristic for the EOSIS problem. We first introduce its general framework and then several main components.

General Framework
The proposed heuristic is essentially a stochastic local search algorithm [25]. Starting from an initial solution provided by a greedy construction heuristic, the algorithm alternates between an improvement phase and a perturbation phase. In the improvement phase, the algorithm conducts a directed and focused search by accepting only improving insertions. When a local optimum is reached in the improvement phase, the algorithm triggers a perturbation phase to help the search process escape from the local trap and restarts an improvement procedure in a different zone of the search space. Such an Improvement-Perturbation cycle is iterated for π rounds. The best solution is updated each time a new local optimum is attained at the end of the improvement phase. The first half of the iterations are run with a small violation penalty multiplier c 1 to diversify the search. While for the other half of the iterations, the algorithm is run with a large violation penalty c 2 to guarantee the feasibility of the resulting schedule. The general framework of the SFHA is shown in Algorithm 1.

Solution Initialization
The initial solution is produced by a greedy construction algorithm. The algorithm first sorts all VTWs (associated with requests) in decreasing order of their profits and in ascending order of their start time. For each VTW, the algorithm arranges observation of the associated request at the earliest possible start time that satisfies all imperative constraints. If the memory level drops below zero at a new VTW, the algorithm finds the nearest download window and inserts a download activity into the schedule. Observation activities that conflict with the download activity are then removed from the schedule to ensure the feasibility. This process is terminated until all requests are examined.

The Improvement Procedure
The aim of the improvement procedure is to attain a local optimum solution (as good as possible) in a given neighborhood. In this paper, we propose to use an Insertion neighborhood, which is induced by a Insertion operator. It can also be regarded as a hill-climbing process [26][27][28].
• Insertion: insert a window (VTW or DW) into a schedule. Constraint violation is allowed and the amount of violation is evaluated when this occurs.
The pseudo-code of the improvement procedure is shown in Algorithm 2. The algorithm repeatedly considers all possible insertions and chooses the best one. Such a greedy strategy can help the solution achieve better quality at the current stage. The algorithm continues until no improvements can be found (improvement is evaluated according to Equation (17)). Collect all windows that are not included in σ and denote the set as S; 3: bestScore ← 0; 4: for each window v in S do 5: Insert v into σ and the new solution is σ ; 6: if Eva(σ , c) − Eva(σ, c) > bestScore then 7: bestScore ← Eva(σ , c) − Eva(σ, c); 8: end if 9: end for 10: if bestScore > 0 then 11: Insert the window with the best score; 12: else 13: Break; 14: end if 15: end while 16: return σ * ;

The Perturbation Phase
When the algorithm is trapped in a local optimum, a mechanism is needed to help the search escape from the trap and restart the search from a new starting point. To establish a more global form of diversification, and thereby reinforce the capacity of the algorithm to explore unexplored areas in the search space, we propose a dedicated perturbation mechanism.
The general idea of the proposed perturbation is to remove a set of selected requests within the solution so that new insertions may be possible. To do this, we resort to a set of destroy operators coupled with a tabu mechanism. Specifically, we use four remove operators: • Random removal: Select q requests from a given solution (schedule) randomly and remove them; • Priority removal: Iteratively removes the request with the lowest profit until the request bank is full; • Opportunity removal: Iteratively removes the request with the largest number of VTWs; ties are first broken by profit (smaller profit requests are prioritized) and then randomly; • Conflict removal: Iteratively removes the request with the largest conflict degree, which is provided by a conflicting measure proposed in [29].
Removed requests are taboo and not allowed to be inserted into the solution in the next iteration. Each time when a perturbation is triggered, it is realized by the combined use of a removal operator randomly selected from the four candidates.

Experiment
In this section, we present the numerical results. First, we report the algorithm performance on small instances. Then, we report the comparative results with a state-of-the-art algorithm on larger instances.
The performance of the proposed ELSH algorithm relies on a set of correlated parameters. To achieve a reasonable tuning of the parameters and a good algorithm performance, we adopt the iterated F-race (IFR) method, which allows an automated parameter configuration [30]. Table 1 presents the final values for each parameter, together with the range of values determined by preliminary experiments. We use the two-satellite 1000-node instances of area distribution as the training set, and the tuning budget is set to be 1000 runs of ELSH. The experiment is coded in C++ and conducted on a Linux cluster system with an AMD Opteron 4184 processor (2.8 GHz and 2 GB RAM) running Ubuntu 12.04. All the results presented in this section is an average of 10 independent runs.

Problem Instances
We extend the benchmark instances proposed by [13] by including three well-known Chinese ground stations, namely JiaMusi, KaShi, and SanYa, whose precise locations can be found in [23]. In these instances, the VTWs for thousands of targets are provided. The benchmark set consists of two distributions: area distribution and world distribution. Targets are generated randomly in a square area around China in the area distribution. Figure 1 presents an example of area distribution with 200 targets. The world distribution means the targets are selected randomly around the surface of the earth. The satellite number varies from 2 to 6 for each scenario. This makes 50 instances for each distribution. As CPLEX can only solve small-size instances, we create a set of new instances following the method of [13], each of which contains 50 targets and two satellites for area distribution. The ground stations are still JiaMusi, KaShi, and SanYa.

Results on Small Instances
First, we solve the model introduced in Section 3 by CPLEX on the small instances we created. The VTWs are discretized with a step of 10 s when using CPLEX (e.g., a VTW of 100 s contains 11 time points). We compare the results with those of the proposed heuristic algorithm, and the results are shown in Table 2. Table 2. Comparison with CPLEX on the set of 2-satellite, 50-node area distribution instances. Columns CPLEX and ELSH give the optimal solution found by CPLEX and the average result of ELSH, respectively. All the results of these two columns are associated with two numbers. The first number is the total number of targets observed and the second number is the final profit achieved. Columns Dev show the deviation between the best value found by ELSH algorithm and the optimal value found by CPLEX (100% * CPLEX−ELSH CPLEX ).  Table 2, the proposed ELSH algorithm can achieve optimal results for all instances. The average running time of CPLEX are 2.1 h while the average running time of the ELSH algorithm is 2.4 s.

Instance ID CPLEX ELSH
From the results, we conclude that the proposed ELSH is able to handle small instances very efficiently and achieve optimal results easily.

Comparison with the State-of-the-Art Algorithm
To further validate the effectiveness of the proposed ELSH algorithm, we compare the ELSH algorithm with the state-of-the-art two-phase genetic annealing algorithm (TPGA) proposed by [23], which, to the best of our knowledge, is the most recent and best-performing algorithm which was designed to solve exactly the same problem as is studied in this paper. Tables 3 and 4 present respectively the comparison of observed target number and total profit achieved by the two algorithms on area distribution instances. Tables 5 and 6 show the results for instances of world distribution.  Table 4. Comparison with TPGA on the total profit on area distribution instances.
We draw a similar conclusion on world distribution instances. ELSH shows a great advantage over the TPGA. The average improvement compared to TPGA is up to 13.68%.
In conclusion, the ELSH demonstrates excellent performance on all benchmark instances and easily dominates the state-of-the-art algorithm.

Conclusions
In this paper, we study the earth observation satellite integrated scheduling problem (EOSIS) which considers the imaging activity and data transmission activity integratively. This is a realistic problem and includes complicated constraints. We develop an integer linear programming model to formulate the problem. With this model, we used CPLEX to solve the problem, and the results show that CPLEX is only able to solve a small-sized problem.
Due to the complexity of the problem, we propose an efficient local search heuristic algorithm (ELSH) to solve instances of large size. The proposed ELSH is characterized by an efficient constraint handling mechanism to improve algorithm speed and a dedicated improvement-perturbation procedure to guarantee the quality of results.
Experiments were conducted to illustrate the excellent performance of the proposed ELSH. In particular, it is able to achieve optimal solution quickly for small instances with less than 50 targets and two satellites, and dominates the state-of-the-art algorithm on large instances with up to 2000 targets.
For future work, we would like to investigate more problem-tailored heuristics and further improve the performance of the algorithm.