# Imaging-Duration Embedded Dynamic Scheduling of Earth Observation Satellites for Emergent Events

Authors: Xiaonan Niu; Hong Tang; Lixin Wu; Run Deng; Xuejun Zhai
Journal: Mathematical Problems in Engineering
 (2015)

---

## Abstract

We present novel two-stage dynamic scheduling of earth observation satellites to provide emergency response by making full use of the duration of the imaging task execution. In the first stage, the multiobjective genetic algorithm NSGA-II is used to produce an optimal satellite imaging schedule schema, which is robust to dynamic adjustment as possible emergent events occur in the future. In the second stage, when certain emergent events do occur, a dynamic adjusting heuristic algorithm (CTM-DAHA) is applied to arrange new tasks into the robust imaging schedule. Different from the existing dynamic scheduling methods, the imaging duration is embedded in the two stages to make full use of current satellite resources. In the stage of robust satellite scheduling, total task execution time is used as a robust indicator to obtain a satellite schedule with less imaging time. In other words, more imaging time is preserved for future emergent events. In the stage of dynamic adjustment, a compact task merging strategy is applied to combine both of existing tasks and emergency tasks into a composite task with least imaging time. Simulated experiments indicate that the proposed method can produce a more robust and effective satellite imaging schedule.


---

## Body

## 1. Introduction

Recently, earth observing satellites (EOSs) are widely used in applications for national defense, environmental protection, agriculture, meteorology, urban construction, and other fields. However, satellite resources are still scarce with respect to the increasing human demands for imaging. As a result, the process of satellite mission scheduling, which is used to allocate the observation resources and execution time to a series of imaging tasks by maximizing one or more objectives while satisfying certain given constraints, plays an important role in the management of satellites. The scheduling can be primarily divided into static scheduling and dynamic scheduling. The static scheduling assumes that all imaging tasks have been submitted before scheduling, and once the scheduling scheme is produced, it is immutable until all tasks have been finished. In practice, because of several unexpected factors, such as a thick cloud cover, resource changes, and new tasks arrival, the initial scheduling scheme must be adjusted dynamically; such scheduling is called dynamic scheduling. However, either static scheduling or dynamic scheduling is a complex combination optimization problem that has been proved to be NP-complete [1].Over the last several decades, development of methods to perform satellite mission scheduling has been intensively investigated, most of which are focused on the static scheme. The algorithms to solve the problem can be mainly divided into exact methods and approximate methods. The approximate methods include the intelligent optimization algorithms and rule-based heuristic algorithms. The exact methods, such as dynamic programming, the branch-and-bound algorithm, and the Russian Doll Search, were used mostly at the early stage of satellite scheduling. Verfaillie et al. viewed earth observation satellite scheduling as a valued constraint satisfaction problem and developed the Russian Doll Search to solve it [2]. Ovacik and Uzsoy decomposed the scheduling problem into many subproblems and solved these subproblems to the optimality by a branch-and-bound algorithm [3]. Bensana et al. applied a number of global search approaches, including the depth first branch-and-bound algorithm, the best first branch-and-bound algorithm, and the Russian Doll Search, to obtain the solution for the Spot5 daily scheduling problem [4]. The exact methods can provide optimal solutions. However, these exact methods can only solve small-scaled problems. The approximate methods, that is, the intelligent optimization algorithms and rule-based heuristic algorithms, are aimed at identifying good solutions that may not be optimal. The intelligent optimization algorithms primarily included the Tabu search algorithm, the genetic algorithm, the evolutionary algorithm, simulated annealing, the Lagrangian relaxation technique, and the hybrid ant colony optimization method. Vasquez and Hao translated the scheduling problem into the well-known knapsack model. They proposed a Tabu search algorithm to solve the model [5]. Bianchessi et al. investigated the scheduling problem for a constellation of agile satellites. A Tabu search algorithm was devised to produce solutions [6]. Baek et al. applied a new genetic algorithm for simulations of an actual satellite mission scheduling problem [7]. Mansour and Dessouky developed a genetic algorithm for solving the scheduling problem using a new genome representation for maximizing multicriteria objectives including the profit and the number of acquired photographs [8]. Globus et al. hypothesized that evolutionary algorithms can effectively schedule coordinated fleets of earth observing satellites and compared the evolutionary algorithm and other methods to test the hypothesis [9]. Wang et al. proposed a multiobjective EOS imaging scheduling method based on the Strength Pareto Evolutionary Algorithm-II [10]. Lin et al. adopted the Lagrangian relaxation and linear search techniques to solve the daily imaging scheduling problem to acquire a near-optimal solution [11]. Wu et al. proposed a hybrid ant colony optimization mixed with local search to obtain satisfactory schedules to address the satellite observation scheduling problem [12]. Zhang et al. presented an algorithm for a multisatellite control resource scheduling problem based on ant colony optimization [13]. These intelligent algorithms, as mentioned above, can be used to obtain near-optimal solutions for large size problems. In addition, rule-based heuristic algorithms have been used to solve the satellite scheduling. Hall and Magazine designed eight heuristic methods for selecting and scheduling projects to maximize the value of a space mission. The computational tests revealed that these methods routinely delivered very close to optimal solutions [1]. Wang et al. presented a nonlinear model of the scheduling problem and developed a priority-based heuristic with conflict-avoided, limited backtracking and download-as-needed features to solve it. They found the heuristic method can produce satisfactory and feasible plans in a notably short time [14]. The rule-based heuristic methods are more flexible approaches to obtain satisfactory solutions that are close to optimal solutions. To summarize, the approximate methods can provide near-optimal solutions to large-scaled problems.However, all of the above research studies only focused on common tasks in a static environment. Once a schedule is made, it cannot be changed, which is not feasible in dynamic environment. For example, when an earthquake occurs, new emergency tasks with high priority are very difficult to insert into the scheduling scheme. Therefore, determining how to schedule new tasks dynamically is critical. The general method of recent research is to produce a temporary schedule and then to adjust the schedule as quickly as possible while maintaining the efficiency and stability of the schedule as well. Verfaillie and Schiex modeled the dynamic satellite scheduling as a dynamic constraint satisfaction problem. They proposed a new method by reusing any previous solution and producing a new one by local changes on the previous one [15]. Wu et al. used a hybrid ant colony optimization method mixed with iteration local search to obtain a schedule. Next, they proposed a repair method to schedule emergency tasks [16]. Qiu et al. decomposed scheduling horizon into a series of static scheduling intervals and used a rolling horizon strategy to optimize the scheduling schemes in each interval [17]. Sun et al. described the dynamic scheduling problem as a dynamic weighted maximal constraint satisfaction problem in which constraints can be changed dynamically [18]. Wang et al. analyzed the dynamic properties of satellite scheduling and proposed two heuristic algorithms to schedule new tasks [19]. Wang et al. described the dynamic scheduling problem with a unified form of inserting new tasks. Concentrating on how to insert new tasks in initial schedule, they proposed a rule-based heuristic algorithm [20]. Wang et al. focused on how to insert new tasks dynamically in a schedule. These researchers presented a new dynamic real-time scheduling algorithm considered a task dynamic merging strategy [21].Unfortunately, to the best of our knowledge, no work has been done with respect to the duration of task execution. In addition, less work considered a task merging mechanism in dynamic scheduling. Although some traditional merging methods were studied in a few of previous researches [12, 22–25], these methods did not take into account the duration of task execution. As is known, the duration of task execution indicates how long an imaging task must be observed practically. Since the length of the available visible time windows must be larger than the duration of the task, there often exists some unnecessary time to finish the task. With the consideration of the duration of task execution, more spare time in the schedule will exist, which may provide more imaging opportunities for new tasks. In addition, the task merging strategy using the duration of task can improve the number of tasks for the satellite to finish, thereby enabling many more new tasks to be assigned to an initial schedule.In this paper, we present a novel two-stage method for dynamic scheduling of earth observation satellites to address emergent events by making full use of the duration of imaging task execution. The method is comprised of two stages: robust satellite scheduling and dynamic adjustment. In the first stage, we establish a robust satellite scheduling model that accounts for the total task execution time and use the multiobjective genetic algorithm NSGA-II to create feasible initial schemes. In the second stage, we adjust the robust solution to insert new tasks. The dynamic adjusting rule-based heuristic algorithm (CTM-DAHA) is designed to get a satisfactory schedule which generates high revenue and little disturbance. To improve the imaging efficiency as much as possible, we propose to embed a compact composite task merging method that considers task execution time into the algorithm.The major contributions of this paper are summarized as follows.(
1
) For the first time, the total task execution time is regarded as an indicator to evaluate the robustness of the scheduling schemes. (
2
) A compact task merging method that considers the duration of task execution is embedded into the dynamic scheduling algorithm.The remainder of the paper is organized as follows. The dynamic scheduling problem as well as the two-stage solution framework is described in Section2. In Section 3, we present the robust satellite scheduling model and algorithm. In Section 4, we propose a new heuristic algorithm considering a compact task merging mechanism to dynamically adjust the initial schedule. In Section 5, we conduct experimental simulations and compare different algorithms used for scheduling. We conclude the paper with a summary in Section 6.


## 2. Problem Formulation

In current section, we will firstly introduce the process of satellite observation and task merging method in brief. Then we describe the problem of dynamic scheduling oriented emergent events. Moreover, the framework of two-stage dynamic scheduling method is presented.


### 2.1. Description of Satellite Observation

The satellite scheduling amounts to a reasonable arrangement of satellites, sensors, time windows, and sensor slewing angle for observation tasks to maximize one or more objectives, for example, the overall observation profit, when subject to related constraints. As shown in Figure1, the EOS operates in space in a certain orbit. When the EOS flies over the target area, its sensor is opened to take the image. We assume that the sensors of the EOSs considered in our study are able to slew laterally. A target is termed as a task in this paper. As the imaging process will last a few seconds, it will produce a strip that covers the target. The strip of EOS can be formed on the ground by the subsatellite point of satellite as well as the field of view of the sensor, the slewing angle of the sensor, and the observation duration. The observation duration indicates how long an imaging task must be observed practically. It depends on the satellite’s travelling speed, the sensor’s scanning speed, and the ground strip to be scanned. A task must be imaged by the satellite within the available time windows. Taking as an example task t
3, at the moment t
=
w
s, task t
3 begins to appear in the scope of the EOS, and, with the movement of the EOS, t
3 disappears at the moment t
=
w
e. Therefore, the EOS can observe task t
3 between w
s and w
e; that is, [
w
s
,
w
e
] is a time window of t
3. The time windows (as well as slewing angle) between the satellite and the task can be computed based on orbit parameters. Because the length of the available visible time window must be larger than the duration of the task, there exists unnecessary time within the window to finish the task. With the consideration of the duration of task execution, more spare time in the schedule will exist, which may provide more imaging opportunities for new tasks. Therefore, we view the duration of task execution as an important factor.Figure 1
Illustration of satellite observing activity.If two or more targets are geographically adjacent, we can rationally tune the slewing angle and the observation duration of the sensor to enable an observation strip to cover them. In other words, multiple tasks can be merged into a composite task. Taskst
1 and t
2 can be merged and completed by one observation activity just as Figure 1 shows. Although there are some traditional merging methods in a few previous researches which considered a task merging mechanism [12, 22–25], the duration of task execution, to the best of our knowledge, is out of consideration. By considering the duration of task execution, we propose a new compact task merging method to construct the so-called compact composite tasks in this paper. Specifically, a compact composite task is characterized by the smallest slewing angle, the shortest duration of task execution, and the most compact time window. We describe the details of compact task merging method in Section 4.2.


### 2.2. Dynamic Scheduling

The static scheduling problem is focused on common tasks, which primarily are periodic in a static environment. Once a schedule is made, it cannot be changed until all of the scheduled tasks are completed. Compared to the problem of static satellite mission scheduling, dynamic scheduling oriented emergent events means that there are a number of emergency tasks that must be allocated dynamically. Dynamic scheduling is a more complex combination optimization problem. A general solution to the problem is dynamically adjusting the initial scheduling schemeS
S which is generated in advance to produce a new schedule S
S
∗ containing new tasks. In addition to the objective of high revenue, we have to consider the robustness of the scheduling scheme S
S. Usually the dynamic scheduling problem needs to satisfy two objectives: to maximize the revenue and to minimize the perturbation to the previous scheduling [19, 20].To maintain high revenue of the adjusted scheduling scheme and to minimize the difference between the adjusted schedule and the initial schedule, we account for the robustness of the schedule and propose a two-stage method, which includes robust satellite scheduling and dynamic adjustment. In each stage, the duration of task execution is used.As shown in Figure2, the proposed approach to the dynamic scheduling of satellites consists of two stages: robust satellite scheduling and dynamic adjustment. In the robust satellite scheduling stage, we establish a robust satellite scheduling model with three objectives considering both revenue and robustness. Two of the objectives are related to robustness: optimization of the total task execution time and optimization of the neighborhood-based robust indicator. To solve the model, the multiobjective genetic algorithm NSGA-II is used to obtain robust solutions. In the dynamic adjustment stage, with the arrival of emergency tasks, we dynamically adjust the initial scheduling scheme S
S generated in the first stage. Four methods are used to insert new tasks: compact task merging considering the duration of task execution, direct insertion, insertion by rearranging, and insertion by deleting. Finally, a rule-based heuristic algorithm is designed to get the adjusted scheduling scheme S
S
∗.Figure 2
The framework of the two-stage dynamic scheduling approach.


## 2.1. Description of Satellite Observation

The satellite scheduling amounts to a reasonable arrangement of satellites, sensors, time windows, and sensor slewing angle for observation tasks to maximize one or more objectives, for example, the overall observation profit, when subject to related constraints. As shown in Figure1, the EOS operates in space in a certain orbit. When the EOS flies over the target area, its sensor is opened to take the image. We assume that the sensors of the EOSs considered in our study are able to slew laterally. A target is termed as a task in this paper. As the imaging process will last a few seconds, it will produce a strip that covers the target. The strip of EOS can be formed on the ground by the subsatellite point of satellite as well as the field of view of the sensor, the slewing angle of the sensor, and the observation duration. The observation duration indicates how long an imaging task must be observed practically. It depends on the satellite’s travelling speed, the sensor’s scanning speed, and the ground strip to be scanned. A task must be imaged by the satellite within the available time windows. Taking as an example task t
3, at the moment t
=
w
s, task t
3 begins to appear in the scope of the EOS, and, with the movement of the EOS, t
3 disappears at the moment t
=
w
e. Therefore, the EOS can observe task t
3 between w
s and w
e; that is, [
w
s
,
w
e
] is a time window of t
3. The time windows (as well as slewing angle) between the satellite and the task can be computed based on orbit parameters. Because the length of the available visible time window must be larger than the duration of the task, there exists unnecessary time within the window to finish the task. With the consideration of the duration of task execution, more spare time in the schedule will exist, which may provide more imaging opportunities for new tasks. Therefore, we view the duration of task execution as an important factor.Figure 1
Illustration of satellite observing activity.If two or more targets are geographically adjacent, we can rationally tune the slewing angle and the observation duration of the sensor to enable an observation strip to cover them. In other words, multiple tasks can be merged into a composite task. Taskst
1 and t
2 can be merged and completed by one observation activity just as Figure 1 shows. Although there are some traditional merging methods in a few previous researches which considered a task merging mechanism [12, 22–25], the duration of task execution, to the best of our knowledge, is out of consideration. By considering the duration of task execution, we propose a new compact task merging method to construct the so-called compact composite tasks in this paper. Specifically, a compact composite task is characterized by the smallest slewing angle, the shortest duration of task execution, and the most compact time window. We describe the details of compact task merging method in Section 4.2.


## 2.2. Dynamic Scheduling

The static scheduling problem is focused on common tasks, which primarily are periodic in a static environment. Once a schedule is made, it cannot be changed until all of the scheduled tasks are completed. Compared to the problem of static satellite mission scheduling, dynamic scheduling oriented emergent events means that there are a number of emergency tasks that must be allocated dynamically. Dynamic scheduling is a more complex combination optimization problem. A general solution to the problem is dynamically adjusting the initial scheduling schemeS
S which is generated in advance to produce a new schedule S
S
∗ containing new tasks. In addition to the objective of high revenue, we have to consider the robustness of the scheduling scheme S
S. Usually the dynamic scheduling problem needs to satisfy two objectives: to maximize the revenue and to minimize the perturbation to the previous scheduling [19, 20].To maintain high revenue of the adjusted scheduling scheme and to minimize the difference between the adjusted schedule and the initial schedule, we account for the robustness of the schedule and propose a two-stage method, which includes robust satellite scheduling and dynamic adjustment. In each stage, the duration of task execution is used.As shown in Figure2, the proposed approach to the dynamic scheduling of satellites consists of two stages: robust satellite scheduling and dynamic adjustment. In the robust satellite scheduling stage, we establish a robust satellite scheduling model with three objectives considering both revenue and robustness. Two of the objectives are related to robustness: optimization of the total task execution time and optimization of the neighborhood-based robust indicator. To solve the model, the multiobjective genetic algorithm NSGA-II is used to obtain robust solutions. In the dynamic adjustment stage, with the arrival of emergency tasks, we dynamically adjust the initial scheduling scheme S
S generated in the first stage. Four methods are used to insert new tasks: compact task merging considering the duration of task execution, direct insertion, insertion by rearranging, and insertion by deleting. Finally, a rule-based heuristic algorithm is designed to get the adjusted scheduling scheme S
S
∗.Figure 2
The framework of the two-stage dynamic scheduling approach.


## 3. Robust Satellite Scheduling

Focusing on the common tasks, the robust satellite scheduling model considering both revenue and robustness is constructed in the first stage. It is worth mentioning that we view the total task execution time as another objective to evaluate the robustness of schedule. The multiobjective genetic algorithm NSGA-II is applied to solve the model to get feasible initial schedules.


### 3.1. Model

Given a set of imaging tasks on multiple satellites, a satellite scheduling scheme consists of a subset of tasks to be executed on specific satellites with specific time spans by maximizing objectives while simultaneously satisfying some given constraint conditions. As a result, the satellite scheduling problem usually consists of five parts: tasks, satellite resources, opportunities, objectives, and constraints. In the first stage, the robust satellite scheduling model built in the paper consists of three objectives, that is, maximum revenueR
(
S
S
), maximum value of the neighborhood-based robust indicator N
(
S
S
), and minimum total duration of task execution T
(
S
S
), and four constraints, that is, uniqueness constraint, switch time constraint, time window constraint, and imaging time constraint.(
1) Tasks. Consider T
=
t
1
,
t
2
,
…
,
t
N, where N is the number of tasks. Each task t
i
∈
T has a weight p
i, an indispensable duration of task execution d
i. We assume that all tasks are point targets; that is, each target is viewed as a point that can be observed by a single observations trip.(
2) Satellite Resources. Consider S
=
s
1
,
s
2
,
…
,
s
M, where M is the satellite number. Each satellite s
j
∈
S can be denoted by s
j
=
Δ
θ
j
,
Δ
d
j
,
s
l
j
,
s
t
j
,
m
s
g
j
,
o
r
b
j
,
d
u
t
y
j to describe its observation capability. The related notations are defined as follows:Δ
θ
j: the field of view (FOV), which describes the angle range that a lens of the sensor can image;
Δ
d
j: the longest duration allowed for a continuous observation;
s
l
j: slewing rate, that is, the time consumed for each angle of satellite slewing;
s
t
j: attitude stability time, which describes the required time after adjusting the posture of satellite j;
m
s
g
j: maximum slewing angle, which reflects the observation capability of the satellite j;
o
r
b
j: the duration satellite j that circles the earth each time;
d
u
t
y
j: the longest time for satellite j opening its sensor in each orbit.(
3) Available Opportunities. The opportunities include time windows and slewing angles. A
O
i
j
=
a
o
i
1
j
,
a
o
i
2
j
,
…
,
a
o
i
K
i
j
j is the set of available opportunities of task t
i on satellite s
j. For a given available opportunity a
o
i
k
j, it is represented by a
o
i
k
j
=
w
s
i
k
j
,
w
e
i
k
j
,
θ
i
k
j, where w
s
i
k
j and w
e
i
k
j denote the start time and end time, respectively, of the time window W
i
k
j and θ
i
k
j is the ideal slewing angle, as depicted in Figure 1. W
i
j
=
∪
k
∈
1
,
…
,
K
i
j
W
i
k
j is the set of time windows of task i on satellite j.(
4) Objectives. There are three objectives, that is, maximum revenue R
(
S
S
), maximum value of the neighborhood-based robust indicator N
(
S
S
)
, and minimum total duration of task execution T
(
S
S
), in the robust scheduling model built in the paper.The primary objective is to maximize the revenue measured by the sum of weights of all the scheduled tasks(1)
max
:
⁡
R
S
S
=
⁡
∑
i
=
1
N
∑
j
=
1
M
∑
k
=
1
K
i
j
x
i
,
k
j
p
i
,where x
i
,
k
j is the decision variable that can be either 1 if the task i is executed by the satellite j in the kth time window or 0 otherwise.Lety
i be the parameter that indicates whether the task t
i
∈
S
S can be rearranged in another timeslot(2)
y
i
=
1
,
if task
t
i
can be rearranged in another timeslot
0
,
otherwise
.The second objective is called the neighborhood-based robust indicator [26]. We define this objective as the total revenue of the scheduled tasks that can be reassigned into other timeslots in the schedule. This objective measures the ability of a scheduling scheme to rearrange the scheduled tasks. The higher the value of the neighborhood-based robust indicator, the more the possibility for the rearrangement of the scheduled tasks. Therefore, we maximize the value of the neighborhood-based robust indicator(3)
max
:
⁡
N
S
S
=
∑
i
=
1
N
∑
j
=
1
M
∑
k
=
1
K
i
j
p
i
×
x
i
,
k
j
×
y
i
.Moreover, another robust indicator is the total task execution time. This indicator can reflect the ability of a scheduling scheme to accept new tasks. If the total task execution time is shorter, then there will be more spare time that may provide more imaging opportunities for new tasks. Thus, the last objective is to minimize the total duration of the scheduled tasks(4)
min
:
⁡
T
S
S
=
∑
i
=
1
N
∑
j
=
1
M
∑
k
=
1
K
i
j
x
i
,
k
j
d
i
.(
5) Constraints. In addition to achieving the objectives, four constraints must be simultaneously satisfied in the model.Because each task should be performed no more than once by all satellites, therefore, we have the following uniqueness constraint:(5)
∑
j
=
1
M
∑
k
=
1
K
i
j
x
i
,
k
j
≤
1
.Any two consecutive taskst
u
,
t
v
∈
T assigned to the same satellite s
j should have an adequate transmission time for sensor adjusting and stabilizing gesture. Therefore, we have the switch time constraint(6)
t
s
u
j
+
d
u
+
s
u
,
v
j
≤
t
s
v
j
,where t
s
u
j denotes the beginning time of task t
u and t
r
u
,
v
j
=
s
l
j
×
θ
v
j
-
θ
u
j
+
s
t
j denotes the transmission time between tasks t
u and t
v.The decision variablex
i
,
k
j indicates whether the task i is executed. For each scheduled task in S
S, its beginning time and slewing angle must be determined. All the scheduled tasks form a scheduling scheme S
S
=
∪
j
∈
[
1
,
M
]
T
j, where T
j is a sequence of the scheduled tasks ordered in time for satellite j. Because the length of the time window of a task must be larger than the duration of the task, the start time of the task is flexible. The beginning time usually ranges from the earliest start time to the latest start time. Taking as an example task t
i
∈
T
j, the start time t
s
i
j is related to the time window, the prior task t
j
, and the next task t
k of t
i in the sequence T
j, as shown in Figure 3. We assume that the available opportunity a
o
i
j
=
w
s
i
j
,
w
e
i
j
,
θ
i
j is chosen to arrange task t
i. Thus, the slewing angle of the task is θ
i
j and the start time of the task is t
s
i
j
∈
[
E
S
i
j
,
L
S
i
j
], where E
S
i
j
=
m
a
x
(
E
S
j
j
+
d
j
+
t
r
j
,
i
,
w
s
i
j
) is the earliest start time and L
S
i
j
=
m
i
n
(
L
S
k
j
-
t
r
i
,
k
-
d
i
,
w
e
i
j
-
d
i
) is the latest start time.Figure 3
Illustration of the earliest time and the latest time of scheduled taski for satellite j.If any task is executed, then the execution time should be within its time windows. Hence, we have time window constraint(7)
x
i
,
k
j
t
s
i
j
-
w
s
i
k
j
≥
0
,
x
i
,
k
j
t
s
i
j
+
d
i
-
w
e
i
k
j
≤
0
.The total imaging time of any satellite should be less than the allowable longest imaging time of its sensor during any period time ofo
r
b
j. Let the scheduling period be b
,
f. Hereby, we have the imaging time constraint(8)
∑
i
∈
T
t
b
j
d
i
≤
d
u
t
y
j
,where T
t
b
j denotes a sequence of scheduled tasks on satellite j which flies during the time span t
b
,
t
b
+
o
r
b
j, where t
b
∈
b
,
f
-
o
r
b
j.


### 3.2. Multiobjective Genetic Algorithm

To address the multiobjective optimization model, the multiobjective genetic algorithm NSGA-II is used in this paper. NSGA-II is a multiobjective genetic algorithm that is based on the Pareto front. The algorithm has a clear direction for the selection of the elite, which must be retained in each generation so that the groups converge rapidly and are distributed evenly.Firstly, we make clear some terms that will be referred to in the algorithm. Considering the multiobjective minimization problem in the general form, we define the following definitions [27].Definition 1 (Pareto dominance).
Vectoru
=
(
u
1
,
u
2
,
…
,
u
k
) superior to vector v
=
(
v
1
,
v
2
,
…
,
v
k
) means that ∀
i
∈
(
1,2
,
…
,
k
) has u
i
<
v
i, and ∃
i
∈
(
1,2
,
…
,
k
) makes u
i
<
v
i record as u
i
≺
v
i, also called vector u dominating vector v.Definition 2 (Pareto optimality).
The idea that a candidate solutionx
∈
Ω is the optimal solution of Pareto means that x
∈
Ω makes F
(
x
′
)
≺
F
(
x
). x is a k-dimensional decision variable in the decision space, and F
(
x
) is an objective space.Definition 3 (Pareto optimal set).
Consider(9)
P
=
x
∈
Ω
∣
¬
∃
x
′
∈
Ω
st
F
x
′
≺
F
x
.Definition 4 (Pareto front).
Consider(10)
P
F
=
F
x
∣
x
∈
P
.Definition 5 (nondominated sorting).
PopulationQ is divided into different Pareto fronts depending on the dominance degree. Individuals in each subpopulation Q
j are noninferior solutions of this subpopulation. No individual is more dominant than the other individuals. The set of the first front is that Q
1 is the best nondominated set in population Q. The secondary nondominated set in population Q belongs to Q
2, and so on.Definition 6 (crowding distance).
The crowding distance approaches aim to obtain a uniform spread of solutions along the best-known Pareto front without using a fitness sharing parameter. We compute the crowding distance as follows [28].
Step
1. Rank the population and identify the nondominated fronts F
1
,
F
2
,
…
,
F
R. For each front j
=
1
,
2
,
…
,
R, repeat Steps 2 and 3.
Step
2. For each objective function k, sort the solutions in F
j in the ascending order. Let l
=
|
F
j
| and x
i
,
k represent the ith solution in the sorted list with respect to the objective function k. Assign d
k
(
x
1
,
k
)
=
∞ and d
k
(
x
l
,
k
)
=
∞, and for i
=
2,3
,
…
,
l
-
1 assign(11)
d
k
x
i
,
k
=
f
k
x
i
+
1
,
k
-
f
k
x
i
-
1
,
k
f
k
m
a
x
-
f
k
m
i
n
.
Step
3. To find the total crowding distance d
(
x
) of a solution x, sum the solution’s crowding distances with respect to each objective, d
(
x
)
=
∑
k
d
k
(
x
).After clarifying these definitions, we describe the components of our algorithm: the coding, the initialization population algorithm, and the genetic operators, that is, the selection operator, the crossover operator, and the mutation operator in the following.(
1) The Coding. The proposed chromosome representation is comprised of a number of genes which is a permutation list of the candidate tasks. The first gene and the last gene on a chromosome are virtual tasks, which are used to mark the position where the chromosome begins and ends. Each gene holds a constant structure to store the information of the corresponding task (Figure 5). Take, for example, the task 7 on chromosome 2. As shown in Figure 4, the allele values of 7, 12908, 12949, 12908, 12927, 19, 3, and 2 represent the task ID, the start time of the time window of the task, the end time of the time window of the task, the start observing time of the task, the finish observing time of the task, the duration of the task, the previous task, and the next task, respectively.Figure 4
Coding of chromosome.Figure 5
The structure of genes.(
2) Initialization Population Algorithm. We use a random generation strategy to generate the initial population.Step 1.
Initialize the task IDi
=
1 and individual ID j
=
1. Set M as the size of population and n
t as the number of tasks.Step 2.
Initialize the first individualI
j
=
∅ and then randomly sort the task set.Step 3.
Select taski as a candidate.Step 4.
Set the number of time windows of taski on all satellites as |
W
i
|. If |
W
i
|
=
0, then go to Step 7; else randomly sort the time windows of task i. Set k
=
1.Step 5.
SelectW
i
k as a candidate; if W
i
k satisfies constraints (6)–(8), then insert it into I
j, update the start time and finish time of task i in I
j, and then go to Step 7.Step 6.
Letk
=
k
+
1; if k
≤
|
W
i
|, then go to Step 5.Step 7.
Leti
=
i
+
1; if i
>
n
t, turn to Step 8; else, turn to Step 3.Step 8.
Letj
=
j
+
1; if j
≤
M, then set i
=
1 and go to Step 2; else end the initialization.(
3) Selection. We use the tournament selection operator to select two individuals from the population. Next, the individual that dominates the other is selected.(
4) Crossover. We use single-point crossover as a means to mate the parent chromosomes. Single-point crossover selects a locus in the two parent chromosomes, which is called the crossover point. In the paper, we select the first gene on the second chromosome as a crossover point. After this point is chosen, the string of genes prior to the crossover point in parent chromosome 1 and parent chromosome 2 is transposed. If there are two identical genes on the offspring chromosome 1 and the offspring chromosome 2, then the gene that is located on the offspring chromosome 1 is deleted. Compared to the parent chromosome, some of the missing genes are inserted into the offspring chromosome. Figure 6 shows an example of the crossover.Figure 6
Crossover operator.(
5) Mutation. According to the property that a task may have multiple available opportunities, we design the single-point mutation operator. In the algorithm, the mutation probability is set to 0.01. The process of the mutation operation on a chromosome is described as follows.Step 1.
Sort the sequence of tasks in task setT randomly and then take the serial number i of the task in the queue in order.Step 2.
Compute the number of available opportunities|
W
i
| for task i.Step 3.
If|
W
i
|
=
0, then i
=
i
+
1 and go to Step 2.Step 4.
If there exists taski on the chromosome, then check if it can be rearranged to another position. If it can be moved, then rearrange it to the other position; else remove it from the chromosome. End.Step 5.
If taski is not located on a chromosome, attempt to insert the task into the chromosome. If successful, then end; else i
=
i
+
1 and go to Step 2.Finally, the process of the multiobjective genetic algorithm is given as follows [29].Step 1.
Set the parameters of the population sizeM, the maximum number of iterations T, and the current number of iteration times t
=
0. Design the individual genetic code of the solution. Randomly generate initial population P
t.Step 2.
Conduct the selection, crossover, and mutation operators on populationP
t to generate new populations Q
t. Set P
t
+
1
=
∅, and set the counter i
=
1.Step 3.
Conduct nondominated sorting on populationsR
t
=
P
t
∪
Q
t and obtain the Pareto front F
=
F
1
,
F
2
… of R
t.Step 4.
LetP
t
+
1
=
P
t
+
1
∪
F
i, i
=
i
+
1.Step 5.
If|
P
t
+
1
|
+
|
F
i
|
<
M, then go to Step 4; if |
P
t
+
1
|
+
|
F
i
|
=
M, then go to Step 7.Step 6.
Calculate the crowding distance of individuals inF
i. Next, select noninferior individuals according to the ascending order of the crowding distances. The number of selected individuals is M
-
P
t
+
1, where P
t
+
1
=
P
t
+
1
∪
F
i
1
:
M
-
P
t
+
1.Step 7.
Lett
=
t
+
1; if t
<
T and P
t
∩
P
t
-
1
≠
P
t
-
1, then go to Step 2.Step 8.
Output the nondominated Pareto solutions and then decode them.Using the multiobjective genetic algorithm NSGA-II, we obtain feasible initial schedules. Each schedule is the sequence of tasks ordered in time for the EOSs.


## 3.1. Model

Given a set of imaging tasks on multiple satellites, a satellite scheduling scheme consists of a subset of tasks to be executed on specific satellites with specific time spans by maximizing objectives while simultaneously satisfying some given constraint conditions. As a result, the satellite scheduling problem usually consists of five parts: tasks, satellite resources, opportunities, objectives, and constraints. In the first stage, the robust satellite scheduling model built in the paper consists of three objectives, that is, maximum revenueR
(
S
S
), maximum value of the neighborhood-based robust indicator N
(
S
S
), and minimum total duration of task execution T
(
S
S
), and four constraints, that is, uniqueness constraint, switch time constraint, time window constraint, and imaging time constraint.(
1) Tasks. Consider T
=
t
1
,
t
2
,
…
,
t
N, where N is the number of tasks. Each task t
i
∈
T has a weight p
i, an indispensable duration of task execution d
i. We assume that all tasks are point targets; that is, each target is viewed as a point that can be observed by a single observations trip.(
2) Satellite Resources. Consider S
=
s
1
,
s
2
,
…
,
s
M, where M is the satellite number. Each satellite s
j
∈
S can be denoted by s
j
=
Δ
θ
j
,
Δ
d
j
,
s
l
j
,
s
t
j
,
m
s
g
j
,
o
r
b
j
,
d
u
t
y
j to describe its observation capability. The related notations are defined as follows:Δ
θ
j: the field of view (FOV), which describes the angle range that a lens of the sensor can image;
Δ
d
j: the longest duration allowed for a continuous observation;
s
l
j: slewing rate, that is, the time consumed for each angle of satellite slewing;
s
t
j: attitude stability time, which describes the required time after adjusting the posture of satellite j;
m
s
g
j: maximum slewing angle, which reflects the observation capability of the satellite j;
o
r
b
j: the duration satellite j that circles the earth each time;
d
u
t
y
j: the longest time for satellite j opening its sensor in each orbit.(
3) Available Opportunities. The opportunities include time windows and slewing angles. A
O
i
j
=
a
o
i
1
j
,
a
o
i
2
j
,
…
,
a
o
i
K
i
j
j is the set of available opportunities of task t
i on satellite s
j. For a given available opportunity a
o
i
k
j, it is represented by a
o
i
k
j
=
w
s
i
k
j
,
w
e
i
k
j
,
θ
i
k
j, where w
s
i
k
j and w
e
i
k
j denote the start time and end time, respectively, of the time window W
i
k
j and θ
i
k
j is the ideal slewing angle, as depicted in Figure 1. W
i
j
=
∪
k
∈
1
,
…
,
K
i
j
W
i
k
j is the set of time windows of task i on satellite j.(
4) Objectives. There are three objectives, that is, maximum revenue R
(
S
S
), maximum value of the neighborhood-based robust indicator N
(
S
S
)
, and minimum total duration of task execution T
(
S
S
), in the robust scheduling model built in the paper.The primary objective is to maximize the revenue measured by the sum of weights of all the scheduled tasks(1)
max
:
⁡
R
S
S
=
⁡
∑
i
=
1
N
∑
j
=
1
M
∑
k
=
1
K
i
j
x
i
,
k
j
p
i
,where x
i
,
k
j is the decision variable that can be either 1 if the task i is executed by the satellite j in the kth time window or 0 otherwise.Lety
i be the parameter that indicates whether the task t
i
∈
S
S can be rearranged in another timeslot(2)
y
i
=
1
,
if task
t
i
can be rearranged in another timeslot
0
,
otherwise
.The second objective is called the neighborhood-based robust indicator [26]. We define this objective as the total revenue of the scheduled tasks that can be reassigned into other timeslots in the schedule. This objective measures the ability of a scheduling scheme to rearrange the scheduled tasks. The higher the value of the neighborhood-based robust indicator, the more the possibility for the rearrangement of the scheduled tasks. Therefore, we maximize the value of the neighborhood-based robust indicator(3)
max
:
⁡
N
S
S
=
∑
i
=
1
N
∑
j
=
1
M
∑
k
=
1
K
i
j
p
i
×
x
i
,
k
j
×
y
i
.Moreover, another robust indicator is the total task execution time. This indicator can reflect the ability of a scheduling scheme to accept new tasks. If the total task execution time is shorter, then there will be more spare time that may provide more imaging opportunities for new tasks. Thus, the last objective is to minimize the total duration of the scheduled tasks(4)
min
:
⁡
T
S
S
=
∑
i
=
1
N
∑
j
=
1
M
∑
k
=
1
K
i
j
x
i
,
k
j
d
i
.(
5) Constraints. In addition to achieving the objectives, four constraints must be simultaneously satisfied in the model.Because each task should be performed no more than once by all satellites, therefore, we have the following uniqueness constraint:(5)
∑
j
=
1
M
∑
k
=
1
K
i
j
x
i
,
k
j
≤
1
.Any two consecutive taskst
u
,
t
v
∈
T assigned to the same satellite s
j should have an adequate transmission time for sensor adjusting and stabilizing gesture. Therefore, we have the switch time constraint(6)
t
s
u
j
+
d
u
+
s
u
,
v
j
≤
t
s
v
j
,where t
s
u
j denotes the beginning time of task t
u and t
r
u
,
v
j
=
s
l
j
×
θ
v
j
-
θ
u
j
+
s
t
j denotes the transmission time between tasks t
u and t
v.The decision variablex
i
,
k
j indicates whether the task i is executed. For each scheduled task in S
S, its beginning time and slewing angle must be determined. All the scheduled tasks form a scheduling scheme S
S
=
∪
j
∈
[
1
,
M
]
T
j, where T
j is a sequence of the scheduled tasks ordered in time for satellite j. Because the length of the time window of a task must be larger than the duration of the task, the start time of the task is flexible. The beginning time usually ranges from the earliest start time to the latest start time. Taking as an example task t
i
∈
T
j, the start time t
s
i
j is related to the time window, the prior task t
j
, and the next task t
k of t
i in the sequence T
j, as shown in Figure 3. We assume that the available opportunity a
o
i
j
=
w
s
i
j
,
w
e
i
j
,
θ
i
j is chosen to arrange task t
i. Thus, the slewing angle of the task is θ
i
j and the start time of the task is t
s
i
j
∈
[
E
S
i
j
,
L
S
i
j
], where E
S
i
j
=
m
a
x
(
E
S
j
j
+
d
j
+
t
r
j
,
i
,
w
s
i
j
) is the earliest start time and L
S
i
j
=
m
i
n
(
L
S
k
j
-
t
r
i
,
k
-
d
i
,
w
e
i
j
-
d
i
) is the latest start time.Figure 3
Illustration of the earliest time and the latest time of scheduled taski for satellite j.If any task is executed, then the execution time should be within its time windows. Hence, we have time window constraint(7)
x
i
,
k
j
t
s
i
j
-
w
s
i
k
j
≥
0
,
x
i
,
k
j
t
s
i
j
+
d
i
-
w
e
i
k
j
≤
0
.The total imaging time of any satellite should be less than the allowable longest imaging time of its sensor during any period time ofo
r
b
j. Let the scheduling period be b
,
f. Hereby, we have the imaging time constraint(8)
∑
i
∈
T
t
b
j
d
i
≤
d
u
t
y
j
,where T
t
b
j denotes a sequence of scheduled tasks on satellite j which flies during the time span t
b
,
t
b
+
o
r
b
j, where t
b
∈
b
,
f
-
o
r
b
j.


## 3.2. Multiobjective Genetic Algorithm

To address the multiobjective optimization model, the multiobjective genetic algorithm NSGA-II is used in this paper. NSGA-II is a multiobjective genetic algorithm that is based on the Pareto front. The algorithm has a clear direction for the selection of the elite, which must be retained in each generation so that the groups converge rapidly and are distributed evenly.Firstly, we make clear some terms that will be referred to in the algorithm. Considering the multiobjective minimization problem in the general form, we define the following definitions [27].Definition 1 (Pareto dominance).
Vectoru
=
(
u
1
,
u
2
,
…
,
u
k
) superior to vector v
=
(
v
1
,
v
2
,
…
,
v
k
) means that ∀
i
∈
(
1,2
,
…
,
k
) has u
i
<
v
i, and ∃
i
∈
(
1,2
,
…
,
k
) makes u
i
<
v
i record as u
i
≺
v
i, also called vector u dominating vector v.Definition 2 (Pareto optimality).
The idea that a candidate solutionx
∈
Ω is the optimal solution of Pareto means that x
∈
Ω makes F
(
x
′
)
≺
F
(
x
). x is a k-dimensional decision variable in the decision space, and F
(
x
) is an objective space.Definition 3 (Pareto optimal set).
Consider(9)
P
=
x
∈
Ω
∣
¬
∃
x
′
∈
Ω
st
F
x
′
≺
F
x
.Definition 4 (Pareto front).
Consider(10)
P
F
=
F
x
∣
x
∈
P
.Definition 5 (nondominated sorting).
PopulationQ is divided into different Pareto fronts depending on the dominance degree. Individuals in each subpopulation Q
j are noninferior solutions of this subpopulation. No individual is more dominant than the other individuals. The set of the first front is that Q
1 is the best nondominated set in population Q. The secondary nondominated set in population Q belongs to Q
2, and so on.Definition 6 (crowding distance).
The crowding distance approaches aim to obtain a uniform spread of solutions along the best-known Pareto front without using a fitness sharing parameter. We compute the crowding distance as follows [28].
Step
1. Rank the population and identify the nondominated fronts F
1
,
F
2
,
…
,
F
R. For each front j
=
1
,
2
,
…
,
R, repeat Steps 2 and 3.
Step
2. For each objective function k, sort the solutions in F
j in the ascending order. Let l
=
|
F
j
| and x
i
,
k represent the ith solution in the sorted list with respect to the objective function k. Assign d
k
(
x
1
,
k
)
=
∞ and d
k
(
x
l
,
k
)
=
∞, and for i
=
2,3
,
…
,
l
-
1 assign(11)
d
k
x
i
,
k
=
f
k
x
i
+
1
,
k
-
f
k
x
i
-
1
,
k
f
k
m
a
x
-
f
k
m
i
n
.
Step
3. To find the total crowding distance d
(
x
) of a solution x, sum the solution’s crowding distances with respect to each objective, d
(
x
)
=
∑
k
d
k
(
x
).After clarifying these definitions, we describe the components of our algorithm: the coding, the initialization population algorithm, and the genetic operators, that is, the selection operator, the crossover operator, and the mutation operator in the following.(
1) The Coding. The proposed chromosome representation is comprised of a number of genes which is a permutation list of the candidate tasks. The first gene and the last gene on a chromosome are virtual tasks, which are used to mark the position where the chromosome begins and ends. Each gene holds a constant structure to store the information of the corresponding task (Figure 5). Take, for example, the task 7 on chromosome 2. As shown in Figure 4, the allele values of 7, 12908, 12949, 12908, 12927, 19, 3, and 2 represent the task ID, the start time of the time window of the task, the end time of the time window of the task, the start observing time of the task, the finish observing time of the task, the duration of the task, the previous task, and the next task, respectively.Figure 4
Coding of chromosome.Figure 5
The structure of genes.(
2) Initialization Population Algorithm. We use a random generation strategy to generate the initial population.Step 1.
Initialize the task IDi
=
1 and individual ID j
=
1. Set M as the size of population and n
t as the number of tasks.Step 2.
Initialize the first individualI
j
=
∅ and then randomly sort the task set.Step 3.
Select taski as a candidate.Step 4.
Set the number of time windows of taski on all satellites as |
W
i
|. If |
W
i
|
=
0, then go to Step 7; else randomly sort the time windows of task i. Set k
=
1.Step 5.
SelectW
i
k as a candidate; if W
i
k satisfies constraints (6)–(8), then insert it into I
j, update the start time and finish time of task i in I
j, and then go to Step 7.Step 6.
Letk
=
k
+
1; if k
≤
|
W
i
|, then go to Step 5.Step 7.
Leti
=
i
+
1; if i
>
n
t, turn to Step 8; else, turn to Step 3.Step 8.
Letj
=
j
+
1; if j
≤
M, then set i
=
1 and go to Step 2; else end the initialization.(
3) Selection. We use the tournament selection operator to select two individuals from the population. Next, the individual that dominates the other is selected.(
4) Crossover. We use single-point crossover as a means to mate the parent chromosomes. Single-point crossover selects a locus in the two parent chromosomes, which is called the crossover point. In the paper, we select the first gene on the second chromosome as a crossover point. After this point is chosen, the string of genes prior to the crossover point in parent chromosome 1 and parent chromosome 2 is transposed. If there are two identical genes on the offspring chromosome 1 and the offspring chromosome 2, then the gene that is located on the offspring chromosome 1 is deleted. Compared to the parent chromosome, some of the missing genes are inserted into the offspring chromosome. Figure 6 shows an example of the crossover.Figure 6
Crossover operator.(
5) Mutation. According to the property that a task may have multiple available opportunities, we design the single-point mutation operator. In the algorithm, the mutation probability is set to 0.01. The process of the mutation operation on a chromosome is described as follows.Step 1.
Sort the sequence of tasks in task setT randomly and then take the serial number i of the task in the queue in order.Step 2.
Compute the number of available opportunities|
W
i
| for task i.Step 3.
If|
W
i
|
=
0, then i
=
i
+
1 and go to Step 2.Step 4.
If there exists taski on the chromosome, then check if it can be rearranged to another position. If it can be moved, then rearrange it to the other position; else remove it from the chromosome. End.Step 5.
If taski is not located on a chromosome, attempt to insert the task into the chromosome. If successful, then end; else i
=
i
+
1 and go to Step 2.Finally, the process of the multiobjective genetic algorithm is given as follows [29].Step 1.
Set the parameters of the population sizeM, the maximum number of iterations T, and the current number of iteration times t
=
0. Design the individual genetic code of the solution. Randomly generate initial population P
t.Step 2.
Conduct the selection, crossover, and mutation operators on populationP
t to generate new populations Q
t. Set P
t
+
1
=
∅, and set the counter i
=
1.Step 3.
Conduct nondominated sorting on populationsR
t
=
P
t
∪
Q
t and obtain the Pareto front F
=
F
1
,
F
2
… of R
t.Step 4.
LetP
t
+
1
=
P
t
+
1
∪
F
i, i
=
i
+
1.Step 5.
If|
P
t
+
1
|
+
|
F
i
|
<
M, then go to Step 4; if |
P
t
+
1
|
+
|
F
i
|
=
M, then go to Step 7.Step 6.
Calculate the crowding distance of individuals inF
i. Next, select noninferior individuals according to the ascending order of the crowding distances. The number of selected individuals is M
-
P
t
+
1, where P
t
+
1
=
P
t
+
1
∪
F
i
1
:
M
-
P
t
+
1.Step 7.
Lett
=
t
+
1; if t
<
T and P
t
∩
P
t
-
1
≠
P
t
-
1, then go to Step 2.Step 8.
Output the nondominated Pareto solutions and then decode them.Using the multiobjective genetic algorithm NSGA-II, we obtain feasible initial schedules. Each schedule is the sequence of tasks ordered in time for the EOSs.


## 4. Dynamic Adjustment

The initial schedule, which is produced in the first stage, needs uploading. The interval time between schedule building and uploading depends on the practical needs. Suppose a number of emergency tasks arrive after the schedule uploading. In this case, the initial schedule must be adjusted. A new scheduleS
S
′ is made by adjusting the initial scheduling scheme dynamically with the arrival of new emergency tasks. The process of adjustment is the second stage of satellite dynamic scheduling. When dynamically adjusting the initial schedule, the solution stability is an important problem. Although we can completely reschedule the initial scheme to obtain the optimal income, it may result in the phenomenon of  “shock” for the scheme. To minimize the disturbance to the initial scheme while maintaining high revenue, we designed a rule-based heuristic algorithm. For the purpose of increasing the number of scheduled tasks, a novel compact task merging method considering the duration of task execution is proposed.


### 4.1. Rule-Based Heuristic Algorithm

In the stage of dynamic adjustment, with the arrival of new emergency tasksT
E
=
t
N
+
1
,
t
N
+
2
,
…
,
t
N
+
N
E, we expect that the optimal solution satisfies two objectives: (
1
) maximum revenue(12)
max
:
⁡
R
S
S
∗
=
∑
i
=
1
N
+
N
E
∑
j
=
1
M
∑
k
=
1
K
i
j
x
i
,
k
j
p
iand (
2
) minimum difference between the adjusted schedule S
S
∗ and the initial schedule S
S
(13)
max
:
⁡
S
S
∗
∩
S
Swhile satisfying the four constraints which are represented by (5)–(8).When assigning dynamic tasks to a schedule, besides high revenue, schedule stability is very important. In practice, satellite scheduling is a complicated process. A certain amount of time is required to upload an instruction to a satellite with special equipment within limited visible time windows [19, 20]. Once the scheduling scheme is modified on a large scale, there may be a series of influences on the decision of users. Although higher revenue may be obtained by complete rescheduling, the excessive changes may cause substantial operational issues. In addition, such excessive changes may lead to a large-scale adjustment for the scheduling scheme, which results in the phenomenon of “shock” for the scheduling scheme.The two objectives of the algorithm are incompatible to some extent. That is, the adjusted schedule that has the maximum revenue may differ greatly from the initial one. To achieve satisfactory solutions, the rule-based heuristic algorithms are feasible algorithms. Therefore, in this paper, we design a dynamic adjusting rule-based heuristic algorithm considering compact task merging (CTM-DAHA). To accommodate the new tasks into the initial schedule, four methods are used: task merging, direct insertion, insertion by rearranging, and insertion by deleting. Figure7 shows for a given new task how to insert it into the schedule.Figure 7
The process of inserting a new task.The design of the heuristic rules of CTM-DAHA is as follows.Heuristic rule 1: select a new task fromT
E to insert according to the needs of the tasks from high to low. The need of an observation task indicates how badly the task needs to be performed [30]. The need is defined as(14)
N
e
e
d
t
i
=
p
i
A
O
i
.Heuristic rule 2: if there is more than one time window of a new task, then select time windows to perform the task according to the contention, ranked from low to high.For a given time windoww, we could measure the contention by counting the number of tasks that need that time window, weighted by the weights of the tasks:(15)
c
o
n
t
e
n
t
i
o
n
w
=
∑
t
i
∈
T
w
p
t
i
,where T
w is the set of tasks t
i that could be performed at any moment within time window w and p
(
t
i
) is the weight of the tasks t
i.Heuristic rule 3: for a given task, if its multiple time windowsW have the same contention, then select the time window according to the associated slewing angle, ranked from small to large.Heuristic rule 4: for a given task, if its multiple time windowsW have the same contention and the associated slewing angles are equal, then select the time window that has the earliest start time.Heuristic rule 5: for a given task associated with a time window, there are four methods that can be used to schedule the task into the initial schedule:(
1
) insertion by task merging; (
2
) direct insertion; (
3
) insertion by rearranging; (
4
) insertion by deleting.(
1) Insertion by Task Merging. For a given task, we first determine if it can merge with any other existing task in the schedule. As shown in Figure 8, new tasks t
i and t
b can be constructed as a compact composite task t
i
,
b on satellite s
1.Figure 8
Inserting a new task into initial schedule by task merging.(
2) Direct Insertion. When task merging fails, the task will be inserted into a free timeslot directly if it does not conflict with any other task in the time window. As shown in Figure 9, task t
i can be inserted directly.Figure 9
Inserting a new task directly into the initial scheme.(
3) Insertion by Rearranging. When inserting a new task t
i directly fails, t
i conflicts with one or more scheduled tasks in a specific time window w. The set T
i
C is defined as the conflicting tasks of task i. If each task t
j
∈
T
i
C can be rearranged in another timeslot, then the task t
i can be inserted into the time window w. To rearrange conflicting tasks, we employ the repair search method [18]. As shown in Figure 10, task t
i conflicts with scheduled task t
c on s
1. Task t
c is reassigned on another timeslot on s
2 and task t
i is inserted on s
1 in the schedule.Figure 10
Inserting a new task into the initial scheme by rearranging the conflicting tasks.(
4) Insertion by Deleting. When inserting a new task t
i by rearranging fails, if the property of t
i is larger than the total properties of the conflicting tasks, then the new task is assigned while the conflicting tasks are removed from the schedule. As shown in Figure 11, t
c is removed from the schedule and t
i is assigned.Figure 11
Inserting a new task into initial scheme by deleting conflicting tasks.The procedure of the rule-based heuristic algorithm is described as in Algorithm1.Algorithm 1
(1) sort the new emergency task set T
E according to the needs of the tasks
(2) for all i
∈
N
+
1
,
…
,
N
+
N
E, do
(3) for all j
∈
1
,
…
,
M, do
(4) compute all available opportunities for task i on satellite j
(5) end for
(6) compute the number of available opportunities W
i for task i
(7) end for
(8) while T
E
≠
⌀ do
(9) set SS
′
=
SS
(10) take the serial number i of the first task in the queue
(11) if W
i
>
1 do
(12)  calculate contention(W
i)
(13)  sort the set W
i based on Heuristic rule 2, rule 3, and rule 4
(14) end if
(15) for k
∈
[
1,2
,
…
,
W
i
] do
(16)  for all scheduled tasks in SS
′ do
(17)   if w
i
k can be merged with the time window of a scheduled task t
j
(18)   construct a compact composite task t
i
j between t
i and t
j
(19)   remove task i from T
E
(20)   goto step (8)
(21)   end if
(22)  end for
(23) end for
(24) for k
∈
[
1,2
,
…
,
W
i
] do
(25)  if w
i
k can be inserted into SS
′ directly do
(26)    insert t
i and determine the earliest start time ES
i
j and the latest start time LS
i
j of t
i
(27)    remove task i from T
E
(28)    goto step (8)
(29)  end if
(30) end for
(31) for k
∈
[
1,2
,
…
,
W
i
] do
(32) for all scheduled tasks in SS
′ do
(33)  if w
i
k can be inserted into SS
′ by rearranging the conflict-tasks
(34)   rearrange the conflict-tasks in SS
′
(35)   insert t
i and determine the earliest start time ES
i
j and the latest start time LS
i
j of t
i
(36)   remove task i from T
E
(37)   goto step (8)
(38) end if
(39) else
(40)  if the weight of t
i is larger than the total priorities of conflict-tasks
(41)    remove the conflict-tasks of t
i from SS
′
(42)    insert t
i and determine the earliest start time ES
i
j and the latest start time LS
i
j of t
i
(43)    remove task i from T
E
(44)    goto step (8)
(45)  end if
(46)  else
(47)  remove task i from T
E
(48)  goto step (8)
(49)  end for
(50) end for
(51) end while


### 4.2. Compact Task Merging Method

If two or more targets are geographically adjacent, we can rationally tune the slewing angle and the observation duration of the sensor to enable an observation strip to cover them. In other words, the tasks in the same swath of a sensor may be merged into one composite task. For the purpose of improving the imaging opportunities of the new tasks, a task merging strategy is required. By considering the duration of task execution, we employ a new compact task merging method to construct the so-called compact composite tasks in this paper.When a task merging mechanism is embedded into the schedule scheme, we must judge when two tasks can be combined into a composite task and determine how to construct a composite task.Suppose there are two taskst
i and t
j that could be imaged by satellite j. And a
o
i
=
w
s
i
,
w
e
i
,
θ
i
∈
A
O
i
j is an available opportunity of task t
i. Accordingly, a
o
j
=
w
s
j
,
w
e
j
,
θ
j
∈
A
O
j
j is an available opportunity of task t
j.According to the traditional merging idea, two taskst
i and t
j can be combined into a composite task t
i
,
j if and only if the following condition must hold [12, 22–25]:(16)
max
⁡
w
e
i
,
w
e
j
-
min
⁡
w
s
i
,
w
s
j
≤
Δ
d
,
θ
i
-
θ
j
≤
Δ
θ
,where Δ
d and Δ
θ are the longest open time and field of view of sensor on satellite j, respectively. The time window and slewing angle of composite task t
i
,
j are calculated as(17)
W
i
,
j
=
min
⁡
w
s
i
,
w
s
j
,
max
⁡
w
e
i
,
w
e
j
,
θ
i
,
j
=
θ
i
+
θ
j
2
.We call these tasks metatasks if they can be combined into one composite task. The composite task obtained by the above task merging method is traditionally characterized as the union of visible time windows and mean of slewing angles of its metatasks. Since the length of a visible time window must be larger than the observation duration of task, there often exists some unnecessary time to finish merged tasks according to the traditional task merging strategy. Therefore, the duration of task execution is an important factor in task merging. By considering the duration of task execution, we employ a new compact task merging method.Without loss of generality, between two taskst
i and t
j, the window start time w
s
i of task t
i is assumed to be not later than that of task t
j in the following.Theorem 7.
Two feasible taskst
i and t
j can be combined into a compact composite task t
i
,
j if and only if they satisfy(18)
w
s
j
+
d
j
-
w
e
i
-
d
i
≤
Δ
d
,
(19)
θ
i
-
θ
j
≤
Δ
θ
.
Equation (18) is time window constraint. As shown in Figure 12(b), we illustrate the case that two time windows of tasks have intersection. In fact, three types of temporal relationships exist between the time windows of two tasks, that is, disjoint, intersected, and containing. The details are presented in Section 2 in Supplementary File (see Supplementary Material available online at http://dx.doi.org/10.1155/2015/731734).
Equation (19) is slewing angle constraint. It is shown in Figure 12(a) that tasks t
i and t
j must be located in the same swath of the sensor.Figure 12
Task merging constraints.
(a)
(b)Theorem 8.
If two feasible taskst
i and t
j can be merged into a compact composite task t
i
,
j, then its time window W
i
,
j
=
w
s
i
,
j
,
w
e
i
,
j should range from(20)
w
s
i
,
j
=
w
e
i
-
d
i
,
i
f
W
i
∩
W
j
≤
min
⁡
d
i
,
d
j
min
⁡
w
s
j
,
m
a
x
w
s
i
,
w
s
j
+
d
j
-
d
i
,
e
l
s
eto(21)
w
e
i
,
j
=
w
j
+
d
j
,
i
f
W
i
∩
W
j
≤
min
⁡
d
i
,
d
j
min
⁡
w
e
i
-
d
i
,
w
e
j
-
d
j
+
max
⁡
d
i
,
d
j
,
e
l
s
eand its indispensable duration of task execution should be(22)
d
i
,
j
=
w
s
j
+
d
j
-
w
e
i
-
d
i
,
i
f
W
i
∩
W
j
≤
min
⁡
d
i
,
d
j
max
⁡
d
i
,
d
j
,
e
l
s
eand the slewing angle is given by(23)
θ
i
,
j
=
max
⁡
θ
i
-
Δ
θ
s
2
,
0
,
i
f
θ
i
≥
0
,
θ
i
≥
θ
j
min
⁡
θ
i
+
Δ
θ
s
2
,
0
,
i
f
θ
i
<
0
,
θ
i
≥
θ
j
max
⁡
θ
j
-
Δ
θ
s
2
,
0
,
i
f
θ
j
≥
0
,
θ
j
>
θ
i
min
⁡
θ
j
+
Δ
θ
s
2
,
0
,
i
f
θ
j
<
0
,
θ
j
>
θ
i
.Proof.
Please refer to Sections 2 and 3 of the Supplementary File for the detailed proof.


## 4.1. Rule-Based Heuristic Algorithm

In the stage of dynamic adjustment, with the arrival of new emergency tasksT
E
=
t
N
+
1
,
t
N
+
2
,
…
,
t
N
+
N
E, we expect that the optimal solution satisfies two objectives: (
1
) maximum revenue(12)
max
:
⁡
R
S
S
∗
=
∑
i
=
1
N
+
N
E
∑
j
=
1
M
∑
k
=
1
K
i
j
x
i
,
k
j
p
iand (
2
) minimum difference between the adjusted schedule S
S
∗ and the initial schedule S
S
(13)
max
:
⁡
S
S
∗
∩
S
Swhile satisfying the four constraints which are represented by (5)–(8).When assigning dynamic tasks to a schedule, besides high revenue, schedule stability is very important. In practice, satellite scheduling is a complicated process. A certain amount of time is required to upload an instruction to a satellite with special equipment within limited visible time windows [19, 20]. Once the scheduling scheme is modified on a large scale, there may be a series of influences on the decision of users. Although higher revenue may be obtained by complete rescheduling, the excessive changes may cause substantial operational issues. In addition, such excessive changes may lead to a large-scale adjustment for the scheduling scheme, which results in the phenomenon of “shock” for the scheduling scheme.The two objectives of the algorithm are incompatible to some extent. That is, the adjusted schedule that has the maximum revenue may differ greatly from the initial one. To achieve satisfactory solutions, the rule-based heuristic algorithms are feasible algorithms. Therefore, in this paper, we design a dynamic adjusting rule-based heuristic algorithm considering compact task merging (CTM-DAHA). To accommodate the new tasks into the initial schedule, four methods are used: task merging, direct insertion, insertion by rearranging, and insertion by deleting. Figure7 shows for a given new task how to insert it into the schedule.Figure 7
The process of inserting a new task.The design of the heuristic rules of CTM-DAHA is as follows.Heuristic rule 1: select a new task fromT
E to insert according to the needs of the tasks from high to low. The need of an observation task indicates how badly the task needs to be performed [30]. The need is defined as(14)
N
e
e
d
t
i
=
p
i
A
O
i
.Heuristic rule 2: if there is more than one time window of a new task, then select time windows to perform the task according to the contention, ranked from low to high.For a given time windoww, we could measure the contention by counting the number of tasks that need that time window, weighted by the weights of the tasks:(15)
c
o
n
t
e
n
t
i
o
n
w
=
∑
t
i
∈
T
w
p
t
i
,where T
w is the set of tasks t
i that could be performed at any moment within time window w and p
(
t
i
) is the weight of the tasks t
i.Heuristic rule 3: for a given task, if its multiple time windowsW have the same contention, then select the time window according to the associated slewing angle, ranked from small to large.Heuristic rule 4: for a given task, if its multiple time windowsW have the same contention and the associated slewing angles are equal, then select the time window that has the earliest start time.Heuristic rule 5: for a given task associated with a time window, there are four methods that can be used to schedule the task into the initial schedule:(
1
) insertion by task merging; (
2
) direct insertion; (
3
) insertion by rearranging; (
4
) insertion by deleting.(
1) Insertion by Task Merging. For a given task, we first determine if it can merge with any other existing task in the schedule. As shown in Figure 8, new tasks t
i and t
b can be constructed as a compact composite task t
i
,
b on satellite s
1.Figure 8
Inserting a new task into initial schedule by task merging.(
2) Direct Insertion. When task merging fails, the task will be inserted into a free timeslot directly if it does not conflict with any other task in the time window. As shown in Figure 9, task t
i can be inserted directly.Figure 9
Inserting a new task directly into the initial scheme.(
3) Insertion by Rearranging. When inserting a new task t
i directly fails, t
i conflicts with one or more scheduled tasks in a specific time window w. The set T
i
C is defined as the conflicting tasks of task i. If each task t
j
∈
T
i
C can be rearranged in another timeslot, then the task t
i can be inserted into the time window w. To rearrange conflicting tasks, we employ the repair search method [18]. As shown in Figure 10, task t
i conflicts with scheduled task t
c on s
1. Task t
c is reassigned on another timeslot on s
2 and task t
i is inserted on s
1 in the schedule.Figure 10
Inserting a new task into the initial scheme by rearranging the conflicting tasks.(
4) Insertion by Deleting. When inserting a new task t
i by rearranging fails, if the property of t
i is larger than the total properties of the conflicting tasks, then the new task is assigned while the conflicting tasks are removed from the schedule. As shown in Figure 11, t
c is removed from the schedule and t
i is assigned.Figure 11
Inserting a new task into initial scheme by deleting conflicting tasks.The procedure of the rule-based heuristic algorithm is described as in Algorithm1.Algorithm 1
(1) sort the new emergency task set T
E according to the needs of the tasks
(2) for all i
∈
N
+
1
,
…
,
N
+
N
E, do
(3) for all j
∈
1
,
…
,
M, do
(4) compute all available opportunities for task i on satellite j
(5) end for
(6) compute the number of available opportunities W
i for task i
(7) end for
(8) while T
E
≠
⌀ do
(9) set SS
′
=
SS
(10) take the serial number i of the first task in the queue
(11) if W
i
>
1 do
(12)  calculate contention(W
i)
(13)  sort the set W
i based on Heuristic rule 2, rule 3, and rule 4
(14) end if
(15) for k
∈
[
1,2
,
…
,
W
i
] do
(16)  for all scheduled tasks in SS
′ do
(17)   if w
i
k can be merged with the time window of a scheduled task t
j
(18)   construct a compact composite task t
i
j between t
i and t
j
(19)   remove task i from T
E
(20)   goto step (8)
(21)   end if
(22)  end for
(23) end for
(24) for k
∈
[
1,2
,
…
,
W
i
] do
(25)  if w
i
k can be inserted into SS
′ directly do
(26)    insert t
i and determine the earliest start time ES
i
j and the latest start time LS
i
j of t
i
(27)    remove task i from T
E
(28)    goto step (8)
(29)  end if
(30) end for
(31) for k
∈
[
1,2
,
…
,
W
i
] do
(32) for all scheduled tasks in SS
′ do
(33)  if w
i
k can be inserted into SS
′ by rearranging the conflict-tasks
(34)   rearrange the conflict-tasks in SS
′
(35)   insert t
i and determine the earliest start time ES
i
j and the latest start time LS
i
j of t
i
(36)   remove task i from T
E
(37)   goto step (8)
(38) end if
(39) else
(40)  if the weight of t
i is larger than the total priorities of conflict-tasks
(41)    remove the conflict-tasks of t
i from SS
′
(42)    insert t
i and determine the earliest start time ES
i
j and the latest start time LS
i
j of t
i
(43)    remove task i from T
E
(44)    goto step (8)
(45)  end if
(46)  else
(47)  remove task i from T
E
(48)  goto step (8)
(49)  end for
(50) end for
(51) end while


## 4.2. Compact Task Merging Method

If two or more targets are geographically adjacent, we can rationally tune the slewing angle and the observation duration of the sensor to enable an observation strip to cover them. In other words, the tasks in the same swath of a sensor may be merged into one composite task. For the purpose of improving the imaging opportunities of the new tasks, a task merging strategy is required. By considering the duration of task execution, we employ a new compact task merging method to construct the so-called compact composite tasks in this paper.When a task merging mechanism is embedded into the schedule scheme, we must judge when two tasks can be combined into a composite task and determine how to construct a composite task.Suppose there are two taskst
i and t
j that could be imaged by satellite j. And a
o
i
=
w
s
i
,
w
e
i
,
θ
i
∈
A
O
i
j is an available opportunity of task t
i. Accordingly, a
o
j
=
w
s
j
,
w
e
j
,
θ
j
∈
A
O
j
j is an available opportunity of task t
j.According to the traditional merging idea, two taskst
i and t
j can be combined into a composite task t
i
,
j if and only if the following condition must hold [12, 22–25]:(16)
max
⁡
w
e
i
,
w
e
j
-
min
⁡
w
s
i
,
w
s
j
≤
Δ
d
,
θ
i
-
θ
j
≤
Δ
θ
,where Δ
d and Δ
θ are the longest open time and field of view of sensor on satellite j, respectively. The time window and slewing angle of composite task t
i
,
j are calculated as(17)
W
i
,
j
=
min
⁡
w
s
i
,
w
s
j
,
max
⁡
w
e
i
,
w
e
j
,
θ
i
,
j
=
θ
i
+
θ
j
2
.We call these tasks metatasks if they can be combined into one composite task. The composite task obtained by the above task merging method is traditionally characterized as the union of visible time windows and mean of slewing angles of its metatasks. Since the length of a visible time window must be larger than the observation duration of task, there often exists some unnecessary time to finish merged tasks according to the traditional task merging strategy. Therefore, the duration of task execution is an important factor in task merging. By considering the duration of task execution, we employ a new compact task merging method.Without loss of generality, between two taskst
i and t
j, the window start time w
s
i of task t
i is assumed to be not later than that of task t
j in the following.Theorem 7.
Two feasible taskst
i and t
j can be combined into a compact composite task t
i
,
j if and only if they satisfy(18)
w
s
j
+
d
j
-
w
e
i
-
d
i
≤
Δ
d
,
(19)
θ
i
-
θ
j
≤
Δ
θ
.
Equation (18) is time window constraint. As shown in Figure 12(b), we illustrate the case that two time windows of tasks have intersection. In fact, three types of temporal relationships exist between the time windows of two tasks, that is, disjoint, intersected, and containing. The details are presented in Section 2 in Supplementary File (see Supplementary Material available online at http://dx.doi.org/10.1155/2015/731734).
Equation (19) is slewing angle constraint. It is shown in Figure 12(a) that tasks t
i and t
j must be located in the same swath of the sensor.Figure 12
Task merging constraints.
(a)
(b)Theorem 8.
If two feasible taskst
i and t
j can be merged into a compact composite task t
i
,
j, then its time window W
i
,
j
=
w
s
i
,
j
,
w
e
i
,
j should range from(20)
w
s
i
,
j
=
w
e
i
-
d
i
,
i
f
W
i
∩
W
j
≤
min
⁡
d
i
,
d
j
min
⁡
w
s
j
,
m
a
x
w
s
i
,
w
s
j
+
d
j
-
d
i
,
e
l
s
eto(21)
w
e
i
,
j
=
w
j
+
d
j
,
i
f
W
i
∩
W
j
≤
min
⁡
d
i
,
d
j
min
⁡
w
e
i
-
d
i
,
w
e
j
-
d
j
+
max
⁡
d
i
,
d
j
,
e
l
s
eand its indispensable duration of task execution should be(22)
d
i
,
j
=
w
s
j
+
d
j
-
w
e
i
-
d
i
,
i
f
W
i
∩
W
j
≤
min
⁡
d
i
,
d
j
max
⁡
d
i
,
d
j
,
e
l
s
eand the slewing angle is given by(23)
θ
i
,
j
=
max
⁡
θ
i
-
Δ
θ
s
2
,
0
,
i
f
θ
i
≥
0
,
θ
i
≥
θ
j
min
⁡
θ
i
+
Δ
θ
s
2
,
0
,
i
f
θ
i
<
0
,
θ
i
≥
θ
j
max
⁡
θ
j
-
Δ
θ
s
2
,
0
,
i
f
θ
j
≥
0
,
θ
j
>
θ
i
min
⁡
θ
j
+
Δ
θ
s
2
,
0
,
i
f
θ
j
<
0
,
θ
j
>
θ
i
.Proof.
Please refer to Sections 2 and 3 of the Supplementary File for the detailed proof.


## 5. Experimental Simulation and Discussion

In this section, we test our model and algorithm by experimental simulations. For convenience, the robust satellite scheduling model with three objectives proposed in our paper is called RSSM3, while the robust satellite scheduling model without the objective of total task execution time is called RSSM2.RSSM3 is the robust satellite scheduling model that consists of three objectives: the maximum revenueR
(
S
S
), the maximum value of the neighborhood-based robust indicator N
(
S
S
), and the minimum total duration of task execution T
(
S
S
).RSSM2 is a robust satellite scheduling model that consists of two objectives:R
(
S
S
) and N
(
S
S
).In the first stage, we use RSSM3 and RSSM2 to generate two sets of feasible solutions. Furthermore, we select the solution of RSSM2 as the initial scheduling schemeS
S
2 and one of the feasible solutions of RSSM3 as the initial schedule S
S
3. In the second stage, to demonstrate the advantage of total execution time, S
S
2 and S
S
3 are adjusted using CTM-DAHA. To evaluate the advantage of compact task merging method, we use CTM-DAHA and TTM-DAHA, respectively, to adjust S
S
3.TTM-DAHA is dynamic adjusting heuristic algorithm considering traditional task merging. Compared to CTM-DAHA, the algorithm uses traditional task merging strategy to construct composite tasks.


### 5.1. The Design of Experiment

To evaluate performance of the proposed method, we simulate two satellites to accomplish imaging tasks. Each satellite circles the earth approximately 100 min each time. Each satellite loads one sensor which can slew laterally over the angular range of[
-
32
°
,
32
°
]. Some parameters of the two satellites are presented in Table 1. The scheduling horizon is 24 h. In addition, we assume the maximum time for each satellite opening its sensor once is 60 seconds and the longest imaging time in any period time of o
r
b
j is 150 seconds.Table 1
Parameters of satellites.
Parameters
s
1
s
2
Maximum slewing angle/°
32
32
Field of view/°
2.203
2.203
Eccentricity
0.0001879
0.0006165
Inclination/°
98.4745
97.4097
Argument of perigee/°
76.4542
72.083
RAAN/°
145.131
145.956
Mean anomaly/°
283.684
41.4996
Mean motion revs/day
14.354
15.2108We simulate 200 common tasks which are randomly generated in the surface of the earth. Three group emergency tasks are given different size: 20, 40, and 60. Without loss of generality, the priorities of all tasks are randomly distributed in1,10. The weight and duration of each task are shown in the appendix of the paper.The scheduling period considered is 7 March 2014 12:00:00.000 UTCG~8 March 2014 12:00:00.000 UTCG. Before scheduling we compute the time window and slewing angle for each task using STK (Satellite Tool Kit). The time window is removed if its span is shorter than the duration of the corresponding task.


### 5.2. The Simulation Result

#### 5.2.1. The Initial Scheduling Scheme

The feasible solutions that are obtained by RSSM3 and RSSM2 are shown in Figure13.Figure 13
The values of objectives of RSSM2 and RSSM3.
(a)
(b)
(c)We describe all the solutions of RSSM2 and RSSM3 in two-dimensional space and three-dimensional space, respectively. From Figure13, RSSM2 is found to generate only one solution, while RSSM3 is found to produce multiple solutions because of the added objective of total task execution duration. In addition, the solution of RSSM2 that has the highest revenue may not be the best because it requires the longest duration of task execution.We select the solution (R
(
S
S
2
)
=
1123; N
S
S
2
=
923; T
(
S
S
2
)
=
2808) of RSSM2 as initial scheduling scheme S
S
2 and the solution (R
(
S
S
3
)
=
1122; N
(
S
S
3
)
=
898; T
(
S
S
3
)
=
2795) from the solutions of RSSM3 as the initial scheduling scheme S
S
3.


#### 5.2.2. The Adjusted Scheduling Scheme

In the second stage, with the arrival of the three group emergency tasks, we use CTM-DAHA to adjustS
S
2 and S
S
3 so as to obtain new schedules S
S
2
C
-
20
∗, S
S
2
C
-
40
∗, S
S
2
C
-
60
∗ and S
S
3
C
-
20
∗, S
S
3
C
-
40
∗, and S
S
3
C
-
40
∗, respectively. The new schedules S
S
3
T
-
20
∗, S
S
3
T
-
40
∗, and S
S
3
T
-
60
∗ are produced through adjustment of S
S
3 by TTM-DATA.The simulation results are presented in Table2.Table 2
The results of dynamic adjustment.
N
Schedule
Total revenue
Disturbance
NC
NITM
NI
NIR
NID
20
SS
2
C-
20
∗
1263
6
20
6
9
4
1
SS
3
C-
20
∗
1264
3
20
6
11
2
1
SS
3
T-
20
∗
1250
3
18
4
11
2
1
40
SS
2
C-
40
∗
1361
10
39
6
24
7
2
SS
3
C-
40
∗
1368
4
39
6
29
3
1
SS
3
T-
40
∗
1345
6
37
4
27
4
2
60
SS
2
T-
60
∗
1466
16
56
9
32
11
4
SS
3
C-
60
∗
1480
7
58
10
41
4
3
SS
3
T-
60
∗
1462
8
55
4
43
4
4
Notes:N-the number of new tasks, disturbance-the number of common tasks that are rearranged in the adjusted schedule, NC: the number of emergency tasks completed, NITM: the number of emergency tasks inserted by task merging, NI: the number of emergency tasks inserted directly, NIR: the number of emergency tasks inserted by rearranging, and NID: the number of emergency tasks inserted by deleting.


### 5.3. Discussion

In the first stage, we obtain different solutions using RSSM3 and RSSM2, respectively. As shown in Figure13, there is only one feasible solution generated by RSSM2 while RSSM3 can provide multiple solutions.When there are 20 emergency tasks,S
S
3
C
-
20
∗ produces the higher revenue compared with S
S
2
C
-
20
∗. In addition, the disturbance of S
S
3
C
-
20
∗ is lower than that of S
S
2
C
-
20
∗. As a result, RSSM3 can produce a schedule with high robustness as well as large revenue. The result proves that the objective of total task execution time is a useful robust indicator. Comparing S
S
3
C
-
20
∗ with S
S
3
T
-
20
∗, S
S
3
C
-
20
∗ has the larger revenue and more numbers of merging tasks with shorter imaging time and a smaller slewing angle. This result indicates that more tasks can be merged by the compact task merging method with lower energy cost.When there are 40 emergency tasks,S
S
3
C
-
40
∗ is found to have higher revenue and less disturbance compared with S
S
2
C
-
40
∗. It indicates that the total task execution time is indeed a robust indicator that can reflect the ability of a scheduling scheme to accept new tasks. If the total task execution time is shorter, then there will be larger spare time which may provide more imaging opportunities for new tasks. In contrast with S
S
3
T
-
40
∗, S
S
3
C
-
40
∗ contains more emergency tasks that are inserted by compact task merging. This result proves that the strategy of compact task merging has advantage over the existing traditional method. The compact task merging method can improve the chance of merging multiple tasks.When there are 60 emergency tasks, the superiority of RSSM3 appears to be more obvious. The disturbance ofS
S
3
C
-
60
∗ is much lower than that of S
S
2
C
-
60
∗. This result supports the conclusion that the total task execution time is a useful robust indicator that can improve the robustness of schedules. Moreover, the compact task merging method can improve the chance of merging multiple tasks.


## 5.1. The Design of Experiment

To evaluate performance of the proposed method, we simulate two satellites to accomplish imaging tasks. Each satellite circles the earth approximately 100 min each time. Each satellite loads one sensor which can slew laterally over the angular range of[
-
32
°
,
32
°
]. Some parameters of the two satellites are presented in Table 1. The scheduling horizon is 24 h. In addition, we assume the maximum time for each satellite opening its sensor once is 60 seconds and the longest imaging time in any period time of o
r
b
j is 150 seconds.Table 1
Parameters of satellites.
Parameters
s
1
s
2
Maximum slewing angle/°
32
32
Field of view/°
2.203
2.203
Eccentricity
0.0001879
0.0006165
Inclination/°
98.4745
97.4097
Argument of perigee/°
76.4542
72.083
RAAN/°
145.131
145.956
Mean anomaly/°
283.684
41.4996
Mean motion revs/day
14.354
15.2108We simulate 200 common tasks which are randomly generated in the surface of the earth. Three group emergency tasks are given different size: 20, 40, and 60. Without loss of generality, the priorities of all tasks are randomly distributed in1,10. The weight and duration of each task are shown in the appendix of the paper.The scheduling period considered is 7 March 2014 12:00:00.000 UTCG~8 March 2014 12:00:00.000 UTCG. Before scheduling we compute the time window and slewing angle for each task using STK (Satellite Tool Kit). The time window is removed if its span is shorter than the duration of the corresponding task.


## 5.2. The Simulation Result

### 5.2.1. The Initial Scheduling Scheme

The feasible solutions that are obtained by RSSM3 and RSSM2 are shown in Figure13.Figure 13
The values of objectives of RSSM2 and RSSM3.
(a)
(b)
(c)We describe all the solutions of RSSM2 and RSSM3 in two-dimensional space and three-dimensional space, respectively. From Figure13, RSSM2 is found to generate only one solution, while RSSM3 is found to produce multiple solutions because of the added objective of total task execution duration. In addition, the solution of RSSM2 that has the highest revenue may not be the best because it requires the longest duration of task execution.We select the solution (R
(
S
S
2
)
=
1123; N
S
S
2
=
923; T
(
S
S
2
)
=
2808) of RSSM2 as initial scheduling scheme S
S
2 and the solution (R
(
S
S
3
)
=
1122; N
(
S
S
3
)
=
898; T
(
S
S
3
)
=
2795) from the solutions of RSSM3 as the initial scheduling scheme S
S
3.


### 5.2.2. The Adjusted Scheduling Scheme

In the second stage, with the arrival of the three group emergency tasks, we use CTM-DAHA to adjustS
S
2 and S
S
3 so as to obtain new schedules S
S
2
C
-
20
∗, S
S
2
C
-
40
∗, S
S
2
C
-
60
∗ and S
S
3
C
-
20
∗, S
S
3
C
-
40
∗, and S
S
3
C
-
40
∗, respectively. The new schedules S
S
3
T
-
20
∗, S
S
3
T
-
40
∗, and S
S
3
T
-
60
∗ are produced through adjustment of S
S
3 by TTM-DATA.The simulation results are presented in Table2.Table 2
The results of dynamic adjustment.
N
Schedule
Total revenue
Disturbance
NC
NITM
NI
NIR
NID
20
SS
2
C-
20
∗
1263
6
20
6
9
4
1
SS
3
C-
20
∗
1264
3
20
6
11
2
1
SS
3
T-
20
∗
1250
3
18
4
11
2
1
40
SS
2
C-
40
∗
1361
10
39
6
24
7
2
SS
3
C-
40
∗
1368
4
39
6
29
3
1
SS
3
T-
40
∗
1345
6
37
4
27
4
2
60
SS
2
T-
60
∗
1466
16
56
9
32
11
4
SS
3
C-
60
∗
1480
7
58
10
41
4
3
SS
3
T-
60
∗
1462
8
55
4
43
4
4
Notes:N-the number of new tasks, disturbance-the number of common tasks that are rearranged in the adjusted schedule, NC: the number of emergency tasks completed, NITM: the number of emergency tasks inserted by task merging, NI: the number of emergency tasks inserted directly, NIR: the number of emergency tasks inserted by rearranging, and NID: the number of emergency tasks inserted by deleting.


## 5.2.1. The Initial Scheduling Scheme

The feasible solutions that are obtained by RSSM3 and RSSM2 are shown in Figure13.Figure 13
The values of objectives of RSSM2 and RSSM3.
(a)
(b)
(c)We describe all the solutions of RSSM2 and RSSM3 in two-dimensional space and three-dimensional space, respectively. From Figure13, RSSM2 is found to generate only one solution, while RSSM3 is found to produce multiple solutions because of the added objective of total task execution duration. In addition, the solution of RSSM2 that has the highest revenue may not be the best because it requires the longest duration of task execution.We select the solution (R
(
S
S
2
)
=
1123; N
S
S
2
=
923; T
(
S
S
2
)
=
2808) of RSSM2 as initial scheduling scheme S
S
2 and the solution (R
(
S
S
3
)
=
1122; N
(
S
S
3
)
=
898; T
(
S
S
3
)
=
2795) from the solutions of RSSM3 as the initial scheduling scheme S
S
3.


## 5.2.2. The Adjusted Scheduling Scheme

In the second stage, with the arrival of the three group emergency tasks, we use CTM-DAHA to adjustS
S
2 and S
S
3 so as to obtain new schedules S
S
2
C
-
20
∗, S
S
2
C
-
40
∗, S
S
2
C
-
60
∗ and S
S
3
C
-
20
∗, S
S
3
C
-
40
∗, and S
S
3
C
-
40
∗, respectively. The new schedules S
S
3
T
-
20
∗, S
S
3
T
-
40
∗, and S
S
3
T
-
60
∗ are produced through adjustment of S
S
3 by TTM-DATA.The simulation results are presented in Table2.Table 2
The results of dynamic adjustment.
N
Schedule
Total revenue
Disturbance
NC
NITM
NI
NIR
NID
20
SS
2
C-
20
∗
1263
6
20
6
9
4
1
SS
3
C-
20
∗
1264
3
20
6
11
2
1
SS
3
T-
20
∗
1250
3
18
4
11
2
1
40
SS
2
C-
40
∗
1361
10
39
6
24
7
2
SS
3
C-
40
∗
1368
4
39
6
29
3
1
SS
3
T-
40
∗
1345
6
37
4
27
4
2
60
SS
2
T-
60
∗
1466
16
56
9
32
11
4
SS
3
C-
60
∗
1480
7
58
10
41
4
3
SS
3
T-
60
∗
1462
8
55
4
43
4
4
Notes:N-the number of new tasks, disturbance-the number of common tasks that are rearranged in the adjusted schedule, NC: the number of emergency tasks completed, NITM: the number of emergency tasks inserted by task merging, NI: the number of emergency tasks inserted directly, NIR: the number of emergency tasks inserted by rearranging, and NID: the number of emergency tasks inserted by deleting.


## 5.3. Discussion

In the first stage, we obtain different solutions using RSSM3 and RSSM2, respectively. As shown in Figure13, there is only one feasible solution generated by RSSM2 while RSSM3 can provide multiple solutions.When there are 20 emergency tasks,S
S
3
C
-
20
∗ produces the higher revenue compared with S
S
2
C
-
20
∗. In addition, the disturbance of S
S
3
C
-
20
∗ is lower than that of S
S
2
C
-
20
∗. As a result, RSSM3 can produce a schedule with high robustness as well as large revenue. The result proves that the objective of total task execution time is a useful robust indicator. Comparing S
S
3
C
-
20
∗ with S
S
3
T
-
20
∗, S
S
3
C
-
20
∗ has the larger revenue and more numbers of merging tasks with shorter imaging time and a smaller slewing angle. This result indicates that more tasks can be merged by the compact task merging method with lower energy cost.When there are 40 emergency tasks,S
S
3
C
-
40
∗ is found to have higher revenue and less disturbance compared with S
S
2
C
-
40
∗. It indicates that the total task execution time is indeed a robust indicator that can reflect the ability of a scheduling scheme to accept new tasks. If the total task execution time is shorter, then there will be larger spare time which may provide more imaging opportunities for new tasks. In contrast with S
S
3
T
-
40
∗, S
S
3
C
-
40
∗ contains more emergency tasks that are inserted by compact task merging. This result proves that the strategy of compact task merging has advantage over the existing traditional method. The compact task merging method can improve the chance of merging multiple tasks.When there are 60 emergency tasks, the superiority of RSSM3 appears to be more obvious. The disturbance ofS
S
3
C
-
60
∗ is much lower than that of S
S
2
C
-
60
∗. This result supports the conclusion that the total task execution time is a useful robust indicator that can improve the robustness of schedules. Moreover, the compact task merging method can improve the chance of merging multiple tasks.


## 6. Conclusion

To address the dynamic scheduling problem of satellite observations, we constructed a two-stage solution for emergency response in the paper. The imaging duration is embedded in the two-stage solution in order to make full use of the satellite resources. In the first stage, the robust satellite scheduling model is established considering a new robust indicator of the total task execution time. The multiobjective genetic algorithm is used to solve the model. In the second stage, we proposed a new strategy to construct compact composite tasks using task execution duration. The compact task merging method is embedded in the rule-based heuristic algorithm, which is designed to adjust the initial schedules dynamically. To evaluate our model and algorithm, we performed experiments and compared the scheduling schemes generated by different methods. The results of experimental simulations validate the impact of the task execution duration. The comparisons and analysis performed in this study demonstrated that the duration of task execution is an important factor. When the total duration of task execution is an objective for optimization of the scheduling, it can improve the robustness of the produced schedules. Moreover, when the task execution duration is used in the compact task merging method, it can improve the observation opportunity of new tasks. Therefore, we conclude that the task execution duration has considerable significance for full utilizing of satellite resources.



---

*Source: 731734-2015-06-16.xml*