Abstract

The satellite image downlink scheduling problem (SIDSP) is included in satellite mission 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 SIDSP with 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.

1. Introduction

Most of the literature on satellite mission planning is divided into two categories: optical satellites [14] and Synthetic Aperture Radar (SAR) satellites [512]. 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 satellite-ground 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 on-board 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 [1012] and multisatellite problems [1, 3, 59]. 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.

The solving methods are mainly divided into three categories: (1) exact solution algorithms (e.g., mixed integer programming [13], dynamic programming [14], and branch and bound algorithm [15]); (2) heuristic algorithms (e.g., a priority-based heuristic [3], an ejection-chain heuristic [11], and a Lagrangian heuristic [16]); (3) metaheuristic algorithms (e.g., simulated annealing [12], tabu search [12, 17], and genetic algorithm [18]). The performance of these solving methods is measured through the instances with varied size and complexity.

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.

2. 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 be a set of downlink requests. Each request is associated with the start time of image acquisition , the end time of image acquisition , the start time of downlink , the end time of downlink , the profit , the size , and the deadline . 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 be a set of visibility masks. Each visibility mask is associated with the start time , the end time , 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 if the downlink of request is assigned to visibility mask and 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, and are already generated.(b)The gaps between two consecutive downlinks are ignored.(c)The compression ratio of each image is (in SuperView-1, ); that is, the image acquisition duration is 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 , and must be within visibility mask , which can be stated as(b)The start time of downlink must be after the end time of image acquisition and the end time of downlink cannot be after the deadline , 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 if the visibility mask is used and 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 , the end time of downlink ). The requests which cannot be scheduled eventually are removed from the image acquisition plan.

3. 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

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 if the downlink of request is assigned to visibility mask and otherwise.

3.1. 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]. The following sorting criterions commonly used in solving multiple knapsack problem are considered,

Criterion 1. Higher profit occurs first.

Criterion 2. Shorter downlink duration exists first.

Criterion 3. Higher exists first.

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.

3.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.

Input  : a given request permutation; : a set of visibility masks;
Output  : a solution;
for   to   do
; / Use the greedy heuristic rule to assign request   /
if    / Request is assigned to a chargeable visibility mask   /
; / Use the delay rule to assign request   /
end if
; / clip the visibility masks after a request is assigned /
end for
; / Use the deletion rule to generate a solution /
return  ;

(1) The Greedy Heuristic Rule. We choose the earliest available position as the downlink time window for each request in the 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 only based on the greedy heuristic rule, but if request is delayed and assigned to the free visibility mask , 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, if request is sorted in front of request , first we assign request to the free visibility mask based on the delay rule and then request 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 is sorted in front of request , first we assign request to the free visibility mask and then request that can be assigned to the chargeable visibility mask ).

(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.

3.3. 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.

Input  : a set of downlink requests; : a set of visibility masks;
Output  : the best solution found so far;
; / Initialize a population of request permutations
by randomly sorting /
while stopping condition is not reached do
; / Select two individuals for reproduction /
; / Generate two new individuals by crossover /
; / Use SGA to calculate the utility of   /
; / Use SGA to calculate the utility of   /
; / Initialize improving flag /
;
while    do /  Neighborhood search continues until the utility is not improved /
;
for   to   do
for   to   do
; / Use the exchange operator /
; / Use SGA to calculate the utility of   /
if    then
; / Preserve the exchange which improves the utility /
; / Update the utility of   /
;
end if
end for
end for
end while
while    do /  Neighborhood search continues until the utility is not improved /
;
for   to   do
for   to   do
; / Use the exchange operator /
; / Use SGA to calculate the utility of   /
if    then
; / Preserve the exchange which improves the utility /
; / Update the utility of   /
;
end if
end for
end for
end while
; / Update the population by replacing two of the worst individuals /
end while
; / Select the request permutation with the highest utility in the population /
; / Use SGA to generate the final solution /
return  ;

(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 .

(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).

4. 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 . Each group has five instances denoted as “.” 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 . 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 57.

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, 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, 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 57, 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.

5. 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 single-satellite 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.

Data Availability

The instances for SIDSP used in this paper can be downloaded at http://forge.info.univ-angers.fr/~yuning/instances/SIDSPInstances.rar.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This work was supported by the National Natural Science Foundation of China (Grant nos. 71690233, 61473301, 71201171, 71501179, and 71501180).