ABSTRACT
As the rapid increasing of the number of the satellites, the number of facilities of the satellite ground stations is becoming insufficient and the conflicts of serving satellite data missions exist. To make full use of the facilities of the China Remote Sensing Satellite Ground Station (RSGS), scheduling optimization of these facilities was studied in this paper, which was not well-solved by the original method in the operation system of RSGS. The problem is formulated as a continuous time-based mixed integer linear programming (MILP) model. A decomposition optimization algorithm is proposed to solve the large-scale problem, which is difficult to solve using traditional methods. In the first step, the particle swarm optimization (PSO) algorithm is used to optimize the multi-ground station relay tasks, and the multi-ground station optimization problem is transformed into several single ground station optimization problems. Next, in two additional steps, optimization of the facilities at a single ground station is performed to further reduce the size of the model. The proposed method has been applied to operations systems of RSGS, and the approach presented in this article has demonstrated stable performance and sufficient efficiency online, resulting in the automation of facility scheduling.
1. Introduction
The China Remote Sensing Satellite Ground Station (RSGS) is one of the largest ground station networks in the world and consists of several ground stations located both inside and outside China. RSGS receives data from more than 300 missions per day, including TT&C (telemetry, tracking, and command) and DT (data transmission) missions, and more than 107 GB of downloaded data per year in total. The number of missions has increased dramatically along with the number of satellites, and the RSGS facilities (including antennas, recorders, and demodulators) with complex connections between them are now considered insufficient. The scheduling of ground stations facilities is an effective way to improve the utilization of ground facilities and ensure the timeliness of data acquisition.
1.1. Problem statement
The processes that occur at a satellite ground station network are illustrated in . Satellites missions can be categorized into three types: DT missions, TT&C missions, and missions that involve both TT&C and DT. DT missions require the use of receiving facilities (antennas), recording facilities (recorders), and connection facilities (demodulators, etc.). The facilities used for TT&C missions include antennas and the necessary accessories; this means that antennas are the only facilities considered in the scheduling of TT&C missions. The relationship between satellite missions, antennas, recorders, and demodulators corresponds to a many-to-many mapping, as shown in . From the perspective of scheduling optimization, satellite missions involve multiple ground stations, and many parallel facilities are involved in each process. Coupled connections also exist between facilities, which means that large, complex models are required to represent these relationships.
During the 36 years which the RSGS has been constructed, facilities with different capabilities have been added and developed. Because of this, and because the relationships between antennas, demodulators, and recorders are complex, in order to make full use of all of the facilities and achieve automatic scheduling, it is necessary to study the overall process scheduling and take into account the differences in performance of parallel facilities and the connections between all of the different types of facilities at the ground stations.
1.2. Summary of research
There have been many studies that have considered the ground station scheduling problem (Petelin, Antoniou, and Papa Citation2021; Spangelo et al. Citation2015; Xhafa and Andrew Citation2021). Xhafa and Andrew (Citation2021) reviewed the state of the art in the satellite scheduling problem, analyzed the mathematical formulations and meta-heuristics solving methods. Petelin, Antoniou, and Papa (Citation2021) solved a number of benchmark static instances of the ground scheduling problem with six different evolutionary multi-objective algorithms (NSGA-II, NSGA-III, SPEA2, GDE3, IBEA, and MOEA/D). Spangelo et al. (Citation2015) developed models and algorithms for solving the single-satellite, multi-ground station communication scheduling problem, with the objective of maximizing the total amount of data downloaded from space. However, most of these studies focused on one or more sub-processes related to DT or TT&C processes, such as antenna scheduling or recorder scheduling. In relation to antenna scheduling, Ko (Citation2016) considered the scheduling of ground station facilities with multiple antennas where the objective was to maximize the data transmission and the constraints included the antenna switching time. Marinelli et al. (Citation2011) studied the problem of data exchange between ground stations and the Galileo satellite constellation. The problem was treated as a multiple processor scheduling problem and was solved by Lagrangian relaxation combined with a heuristic method. Similarly, Lin et al. (Citation2003) considered a low-orbit earth observation satellite mission scheduling problem, and Lagrangian relaxation and linear search techniques were adopted to solve this problem. Falone and Corrao (Citation2018) proposed a multi-stage strategy algorithm for the ground station scheduling problem, and methods such as genetic algorithms, graph theory, and linear programming were combined for solution. Antennas allocation were considered in the ground station resource scheduling. Li, Zhang, et al. (Citation2015) considered the multiple antenna scheduling problem; however, the differences in proprieties and performance of the different antennas were not considered in this study. Song et al. (Citation2022) investigated collaborative satellite–ground observation planning and proposed the use of an improved artificial bee colony algorithm and a satellite–ground resource coordinated time-selection algorithm. Similarly, An et al. (Citation2021) discussed the optimal strategy for antenna scheduling at four ground stations, each of which had a single antenna. Based on the requirements of ESA, Xhafa, Herrero, et al. (Citation2013) proposed applying a Struggle Strategy Genetic Algorithm (SSGA) to the ground station scheduling problem and produced results related to the scheduling of both single and multiple ground stations. The objective was to maximize the service provided for missions and the use of ground station antennas. Different to the situation at the RSGS (where multiple ground stations deal with multiple satellite missions), each satellite was considered to interact with a specific ground station and each ground station only served one mission at a time (Xhafa et al. Citation2012, Xhafa, Barolli, et al. Citation2013). A Constraint Satisfaction Problem (CSP) model of the detection satellite data exchange was formulated, in which all of the facilities at a single ground station are seen as one set of equipment so that constraints imposed by the ground facilities do not need to be considered. Zhang et al. (Citation2019) and Wang, Zhang, and Chen (Citation2019) represented the ground station scheduling problems by a multiple-objective CSP model, but the scheduling of demodulators and recorders was not considered.
Decomposition strategy can be used to solve large-scale scheduling problems, especially when the different types of variables can be optimized in different levels (Zhang et al. Citation2016). Based on the decomposition framework, the hybrid algorithm with various subalgorithms used for two-step optimization has been studied (Yan et al. Citation2021). Different hybrid algorithms with meta-heuristics and exact methods employed were developed for large-scale scheduling problems (Falone and Corrao Citation2018). Meta-heuristics which include genetic algorithm (Li, Wang, et al. Citation2015; Sun and Xhafa Citation2011; Xhafa et al. Citation2012; Xu et al. Citation2020), particle swarm optimization (PSO) (Fan et al. Citation2022), ant colony optimization (Iacopino et al. Citation2014), and cuckoo search algorithm (X. Li et al. Citation2023), are effective for problems with large search spaces and can provide satisfactory solutions in reasonable time frames. However, the quality of solutions cannot be guaranteed, and complex constraints can be challenging to represent using meta-heuristic methods. Meanwhile, exact algorithms, such as the dual simplex method for linear programming (LP) models, the interior point method for NLP models, the branch-and-bound method for mixed integer linear programming (MILP) models, and the outer approximation method for mixed integer nonlinear programming (MINLP) models, can produce optimum solutions, but low-quality final solutions may be possible with insufficient computational time. As such, a hybrid algorithm combining meta-heuristics and exact methods is preferred to solve scheduling problems (Harjunkoski et al. Citation2014).
Genetic algorithm (GA) is a widely used metaheuristic optimization algorithm based on the principles of natural selection and genetics. GA is known for its ability to find global optima in complex search spaces, especially with large numbers of variables or constraints. However, the quality of solutions cannot be guaranteed, and complex constraints can be challenging to represent using meta-heuristic methods (Goldberg Citation1989). Linear programming (LP) solvers are computational tools used to optimize problems through mathematical modeling. LP solvers have both free open-source versions and commercial versions that are widely used in different fields and application scenarios. Open-source LP solvers have the advantage of being free and open to customization, making it easier for users to modify codes according to their unique requirements. These solvers are compatible with various programming languages and computing environments. In this paper, we use the open-source COIN CLP/CBC solver, which is a high-performance solver for linear, mixed-integer, and constraint programming. COIN CLP/CBC is provided by Google, supports Python and C++, and is extensively used in finance, logistics, and manufacturing.
1.3. Previous method used in RSGS
The scheduling problem of RSGS was first time solved by a genetic algorithm (Shang et al. Citation2014). However, there was a definite gap between the results that were obtained using this approach and the demands of real situations. The optimization algorithm did not perform well, and the scheduling results still needed manual adjustment to provide accurate ground station arrangements (Tian et al. Citation2020). The purpose of scheduling in this study is to realize automatic management of the operation of the RSGS. To the best of the author’s knowledge, there have been no published studies in which the connection between the facilities involved in each sub-process was considered. However, because of the cost of manual operations and because of high computation efficiency requirements, optimization of the overall scheduling needs to be considered in the case of multi-ground station network with parallel facilities so that automatic scheduling can be realized. But the complexity of this problem makes it difficult to model and solve. In particular, the following problems are encountered: (1) the complexity of the processes and the scheduling rules make the modeling difficult, and (2) the existence of multiple parallel facilities and the complex mapping relationships between these facilities lead to a large quantity of binary variables. As a result, the problem is difficult to solve efficiently for real cases.
The rest of the paper is organized as follows. The scheduling model formulation is explained in section 2. On the basis of the process analysis, the decomposition approach to solve the problem is presented in section 3. In section 4, comparisons with the original method used for the operating system at RSGS are provided to illustrate the effectiveness of the proposed method for several well-designed cases. Conclusions are drawn in section 5.
2. Scheduling model formulation
2.1. Problem statement
In this paper, the problem of the scheduling of satellite ground station facilities is considered.
The data communication between satellites and ground stations is depicted in , and the problem can be stated as follows.
Given the following:
a set of ground stations belonging to the RSGS ground station network
a set of satellites that the RSGS serves
ground station facilities including antennas, demodulators, and recorders at each ground station
information of missions, and involving mission types, satellites, priorities, beginning and end time; and target ground stations, in particular relay missions involving several ground stations
the mapping relationships between all of the facilities, including available satellite–antenna, satellite–recorder, satellite–demodulator, antenna–demodulator, and recorder–demodulator matrices
differences in priority resulting from differences in performance (see ), as well as the satellite–antenna and satellite–recorder priority matrices
the possibility that different missions of the same satellite can have different code rates and the using of recorders and demodulators is constricted by these rates, meaning that the upper and lower bounds of these rates for recorders and demodulators are required.
The goal is then to determine the following:
which facility is used to serve which mission
whether the mission is fully served or not. The beginning and end times of missions can be adjusted if the facilities are too busy to serve all of the missions.
To better formulate real-world satellite DT and TT&C processes, several reasonable descriptions are made as follows.1.
a. | All the processes are considered to be continuous. | ||||
b. | Antennas, recorders, and demodulators are considered in the case of DT processes, and a mission can be served by all three types of these facilities. Antennas are considered in the case of TT&C processes. Missions including both DT and TT&C processes are considered to consist of two separate missions. | ||||
c. | The difference in the performance of facilities and load balancing is considered: the facilities available for a mission should be arranged so that the facilities that perform better are given preference. Facilities that perform equally well should be given equal preference (see ). |
To realize the load balancing for the facilities, a random number , whose values are uniformly distributed, is then added to the priority weight, ( denotes the mission and denotes the facility), as shown in . This means that facilities shown as having the same priority in get equal use.
d. | Natural features and buildings can block the transmission of satellite data. The orientation of the facilities during the DT and TT&C processes should be considered so that the possibility of those facilities being occluded can be avoided. Offline computations are regularly run to determine whether the signal is occluded or not during the mission to improve the computational efficiency. The weights of signal confliction of missions are computed as follows: If signal occlusion occurs, the length of confliction time is obtained before the facilities scheduling. A penalty value for the confliction time, ( denotes the mission and denotes the facility), is added to the priority value in to avoid the use of the occluded facility (see ). |
2.2. Constraints
It should be noted that the multi-ground station scheduling problem involves relay tasks, which is discussed in Section 3.1. The method presented in Section 3.1 transforms the multi-ground station scheduling problem into multiple single-ground station scheduling problems. The model constraints for the single-ground station scheduling problem are presented in this section, while the objective function of this problem is introduced in Section 2.3.
The model for the data reception and TT&C processes is described in Section 2.2.1 below. The constraints that apply to the data recording process are described in Section 2.2.3. Facilities such as modulators and the facility connection matrix are simplified to demodulators, and their modeling is described in Section 2.2.2.
2.2.1. Constraints on data reception and TT&C processes
(1) | Each mission should be served by one antenna. If there are not enough antennas to serve all missions, mission may not be served: (1) (1) | ||||
(2) | Each antenna can only serve one mission at the same time. Moreover, antennas have a switching time, . That is, antenna cannot serve mission within a time after the completion of the previous mission (mission ). If there are not sufficient antennas to serve all missions completely, the beginning or end time of some missions can be changed to reduce the mission time. This means that the beginning time of mission () and the end time of mission () should be considered to be continuous variables. Equation denotes the scenario that mission is later than mission and the two missions use the same antenna. So should be later than , and the switching time is required between the missions: (2) (2) |
While Equation (3) denotes the scenario that mission is earlier than mission and the two missions use the same antenna. So should be later than , and the switching time is required between the missions. (3) (3) Here is an intermediate variable that denotes the order of mission and mission : denotes that the beginning time of mission is earlier than that of mission . (4) (4) and (5) (5) where denotes a positive number, and M = 106 here.
The beginning and end time of mission should be within the time range during which the satellite is visible from the ground station. That is, the beginning time of mission should be later than the begin time of the visible range: (6) (6)
And the end time of mission should be earlier than the end time of the visible range, (7) (7) where and are, respectively, the beginning and end of this visible time range for mission .
The beginning time of mission should be later than the end time: (8) (8)
(3) | If the time for which a mission lasts is 0, there is no need to arrange an antenna to serve it. If the mission lasts for a time greater than 0, it will be served by an antenna: (9) (9) (10) (10) | ||||
(4) | An antenna can serve DT and TT&C missions of the same satellite at the same time. Such missions are considered to belong to a single mission group: (11) (11) where is the group to which mission belongs. |
2.2.2. Constraints on demodulators
As the relationships between antennas, recorders, and demodulators correspond to many-to-many mappings, the demodulators need to be considered in the scheduling to avoid an unfeasible scheduling result caused by a lack of connection between facilities.
The number of demodulators serving mission should not be more than the number of channels, . If there are not sufficient facilities to serve all missions, mission may not be served: (12) (12) where is a binary variable. denotes that mission is served by the demodulator .
A demodulator can only serve one channel of a mission at the same time. Equation (13) denotes that the channel serves mission and mission at the same time and mission is later than mission . So should be later than , and the switching time is required between the missions. (13) (13) while Equation (14) denotes that the channel serves mission and mission at the same time and mission is earlier than mission . So should be later than , and the switching time is required between the missions. (14) (14)
There are constraints on the connections between antennas, demodulators, and recorders. If demodulator is not connectable to the used antenna , it cannot serve mission ; if demodulator is not connected to the used recorder , it cannot be arranged to serve mission : (15) (15) (16) (16) where is a binary parameter. denotes that antenna is connectable to facility . is another binary parameter; denotes that recorder is connectable to facility .
2.2.3. Constraints of recording process
If a mission is not served by an antenna, then a recorder is not needed: (17) (17)
To avoid operation risks in the data recording process, it is necessary to minimize the number of missions being served by any one recorder at the same time. The number of missions using recorder at the same time as mission , is defined as (18) (18) where denotes the missions that overlap with mission as the situation where recorders serve multiple missions at the same time only occurs in the case of a time-overlapping mission set.
There are channel constraints on recorders. The total number of channels used by the missions served by the recorder at the same time should be no greater than the number of recorder k’s channels (): (19) (19) Here denotes the number of recorder k’s channels, and is a binary variable. denotes that the time interval between missions and is smaller than the recorder switching time; that is, if , then , as shown in Equation (20): (20) (20)
There are constraints on the code rates of recorders. The code rate of satellite data cannot be greater than that of the recorder: (21) (21) where denotes the rate of recorder ; denotes the rate of mission . If mission has multiple channels, denotes the rate of the channel with the highest rate.
Recorders are not needed for TT&C missions: (22) (22) denotes the set of TT&C missions.
2.3. Objective
The aim of the facilities scheduling is to allow as many DT and TT&C missions as possible to be completed: that is, to minimize the penalty for the unserved missions. This penalty includes (1) a penalty related to the antenna arrangement for the mission, denoted by in Equation (23); (2) a penalty related to the demodulator arrangement, denoted by in Equation (24); (3) a penalty related to the recorder arrangement, denoted by in Equation (25): (23) (23) (24) (24) (25) (25) (26) (26) includes a penalty for not arranging an antenna for the mission (the first term in Equation (23)), a penalty for incompletely serving the mission (the second term), and the sum of the weights of the used antennas (the third term). is a parameter denoting a penalty that results if mission not served by any antenna. Variable denotes the length of an incomplete mission ; parameter denotes the penalty of unit incomplete time of mission . Weight denotes the priority given to antenna serving mission (see ). is a penalty that results from having insufficient demodulators. Parameter is a penalty that is assigned if no antenna is arranged for mission , denotes the number of channels used in mission, and is a binary variable; denotes that demodulator serves mission. includes a penalty for not arranging a recorder for the mission (the first term of Equation (25)) as well as the sum of the weights of the recorders that are used (the second term). is a parameter that gives the penalty for mission not being served by any recorder. Weight denotes the priority given to recorder serving mission (see ). Because of the need to consider the stability of the performance of the facilities, the number of missions using the same recorder at the same time is minimized by the last term of Equation (25).
The objective of the problem is denoted in Equation (27). (27) (27)
3. Decomposition algorithm
The proposed decomposition algorithm includes the optimization of a multi-ground station facility and two single-ground station facility optimization steps (two MILP subproblems). The flowchart of the proposed decomposition algorithm is shown in , where the objectives and the constraints at each step are summarized.
The steps included in the algorithm are as follows.
Step 1: Optimization of relay missions for multiple ground stations. The time range for relay missions covers multiple ground stations, and overlaps exist between the time ranges during which the satellite is visible from these different ground stations (see section 3.1). One group of the facilities at these ground stations is needed to serve the mission during the overlap, considering that the scheduling of facilities at all of the multiple ground stations should be optimized to serve as many missions as possible. The coupling between the facilities at the multiple ground stations is disposed at this step, and the multiple-ground station facility optimization problem is converted to several single-ground station facility optimization problems.
Step 2: Optimization of the facilities at a single ground station: the status of the facilities is optimized.
Step 3: Optimization of the facilities at a single ground station: the beginning and end time of missions is optimized using the information obtained in Step 1 and Step 2.
The above algorithm begins with the optimization of relay missions and involves facilities at multiple ground stations. A simplified scheduling model is formulated and solved by a PSO algorithm. The objective of the model is to minimize the number of unserved missions; that is, the relay mission should be served by a less busy ground station. The size of the model is reduced as the coupling is removed, and the problem is decomposed into several subproblems at this step.
Next, the single-ground station optimization is addressed. When the number of missions that overlap in time is less than the number of available facilities, the problem can be solved by a heuristic method. However, when the problem is more complex, this method is not suitable. Also, after the optimization of the relay missions, the model is often still very large. In particular, if the facilities are too busy to serve all of the missions, the adjustments to the mission time can lead to there being many binary and continuous variables. Thus, the problem is further decomposed into two subproblems. The first problem is to determine which facilities can be used to serve the missions, and the second one is to determine the beginning and end time of the missions if the missions cannot be served completely. Two MILP models are formulated to solve these two subproblems.
The input and output for each step is as follows:
The input of Step 1 includes the information on all the missions and ground stations. Output of Step 1 includes the mapping relationship between missions and ground stations, indicating which ground station serves each mission.
The input of Step 2 includes the missions’ information for each ground station, as well as the information about each ground station. The output of Step 2 is the mission states (whether each mission is served or not) and facility states for each mission (whether the facility is allocated to each mission or not).
The input of Step 3 is the output of Step 2, as well as the input of Step 2. The output of Step 3 includes the beginning and end times of each mission, as well as the facility that will serve each mission.
3.1. Optimization of the scheduling at multiple ground stations (Step 1)
As relay missions are served by more than one ground station and the ranges of these ground stations overlap, the ground station and facilities that serve the mission during each time period need to be determined (see (a)). Mission can be served by both ground station A and ground station B during the time period [t2, t3]; this mission is decomposed into mission for ground station A and mission for ground station B to avoid duplication as shown in (b). The time periods covered by these two missions are [t1, ] and [, t4], where .
A simplified model is used to formulate the multi-ground station antenna scheduling for relay missions and a PSO algorithm is proposed to solve the problem.
PSO is a population-based stochastic optimization technique proposed by Kennedy (Citation2005) and Kennedy and Eberhart (Citation1995). Inspired by the social behavior of animals, such as insects, herds, and birds, PSO uses a swarm mode to search a large region in the solution space of the optimized objective function. The particles in the swarm cooperate to find food, and each member constantly adapts its search pattern based on its own and other members’ learning experiences. A key concept in PSO is artificial life, which applies the characteristics of living systems to artificial systems.
This algorithm is described below.
(1) | Encoding |
In PSO, a particle has two attributes: its velocity and its position.
denotes the position of a particle , which can be one of the antennas serving the mission: (28) (28) where denotes the number of antennas, denotes the number of missions, denotes the set of particles, and is a continuous variable, where the value of denotes the probability of antenna j serving mission i, and . If antenna j is not available for mission i, ; this can be obtained from the input information. Also, for each mission, the antenna with the largest value of will be arranged to serve mission i; that is (29) (29) The velocity of particle is denoted by : (30) (30)
The pseudocode of population initialization is as follows.
Table
(2) | Update operations |
The velocity of particle is updated as follows: (31) (31) where is the iteration number, is an inertial weight used to control the effect of the previous velocity on the current velocity, and are acceleration coefficients that represent the effects of self-experience and information sharing among the population, respectively, and and denote random numbers uniformly distributed within the range [0,1].
The position of any particle is updated as follows: (32) (32)
(3) | Fitness function |
The main objective of the scheduling is to minimize the number of unserved missions while taking into account the priority assigned to the different missions. The fitness of particle is denoted by : (33) (33) where denotes the priority assigned to mission . is a binary variable; denotes that mission is not served. The value of is defined as (34) (34)
(4) | Constraints |
To ensure the feasibility of the solutions, the updating of the particles should obey the following constraints.
Availability of facility constraints: if facility j is not available for mission i, , and during the updating of variable , the value of should remain as 0.
Constraints on the range of the position. If the value of the position variable does not lie within [0,1], should be adjusted as follows: (35) (35)
3.2. Optimization of the facilities at a single ground station (Step 2 and Step 3)
A flowchart representing the optimization of the scheduling for a single ground station is shown as . A heuristic algorithm is used to solve the problem, and satisfactory solutions can be obtained for less complex scenarios. Steps 2 and 3 are used in more complex scenarios.
3.2.1. Heuristic method
A heuristic method of solving the scheduling problem for a single ground station is proposed here as, in this case, the problem can easily be solved by applying heuristic rules and satisfactory solutions (all missions are served) can be obtained if the number of facilities is adequate. The later steps described in sections 3.2.2 and 3.2.3 are not then needed.
The heuristic rules include the following.
The priority of the missions is considered. The facilities are arranged in a way that follows this order of priority. I.e. missions with largest importance are prioritized for facility arrangement.
The priority of the facilities in relation to each mission is considered. The facility with the highest priority is assigned to the available facility set for a given mission.
The available facility set for each mission is changed during the scheduling process. If any facility in the set is also used by other missions, it is deleted from the set.
The heuristic method is illustrated with an example in . There is some time overlap between missions 1, 2, and 3; mission 1 has the highest priority and mission 3 the lowest. The available facility set for mission 1 consists of facilities A, B, C, with A having the highest priority and C the lowest. The available facility set for mission 2 consists of facilities A and D, and for mission 3 it consists of facility D only. The steps followed by the heuristic solution method are as follows.
The mission with the highest priority is mission 1, and the facility with the highest priority in the set of available facilities for mission 1 is facility A. Therefore, facility A is arranged for mission 1.
Although the facility with the highest priority is facility A, facility A is already being used by mission 1, so facility D is arranged for mission 2.
As facility D is already being used by mission 2, there are no facilities available for mission 3.
In the scenario illustrated in , not all of the missions are served, which means that the problem can be considered complex and the use of the heuristic method is not appropriate. In this case, Steps 2 and 3 are also needed. And ‘complex scenarios’ include 2 situations: (1) when there are sufficient facilities, but the mapping relationship between available facility sets for missions is complex, making it difficult for heuristic algorithms to assign available facilities to each mission; (2) when there are insufficient facilities to serve all the missions. Both situations require the use of decomposition algorithms to obtain better solutions. In contrast, ‘non-complex scenario’ refers to the situation that all the missions can be served by available facilities. For those non-complex problems, the solution obtained using the heuristic method is output as the final result.
3.2.2. Determination of the status of the facilities (Step 2)
The mission time optimization produces many binary variables and constraints. For complex scenarios, this makes it difficult to find a solution to the scheduling problem for a single ground station within an acceptable time. So, the model with fixed mission times can reduce the number of binary variables and make a model of smaller scale. In the discussion below, the mission time is assumed to be constant (it cannot be adjusted and the mission has the same beginning and end times as the visible time range). The status of the facilities is then determined on this basis.
3.2.2.1. Objective
The objective is to minimize the penalty that results from having unserved missions. This includes (1) a penalty for arranging the antenna (which might actually be more appropriate here) (denoted by in Equation (34)), (2) a penalty for the arranged demodulators (denoted by in Equation (2)), and (3) a penalty for the arranged recorders (denoted by in Equation (35)): (36) (36) (37) (37) (38) (38)
3.2.2.2. Constraints
As the mission time is fixed, many of the intermediate variables and constraints needed for the time adjustment are unnecessary and the facility switch-time constraints are adjusted as explained below.
Antenna cannot serve mission within time of the end of the previous mission (mission ): (39) (39)
Also, demodulator cannot serve mission within time of the end of the previous mission: (40) (40)
Finally, recorder cannot serve mission within time of the end of the previous mission: (41) (41) The other constraints are described by Equations (1), (11), (12), (15), (16), and (19)-(22).
3.2.3. Optimization of the mission time (Step 3)
The binary variables describing the status of the facilities that were determined in Step 2 are imported into this step. As a result, the optimization search space is reduced significantly and the model can produce a solution rapidly. This step produces solutions for the continuous variables; that is, the beginning and end times of the missions are optimized, and the final scheduling scheme is obtained.
We call the open-source solver COIN CLP/CBC in which dual simplex method is applied to this problem. The objective of this step is described by Equations (23)-(26) and the constraints by Equations (1)–(21).
4. Case study
In this section, some real cases are described. The proposed algorithm was written in Python 2.7.13, and all the cases were run on the open-source solver COIN CLP/CBC (Pulp 1.6.9) on a Dell PC with a 3.20-GHz Intel Core i5-6500 CPU and an 8.0-GB RAM, operating under Windows 7.
The flowchart shown in also applies to the real cases described here.
4.1. Parameters
The numbers of ground stations and missions involved in the cases that were analyzed are shown in .
Details of the ground stations and their facilities, including the numbers of antennas, demodulators, and recorders, are shown in . ‘for TT&C’ denotes antennas that are available for TT&C missions; ‘for DT’ denotes antennas that are available for DT missions. There are some overlaps among the visible ranges of the stations.
PSO is used in Step 1 of the proposed algorithm. And the PSO parameters are listed in , which include population size NP, the maximum number of iterations Imax, inertial weight , acceleration coefficients and . The values of all the parameters are selected based on the typical values in standard PSO and the guidelines of parameter settings.
4.2. Comparisons
In this section, we conduct a comparison between the proposed decomposition algorithm and the previously used genetic algorithm for scheduling in the RSGS operating system. Due to lack of access to obtaining or modifying the parameters, we can only use the results from the default parameters of the genetic algorithm. To ensure accuracy, each case was independently solved 20 times using both methods on the same computer.
For all the cases, the solution statistics of the proposed method and GA are summarized in and . In these tables, columns ‘AVG’, ‘BEST’, ‘WORST’, and ‘SD’ denote the average, best, worst value, and the standard deviation of objective values obtained by both methods, respectively. For the proposed decomposition algorithm, Step 2 and Step 3 were run on the open-source solver COIN CLP/CBC, and the stopping criterion for Step 2 and Step 3 of the optimization was that the optimality gap should be smaller than 0.5%.
shows the relative differences between the objective values and the computational times obtained using the decomposition algorithm and the genetic algorithm. The relative difference is calculated by dividing the absolute difference by the genetic algorithm result. And the absolute difference refers to the numerical gap between the two algorithm results, with the decomposition algorithm result being subtracted from the genetic algorithm result.
An important reason for utilizing the proposed algorithm is to reduce computation time. In real-life situations, scheduling needs to be quick, especially in emergency missions. As shown in , results indicate that the proposed algorithm requires less CPU time than the genetic algorithm, with a reduction ranging from 11.1% to 71.7%. Furthermore, as the scale of the case increases, the proposed method exhibits even greater efficiency improvements compared to the genetic algorithm. For results of the value of objectives, the objective value of the proposed algorithm is much smaller than that of the genetic algorithm in some cases (such as case 2, 4, 9, and 10). The reason is that the total lengths of the served missions optimized by these methods are different in those cases. For case 1, 3and 5, the objective values are smaller as the facilities are sufficient to serve all the missions, and the facilities arranged for the missions by the two methods are different and causes differences in objective values. That is, the proposed algorithm assigns facilities with higher priorities to the missions. The standard deviation of the objective values by the proposed algorithm is small because Step 2 and Step 3 of the proposed algorithm are based on solving MILP models. A detailed analysis of these results is presented in Appendix.
5. Conclusions
In this study, facility scheduling of multiple ground stations and multiple satellites was conducted to make full use of facilities for DT and TT&C satellite missions of RSGS. A continuous time-based MILP model that took into account differences in performance between available facilities, load-balancing between facilities, and the confliction of antennas was developed. In order to meet the requirements of the automated scheduling of facilities, this model described all of the scheduling processes necessary for the management of scheduling in RSGS. As the large-scale model was difficult to solve, a decomposition algorithm was proposed for application to the scheduling problem. The results that were obtained using the proposed algorithm were compared to those obtained by the genetic algorithm previously used for scheduling in the RSGS operating system, and the results demonstrated the effectiveness of the proposed algorithm. It was found that the total served mission time obtained using the proposed algorithm was greater than that obtained using the genetic algorithm. In addition, the required computation time was shorter for the proposed algorithm. The proposed algorithm has been already running online and meets the operational requirements of RSGS.
Nomenclature | ||
= | Mission | |
= | Antenna | |
= | Demodulator | |
= | Recorder | |
= | Particle | |
= | the number of iteration for PSO |
Set | ||
= | the set of missions | |
= | the set of antennas | |
= | the set of demodulators | |
= | the set of recorders | |
= | the set of TT&C missions | |
= | the set of particles |
Variables | ||
= | binary variable, denotes that mission is served by antenna | |
= | the beginning time of mission | |
= | the end time of mission | |
= | binary variable, denotes that the beginning time of mission is earlier than that of mission | |
= | denotes the length of an incomplete mission | |
= | denotes the number of channels used in mission | |
= | binary variable, denotes that demodulator serves mission | |
= | binary variable, denotes that mission is served by recorder | |
= | denotes the number of missions using recorder at the same time as mission | |
= | binary variable, denotes that the time interval between missions and is smaller than the recorder switching time | |
= | binary variable, denotes that mission is not served | |
= | the position of a particle | |
= | the value of denotes the probability of antenna j serving mission i, and . | |
= | the velocity of particle |
Parameters | ||
= | a large positive number, and M = 106 in this paper | |
= | switching time of facilities | |
= | the beginning of this visible time range for mission | |
= | the end of this visible time range for mission | |
= | the group to which mission belongs | |
= | the number of channels of mission | |
= | the missions that overlap with mission | |
= | the number of recorder k’s channels | |
= | the time length of the visible range for mission | |
= | the rate of mission | |
= | the rate of recorder | |
= | denoting a penalty that results if mission not served by any antenna | |
= | denotes the penalty of unit incomplete time of mission | |
= | is a penalty that is assigned if no antenna is arranged for mission | |
= | gives the penalty for mission not being served by any recorder. | |
= | the priority given to recorder serving mission | |
= | denotes the priority given to antenna serving mission | |
= | denotes that antenna is connectable to facility . | |
= | denotes that recorder is connectable to facility . | |
= | inertial weight | |
= | acceleration coefficient | |
= | acceleration coefficient | |
= | the best of particle in iteration | |
= | the best of all the particles in iteration | |
= | the maximum number of iterations for PSO |
Data deposition
Geolocation information
There’s no geolocation information in the study of this article. And the coordinate of the authors’ institute is: 40.07106°N, 116.28226°E.
Data available statement
The authors confirm that the data supporting the findings of this study are available within the article.
Acknowledgements
The authors wish to thank the reviewers for their constructive comments and suggestions for improving the manuscript.
Disclosure statement
No potential conflict of interest was reported by the author(s).
Additional information
Funding
References
- An, Y., W. Li, W. Wang, X. Yang, P. Wei, and X. Wang. 2021. “Research on Schedule Strategy of Ground Stations for LEO Satellites.” Journal of Time and Frequency 44 (2): 120–131.
- Falone, R., and G. Corrao. 2018. “Ground Station Network Scheduling Through Genetic and Deterministic Combined Algorithm.” Paper Presented at the 2018 Space Ops Conference, Palais du Pharo, May 28–June 1.
- Fan, H., W. Zhang, M. Tian, G. Ma, and B. Cheng. 2022. “A Resource Scheduling Method for Satellite Mission Ground Station Based on Particle Swarm Optimization Algorithm.” Journal of University of Chinese Academy of Sciences 39 (6): 801–808. https://doi.org/10.7523/j.ucas.2021.0012.
- Goldberg, D. E. 1989. Genetic Algorithms in Search, Optimization, and Machine Learning. Boston, MA: Addison-Wesley.
- Harjunkoski, I., C. T. Maravelias, P. Bongers, P. M. Castro, S. Engell, I. E. Grossmann, J. Hooker, C. Mendez, G. Sand, and J. Wassick. 2014. “Scope for Industrial Applications of Production Scheduling Models and Solution Methods.” Computers & Chemical Engineering 62:161–193. https://doi.org/10.1016/j.compchemeng.2013.12.001.
- Iacopino, C., P. Palmer, N. Policella, and A. Donati. 2014. “Planning the GENSO Ground Station Network via an Ant Colony-Based Approach.” Paper Presented at the 13th International Conference on Space Operations, Pasadena, CA, May 2014. https://doi.org/10.2514/6.2014-1704.
- Kennedy, J. 2005. “Why Does It Need Velocity?” Paper Presented at Proceedings of the IEEE Swarm Intelligence Symposium (SIS’05), Pasadena, CA, June 8–10.
- Kennedy, J., and R. Eberhart. 1995. “Particle Swarm Optimization.” Paper Presented at Proceedings of the IEEE International Conference on Neural Networks, Perth, November 27–December 1. https://doi.org/10.1109/ICNN.1995.487241.
- Ko, H. P. 2016. “Discretized Genetic Algorithm for Satellite Constellation and Multiple Ground Antenna Scheduling.” Paper Presented at the 14th International Conference on Space Operations, Daejeon, May 16–20.
- Li, X., X. Guo, H. Tang, R. Wu, and J. Liu. 2023. “An Improved Cuckoo Search Algorithm for the Hybrid Flow-Shop Scheduling Problem in Sand Casting Enterprises Considering Batch Processing.” Computers & Industrial Engineering 176. https://doi.org/10.1016/j.cie.2022.108921.
- Li, Y., R. Wang, Y. Liu, and M. Xu. 2015. “Satellite Range Scheduling with the Priority Constraint: An Improved Genetic Algorithm Using a Station ID Encoding Method.” Chinese Journal of Aeronautics 28 (3): 789–803. https://doi.org/10.1016/j.cja.2015.04.012 .
- Li, J., T. Zhang, and G. Ye. 2015. “Satellite-Ground TT&C United Scheduling Methods of GNSS Constellation Based on Nodes Constraint.” In Vol.1 of China Satellite Navigation Conference (CSNC) 2015 Proceedings, 55–66. Heidelberg: Springer .
- Lin, W. C., C. Y. Liu, D. Y. Liao, and Y. Y. Lee. 2003. “Daily Imaging Scheduling of an Earth Observation Satellite.” Poster Presented at the 2003 IEEE International Conference on Systems, Man and Cybernetics. Washington, DC, October 5–8.
- Marinelli, F., S. Nocella, F. Rossi, and S. Smriglio. 2011. “A Lagrangian Heuristic for Satellite Range Scheduling with Resource Constraints.” Computers & Operations Research 38 (11): 1572–1583. https://doi.org/10.1016/j.cor.2011.01.016.
- Petelin, G., M. Antoniou, and G. Papa. 2021. “Multi-Objective Approaches to Ground Station Scheduling for Optimization of Communication with Satellites.” Optimization and Engineering. https://doi.org/10.1007/s11081-021-09617-z.
- Shang, X., Y. Feng, J. Chen, W. Zhang, P. Huang, Q. Kong, L. Han, et al. 2014. Ground receiving resource allocation method based on receiving resource capability constraints. China Patent CN201410310281.0, filed October, 22.
- Song, Y., B. Song, L. Xing, Y. Jia, and Y. Chen. 2022. “Improved Artificial Bee Colony Algorithm for Satellite-Ground Cooperative Observation Planning Problem.” Control and Decision 37 (3): 555–564. https://doi.org/10.13195/j.kzyjc.2020.1459.
- Spangelo, S., J. Cutler, K. Gilson, and A. Cohn. 2015. “Optimization-Based Scheduling for the Single-Satellite, Multi-Ground Station Communication Problem.” Computers & Operations Research 57:1–16. https://doi.org/10.1016/j.cor.2014.11.004.
- Sun, J., and F. Xhafa. 2011. “A Genetic Algorithm for Ground Station Scheduling.” Paper Presented at International Conference on Complex, Intelligent and Software Intensive Systems, Seoul, June 30–July 2.
- Tian, M., S. Xu, P. Huang, G. Ma, and K. Feng. 2020. “Intelligent Scheduling Method for Satellite Ground Station Resources.” In Proceedings of the 39th Chinese Control Conference, 392–397. Shenyang: IEEE.
- Wang, Z., Z. Zhang, and Y. Chen. 2019. “Multi-Objective Optimization of Satellite-Ground Time Synchronization Scheduling Problem.” In Proceedings of the 2019 IEEE Congress on Evolutionary Computation (CEC), 530–537. Wellington: IEEE.
- Xhafa, F., and W. H. Andrew. 2021. “Optimisation Problems and Resolution Methods in Satellite Scheduling and Space-Craft Operation: A Survey.” Enterprise Information Systems 15 (8): 1022–1045. https://doi.org/10.1080/17517575.2019.1593508.
- Xhafa, F., A. Barolli, and M. Takizawa. 2013. “Steady State Genetic Algorithm for Ground Station Scheduling Problem.” Paper Presented at 2013 IEEE 27th International Conference on Advanced Information Networking and Applications, Barcelona, March 25–28 .
- Xhafa, F., X. Herrero, A. Barolli, L. Barolli, and M. Takizawa. 2013. “Evaluation of Struggle Strategy in Genetic Algorithms for Ground Stations Scheduling Problem.” Journal of Computer and System Sciences 79 (7): 1086–1100. https://doi.org/10.1016/J.JCSS.2013.01.023 .
- Xhafa, F., J. Sun, A. Barolli, M. Takizawa, and K. Uchida. 2012. “Evaluation of Genetic Algorithms for Single Ground Station Scheduling Problem.” In 2012 IEEE 26th International Conference on Advanced Information Networking and Applications, 299–306. Fukuoka: IEEE.
- Xu, Y., X. Liu, R. He, and Y. Chen. 2020. “Multi-Satellite Scheduling Framework and Algorithm for Very Large Area Observation.” Acta Astronautica 167:93–107. https://doi.org/10.1016/j.actaastro.2019.10.041.
- Yan, Y., P. Castro, Q. Liao, and Y. Liang. 2021. “An Effective Decomposition Algorithm for Scheduling Branched Multiproduct Pipelines.” Computers & Chemical Engineering 154. https://doi.org/10.1016/j.compchemeng.2021.107494.
- Zhang, Z., Y. Chen, L. He, L. Xing, and Y. Tan. 2019. “Learning-Driven Many-Objective Evolutionary Algorithms for Satellite-Ground Time Synchronization Task Planning Problem.” Swarm and Evolutionary Computation 47:72–79. https://doi.org/10.1016/j.swevo.2017.05.011.
- Zhang, Z., Y. Jiang, X. Gao, and D. Huang. 2016. “An Efficient Two-Level Hybrid Algorithm for the Refinery Production Scheduling Problem Involving Operational Transitions.” Industrial & Engineering Chemistry Research 55 (28): 7768–7781. https://doi.org/10.1021/acs.iecr.6b00631.
Appendix
In this section, a detailed analysis of an illustrative example is given. The analysis examines the differences between the mission states and mission times produced by the two methods. The example is provided to explain the specific reasons for the variation in objective function values between the two methods.
A1.1. Number of unserved missions and length of missions
shows the total lengths of the completely served missions that were obtained using the genetic algorithm and the proposed algorithm. In case 4, there are 143 missions; 142 of these are completely served in the results produced by the proposed algorithm, and 1 mission is partially served. In the results produced by the genetic algorithm, 141 missions are completely served and 2 missions are not served. The value of the ‘unserved rate’ in the table is equal to the ‘total time of unserved missions’ divided by total time of all the missions. Using the proposed algorithm, there was an increase of 435s in the total mission time compared to the genetic algorithm, whereas the unserved rate was reduced by about 2/3.
A1.2. Facility scheduling results
A selection of the facilities scheduling results for case 1 are shown in . The time period covered by the missions is 0:14:55–1:11:28, and all of the missions served by the same ground station with overlap in time. Each mission is assigned a priority from 1–5 (1 being the highest and 5 the lowest priority).
The facility sets, including antennas, demodulators, and recorders, that are available for these missions are shown in . The sets differ for each mission because of the differences in performance between facilities.
From , it can be seen that the number of antennas is adequate relative to that of the recorders and demodulators.
The scheduling results obtained using the genetic algorithm and the proposed algorithm are shown in Tables A4 and A5, respectively.
In the results shown in , mission 4 and 9 are not served because the number of antennas is insufficient from the optimization results of genetic algorithm. These two missions cannot be served even though there are sufficient demodulators and recorders available. Missions 4 and 9 have lengths of 495 and 180 s, respectively – a total length of 675 s. The arrangements of the antennas, recorders and demodulators are also given in . The number of demodulators is equal to the number of data channels in each case.
The scheduling results obtained using the proposed algorithm are shown in . In this case, mission 6 is partially served, with 240 s of the mission not being served. This mean that the served mission time is 435 s longer than for the genetic algorithm.