Application of a Multi-Satellite Dynamic Mission Scheduling Model Based on Mission Priority in Emergency Response

Emergency observations are missions executed by Earth observation satellites to support urgent ground operations. Emergency observations become more important for meeting the requirements of highly dynamic and highly time-sensitive observation missions, such as disaster monitoring and early warning. Considering the complex scheduling problem of Earth observation satellites under emergency conditions, a multi-satellite dynamic mission scheduling model based on mission priority is proposed in this paper. A calculation model of mission priority is designed for emergency missions based on seven impact factors. In the satellite mission scheduling, the resource constraints of scheduling are analyzed in detail, and the optimization objective function is built to maximize the observation mission priority and mission revenues, and minimize the waiting time for missions that require urgency for execution time. Then, the hybrid genetic tabu search algorithm is used to obtain the initial satellite scheduling plan. In case of the dynamic arrival of new emergency missions before scheduling plan releases, a dynamic scheduling algorithm based on mission priority is proposed to solve the scheduling problem caused by newly arrived missions and to obtain the scheduling plan of newly arrived missions. A simulation experiment was conducted for different numbers of initial missions and newly arrived missions, and the scheduling results were evaluated with a model performance evaluation function. The results show that the execution probability of high-priority missions increased because the mission priority was taken into account in the model. In the case of more satellite resources, when new missions dynamically arrived, the satellite resources can be reasonably allocated to these missions based on the mission priority. Overall, this approach reduces the complexity of the dynamic adjustment and maintains the stability of the initial scheduling plan.


Introduction
The mission scheduling of Earth observation satellites is performed to determine the execution order, execution time and corresponding satellite resources in the case of a fixed number of satellites and limited storage capacity. In the process of scheduling, it is necessary to eliminate the timing conflicts between different missions, improve the utilization of satellite resources and maximize the needs of users. In recent years, with the wide application of Earth observation satellites in emergency conditions, such as natural disaster monitoring, accident disasters and public health incidents, the scheduling of the Earth observation satellite has faced some new challenges. There are many uncertainties in and addressed a scheduling problem for LEO satellite missions, assigning satellites to the greatest number of requested missions by considering the mission priority and satisfying multi-resource constraints. In terms of solution algorithms, there is no universal algorithm for all problems since the satellite mission scheduling problem involves a large number of non-linear constraints and the solution objectives are not unique. Frank et al. [22] proposed a constraint-based model and a description method for the scheduling of Earth observation satellites. Globus et al. [23] studied the multi-satellite joint model and applied genetic algorithm to solve the problem. Mission priority was taken into account in this model, and each satellite has constraint condition, but factors such as the storage capacity limitation and data downlink were not taken into account. Malladi et al. [24] introduced the Clustered Maximum Weight Clique Problem (CCP) which was derived from the Satellite Image Acquisition Scheduling Problem (SIASP), and proposed a novel model-based matheuristic which took advantage of the power of the modern mixed-integer programming solvers and boosted the performance by including appropriate constraints. For optimization objective function, Tangpattanakul et al. [25] presented an indicator-based multi-objective local search method to solve a multi-objective optimization problem, which was to maximize the total revenue of the selected acquisitions and simultaneously ensure the fair resource sharing by minimizing the maximum revenue difference among users. Malladi et al. [26] studied the image acquisition scheduling for the Canadian RADARSAT Constellation Mission (RCM). An integer programming model was proposed to employ a piecewise linear objective function to favor completion of an image acquisition request and has achieved good results. Wang et al. [27] proposed a heuristic algorithm based on minimum resource competition with the objective of minimizing scheduling costs and maximizing mission revenues. However, most of the methods above were based on general missions and are difficult to apply in emergency mission scheduling.
Guided by the application requirements of emergency observation, this paper focuses on the key technologies of the multi-satellite dynamic scheduling problem and employs the proposed mathematic model and algorithm in an automatic mission control system for constellations of satellites. The overall objective of this study is to design a mission-oriented satellite scheduling architecture under emergency conditions based on the following goals: (1) to design priority evaluation criteria for emergency missions. The seven impact factors that influence the mission priority, including imaging mission level, type of observation images, visibility of target to satellite, execution urgency degree, type of mission, mission conflict degree and revenue of imaging mission, are taken into account to obtain the priority level of mission, which is then used as heuristic information for solving constraint scheduling problem; (2) to analyse the main constraints of satellite scheduling and the objective function in detail. Each term of the objective functions is maximizing the mission priority, maximizing the mission revenue and minimizing waiting time for missions that require an urgent execution time. Then, the hybrid genetic tabu search algorithm is used to obtain the initial satellite scheduling plan, so as to avoid useless iterations when close to the best solution in the late stage of algorithm implementation; and (3) to develop a dynamic scheduling algorithm based on mission priority to solve the scheduling problem in case of newly arrived missions. In this approach, newly arrived missions are added into the initial scheduling plan to obtain a new scheduling plan. The validity of the algorithm is verified through experimental simulations, and the feasibility of the emergency observation mission scheduling model is verified based on a model performance evaluation function.

Multi-Satellite Dynamic Mission Scheduling Model Based on Mission Priority under Emergency Conditions
In emergency observation, there are many factors that need to be considered to maximize a total reward of the observed targets, such as the priority level of missions and the total benefit gained from acquiring images. Furthermore, in contrast to daily scheduling, the resource allocation for real-time missions as an important feature of this problem also need to be addressed. In the context of a large number of point target imaging missions with different priority levels and newly arrived missions, we develop a multi-satellite dynamic mission scheduling model based on the mission priority under emergency conditions. The algorithm includes the following steps: (1) analysing the factors that influence the mission priority and calculating the priority for emergency missions; (2) analysing the constraints of satellite scheduling and building an optimization objective function; (3) obtaining the initial scheduling plan with the hybrid genetic tabu search algorithm; (4) using dynamic scheduling algorithm tries to insert newly arrived missions to the initial scheduling plan; and (5) evaluating the scheduling plan results. The flow chart of this model is shown in Figure 1. influence the mission priority and calculating the priority for emergency missions; (2) analysing the constraints of satellite scheduling and building an optimization objective function; (3) obtaining the initial scheduling plan with the hybrid genetic tabu search algorithm; (4) using dynamic scheduling algorithm tries to insert newly arrived missions to the initial scheduling plan; and (5) evaluating the scheduling plan results. The flow chart of this model is shown in Figure 1.

Impact Factors of Mission Priority
Due to the limitation of satellite resources and different users' needs for remote sensing data, the priority level of emergency missions varies. By analyzing the application requirements of emergency missions, the following seven impact factors are considered in setting the mission priority (Table 1).
(1) Imaging mission level. In the process of emergency response, different emergencies can be divided into four categories: natural disaster, accident disaster, public health incident and social security incident. According to the nature, severity, controllability and range of influence, it can be divided into four levels (I-IV), and the emergency response mechanism decreases from level I to level IV. Therefore, the corresponding imaging mission level is divided into four levels, and the missions with high level of this factor are given high priority.
(2) Type of observation image. Satellite scheduling for emergency missions involves multiple types of remote sensors, thus different images can be selected by users according to their needs. Therefore, the types of remote sensing images can be employed for calculating the priority level of

Impact Factors of Mission Priority
Due to the limitation of satellite resources and different users' needs for remote sensing data, the priority level of emergency missions varies. By analyzing the application requirements of emergency missions, the following seven impact factors are considered in setting the mission priority (Table 1).
(1) Imaging mission level. In the process of emergency response, different emergencies can be divided into four categories: natural disaster, accident disaster, public health incident and social security incident. According to the nature, severity, controllability and range of influence, it can be divided into four levels (I-IV), and the emergency response mechanism decreases from level I to level IV. Therefore, the corresponding imaging mission level is divided into four levels, and the missions with high level of this factor are given high priority.
(2) Type of observation image. Satellite scheduling for emergency missions involves multiple types of remote sensors, thus different images can be selected by users according to their needs. Therefore, the types of remote sensing images can be employed for calculating the priority level of mission. We take visible light, infrared and microwave images as examples in this study, and assume that the image types are ordered as follows: visible light image > microwave image > infrared image. (3) Visibility of target to satellite. During satellite scheduling, there are cases in which the same target is within multiple satellite observation ranges at the same time. For a mission, the visibility of target to satellite is related to the number of available satellites in the same time window, and the visibility between the satellite and target can be computed by calling satellite tool kit (STK) software. Therefore, a mission with less available satellite resources should be given high priority, thus to ensure the execution of the mission. Besides, when no satellite can serve the mission, the mission is declared invalid and removed from the list of missions that need to be scheduled. (4) Execution urgency degree. Emergency observations have different response time requirements.
The start time, end time and remaining time of a mission determine whether it could be successfully carried out and completed. Therefore, the more urgent the mission is, the more likely it is to miss the execution period and fail, so it should be given priority for execution. (5) Type of mission. Due to the emergency missions with different characteristics, the types of missions should be classified and given different priorities. Especially, the position of maritime target has great uncertainty and always changes with time, so it needs to be observed first. Therefore, the importance of different mission types is defined as the following sequence: maritime moving target > maritime static target > land moving target > land static target. (6) Mission conflict degree. In some cases, there may be multiple missions requesting a certain satellite resource at the same time, resulting in resource contention. Therefore, we define the conflict degree of a mission as the number of missions competing for the same satellite resource. The mission with a high conflict degree should be given priority for execution in order to avoid the problem of deadlock during scheduling. (7) Revenue of imaging mission. A basic objective of mission scheduling is to maximize the total revenue gained from acquiring images. For imaging satellites, meteorological conditions, especially cloud cover, have a great influence on imaging effect. Therefore, the total mission revenue depends not only on the value of the mission, but also on the imaging quality. Therefore, we adopt the basic revenue which is related to the importance of the observation missions and cloud cover which is related to the imaging quality to measure the total benefit.

F7
Revenue of imaging mission Real Number p i is the imaging revenue of mission i,p b i is the basic revenue, cc i is the parameter of cloud cover obtained by the International Satellite Cloud Climatology Project (ISCCP) [28], and k is an adjustment coefficient.

Calculation Model of Mission Priority
For the impact factors of mission priority, the above qualitative impact factors should be quantified in the calculation model. We used technique for order preference by similarity to ideal solution (TOPSIS) [29][30][31] to perform a synthetic calculation and obtain quantitative indicators of mission priority. The implementation of our method is as follows: Step 1: For mission set T = {t 1 , t 2 , . . . , t m }, the impact factors of mission priority are calculated to form an impact factor matrix X = [x ij ] m×7 , where x ij is the quantitative value of the j-th impact factor of mission t i , and m is the number of missions.
Step 2: The range transformation method is used to transform the impact factor matrix into the standard matrix Y = [y ij ] m×7 , 0 ≤ y ij ≤ 1: where x max is the maximum value in the column that contains x ij and x min is the minimum value in the column that contains x ij .
Step 4: Calculate the close-degree C i between mission t i and the ideal solution: where D + i and D − i are the positive and negative distances between mission t i and the ideal solution I, and n is the number of impact factors.
Step 5: The priority level of mission t i is measured by p i : The priority level of each mission can be obtained through the above steps, and the level is in the range of [0, 10]. The higher the value of p i is, the higher the priority of the mission.

Emergency Observation Mission Scheduling Model
In contrast to the traditional scheduling model, dynamic emergency scheduling is mainly for non-periodic missions with uncertain expected completion and arrival time. Under the conditions of satisfying the satellite observation constraints and mission requirements, this paper builds a multi-objective mathematical programming model for multi-satellite mission scheduling under emergency conditions, so as to maximize the objective of mission scheduling and optimize the observation plan.

Constraint Analysis of Satellite Scheduling
The mission defined in this paper refers to the point target that can be observed by the satellites in a field of view. Considering multi-resource constraints, we established a mathematical model to describe the scheduling problem. In the observation scheduling stage, the main constraints are as follows. The parameter and label definitions in the constraints are listed in Table 2, and function definitions are shown in Table 3.   Table 3. Function definitions in the constraints.

Function Definition
CapLen(t i ) The shooting duration, which is related to the mission requirements and is obtained before scheduling.

IS(OS ij )
The start-up time of satellite s j , which can be calculated from the specific execution time after scheduling.

CS(OS ij )
The shutdown time of satellite s j , which can be calculated from the specific execution time after scheduling.
The solar elevation angle, which can be calculated from the geographical position of mission t i and the time tm.
The observation angle, which can be calculated from the geographical position of mission t i , the path of satellite s j and the time tm.
The storage capacity of satellite s j , which is occupied by the observation mission t i arranged between any two data transmission windows w 1 and w 2 . It can be calculated from the planned observation mission ti and the speed of reading and writing v j of satellite s j .

NUM(E)
The number of on-off switches for satellite s j , which can be calculated from the start-up time and shutdown time of satellite s j .

WP(MT l )
The working wave of satellite s j which is related to mission t i . urgent(t i ) An indicator represents whether mission t i is an urgent mission.
(2) Start-up time constraint. The start-up time must be between the minimum start-up time MinT j and the maximum start-up time MaxT j of sensor s j of satellite s j . The time interval between two switches cannot exceed the preset minimum time interval MinPeriod j .
(3) Solar elevation angle constraint. For a visible light payload, sensor s j of satellite s j must satisfy the constraint of the solar elevation angle Sunθ i : (4) Observation angle constraint. The satellite payload and observation mission must meet the minimum observation angle requirement MinObserθ i specified by the user: (5) Storage capacity constraint. For satellite s j , the storage capacity of the observation mission between any two adjacent data transmission windows w 1 , w 2 cannot exceed the storage capacity M j of satellite s j : (6) Energy constraint. The energy consumed by satellite activities can be expressed as a correlation function of observation time, sensor side swing and on and off processes. The consumption cannot exceed the maximum limit P j . P j is defined as the energy consumed per unit time of observation, Q j is the energy consumed per unit angle of side swing, and O j is the energy consumption associated with turning on and off the machine: (7) Satellite payload action constraint. For sensor s j of satellite s j , the time interval of continuous observation missions cannot be less than the time of side swing adjustment and the time of stability after a side swing. V j is the speed of the side swing, which is simplified to a constant speed, and ts j is the time of stability after a side swing:

Optimization Objective Function of Satellite Scheduling
The satellite mission scheduling is in reality a multi-objective optimization problem with multiple constraints. During emergency response, it not only requires that the completion rate of key emergency missions is high and the mission revenue is large, but also needs to ensure a high scheduling efficiency for each mission to optimally use satellite resources. Based on these consideration, we use a linear weighted sum method to build optimization objective function for solving this model: (1) Sub-objective function 1: to maximize the sum of priority levels of the missions: where X = x ijk m×n×k ij is the decision matrix of mission scheduling, x ijk = 1 represents the k-th observation opportunity of mission t i assigned to satellite s j ; otherwise, x ijk = 0.
(2) Sub-objective function 2: to maximize the total mission revenues: (3) Sub-objective function 3: to minimize the waiting time for missions that require urgent execution: Based on each term of the objective functions, the global optimization objective function is obtained by the linear weighted sum method: where α, β and γ are the weighting factors, and the sum of these factors is 1. The value of the weighting factor determines the importance of each term in the objective function. Our study takes the mission priority as the key factor in the emergency response. Thus, we set α = 0.6, β = 0.2 and γ = 0.2.

Dynamic Allocation of Satellite Resources for Emergency Scheduling
The purpose of emergency observation mission scheduling is to determine the execution order of the missions and reasonably allocate satellite resources and execution time for each mission. As some new emergency missions are added, the complexity of the problem is further increased. Because there are many constraints in the multi-satellite scheduling problem, and the arrival of new missions will affect the mission set, satellite resource set, time window and constraints in the initial model, thus influencing many scheduled missions. Therefore, this paper proposes a dynamic scheduling algorithm based on mission priority to solve the scheduling problem of newly arrived missions. In this model, the initial schedule is obtained through a hybrid genetic tabu search algorithm. When new missions arrive, based on the initial scheduling results, the satellite that matches the new mission request is searched in the satellite resource set, the operations including insertion, reallocation, replacement and deletion are performed to execute the new missions with high priority. We design this method to ensure that newly arrived missions can be quickly scheduled under emergency conditions and minimize the change of initial scheduling plan.

Initial Scheduling Plan of Satellite Resources
The genetic algorithm and tabu search are common algorithms for solving combinatorial optimization problems [32][33][34]. The genetic algorithm is a highly parallel, stochastic and adaptive optimization algorithm based on the biological evolution and selection mechanism, and it has strong robustness and high global search capability. However, in the late stage, the convergence speed and the computational efficiency are low, and it is easy to converge to a local optimum. Tabu search is a neighborhood search algorithm that prohibits the repetition of previous work and avoids the local optimum. However, tabu search also has some limitations, such as strong dependence on the initial solution, serial operation for only one solution, and low search efficiency.
Based on the characteristics above, a hybrid genetic tabu search algorithm is designed in this paper to allocate satellite resources to the mission set. The algorithm is used to solve the combinatorial optimization model and obtain the initial scheduling plan. The core concept of this algorithm is as follows: (1) the genetic algorithm is used for large-scale searches in the global space. The initial population traverses most of the solution space in parallel. At the end of iteration, the result is stable in the region where the solution space is better; and (2) starting from each individual in the optimization region, the tabu search is applied in a small-scale search of the local space to delay or avoid the genetic algorithm converging to a local optimum, thereby improving the ability to search for the best solution. The process of the hybrid genetic tabu search algorithm is shown in the following processing chain (Table 4): Table 4. Processing chain for the hybrid genetic tabu search algorithm.

Input
(1) the maximum iteration number of genetic algorithm i ga-max ; (2) the maximum iteration number of tabu search i ts-max ; (3) the population size n; (4) the crossover probability p c ; (5) the mutation probability p m ; (6) the length of tabu table l; (7) the neighborhood size n; (8) the neighborhood function F(x).

Processing chain
(1) Determine the chromosome coding method. Chromosome coding is a series of segments, each of which represents the mission scheduling for a satellite payload type. In each segment, the execution window of each mission is arranged by number to form the chromosome coding of this segment. The chromosome coding template is defined as u i = t i , w q i , st i , where w q i is the visible window of mission t i , st i is the start time of execution, and the coding template is represented as a vector ν, where ν = {u 1 ,u 2 , . . . ,u n }.
(2) Initialize the population. An initial population of size N is randomly generated. The initial generation t is set to 0, m chromosomes are randomly generated as x 1 t , x 2 t , . . . , x m t , and the optimal value is set as X best .
(3) Calculate the value of the fitness function. The objective function is taken as the fitness function of chromosome, and the fitness function value f (x 1 t ), f x 2 t , . . . , f (x m t ) of each chromosome is calculated in the population. If f ( X best ) < f (x i t ), i = 1,2, . . . ,m, then X best = x i t . (4) If t < i max , then t = t +1, otherwise, the iteration ends.  Hybrid Genetic Tabu Search Algorithm (6) Perform crossover operation on the population. Chromosomes are crossed by single point crossover according to crossover probability P c . (7) Perform mutation operation for the population. According to the mutation probability P m , individuals in the population are mutated to produce a new generation. (8) Perform a tabu search for the new generation and determine whether the termination criterion is satisfied. If the criterion is satisfied, the best solution is output; otherwise, the candidate solution is determined by the neighborhood function F(x), which generates the neighborhood of the current solution.
(9) Assess the merit of the candidate solution based on the fitness function and whether it satisfies the aspiration criterion. If the criterion is satisfied, it is assigned to the current solution and the best solution found-so-far, the tabu length is set again, and the tabu length of other elements is updated. Otherwise, the sub-best solution is taken as the current solution and added to the tabu table to replace the object that first entered the tabu When the maximum iteration number i ts-max is reached, the best solution is output.

Dynamic Scheduling of Newly Arrived Emergency Missions
This section presents the dynamic scheduling algorithm which tries to insert newly arrived missions into the initial scheduling plan. The newly arrived missions are sorted by priority, from high to low, and scheduled one by one. The scheduling operations are applied to each new mission until one of the operations is successful. The operations are: insertion, reallocation, replacement, and deletion. The algorithm stops when all new missions are attempted to be scheduled, and an ideal dynamic mission scheduling plan is obtained by iteration according to the proposed method. The details of the scheduling operations are as follows: Step 1: Initialize the parameters. The missions in the new mission set T' are sorted from high to low according to mission priority, so that the mission with the highest priority in T' is the current scheduling mission t' with available satellite resource set S.
Step 2: Perform the insertion operation. This step involves traversing every available satellite resource of S for mission t' to determine whether the visible time window of the current satellite resource S' is available and whether there is a conflict between missions t' and the scheduled mission in the current time window of satellite S'. If there is no conflict, the mission t' is directly inserted into the current time window. If the new mission cannot be inserted, mission t which conflicts with mission t' is placed in the mission conflict set T", and the process proceeds to step 3.
Step 3: Perform the reallocation operation. This step traverses all missions in the conflict set T" that conflict with the current mission t', makes the first mission in the conflict set as the current conflict mission t, and re-searches its available time window. If the current conflicting mission t can be moved to a new window, mission t' is inserted into the current time window, and the conflicting mission t is moved to another time window for execution. If the current conflicting mission t cannot be moved to a new window, then the process proceeds to step 4.
Step 4: Perform the replacement operation. This step assesses the priority of mission t' and the current conflicting mission t. If the priority of mission t' is higher than that of mission t, the current conflicting mission t is deleted, and then the new mission t' is inserted into the visible time window; otherwise, the mission replacement is unsuccessful, and the process proceeds to step 5.
Step 5: Perform the delete operation. When steps 2, 3 and 4 are not satisfied, the new mission t' is deleted and the resource scheduling process is abandoned.
Step 6: Determine whether the available satellite resources are traversed. If the available resources have been traversed, the solution corresponding to the maximum value in the evaluation set is selected as the final solution, and the scheduling of current mission t' is completed.
At this point, the process proceeds to step 1 until all new missions in the set T' are scheduled; otherwise, the satellite resource number plus 1 and the process proceeds to step 2.

Model Performance Evaluation
The multi-satellite dynamic emergency scheduling model based on mission priority not only requires a high mission completion rate and high total revenues, but also needs to ensure a better scheduling period for each mission and a high execution rate of missions with high priority. According to the characteristics of the model, three indicators are defined to evaluate the model performance, including the mission completion rate (MCR), mission priority execution rate (MPER), and scheme change rate (SCR). The evaluation function of the model is given in Equation (16): where n is the total number of actual scheduled missions after scheduling plan adjustment, n' is the total number of missions, num(T c ) is the number of missions that the initial scheduling plan changes due to the newly arrived missions in dynamic scheduling, and num(T q ) is the number of initial missions.

Results
According to the proposed method, we used Microsoft Visual Studio 2010 as the development environment, and coded the algorithm in C#. The experiments were performed using an Inter (R) Core (TM) i5-3317U 1.70 GHz CPU with 4 GB RAM under the Windows 7 operating system. The setup and results of the experiments will be discussed in this section.

Simulation Experiment Setting
In the test scenario, mission request is generated by a random uniform distribution in worldwide. For each request of emergency mission, the following attributes are included: observation duration, geographical location, imaging mission level, observation image type and type of mission. In this paper, 25 initial observation point targets were randomly generated, as shown in Figure 2, and the generated mission types are shown in Table 5. Using the same method, we generated another five as the newly arrived missions to test the dynamic scheduling algorithm (Table 6). the process proceeds to step 1 until all new missions in the set T' are scheduled; otherwise, the satellite resource number plus 1 and the process proceeds to step 2.

Model Performance Evaluation
The multi-satellite dynamic emergency scheduling model based on mission priority not only requires a high mission completion rate and high total revenues, but also needs to ensure a better scheduling period for each mission and a high execution rate of missions with high priority. According to the characteristics of the model, three indicators are defined to evaluate the model performance, including the mission completion rate (MCR), mission priority execution rate (MPER), and scheme change rate (SCR). The evaluation function of the model is given in Equation (16) where n is the total number of actual scheduled missions after scheduling plan adjustment, n' is the total number of missions, num(Tc) is the number of missions that the initial scheduling plan changes due to the newly arrived missions in dynamic scheduling, and num(Tq) is the number of initial missions.

Results
According to the proposed method, we used Microsoft Visual Studio 2010 as the development environment, and coded the algorithm in C#. The experiments were performed using an Inter (R) Core (TM) i5-3317U 1.70 GHz CPU with 4 GB RAM under the Windows 7 operating system. The setup and results of the experiments will be discussed in this section.

Simulation Experiment Setting
In the test scenario, mission request is generated by a random uniform distribution in worldwide. For each request of emergency mission, the following attributes are included: observation duration, geographical location, imaging mission level, observation image type and type of mission. In this paper, 25 initial observation point targets were randomly generated, as shown in Figure 2, and the generated mission types are shown in Table 5. Using the same method, we generated another five as the newly arrived missions to test the dynamic scheduling algorithm (Table 6).  The time horizon of scheduling was from 2018/08/24 00:00 to 2018/08/24 14:00 (universal time coordinated), and the imaging duration was varied from 60 to 240 s. For satellite resources, three Earth observation satellites were set up in this experiment. These satellites were taken from the satellite database of STK software developed by AGI of the United States. The orbit parameters are shown in Table 7 and were generated calling the orbital generation tool of STK according to the general orbit type of Earth observation satellite.

The Calculation of Mission Priority
According to the seven types of mission priority impact factors discussed in Section 2.2.1, the relevant information for the five newly arrived missions after pretreatment is shown in Table 8. The observation time window of the satellite for each point target was calculated by calling STK software. Firstly, the qualitative descriptions in the impact factors table were transformed into quantitative descriptions. The visible light, microwave and infrared image types were assigned values of 1, 2, and 3, respectively, and the maritime moving target, maritime static target, land moving target and land static target were assigned values of 1, 2, 3, and 4, respectively. For the impact factors, F1, F3, F6 and F7 are positive indicators, and F2, F4 and F5 are negative indicators. Therefore, the reciprocal method was used to convert all negative indicators into positive indicators. Then, the range transformation method was used to convert the transformed impact factor matrix into the standard matrix ( Table 9). The distance between each mission and the ideal positive solution and the ideal negative solution was calculated respectively, and the close-degree between each mission and the ideal solution was obtained. The close-degree set is {C 26 ,C 27 ,C 28 ,C 29 ,C 30 }, and the corresponding values are {0.376, 0.613, 0.217, 0.510, 0.466}. Through the steps above, the quantification values of each mission priority were calculated. The mission priority values from mission T26 to mission T30 are 3, 6, 2, 5 and 4, respectively. The higher the value is, the higher the priority of the mission. The impact factors of 25 initial missions were calculated via the same method, and the calculation process is not listed due to space limitations.

Satellite Resource Allocation
During the simulation period (from 2018/08/24 00:00 to 2018/08/24 14:00), the satellite parameters were imported from STK, and the visible time window can be obtained by visibility analysis (Table 10). For the initial scheduling plan, the priority of each initial mission was calculated. Then, to maximize the objective function in Section 2.3.2, the hybrid genetic tabu search algorithm was used to solve the problem. By comparing several experimental results, we choose the following settings for this scenario. The population size of genetic algorithm was set to 50, the crossover probability was 0.6, the mutation probability was 0.1, the maximum number of iterations of genetic algorithm was 300; the length of tabu table was 10, the neighborhood size was 10, and the maximum number of iterations of tabu search was 200. Then, the initial scheduling plan was obtained, as shown in Table 11.
Before releasing the initial scheduling plan, five newly arrived emergency missions to be allocated were added before the missions were executed. After the priority calculation, the insertion, reallocation, replacement and deletion for newly arrived missions were performed. The scheduling plan of newly arrived missions was then obtained, as shown in Table 12. In the initial scheduling plan, missions T4 and T17 were not allocated satellite resources due to the limitation of the time window, objective function maximization or some other constraints. After the new missions were added, the scheduling plan shows that mission T27 was directly inserted into the initial scheduling plan of satellite S3, mission T26 was inserted into the initial scheduling plan of satellite S3 through the reallocation operation, the affected mission T10 was scheduled again by satellite S3, and the scheduling time was from 12:18:23 to 12:19:38. Missions T29 and T30 were respectively scheduled by satellites S2 and S1 through the replacement operation, and the affected missions T21 and T15 were deleted. Mission T28 has a small mission priority and was not allocated satellite resources under the condition that the global objective was maximized.   Figure 3 illustrates the statistical results of completed missions under the scenario with 30 missions. It can be seen that a total of 25 missions were completed after the dynamic scheduling due to the arrival of new missions. The missions with high priority (priorities level of 7, 8, 9 and 10) were all executed. Some missions with low priority (priorities level of 1, 2, 5 and 6) were not executed, because these missions were not allocated satellite resources during the initial scheduling or were replaced or deleted by a mission with higher priority in the dynamic scheduling. Overall, the proposed method guarantees a high execution rate for high-priority missions. The scheme change rate is 12% by calculating the model performance evaluation, so it is very helpful to guarantee the stability of the initial scheduling plan. Figure 4 shows that among the 25 executed missions, the missions with priorities higher than 6 account for 28% of the total number of completed missions, achieving a satisfactory scheduling effect.

Evaluation of the Scheduling Plan Result
In this section, we have conducted several numerical experiments to verify the effectiveness of the proposed method. For the model, 24 scenarios were setup and the number of initial missions contained in these scenarios changed from 25 to 200, with an increase step of 25. The corresponding number of newly arrived missions changed from 5 to 75, with an increase step of 10. Simulation experiments were conducted in scenarios with 3, 4 and 5 satellite resources. The frequency of the insertion, reallocation, replacement and deletion operations for emergency missions in different scenarios was counted to obtain Figure 5.

Evaluation of the Scheduling Plan Result
In this section, we have conducted several numerical experiments to verify the effectiveness of the proposed method. For the model, 24 scenarios were setup and the number of initial missions contained in these scenarios changed from 25 to 200, with an increase step of 25. The corresponding number of newly arrived missions changed from 5 to 75, with an increase step of 10. Simulation experiments were conducted in scenarios with 3, 4 and 5 satellite resources. The frequency of the insertion, reallocation, replacement and deletion operations for emergency missions in different scenarios was counted to obtain Figure 5.

Evaluation of the Scheduling Plan Result
In this section, we have conducted several numerical experiments to verify the effectiveness of the proposed method. For the model, 24 scenarios were setup and the number of initial missions contained in these scenarios changed from 25 to 200, with an increase step of 25. The corresponding number of newly arrived missions changed from 5 to 75, with an increase step of 10. Simulation experiments were conducted in scenarios with 3, 4 and 5 satellite resources. The frequency of the insertion, reallocation, replacement and deletion operations for emergency missions in different scenarios was counted to obtain Figure 5.

Evaluation of the Scheduling Plan Result
In this section, we have conducted several numerical experiments to verify the effectiveness of the proposed method. For the model, 24 scenarios were setup and the number of initial missions contained in these scenarios changed from 25 to 200, with an increase step of 25. The corresponding number of newly arrived missions changed from 5 to 75, with an increase step of 10. Simulation experiments were conducted in scenarios with 3, 4 and 5 satellite resources. The frequency of the insertion, reallocation, replacement and deletion operations for emergency missions in different scenarios was counted to obtain Figure 5. It shows that for the same number of missions, as the number of satellite resources increases, the number of insertion operation notably increases, and the number of deleted missions decreases, which reduces the adjustment to the initial scheduling plan. The number of reallocation operation performed for missions is generally higher than that of replacement operation, which reduces the probability of deleting the initial missions.
The model evaluation function defined in Section 2.5 was performed to evaluate the scheduling results for 24 different scenarios, and the computational complexity was measured using elapsed CPU time (Table 13). The evaluation indicators of the scheduling plans indicate that for the same number of satellite resources, as the number of missions increases, the mission completion rate and priority execution rate exhibit decreasing trends. When the number of missions is less than 100, the mission completion rate and the priority execution rate are both greater than 0.8 in different scenarios, achieving a better scheduling effect. In the scenario with 25 initial missions, five newly arrived missions and five satellites, the maximum value of the evaluation function is 11.40. Because the numbers of insertion and reallocation operations in this scenario are 3 and 2, respectively, the scheme change rate is small. However, when the number of missions is more than 100, the results for each evaluation indicator are poor. We can see that the running time of initial scheduling generally increases with the number of missions, with a maximum of 564.72 s. In contrast to the initial scheduling, the computation time for the dynamic scheduling are quite short, because the satellite resources are allocated based on initial scheduling and mission priority. However, the running time increases significantly with mission size because more different operations are needed in the iteration. It is worth mentioning that the mission priority execution rate is always larger than the mission completion rate, this phenomenon illustrates that the proposed method increases the execution probability of high-priority missions. The above results show that the proposed model is practicable and can meet the need of real-time processing with low time cost, especially for solving small and medium-scale problems. However, due to the mission priority set in this paper, the resource allocation strategy may be unfair, so some processes may wait for a long time. From the mission completion rate in Table 13, some missions were delayed the execution process because of their low priority or low revenue, which may lead to the problem of starvation. This situation could be solved by increasing the number of satellite resources, so as to increase the chance of each mission being executed. In addition, it can adjust the weight allocation of the optimization objective function, so that as many missions as possible can be executed before deadline.

Conclusions and Future Work
Dynamic emergency scheduling of Earth observation satellites is of great significance for the efficient use of satellite resources to obtain ground image data under emergency conditions. This paper studies the satellite imaging scheduling problem under emergency conditions and proposes a set of reasonable mission priority calculation method based on seven impact factors. Considering the constraints in the scheduling process, a multi-objective mathematical programming model of multi-satellite dynamic emergency scheduling based on mission priority is established. This model can be used to solve the scheduling problem of newly arrived emergency missions. In the simulation experiment, complex scenarios with different mission types and different satellites were set, and the priority levels of different missions were obtained with a calculation model of mission priority. It was also used as the heuristic information to solve the constrained scheduling problem. In the multi-objective optimization, the hybrid genetic tabu search algorithm used in this paper effectively overcomes the disadvantages of the weak local search ability of the genetic algorithm and strong dependence on the initial solution of tabu search. Therefore, this hybrid algorithm avoids a large number of useless iterations when approaching the best solution in the late stage, thereby improving the efficiency of the algorithm. In the simulation scenarios with different numbers of initial missions and newly arrived missions, the analysis results show that the probability of executing high-priority missions increases because the model considers the calculation of mission priority. Thus, a reasonable initial scheduling plan for mission request can be established under emergency conditions, and the effect of satellite resource scheduling can be improved. In case of newly arrived emergency missions, a feasible solution with low time cost can be given by using dynamic scheduling algorithm based on the mission priority. Overall, the proposed model yields high scheduling revenues and low scheduling costs, maintains the stability of the initial scheduling plan under the condition of fast scheduling, so it is suitable for solving multi-satellite dynamic mission scheduling problems.
In practical applications, the constraints of satellite mission scheduling are very complex. In some cases, manual intervention is needed for obtaining the current satellite scheduling plan, such as the collection of mission request lists, the selection of satellite resources, and the weight setting of optimization objective function. In the emergency situation, the operators may need to adjust the scheme according to the latest planning configuration before it releases, including deleting observation missions and adding new missions. However, finding the balance between manual intervention and automation is a perennial challenge. In future work, if some manual intervention can be transformed into decision-making conditions of the scheduling system through learning mechanism, it will be more capable to meet the demand. Furthermore, we will analyze more complex scheduling problems on this basis and further refine the model. Additionally, more constraints will be considered to make the scheduling problems more comprehensive.
Author Contributions: J.C. and X.Z. are the directors of the corresponding contents. J.C. and X.Z. designed the methodology and performed the experiments. J.C. completed data processing, formal analysis and the manuscript. X.Z. checked the writing and completed the manuscript polishing.