A Dynamic Scheduling Method of Earth-Observing Satellites by Employing Rolling Horizon Strategy

Focused on the dynamic scheduling problem for earth-observing satellites (EOS), an integer programming model is constructed after analyzing the main constraints. The rolling horizon (RH) strategy is proposed according to the independent arriving time and deadline of the imaging tasks. This strategy is designed with a mixed triggering mode composed of periodical triggering and event triggering, and the scheduling horizon is decomposed into a series of static scheduling intervals. By optimizing the scheduling schemes in each interval, the dynamic scheduling of EOS is realized. We also propose three dynamic scheduling algorithms by the combination of the RH strategy and various heuristic algorithms. Finally, the scheduling results of different algorithms are compared and the presented methods in this paper are demonstrated to be efficient by extensive experiments.


Introduction
The mission of an earth-observing satellite (EOS) is to scout targets with a certain range of ground to produce highresolution photographs [1][2][3][4]. According to the working mechanism, the imaging sensors load in EOS can be divided into visible light imaging, microwave imaging, infrared imaging, and so forth. Since they have numerous merits such as rapider response, broad coverage range, longer duration, and freedom from airspace boundaries, EOS supports many important services, such as military surveillance, geodesy and navigation, remote sensing, and monitoring.
Nowadays, EOS is attracting more and more interests worldwide be accompanied with the dramatic increase of the demand for imaging service. One major research trend is that the single satellite used in early reconnaissance is replaced by cooperation of large satellites, yielding the socalled multi-satellite application. Unfortunately, as the number of satellites grows large, the traditional manual coordination will no longer be feasible because multisatellite scheduling (MSS) is an NP-hard combinatorial optimization problem [5]. Therefore, the researches on MSS refer to assigning observation resource to match various imaging requirements as indispensable.
There exist numerous studies on scheduling algorithm for multi-satellite to realize automated resource planning. Wang et al. [6] proposed a hybrid ant colony optimization (HACO) algorithm to overcome the disadvantage of current ant colony optimization (ACO) algorithm which is more easily plunged into local optimal solution in solving MSS problem. Jian and Cheng [7] constructed an integer programming model of MSS based on the analysis of the resource constraints and task characteristic. To solve this combinatorial optimization problem, they provided a genetic particle swarm optimization (PSO) algorithm which searches only in the appointed integer space. He et al. [8] presented a cooperative scheduling architecture of multiple satellites by converting this scheduling problem into a main problem and a subproblem. In addition, an improved PSO algorithm was used to solve MSS problem by taking task benefits as an optimization objective.
However, those above researches have been primarily focused on static scheduling problem of EOSs. It is usually assumed that the imaging tasks have been submitted before scheduling and their information is acquired. In practice, the requests from customers are continuously delivered, which lead to the imaging tasks arriving one by one. The most significant feature of dynamic scheduling is time urgency; that 2 The Scientific World Journal is, the task must be completed within a specified time limit, or it will lose its execution value caused by failure. The satellite imaging reconnaissance mission generally has a deadline, which can reflect its execution urgency. Execution of the task must be completed within the specified deadline; otherwise, the expected benefits will not be obtained. The traditional static scheduling methods tend to overlook the timeliness feature of imaging task, which makes them inapplicable to the dynamic scheduling problem of imaging satellite.
At present, there are a few works on the dynamic scheduling problem of EOSs. Baolin et al. [9] described a new satellite mission scheduling algorithm based on constraint satisfaction problem (CSP). Zhu et al. [10] considered the problems of satellite scheduling for realizing optimal disaster rescue and proposed a hybrid algorithm to solve this multiple objects optimization problem. Wang et al. [11] considered the characteristic of EOS in dynamic scheduling and proposed a rule-based heuristic algorithm to solve this problem. The study mentioned above still has the following shortages.
(1) It is difficult for these proposed algorithms to generate a task planning within a short time. A dynamic planning process consists of repeated scheduling events, and the traditional intelligence algorithm (IA) has high timing complexity, which cannot rapidly generate the planning scheme. Therefore, the highefficiency heuristic algorithm should be used to address the dynamic scheduling problem of EOSs.
(2) The impacts of scheduling time on the available tasks were not considered. Since tasks are dynamic arrivals, the planning system collects dissimilar task sets at different scheduling times. Thus, the task set should be determined based on current scheduling time before the scheduling.
(3) The constraints during dynamic scheduling have not been adequately considered. Many constraints (i.e., the storage capacity, maximum swing angle, and continuous observation time) which have been simplified in static scheduling should be considered in dynamic scheduling.
In this paper, we tackle the above challenges imposed on the dynamic scheduling problem of EOSs by handling the impacts of deadline constraint and scheduling time on planning scheme. The integer programming model is constructed based on various constraints in actual reconnaissance activities, and the rolling horizon (RH) strategy and heuristic algorithms are employed to solve this model.
The remainder of this paper is organized as follows. Section 2 describes the dynamic scheduling problem of EOSs, and establishes the integer programming model. Section 3 designs the scheduling architecture and algorithms based on the RH optimization. Simulation results and performance analysis are given in Section 4. Finally, Section 5 concludes the paper with some future research directions.

Problem Description and Modeling
The EOS operates in the space in a certain orbit as shown in Figure 1. The view coverage of EOS can be formed on the ground by the subsatellite point of satellite platform as well as the view angle, swing angle, and tilting angle of satellite payload [12][13][14].
The purpose in addressing the dynamic scheduling problem of EOSs is to appoint observation resources and execution time for the dynamical submitted tasks with various constraints, so as to maximize the task benefits of reconnaissance activity and minimize the resource consumption as far as possible.
The imaging tasks in dynamic scheduling problem are submitted to the planning system in independent times compared to the static scheduling problem which can obtain all the tasks in advance. The dynamic scheduling system only acquires the information of arrived tasks but can not gain the situation of following tasks. Hence it needs to trigger multiple scheduling in order to cope with the new tasks which are successively submitted to the scheduling system. Therefore, the dynamic scheduling algorithms designed in this paper should have the overall coordination capacity; that is, the algorithm should be able to timely adjust the execution scheme of planned tasks for executing the emergency tasks submitted later, so as to maximize task benefits. For future reference, we summarize main notations used in this paper as the following: = [ start , end ] is the reconnaissance activity period of satellites, where start is the starting time and end is the ending time of the observation activity; S = { 0 , 1 , . . . , } is the scheduling time set, where ( ≥ 1) is the th scheduling time, 0 = start is the virtual initial scheduling time, period = ( − 0 )/ is the average scheduling period, and is the quantity of scheduling activities during the reconnaissance activity period; Task = {task 1 , task 2 , . . . , task } is the imaging task set, where task is the th task, and is the task number; Sat = {sat 1 , sat 2 , . . . , sat } is the satellite resource set, where sat is the th satellite, and is the satellite number;

=1
, is the observation opportunity window set of task between its arrival time and deadline , where , is the opportunity window number of task on sat , , = [ , , , ] is the th opportunity window of task on sat , and , and , are the starting time and ending time of , , respectively.
In addition, task has an execution benefit and it requires a continuous observation time . If task can be executed before its deadline, assume is the starting time, is the ending time, and ℎ is the required storage capacity. Furthermore, the satellite has a swing angle ℎ and a tilting The Scientific World Journal 3 angle to execute task . Assume is the view angle of sat , is the maximum swing angle, is the maximum tilting angle, is the swing speed, is the tilting speed, is the position transfer stabilization time, is the maximum position transfer frequency, and is the memory capacity. The decision of scheduling times is affected by many factors, for example, the quantity and density of task, the upload period of satellite instructions, and the communication capacity of control center. The decision variable of the dynamic scheduling problem provided in this paper is as follows: Assume is the current scheduling time and the maximum task benefits are the optimization object, then we can build the integer programming model of the dynamic scheduling problem as follows [15]: where is the optimization objective; constraint (1) means each task only need to be executed once, and the execution process does not involve preemptive service; constraint (2) means the scheduling system only assigns the arrived tasks and their deadline must later than current scheduling time; constraint (3) means that if any task is executed, the execution time should between current scheduling time and its deadline; constraint (4) means that if the task can be executed, its execution time should not be shorter than the required continuous observation time; constraint (5) means any two tasks assigned to the same satellite should have an adequate time interval between their execution times to ensure the sensor of satellite can adjust its gesture; constraint (6) means that the memory store any task should not exceed its maximum capacity; constraint (7) means that the gesture transfer number of satellite in one orbit should not be higher than the allowable frequency.

Dynamic Scheduling Approach
3.1. Architecture of Algorithm. In this paper, the dynamic scheduling algorithm based on the RH strategy [16][17][18] is proposed to allocate tasks which have special characteristic such as the independent arrival time and deadline. This method can conduct scheduling (or rescheduling) forward for a task set through rolling advance, so as to effectively handle the uncertain factors brought by the dynamic tasks. The heuristic algorithms are incorporated with RH strategy to reduce the timing complexity of scheduling while each scheduling requires one replanning. In other words, the task set that needs to be scheduled is determined by the RH strategy firstly, and then the heuristic algorithms are used to assign satellites and execution periods to each task.

Rolling Horizon Strategy.
The basic method of RH strategy is to divide the tasks into multiple task sets with certain overlaps based on the arrival sequence, and the division can be continuously updated along with the scheduling time. Each scheduling will decide and only assign its task set, which is called as rolling horizon. The new tasks are continuously added to the rolling horizon, and the finished tasks are gradually deleted with the advancement of the scheduling time, so as to realize the update of rolling horizon. The advantage of RH strategy is that it can decompose the complicated dynamic scheduling problem into multiple simple static scheduling sub-problems, and the optimization solution of previous problem is replaced with the optimized solutions of sub-problems, so that the complexity of the original problem will be reduced.

Task States.
In general, tasks will go through four states based on current scheduling time: a new task, waiting task, running task, and finished task. One task may be scheduled in different time, thus the state of task is dynamic; that is, a task might be in two states in different scheduling.
In the example shown in Figure 2, is current scheduling time. If task has been planned during the ( −1)th scheduling (i.e., ≤ −1 ), then task is a finished task while ≤ (such as task 1 ); task is a running task if < ≤ ; task is a waiting task if > . If task has not been planned in the ( − 1)th scheduling (i.e., −1 ≤ ≤ ), then task is a new task.

4
The Scientific World Journal

Rolling Horizon.
The rolling horizon is used to store the tasks that need be scheduled currently. There are two key elements about rolling-horizon: the quantity and state of tasks in rolling-horizon. From the perspective of task quantity, the more the tasks fall into the rolling horizon, the stronger the capacity of scheduling system to obtain comprehensive task information is, which is important to acquire the better solution. But the timing complexity of scheduling algorithm will also be aggravated. From the perspective of task state, the rolling-horizon consists of the running tasks, waiting tasks, and new tasks generally. Among them, the processing method for the running task is an important criterion to distinguish the preemptive and nonpreemptive scheduling. The later scheduling mode is out of the interest of this paper; that is, the rolling-horizon only includes the waiting tasks and new tasks. It should be noticed that during actual scheduling, the rescheduling of waiting task will not consume any additional resources because waiting task has not been executed yet.

Trigger
Mode. The arrangement of scheduling time is the key factor which affects the application efficiency of RH strategy, and it is mainly determined by the trigger mode of scheduling. The general trigger modes include the following types.
(i) Event Trigger Mode. The scheduling is triggered while the scheduling environment is changed or a manual intervention occurred, such as a new task arrived, satellite number changed, or a scheduling requirement was sent from decision-making section. The event-trigger mode is sensitive to the scheduling environment, and it can assign the emergency tasks in time. However, this mode might cause the scheduling algorithm to have a high timing complexity due to frequent scheduling, and result in hard to generate a planning scheme rapidly.
(ii) Period Trigger Mode. In this mode, the scheduling event will be trigged after a certain time interval, and this time interval can be a uniform constant or dynamic variable. The period-trigger mode has capability to ensure the stable frequency of scheduling, but it can not provide timely scheme for emergency tasks with high timeliness, and also has the fault that it can not adjust scheme in dealing with the change of the satellite number.
(iii) Mixed Trigger Mode. Mixed-trigger mode is the combination of the aforementioned two modes. It can timely allocate the emergency tasks with less time consumption, so it is an adaptive mode to be employed in the scheduling of real-time system and dynamic system.
The mixed-trigger mode is adopted in this paper, and the scheduling time for period factors and event factors is embodied in the elements belonging to . The RH strategy based on the mixed-trigger mode is depicted as follows.
In Algorithm 1, each scheduling time ∈ will trigger one rescheduling (see line 1), and the scheduling frequency during is O(P). The criterion described in Figure 1 is used to divide the arrived tasks into the finished task, The above algorithm needs to assign satellite resources and execution time for each task, so ( ) is usually much larger than ( ). The timing complexity of Algorithm 1 will be dominated by ( ) if the scheduling frequency (or scheduling interval) is a constant. Then, the additional timing complexity caused by RH strategy is mainly related to the scheduling frequency but not affected by other factors such as the satellite quantity. At present, the intelligence algorithms (IA) are usually used to assign satellites and execution time to tasks in the static scheduling problem. These algorithms generally require multiple iterations to realize optimization of the scheduling scheme, and have a high timing complexity. The imaging tasks in dynamic scheduling have the timeliness feature, which requires the planning scheme to satisfy the deadline possibly, and, furthermore, the planning scheme should be rapidly generated and can be fast adjusted to adapt to the change of task set by scheduling algorithm. In Algorithm 2, the heuristic algorithm is employed to match the satellites and the tasks in order to shorten the generation time of the planning scheme. Meanwhile, the RH strategy can well adjust the previous planning scheme of planned tasks based on the change of rolling-horizon. The timing complexity of the heuristic algorithm embedded in RH strategy will be analyzed in detail in the next section.

Heuristic
Algorithms. This paper has proposed the heuristic algorithms AIS, DIS, and WIS based on the arrival time priority, the deadline priority, and the waiting time priority inspired by the earlier arrived time first (EAT) algorithm [19] and earlier deadline first (EDF) algorithm [20,21] and considering the task importance.
Let RH = {task 1 , task 2 , . . . , task } denote the rollinghorizon in the th scheduling. The basic parameters (including the arrival time, deadline, waiting time, and importance) of all tasks are standardized as follows: After the standardization, we record the basic parameters of task as AS , DS , CS , and WS respectively. The arrival time priority degree of task is given as follows: The deadline priority degree of task is as follows: The Scientific World Journal The waiting time priority degree of task is as follows: The main steps of the heuristic algorithm adopted in this paper are described as follows.
Step 1. The three priority degrees of each task in rollinghorizon are calculated.
Step 2. The tasks in the rolling-horizon are sorted by their different priority-degrees, and the ranking results can be obtained corresponding to the AIS, DIS, and WIS algorithms, respectively.
Step 3. The assignment strategy based on windows conflict index (WCI) is used to assign satellites and execution time for each task based on ranking results, and the scheduling scheme is generated after all tasks have been assigned.
In the aforementioned steps, WCI denotes the total impact on the unassigned tasks when a task is allocated to an available opportunity window. If task is appointed to the th opportunity window of sat , the WCI of task can be calculated as follows: where Waiting is used to store tasks scheduled after task according to the ranking result and ( , , , ) can be calculated as follows: Let Queue = {task 1 , task 2 , . . . , task } denote the task ranking result and Queue the finished task set delivered by Algorithm 1. The pseudocode of heuristic algorithm is described in Algorithm 2.
In Algorithm 2, the tasks in the rolling horizon are scheduled in order (see line 1), and the timing complexity is  The Scientific World Journal (1) for each timing instant in set do (2) RH ← NULL; Finished ← NULL; / * Initialization * / (3) for each task task arrived before do (4) if ∃ , ← 0, ← NULL, ← NULL then/ * Delete the planning scheme of task * / (5) Add task to set RH; / * RH is the rolling-horizon * / (6) else if ∑ =1 ∑ , =1 , = 0 and > −1 then/ * task is a waiting task * / (7) Add to set RH; (8) end if (9) end for (10) Sort all task in set RH, and schedule each task by Heuristic Algorithm in order; / * The pseudocode of this algorithm is given in the following Algorithm 2 * / (11) Add task to set Finished; (12) Update the scheduling decisions; (13)  end if (8) end for (9) end for (10) Remove task from RH to Finished; (11) if time window set Validwindow ̸ = 0 then (12) for each , in time window set Validwindow do (13) Calculate WCI , of , ; (14) end for (15) Assign task by WCI strategy, and calculate , ; (16) end if (17) end for Algorithm 2: The pseudocode of heuristic algorithm.
period have a proportional relation if the rescheduling time interval is constant, then the timing complexity of dynamic scheduling algorithm is ( 2 2 ).
We incorporate RH strategy with AIS, DIS, and WIS to yield three new algorithms named RH-AIS, RH-DIS, and RH-WIS, respectively. Meanwhile, AIS, DIS, and WIS can also be used to solve the dynamic scheduling problem separately; that is, only new tasks are scheduled in each scheduling by those heuristic algorithms. The six algorithms mentioned before are compared in the following experiment to evaluate the efficiency of the RH strategy.

Evaluation
The proposed algorithms are implemented by Matlab2007 on a laptop with Pentium IV 3.06 GHz CPU, 2 GB memory, and Windows XP operating system. The experimental scenarios are generated randomly for there has been no benchmark in the field of satellite scheduling yield. The operating points of simulated experiment are given as follows [22][23][24].
(2) The imaging tasks are generated in the area with a longitude 0 ∘ ∼150 ∘ and latitude −30 ∘ ∼60 ∘ randomly. The task quantity varied from 100 to 400. The arrival time gap between two adjacent tasks is subject to the negative exponential distribution, with a density of 0.1. Set the execution value of task from 1 to 10, the required continuous time 3∼5 minute, and the occupied storage 2∼4 G, and the deadline is a random variable generated between the arrival time of the task and the ending time of the observation activity, which abides by the uniform distribution. (3) The satellite quantity varied from 4 to 6, the memory storage is 240 G, the field angle is 3 ∘ , the maximum sway angle is 35 ∘ , the maximum tilting angle is 40 ∘ , and the maximum number of position transfers within a single orbit is no more than 5.
For the convenience of description, the dynamic scheduling problem of satellites and tasks is recorded as × . The twelve experiments are designed in different problem scales, and the performance metrics include the task benefits and guarantee ration. The scheduling results of various algorithms are displayed in Table 1.
From Table 1, we can observe that the RH strategy can effectively improve the performance of heuristic algorithms. The task benefits of the three heuristic algorithms embedding RH strategy increase by 16.19%, 15.82%, and 8.29%, respectively. This is because the algorithms without embedded RH strategy only operate the new tasks, while the embedded one can adjust the scheduling scheme of waiting tasks for executing the new tasks which can not be executed previously; hence a better scheduling solution can be achieved. Among the rolling-horizon scheduling algorithms (RH-AIS, RH-DIS, and RH-WIS), the task benefits obtained by RH-WIS are slightly higher than those of RH-DIS and RH-AIS while the satellites have adequate observation capacity to execute imaging tasks (for the problem scales 100 × 4, 100 × 5, and 100 × 6), and the resolution of RH-DIS is better than that of the other algorithms while the satellites have inadequate observation capacity. This is because both RH-DIS and RH-WIS have considered the deadline feature of tasks in scheduling scheme; it is the precondition to execute the valuable task. A large amount of high-timeliness tasks cannot be executed in their deadlines if the satellites have inadequate observation capacity, then RH-DIS gives priority to the tasks with earlier deadlines, so that the task guarantee ration is increased, and higher task benefits can be obtained. Most tasks can be effectively executed if the satellites have adequate observation capacity, then RH-AIS schedules tasks based on the deadline distribution but also considers the impact of executing current task on follow-up tasks, so that higher task benefits can be obtained on the aspect of overall planning effects.
From Figure 3, the CPU time of six algorithms is compared in different satellite numbers. The timing complexity of scheduling algorithms is aggravated after embedding the RH strategy; thus the generation speed of the planning scheme is reduced. In the scenarios with three different satellite numbers, the average CPU times of algorithms incorporating RH strategy are increased 3.76, 3.73, and 3.74 times, respectively. The increased CPU time of rolling-horizon scheduling does not have special change with raising satellite number, which means the impact caused by RH strategy on the timing complexity of scheduling algorithm is weakly related to the satellite number, and this is consistent with the previous conclusion in the timing complexity analysis of Algorithm 2. Although the RH strategy will delay the generation of planning scheme, it also satisfies the timelessness of dynamic scheduling because the longest CPU time of the rollinghorizon scheduling is only 7.5 s, which is a low level.
Set the scheduling period from one to twelve hours in order to analyze the impact of scheduling time interval on the overall performance of planning algorithm. The six algorithms are tested in different problem scales and shown in Figure 4.
From Figure 4, the task benefits are reduced overall as the scheduling period extends gradually. This is because the extensive scheduling period will increase the rejected tasks for their deadline can not be satisfied; hence the low task benefits are obtained for satellites unable to execute the tasks in time. The heuristic algorithms which have not been embedded into RH strategy (including RH-AIS, RH-DIS, and RH-WIS) still have high task benefits in different scheduling period. Let the ratio between the task number and the satellite number as the approximate workload of the satellite resources; then a scheduling period between 1∼8 h does not have a significant impact on the task benefits if the satellite resource has a light workload. However, the task benefits will be sharply reduced if the scheduling period is extended to 8∼12 h. There are high task benefits if we maintain the scheduling period within 1∼6 h to adapt the increased 8 The Scientific World Journal  workload of the satellite resource. It is also appropriate to maintain the scheduling period within 1∼3 h in accordance with the heavier workload. Furthermore, it should be ensured the scheduling period is no more than 2 h while the satellite resource has the heaviest workload. So far we conclude that the scheduling time is a key factor to affect the task benefits. In addition, the task benefits do not present monotonic change in accompany with the scheduling period as shown in Figure 4. For example, Figure 4(a) presents that the task benefits gradually increase with the extension of scheduling period within 1∼4 h and fluctuate within 4∼8 h but begin to reduce within 8∼12 h. This is because there is a conflict between the performance scheduling requirement of the planning system and the timeliness scheduling requirement of the tasks. The scheduling system only acquires the local task information if the scheduling period is short and yields inferior scheme which can not handle the following tasks with high timelessness. On the contrary, a large amount of high-timeliness tasks may not be finished before their deadline if the scheduling period is long, and the task benefits are reduced due to a low guarantee ration. Therefore, the scheduling period should be reasonably selected based on the satellite quantity and task density in actual application, so as to ensure the performance of scheduling system.

Conclusions and Future Work
This paper has studied the dynamic scheduling problem of EOSs. An integer programming model has been constructed by considering the independent arrival time and deadline of the imaging tasks. A dynamic scheduling algorithm based on the RH strategy which can be combined with multiple heuristic algorithms proposed in many researches and its timing complexity has been analyzed. The scheduling algorithms adapted to RH strategy can effectively adjust to the planning scheme based on the satellite workload to execute the emergency tasks. The effectiveness of this strategy has been verified by comparing the scheduling results of six algorithms in the experiment. It is worth to restate that the RH strategy might cause a high time consumption to yield an optimized scheme if a large amount of tasks are involved in the scheduling system. This problem can be solved by limiting the size of the rolling horizon.
Also for our future work, we plan to research the detection method of scheduling time, which is a significant factor to impact the performance of scheduling algorithm and system. With the method in place, we will extend our algorithm to cooperative scheduling of EOSs; we will consider Qos requirements in our RH-WIS; we are going to combine the dynamic resources management into our scheme.