A Hybrid Genetic Algorithm for Satellite Image Downlink Scheduling Problem

The satellite image downlink scheduling problem (SIDSP) is included in satellitemission planning as an important part. A customer demand is finished only if the corresponding images are eventually downloaded. Due to the growing customer demands and the limited ground resources, SIDSP is an oversubscribed scheduling problem. In this paper, we investigate SIDSPwith the case study of China’s commercial remote sensing satellite constellation (SuperView-1) and exploit the serial scheduling scheme for solving it.The idea is first determining a permutation of the downlink requests and then producing a schedule from the given ordered requests. A schedule generation algorithm (SGA) is proposed to assign the downlink time window for each scheduled request according to a given request permutation. A hybrid genetic algorithm (HGA) combined with neighborhood search is proposed to optimize the downlink request permutation with the purpose of maximizing the utility function. Experimental results on six groups of instances with different density demonstrate the effectiveness of the proposed approach.


Introduction
Most of the literature on satellite mission planning is divided into two categories: optical satellites [1][2][3][4] and Synthetic Aperture Radar (SAR) satellites [5][6][7][8][9][10][11][12].The satellite image acquisition and image downlink are two main scheduling problems in satellite mission planning.The image acquisition scheduling is a process of selecting observation tasks (shot strips) generated from customer demands.All selected observation tasks consist of a set of requests as the input of SIDSP.The image downlink scheduling is a process of selecting a subset of downlink requests among the candidate set.Only if the image is successfully transmitted can the utility of the corresponding demand be counted.Considering all kinds of constraints, the subset of requests that can eventually be transmitted, their corresponding ground stations and downlink time windows are the output of SIDSP with the purpose of maximizing the utility function.SIDSP is a complex constrained optimization problem.
The growing customer demands and the limited ground resources make SIDSP become an oversubscribed scheduling problem.Not all the requests can be scheduled and there are cases that satellite has sufficient conditions for an imaging but cannot arrange a downlink for it, which causes the imaging to be removed from the image acquisition plan and the corresponding customer demand has to be shelved.Image downlink may become a bottleneck in the efficiency of the whole satellite system.Satellite image downlink system is mainly composed of on-board transmission system and ground receiving system.The on-board transmission system includes transmitter and antennas.The ground receiving system includes receiver and antennas.Satellite image downlink mission is to transmit the original or compressed data to the ground station by satelliteground data link under the certain code rate and bit error rate.Satellites can work in two modes: (1) the antennas can work separately and they can independently downlink different images to one or different ground stations simultaneously; (2) only one antenna can work to downlink at a time.Downlink also can be classified into two ways: (1) the observed images are transmitted to the ground station in real time when the observation target and the ground station are simultaneously visible to the satellite; (2) first store observed images in the onboard memory and then transmit data to the ground station when the satellite is passing.SIDSP and its variations have been studied by many authors, mainly divided into single-satellite problems [10][11][12] and multisatellite problems [1,3,[5][6][7][8][9]. Single-satellite problem deals with the resource contention for satellite internal requests, while multisatellite problem should also take the resource contention for requests from different satellites into consideration.If every satellite can transmit data independently without affecting each other, the multisatellite problem can be transformed into a single-satellite problem.The constraints of SIDSP are not fixed, varying with the specific case.Different from the previous literature, we consider the constraints of satellite memory capacity in our case, which is detailed in Section 2.
In this paper, we investigate SIDSP with the case study of China's commercial remote sensing satellite constellation, SuperView-1.SuperView-1 consists of four optical satellites with the resolution of 0.5 meters.Two of them were launched in December 28, 2016, and the other two were launched in the later stage of the project.The four satellites will network with a 90-degree angle between each other, realizing the global revisit within one day.As a commercial satellite constellation, SuperView-1 will provide global customers with remote sensing data services for national land resources mapping, environmental monitoring, financial insurance, and value-added service in the Internet industry.There are a large number of images that need to be transmitted every day.In addition, China's ground stations are built on the mainland and not scattered around the world.In the project of SuperView-1, three domestic ground stations and one Arctic ground station are used to downlink images.It takes a fee to use the Arctic ground station for downlink in each orbit.These specific situations increase the difficulty of scheduling.
The process currently in use for SuperView-1 downlink scheduling includes two phases: (1) construction of the schedules with a priority-based heuristic and (2) human intervention, which do not perform very well.To improve the efficiency of the downlink scheduling is significant for the whole satellite system.Adapting to the characteristic of SIDSP, we exploit the serial scheduling scheme involving two key parts: (1) determining a permutation of the downlink requests and (2) producing a schedule from the given ordered requests.A schedule generation algorithm (SGA) is proposed to assign the downlink time window for each scheduled request.In SGA, we use the greedy heuristic rule, scheduling each request to the earliest available time and designing two heuristic rules to improve the utility considering the cost of the Arctic ground station.We propose a hybrid genetic algorithm (HGA) combined with neighborhood search to optimize the downlink request permutation with the purpose of maximizing the utility function.To validate the effectiveness of the proposed approach, we carry out experiments on several groups of instances with different density and compare HGA with the commonly used construction heuristic algorithms.The experimental results show that HGA and the heuristic rules we design in SGA significantly improve downlink throughput and schedule quality.
The remainder of the paper is organized as follows.Section 2 gives the description of SIDSP in SuperView-1.The solution approach for SIDSP and several key algorithms are introduced in Section 3. Section 4 presents the experimental results of the proposed approach on several groups of instances with different density and the comparison between HGA and the construction heuristic algorithms.Concluding remarks are drawn in Section 5.

Problem Description
In this section, SIDSP in SuperView-1 is detailed as the studied case.Each SIDSP has its own restrictions and properties that can be exploited.We hope to discover the commonalities of SIDSP and show the special properties through investigating the case to make preparations for the design of solution approach.
Due to the special structure of the constellation where four satellites operate with a 90-degree angle between each other, every satellite can transmit data independently.For this reason, SIDSP in SuperView-1 can be transformed into a single-satellite problem.Let  = { 1 ,  2 , . . .,   } be a set of  downlink requests.Each request   (  ∈ ) is associated with the start time of image acquisition ast  , the end time of image acquisition aet  , the start time of downlink dst  , the end time of downlink det  , the profit   , the size   , and the deadline dl  .A downlink activity can be carried out only when the satellite is passing over a ground station.This time interval is called visibility mask of the station.Let  = {V 1 , V 2 , . . ., V  } be a set of  visibility masks.Each visibility mask V  (V  ∈ ) is associated with the start time st  , the end time et  , and the cost   (only each visibility mask of the Arctic ground station needs a cost; other visibility masks' cost is 0).Moreover, the memory capacity of each satellite is .Let   be the current satellite storage when the image acquisition of request   is finished.Let  be  ×  binary matrix such that   = 1 if the downlink of request   is assigned to visibility mask V  and   = 0 otherwise.Let   be a set of scheduled downlink requests.
We make the following assumptions: (a) The image acquisition schedule is given and not to be changed; that is, ast  and aet  are already generated.(b) The gaps between two consecutive downlinks are ignored.(c) The compression ratio of each image is CR (in SuperView-1, CR = 1/2); that is, the image acquisition duration is CR times as long as the downlink duration, which can be stated as (d) The satellites work in the mode that only one antenna can work to downlink at a time; that is, any two downlink time windows do not overlap, which can be stated as (e) The downlink way that the observed images are transmitted to the ground station in real time is not considered.(f) The storage of each request can be released immediately, once the corresponding downlink finishes.
Our scheduling results must satisfy the following constraints: (a) If the downlink of request   is assigned to visibility mask V  , dst  and det  must be within visibility mask V  , which can be stated as (b) The start time of downlink dst  must be after the end time of image acquisition aet  and the end time of downlink det  cannot be after the deadline dl  , which can be stated as (c) Once a downlink starts, it cannot be preempted; that is, an image cannot be split into several fragments, which can be stated as (d) The satellites cannot observe and downlink at the same time and there must be a gap of at least  units between consecutive image acquisition and downlink, which can be stated as (e) The satellite storage cannot exceed the memory capacity  at any time, which can be stated as We consider the storage constraint (Constraint (e)) in SIDSP.The limited on-board memory makes us consider how to improve the utilization efficiency by downlink schedule.Image acquisition is a process of loading while image downlink is a process of unloading.There are cases that the satellite cannot acquire image because of the lack of storage.Image downlink can release storage to make it possible for image acquisition to improve the efficiency of the whole satellite system.
Note that SIDSP deals with the problem of finding an image downlink schedule so that a utility function is maximized.The utility function considers the profit of each scheduled request and the cost of each used visibility mask.In order to record which visibility masks are used, we set a variable   such that   = 1 if the visibility mask V  is used and   = 0 otherwise, which can be stated as Our objective function is maximizing the utility function of solution , which can be stated as To solve SIDSP, we need to determine two points.One is to determine the corresponding visibility mask assigned for each request (i.e., the binary matrix ); the other one is to determine the downlink time window of each request (i.e., the start time of downlink dst  , the end time of downlink det  ).The requests which cannot be scheduled eventually are removed from the image acquisition plan.

Solution Approach
In this section, the solution approach based on serial scheduling is described to deal with SIDSP.The construction heuristic algorithms for comparison are detailed in Section 3.1; the schedule generation algorithm (SGA) is detailed in Section 3.2; the hybrid genetic algorithm (HGA) is detailed in Section 3.3.
Serial scheduling scheme is an effective approach to deal with constrained optimization problems such as Job Shop scheduling [19,20].The solver searches in the space of request permutations while a polynomial time schedule generator converts the request permutations into schedules.The schedule generator is a greedy algorithm scheduling the requests in the given order, choosing the earliest available position for each of them considering the constraints.An important property of the schedule generator is that it always generates active schedules; that is, none of the unscheduled requests can be added to it without delaying some scheduled requests [21].If we do not consider the cost of visibility mask, there exists a request permutation generating an optimal schedule [22].Our utility function considers the cost of visibility mask so that sometimes delaying or deleting a downlink can improve the solution, which makes us design two other heuristic rules.There also exists a request permutation generating an optimal schedule in our case, which is explained in Section 3.2.With the serial scheduling scheme in mind, SIDSP can be viewed as a problem of optimizing a permutation of the downlink requests.Our objective function also can be maximizing the utility function of permutation , which is stated as max  =  () .(10) Note that to evaluate the solution profit of a permutation we need to generate the schedule from that permutation, that is, to apply the schedule generation algorithm.In the following section, let    be the th request in  and    = 1 if the downlink of request    is assigned to visibility mask V  and    = 0 otherwise.

Construction Heuristic.
The construction heuristic algorithms are efficient for quick request permutation generation.By using the construction heuristic algorithms reasonably, we can quickly get a schedule with a high profit.Adapted to the characteristic of SIDSP in SuperView-1, the problem can be seen as a variant of multiple knapsack problem: there are  items (analogous to requests) and  knapsacks (analogous to visibility masks).Each item has its own profit (analogous to request profit) and weight (analogous to downlink duration).Each knapsack has its own capacity (analogous to visibility mask duration).We should find a schedule of how to assign each item to maximize the total profit without violating knapsack capacity constraints [23].Adapted to our purpose of maximizing the utility, Criterion 1 gives priority to those requests with high profit and may make the total profit of the scheduled requests higher.Adapted to Constraint (a), when it is a tight constraint (i.e., the visibility masks are oversubscribed), Criterion 2 can increase the number of scheduled requests and may have a good performance; Criterion 3 focuses on those requests with high profit per unit time, which can be seen as the balance between Criterions 1 and 2.

Schedule Generation Algorithm (SGA).
SGA is used to produce a schedule from a given request permutation.As the key part in serial scheduling scheme, SGA is applied each time we evaluate the solution profit of a permutation.The general procedure of SGA is described in Algorithm 1, mainly including three heuristic rules and time window clipping.
(1) The Greedy Heuristic Rule.We choose the earliest available position as the downlink time window for each request in the time No delay Delay time the available visibility masks for r i to downlink  1 : a chargeable visibility mask  2 : a free visibility mask Figure 1: The case that using the delay rule can improve the utility.
given order.When the visibility masks are oversubscribed, making full use of them is an important principle.This rule makes sure that the scheduled requests cannot be advanced and the whole schedule gets more compact.What has been proved is that there exists a request permutation generating an optimal schedule [22].
(2) The Delay Rule.When we consider the cost of the Arctic ground station in the utility function, the inherent combinatorial structure of the problem is changed.Only using the greedy heuristic rule may lead to losing the optimal schedule (e.g., in Figure 1, we assign request   to the chargeable visibility mask V 1 only based on the greedy heuristic rule, but if request   is delayed and assigned to the free visibility mask V 2 , the utility will be improved), for which we add the delay rule into SGA.To describe the delay rule, if the earliest available position of a request is in a chargeable visibility mask, the request will be delayed and assigned to the earliest available position in other free visibility masks.If there is no available position in other free visibility masks, the request will not be delayed.
Although we adopt the delay rule according to the characteristics of this problem, the opportunity to get an optimal schedule is also kept.Using the delay rule leads to missing the optimal schedule with some special permutations (e.g., in Figure 2 the available visibility masks for r 1 to downlink the available visibility masks for r 2 to downlink  1 : a chargeable visibility mask  2 : a free visibility mask the available visibility masks for r 1 to downlink the available visibility masks for r 2 to downlink  1 : a chargeable visibility mask  2 : a free visibility mask Figure 3: The case that using the delay rule leads to generating the optimal schedule.first we assign request  1 to the free visibility mask V 2 based on the delay rule and then request  2 cannot be scheduled because of no available position).But there also exists a request permutation generating an optimal schedule (e.g., in Figure 3, if request  2 is sorted in front of request  1 , first we assign request  2 to the free visibility mask V 2 and then request  1 that can be assigned to the chargeable visibility mask V 1 ).
(3) The Deletion Rule.The profits of requests which are assigned to the same visibility mask are added as the total  profit of that visibility mask.After all the requests are assigned, we check each chargeable visibility mask whether its total profit is higher than its cost.If so, keep the current schedule as the final schedule; if not, we delete all the requests assigned to the unprofitable visibility mask.The deletion rule makes sure that each chargeable visibility mask we used is profitable and improves the utility as the last operation before a schedule generation.
(4) Visibility Mask Clipping.After a request is assigned, its image acquisition time window and its downlink time window are determined.Due to Assumption (d) and Constraint (d) (in Section 2), the occupied periods in visibility masks cannot be used to observe and downlink anymore and the gap of  units between consecutive image acquisition and downlink should be reserved.So we need to clip affected visibility masks to make the later assignments satisfy the constraints, which is shown in Figure 4.

Hybrid Genetic Algorithm (HGA).
HGA is proposed to optimize the downlink request permutation.The framework of HGA is consistent with GA.In order to strengthen the local optimization ability of GA, we use neighborhood search in mutation operation.The general procedure of HGA is described in Algorithm 2, mainly including the following parts.
(1) Coding.The genes of the chromosomes describe the requests, and the order in which they appear in the chromosome describes the scheduling order of requests.In each chromosome, the gene number should be consistent with the number of requests  and the genes cannot be repeatable.In fact, each chromosome represents a downlink request permutation.
(2) Initial Population.The initial chromosomes are obtained by random ordering.The individual number is related to the number of requests , set to /5.
(3) Fitness Evaluation.The utility is computed for each chromosome in the current generation by SGA.
(4) Selection.At each iteration, two chromosomes are chosen for reproduction based on roulette wheel selection.For each chromosome   , its utility is (  ) and the probability that it is selected can be stated as (5) Offspring Generation.The new generation is obtained by changing the order of genes, which includes two operations: crossover and mutation.These operations preserve feasibility of new individuals.At each iteration, two new individuals are generated and replace two of the worst individuals in the population.If new individual is worse than all the original individuals, it will be abandoned.At the end of each iteration, the updated population is obtained.
In crossover operation, we use the partially mapped crossover (PMX) which includes a two-point crossover and a repair process to ensure the legality of coding.
In mutation operation, we use neighborhood search to strengthen the local optimization ability.An exchange operator which changes the chromosome by exchanging two genes is defined.The operator exchanges two genes in order and the exchange which improves the utility is preserved in each search.The whole search process continues until the utility is not improved with exchanging any two genes.For a detailed description of our neighborhood search see Algorithm 2.
(6) Stop Criterion.Fixed number of iterations is reached.If the stop criterion is satisfied, the algorithm ends and the best chromosome, together with the corresponding schedule, is given as output.Otherwise, the algorithm iterates again steps (4)-( 5).

Computational Experiments
In this section, we present experimental studies on the schedule generation algorithm (SGA) and the hybrid genetic algorithm (HGA).
Test Instances.The instances are divided into six groups according to the density of requests.The requests in each instance are evenly distributed around the world and the density is characterized by the number of requests  ∈ {50, 100, 150, 200, 250, 300}.Each group has five instances denoted as " − 1,  − 2, . . .,  − 5." The planning horizon is set to 24 h.In our case, three domestic ground stations and one Arctic ground station are used to downlink images.Based on the orbit parameters of number 1 optical satellite in SuperView-1, each domestic ground station is visible 3 to 5 times, and the Arctic ground station is visible 11 times to the satellite during the planning horizon.Each visibility mask lasts for 2 to 10 minutes.URL for instances is http://forge.info.univ-angers.fr/∼yuning/instances/SIDSPInstances.rar.
Experimental Environment.The proposed algorithm was coded in C++ and compiled using Visual Studio 2012 on an Intel Core i7-4790 processor (3.6 GHz and 8 GB RAM).
Parameter Set.Following an empirical parameter tuning procedure, the parameters in HGA are related to the density of requests.The individual number is set to /5.The number of iterations is, respectively, set to 20, 50, 50, 100, 100, and 100, when  is 50, 100, 150, 200, 250, and 300, correspondingly.
The performance of the algorithms is evaluated by three indexes: (1) the utility , (2) the number of scheduled requests |  |, and (3) the visibility mask utilization . is our objective; more |  | or higher  may lead to a better solution. can be stated as   The comparison of HGA and the construction heuristic algorithms is shown in Table 1.Table 2 gives the results of HGA under two circumstances, removing the delay rule from SGA and removing the deletion rule from SGA.The average values of , |  |, and  in HGA for different groups of instances are, respectively, shown in Figures 5-7.
From the experimental results, the following observations can be made: (1) From Table 1, we can see that Criterion 3 has a better performance for SIDSP than the other two sorting criterions (18 out of 30) and  obtained by HGA for each instance is much higher than the highest value of  obtained by three construction heuristic algorithms marked in bold.|  | and  of HGA are also better than those of three construction heuristic algorithms.HGA greatly improves the quality of  solution compared with the construction heuristic algorithms.
(2) In Table 1, from the result of HGA, we can see that there are still some unscheduled requests in each instance, although the visibility masks are not fully used.It illustrates the deadline constraint (Constraint (b)) and the storage constraint (Constraint (e)) may be tight so that some requests cannot be scheduled due to lack of storage or beyond the deadline, which also causes that some periods in visibility masks cannot be used (i.e., the visibility masks are oversubscribed).
(3) By comparing the results of HGA under different circumstances in Table 2, it can be seen that using the delay rule and the deletion rule in SGA can lead to a better solution, and the effectiveness of the delay rule and the deletion rule is validated.When the delay rule is removed,  is lower than that in normal circumstance for all instances.When the deletion rule is removed,  is lower than that in normal circumstance for most instances except five instances marked in bold.Furthermore, / normal in HGA (no delay) is higher than that in HGA (no deletion).It illustrates that removing the delay rule causes a larger reduction in  than removing the deletion rule and the delay rule has a greater effect on the improvement of solution.
(4) In Table 2, when the delay rule is removed, / normal is on decline with the density of requests increasing.It illustrates the effect of the delay rule is weakening for the instances with higher density.This is because we have to use the chargeable visibility masks when the free visibility masks are not enough to downlink more requests.The cost of the chargeable visibility masks is calculated into the final utility whether the delay rule is used or not.But the effect of the deletion rule does not have an obvious change with the density of requests increasing.(5) From Figures 5-7, it can be seen that, , |  |, and  step up with the number of requests increasing, while the growth rate steps down.When the number of requests gets higher, the conflict between different requests gets more so that there are more requests that cannot be scheduled due to violating the constraints.

Conclusion
In this paper, we investigate the satellite image downlink scheduling problem (SIDSP) with the case study of China's commercial remote sensing satellite constellation (SuperView-1).SIDSP, as an important part in satellite mission planning, should be optimized to improve the efficiency of the whole satellite system.We give a detailed description of SIDSP in SuperView-1 to make preparations for the design of solution approach.In this case, not only the commonalities of SIDSP but also some special properties should be taken into consideration, such as the cost of some visibility masks and the storage constraint, which changes the inherent combinatorial structure of the problem and increases the difficulty of scheduling.
Adapted to the characteristics of the problem, the serial scheduling scheme is exploited.The main idea of the scheme is that the solver searches in the space of request permutations while a polynomial time schedule generator converts the request permutations into schedules, which makes SIDSP viewed as a problem of optimizing a permutation of the downlink requests.A schedule generation algorithm (SGA) is proposed to assign the downlink time window for each scheduled request according to a given request permutation.A hybrid genetic algorithm (HGA) combined with neighborhood search is proposed to optimize the downlink request permutation with the purpose of maximizing the utility function.
To validate the effectiveness of the proposed approach, we carry out experiments on six groups of instances with different density.From the experimental results, we can see that HGA greatly improves the quality of solution compared with the construction heuristic algorithms.Using the delay rule and the deletion rule in SGA can lead to a better solution, and the delay rule has a greater effect on the improvement of solution than the deletion rule.However, the effect of the delay rule is weakening with the density of instance getting higher.
SIDSP in our studied case is transformed into a singlesatellite problem.In addition, our downlink schedule is based on the given image acquisition schedule, which makes the result of downlink schedule affected by the efficiency of image acquisition schedule.In the future work, on the one hand, we would like to extend our approach to multisatellite problems and take the resource contention for requests from different satellites into consideration; on the other hand, we would like to study the integrated scheduling considering image acquisition schedule and image downlink schedule simultaneously.

Figure 2 :
Figure 2: The case that using the delay rule leads to missing the optimal schedule.
visibility masks occupied periods in visibility masks an image acquisition time window a time period of G units a downlink time window

Figure 5 :
Figure 5: The average values of  in HGA for different groups of instances.

Figure 6 :
Figure 6: The average values of |  | in HGA for different groups of instances.

Figure 7 :
Figure 7: The average values of  in HGA for different groups of instances.

Table 1 :
The comparison of HGA and the construction heuristic algorithms (the highest value of  for each instance obtained by three construction heuristic algorithms is marked in bold).

Table 2 :
The results of HGA under two circumstances, removing the delay rule from SGA (no delay) and removing the deletion rule from SGA (no deletion) (the utility difference between the normal HGA and HGA under the corresponding circumstance is denoted as ; the utility obtained by normal HGA is denoted as