Keywords

1 Introduction

As the key research object of the new generation of earth observation satellite, Agile earth observation satellite (AEOS) is of great economic and military value and has become an important way to obtain information in many fields, such as agriculture and forestry planning, disaster monitoring, resource exploration and military reconnaissance. For the excess mission observation requirements and the relatively scarce satellite resources, making a reasonable scheduling plan is helpful to improve the utilization rate of satellites and meet the needs of users to the maximum extent.

With the development of Agile satellites in recent years, many scholars have studied the scheduling problem of AEOS. M. Lemaitre defined the agile satellite scheduling problem for the first time and simplify the scheduling problem, then solved the problem by local search algorithm, constraint programming algorithm, dynamic programming algorithm and greedy algorithm [1]. According to different observation requirements and task scale, the study can be divided into single AEOS scheduling and multiple AEOS scheduling. Such as E. J. Kuipers, X. Wang and X. Liu respectively solved the single satellite scheduling problem by using simulated annealing algorithm, fast approximate scheduling algorithm and adaptive large neighborhood search algorithm [2,3,4]. And the agile satellite constellation scheduling problem has been studied based on priority heuristic algorithm and ant colony optimization meta-heuristic algorithm by P. Wang and E.V. Ntagiou [5, 6]. At the level of scheduling algorithm, the research has undergone many evolutions. R. Xu solved the satellite scheduling problem by using the priority-based sequential construction algorithm [7]. N. Bianchessi proposed a deterministic construction algorithm with forward-looking and retrospective features [8]. In addition, many hybrid algorithms have been studied, such as enumeration search algorithm hybrid the tabu search algorithm [9], and forward construction algorithm hybrid three pruning strategies [10]. Other works related to the hybrid algorithms also solved the AEOS scheduling problems [11,12,13]. Furthermore, there were some studies on intelligent algorithms, such as different improvements of genetic algorithms to solve satellite scheduling problems [11, 12, 14,15,16,17,18,19].

However, for the above intelligent algorithms, especially for different improvements of genetic algorithms, the search process has the disadvantages of slow convergence speed and easy to fall into local optimization in large-scale task scheduling. In view of the above shortcomings, this paper proposes an improved immune algorithm, the joint probability density immune algorithm (JPDI), to solve the large-scale task scheduling problem of multi-agile satellites. The algorithm has the following advantages. Firstly, the optimal evolution generations have greatly reduced, and the scheduling efficiency also improved. Secondly, under the same iterations, the scheduling results were obviously better than the traditional evolutionary ways. Thirdly, scheduling process do not easily fall into local optimization.

The following contents are divided into the following parts. The second part is the description of the problem and the construction of the model, the introduction of the algorithm and the solution method in the third part, the fourth part is the simulation results, and the conclusion and declaration in the fifth part.

2 Problem Description

In this study, we considered the process of observing multiple imaging tasks on the earth's surface by multiple agile satellites to develop an optimal imaging plan. The simulated observation process is shown in Fig. 1. Since agile satellite has three rotational degrees of freedom, the observation efficiency has greatly improved. At the same time, the solution space of the scheduling scheme increases exponentially, which increases the difficulty of the solution process.

Fig. 1
figure 1

Simulation of the earth observation process of three agile satellites orbiting the earth

Based on this understanding, we detail the scheduling process and the variables or constraints involved. In general, agile satellites have multiple visible time windows (VTW) for each task, when there are M AEOS observing N tasks, if task \(i\) has been arranged to be observed by the \(kth\) VTW under satellite \(j\), then \(x_{ijk} = 1\), otherwise \(x_{ijk} = 0\). The start time of the \(kth\) VTW of task \(i\) under satellite \(j\) is expressed as \(ws_{ijk}\) and the end time is \(we_{ijk}\). In the actual observation, the length of VTW is much longer than the actual observation time window (OTW). If the observation time length of task \(i\) is expressed as \(dur_{i}\), the start time of OTW is \(st_{i}\), then the end time is \(et_{i} = st_{i} + dur_{i}\), and must satisfy that \(ws_{ijk} \le st_{i} \le et_{i} \le we_{ijk}\). Obviously, the image quality observed in different OTW is different, and the image quality obtained in the middle of each VTW is set to be the best. \(q_{i}\) is used to represent the quality of the observation image of task \(i\) to measure the distance between OTW and the midpoint of the corresponding VTW. Each task has an observation priority level \(p_{i}\). If the user has a demand for stereo observation of a task \(i\), it is denoted as \(ste_{i} = 1\). We specify that two observations with an interval of three times OTW of the task are the observation of completing the stereo task. If tasks \(i\) and \(j\) are executed continuously, then denoted as \(y_{ij} = 1\). Moreover, the observation start time of task j is greater than the sum of the observation end time of task I and the attitude angle conversion time \(d_{ij}\) between the two tasks. In addition, if there are clouds in the observation process, the observation will be affected. Note the time when the \(n_{i}\) th clouds begin to appear is \(cs_{i}\) and the time when they stop is \(ce_{i}\). Our ultimate goal is to maximize the total return and also called the fitness in the combinatorial probability density function:

$$\max \sum\limits_{i = 1}^{N} {\sum\limits_{j = 1}^{M} {\sum\limits_{k = 1}^{{L_{i} }} {x_{ijk} p_{i} q_{i} } } }$$
(1)

Assume

In the scheduling process of multi-AEOS, in addition to the oversubscribed observation tasks and the different observation needs from different users, the maneuvering constraints of satellites make the scheduling process very complicated. Since the purpose of our study concentrates more on the task planning level, the simplified model of satellite is adopted under the following assumptions in this paper:

  1. 1.

    The satellite has enough energy for mission observation.

  2. 2.

    The storage capacity of the satellite is sufficient for the satellite to operate until it reaches the ground receiving station to transmit the image down.

  3. 3.

    Set the stereo observation task as the highest observation priority.

The key of this study lies in how to obtain an approximate optimal scheduling plan that maximizes the total scheduling profit and minimizes the scheduling time. This paper will solve this problem in the following part.

3 Scheduling Algorithm

Based on the above problem description, we will give the solution process in this part. First, pre-processing the task, then constructing the combined probability density immune algorithm for the multi-AEOS scheduling problem, Immune algorithm is an intelligent computing method inspired by biological immune system. Self-organizing and self-learning ability and powerful information processing ability of immune make it effectively applied in many fields such as intelligent control pattern recognition, optimization design and machine learning [20]. Considering that the immune algorithm inherits the disadvantages of the genetic algorithm, we will replace the crossover and mutation evolution strategy in the traditional immune algorithm with the combined probability density estimation strategy, and the performance of the combined probability density immune algorithm should be further improved. And finally presenting the general flow of the algorithm.

3.1 Scheduling Preprocessing

Please Scheduling preprocessing refers to select an observation satellite for each task to be observed and determine a VTW under that satellite. Then the first step is to select an AEOS for each task based on the total observed collision time heuristic. The second step is to choose an VTW for each observation task based on the equal opportunity heuristic operator which means ignore the difference in the number of Windows. The conflict calculation function is as follows:

$$\sum\nolimits_{i = 1}^{{t_{2} }} {\sum\nolimits_{j = 1}^{{t_{1} }} {c_{ij} } }$$
(2)

\({t}_{1}\) is the number of VTW under task \(i\), \({t}_{2}\) is the number of tasks assigned to satellite. \(c_{ij}\) refers to the length of OTW overlap between the two tasks.

And the tasks with closed observation windows are removed from the database, which can reduce the total computation time.

3.2 JPDI Algorithm Description

After the scheduling preprocessing above, the process of the JPDI algorithm scheduling is summarized as shown in Table 1.

Table 1 The flow of combined probability density immune algorithm

3.3 JPDI Algorithm

In order to encode the task into the antibodies required by the algorithm, we need to divide all the tasks into m segments corresponding to the OTW of the task according to the VTW selected by the above preprocessing process. Take task \(i\) as an example to introduce the specific segmentation method, first subtract \(dur_{i} /2\) before and after the corresponding VTW, then divide the rest of the period into \(m - 1\) segments, all the segmentation points and endpoints in this segment have a total of \(m\), these \(m\) points are the midpoints of \(m\) OTWs for task \(i\). The start time, end time and corresponding observation quality of m OTWs respectively corresponding to n tasks were respectively stored into the matrix S, E and Q. The quality calculation is measured by the distance between the midpoint of each OTW and the corresponding VTW midpoint, and If they overlap, then the mass equals one.

Thus, the coding method is introduced. \(n\) tasks are randomly assigned the integer value between one and m according to the task order, which represents the OTW selected for the corresponding task. And repeat several times to form an initial population \(P^{0}\). Then the quality of the corresponding antibody gene in the population was calculated and put into the matrix \(Q\). Finally, we build an initial probability density matrix D, let it be a discrete probability density matrix with uniform distribution, which is of n rows and m columns with all same elements \(1/m\).

Now we describe the algorithm update iteration strategy. In the population update iteration process, a matrix \(E\) is required to store better antibodies, which is assigned as \(E = P^{0}\). And we use the expected reproductive rate to evaluate the quality of antibodies. It is defined by

$$R_{v} = \frac{{f_{v} }}{{g_{v} }}$$
(3)

\(f_{v}\) is the affinity between antibody and antigen, and it is defined by

$$f_{v} = \frac{1}{1 + 1/fitness}$$
(4)

\(g_{v}\) is the antibody concentration. Antibody concentration is determined by affinity between antibodies. Before we talk about antibody concentration let’s talk about the entropy value of the genes. For a population composed of \(T\) antibodies, each antibody includes \(t\) genes, and the entropy of gene j is defined by

$$H_{j} (T){ = - }\sum\nolimits_{i = 1}^{m} {p_{ij} \cdot \log p_{ij} }$$
(5)

Where \(p_{ij}\) is the probability that the \(jth\) gene belongs to \(i\) in \(T\) antibodies. If all the genes of antibodies are the same, the entropy equals zero. And the information entropy of these M antibodies is defined by

$$H(M) = \frac{1}{n}\sum\nolimits_{j = 1}^{m} {H_{j} (M)}$$
(6)

Then the affinity between antibody \(A_{e}\) and \(A_{f}\) is defined by \(A_{ef} = \frac{1}{1 + H(2)}\), The higher the value of \(A_{ef}\), the closer the two antibodies are. Thus the concentration of antibody \(A_{e}\) in population is defined by

$$g_{v} = \frac{1}{T}\sum\nolimits_{f = 1}^{M} {C_{ef} }$$
(7)

\(C_{ef}\) is a counting variable defined by \(C_{{ef}} = \left\{ {\begin{array}{*{20}l} {1,\alpha *\mathop {{\text{max}}}\limits_{{1 < f < T}} A_{{ef}} < A_{{ef}} < \mathop {{\text{max}}}\limits_{{1 < f < T}} A_{{ef}} } \hfill \\ {0,\;others} \hfill \\ \end{array} } \right.\). \(\alpha\) depends on the distribution of antibodies. After introduced the calculation steps of expected reproduction rate, select the antibodies with higher expected reproduction rate to replace the suboptimal antibodies in \(E\), thus completed the update of the excellent antibody library. Furthermore, the new generation probability density matrix \(D\) is obtained by updating \(\beta *D + (1 - \beta )*F\), where \(\beta\) is the learning rate, and the frequency matrix F is also obtained by the distribution of OTW in the antibodies with higher expected reproduction rate in the current generation.

More importantly, the generation of the new population consists of two parts: the first part is the random selection of some antibodies in \(E\); the second part is the generation of new antibodies through the new generation \(D\), and the new population is obtained by combining the two parts.

We will carry out simulation verification of this algorithm in the following part.

4 Simulation

The current section will verify the effectiveness of the joint probability density immune algorithm (JPDI) proposed in this paper. The simulation test data is provided by the high resolution AEOS called SPOT-6 and Pleiades-1A. The details of the two satellites are given in Table 2. STK is used to simulate the satellite and calculate the VTWs of the all the tasks under the two satellites.

Table 2 The parameters of the two satellites

4.1 Test Data

We simulated 150 common static tasks on the surface of the earth. Tasks are randomly distributed over land areas of the earth. We set the priority of the task as an integer, no generality, it’s evenly distributed on a scale of 1 to 10. In addition, the imaging time of each target generated randomly between 30 seconds and 70 seconds.

The maneuvering angle velocity of satellite SPOT-6 is 2.5°/S, and the maneuvering angle range is ±30°; the maneuvering angular velocity of satellite Pleiades-1A is 2.4°/S, and the maneuvering angle range is ±60°. The orbital parameters of the satellite constellation are shown in Table 3.

Table 3 The maneuver parameters of the two satellites

4.2 Simulation of GA and JPDI

In this section, we designed the satellite scheduling simulation process in task scale 150. The computational results of GA and JPDI in four different learning rates are in Fig. 2. Our reason for studying GA is that it’s evolutionary way similar to the immune algorithm and thus can be used as a baseline to test the JPDI against.

Fig. 2
figure 2

The convergence comparison of the algorithm

As can be seen from Fig. 2, the improved immune algorithm is superior to the traditional genetic algorithm not only in convergence speed but also in scheduling total benefits. Moreover, the convergence rate is different at different learning rates, and the evolution of probability distribution immune algorithm by the 150th iteration stops at all learning rates. In the four simulation data experiments we did, when alpha equals 0.3, the probability distribution immune algorithm has the fastest convergence rate of our objective function.

The scheduling results show that in addition to the fact that the improved immune algorithm is superior to the genetic algorithm in the scheduling objective function value, there is a significant difference in the scheduling time. The time pairs of the two algorithms under different iteration times are shown in Fig. 3.

Fig. 3
figure 3

The time consuming of the two algorithms

As the iteration increases, time consuming with the improved immune algorithm shows a linear growth trend with a low slope, while the genetic algorithm shows an exponential growth trend. When traditional genetic algorithms solve continuous problems, time consumption increased dramatically in global search process, which leads to the low efficiency of satellite scheduling.

The scheduling results generated by different VTW segments of the task are different. Figure 4 shows the scheduling benefit results at three different segments.

Fig. 4
figure 4

The comparison under different VTW segments

The experimental results show that as iteration increases, the more segments the better the scheduling benefits. When VTW is divided into 15 and 11 segments, the scheduling benefit difference is less than that 11 and 7 segments. Therefore, it can be assumed that when the number of segments reaches a certain level, the income growth gradually slows to stop. Therefore, the selection for suitable segments should be considered with the balance of scheduling time limit and profit value.

5 Conclusions

This study focuses on the observing schedule problem of multiple agile satellites, and a detailed multi-satellite task planning constraint satisfaction model is established, which includes stereoscopic image requirements, cloud cover constraints and other factors. Our main goal was to maximize the scheduling efficient, reduce the waste of satellite resources and meet the different needs of users to the greatest extent. To achieve this, based on the evolution mode of classical intelligent algorithms, such as genetic algorithm and immune algorithm, making the solution easily falls into the local optimal solution and convergences slowly. We studied a new evolutionary approach, then the combined probability density immune algorithm was adopted. The numerical experiments which conducted on 150 tasks under two AEOS shows that when achieved the same scheduling efficiency, the algorithm proposed in this paper requires less evolutionary generations and as the algorithm iterates, the time required for scheduling convergence is greatly reduced.

In the future, the combined probability density immune algorithm can be further extended to other applications. The most pertinent direction for future work would be coordinated scheduling of multi-agent satellites with more practical constraints considered. Agent satellites will be more applicable for a better scheduling system. We will explore these potential studies in our future work.