A Branch and Bound Algorithm for Agile Earth Observation Satellite Scheduling

. The agile earth observing satellite scheduling (AEOSS) problem consists of scheduling a subset of images among a set of candidates that satisfy imperative constraints and maximize a gain function. In this paper, we consider a new AEOSS model which integrates a time-dependent temporal constraint. To solve this problem, we propose a highly efficient branch and bound algorithm whose effective ingredients include a look-ahead construction method (for generating a high quality initial lower bound) and a combined use of three pruning strategies (which help to prune a large portion of the search space). We conducted computational experiments on a set of test data that were generated with information from real-life scenarios. The results showed that the proposed algorithm is efficientenoughforengineeringapplication.Inparticular,itisabletosolveinstanceswith55targetstooptimalitywithin164seconds onaverage.Furthermore,wecarriedoutadditionalexperimentstoanalyzethecontributionofeachkeyalgorithmingredient.


Introduction
Agile Earth observing satellites (AEOSs) have a stronger ability to collect images of specified areas of the Earth's surface.And AEOSs play key roles in application such as environment surveillance, reconnaissance, resource investigation, and other fields.However, satellite resources are still scarce with respect to the increasing demands for imaging.Whereas nonagile satellites have only one degree of freedom on roll axis for acquiring images, the agile satellites have mobility on the three axes (roll, pitch, and yaw), giving opportunities for a more efficient use of the satellite imaging capabilities.As a result, the scheduling of the agile Earth observing satellites, which is a complex combinatorial optimization problem that has been proved to be NP-hard [1], is a key issue in the management of satellites.The scheduling problem of the AEOSs was studied by a number of researchers.
It is believed that [1] was the first work introducing AEOS.They provided a comprehensive description of AEOS and analyzed four different methods.They studied the increased observation freedom provided by the agility and the complicated transition times, modeled a simplified version of the complete problem, and drew comparisons with four algorithms.The authors in [2] describe a synthesis of permutation-based search and constraint propagation for AEOS scheduling which incorporates the advantages of both techniques.They obtained the large neighborhood behavior of permutation search for oversubscribed resource scheduling problems and exploited the power of constraint propagation to retain as much flexibility as possible while building the schedule.Bianchessi [3,4] considered the observation scheduling problem for a constellation of agile satellites.A tabu search algorithm was devised to produce solutions whose qualities were evaluated by a column generation algorithm on a linear programming relaxation of the problem.Habet et al. [5][6][7] proposed a tabu search based on the saturated and consistent neighborhood to solve the AEOS problem involving stereoscopic and time window constraints.The authors used a formulation of constrained optimization problems and a convex evaluation function.Moreover, the upper bounds were computed by relaxing the constraints and linearization of the objective function.Florio [8] developed a heuristic with look-ahead ability, in order to obtain a nearoptimal schedule for an agile satellite constellation.They also tested the performance of various constellation configurations based on the schedules generated by the heuristic.Wang and Reinelt [9] discussed the AEOS scheduling problem for the first environmental and disaster monitoring and prediction satellite constellation of China.They proposed a nonlinear model of the problem and developed a heuristic with conflict avoidance, limited backtracking, and download-asneeded features.Meanwhile, a decision support system based on the model and the heuristic is also provided.Kananub et al. [10] show different observation situations of agile and nonagile EOSs.AEOS improves observation efficiency but also increases the difficulties of observation scheduling task.Tangpattanakul et al. [11] modeled the AEOS problem as a multiobjective optimization problem which maximizes the total profits and minimizes the maximum profit difference between users simultaneously.They proposed an indicatorbased multiobjective local search to solve the problem.Xu et al. [12] assumed that different observation tasks may have priority levels, and the objective is to maximize the total priority of selected tasks.Meanwhile, they developed constructive algorithms to solve the problem, which adopt a priority-based sequential construction procedure to avoid conflicts and generate feasible solutions.Other works related to the AEOS problems can be found in [13][14][15][16][17].
However, the scheduling problem is more difficult to solve as the attitude maneuver capability is more excellent.Meanwhile, the resource constraint is not as tight as before in the new generation of agile satellites.So the critical constraint is the time-dependent temporal constraint, which means the minimum transition time taken by a maneuver between the end of the former acquisition and the start of the following one is not constant and depends on the precise time at which the transition is triggered [1].This aspect is close to work on time-dependent scheduling [18,19], where transition times take particular forms, piecewise constant or piecewise linear.
Pralet and Verfaillie [20] proposed the time-dependent simple temporal networks (TSTN), which cover temporal constraints for which the minimum and maximum distances required between two temporal positions  and  are not necessarily constant but may depend on the assignments of  and .The TSTN are applied by several researchers [20,21] on the management of temporal constraints for agile satellites.
On the basis of this, a branch and bound algorithm for the optimal solution of the agile satellite scheduling problem is proposed in this paper.
The remainder of this paper is organized as follows.In Section 2, we proposed the mathematical model of the scheduling problem of the AEOS and analyzed the characteristics of the attitude maneuver function.In Section 3, the details of the branch and bound algorithm are illustrated, which contains the expression of a solution, the initialization method, and three pruning strategies.Experimental examples are designed according to the actual use requirements of the AEOSs and the examples are used to validate the efficiency of the algorithm in Section 4. Section 5 concludes the paper.

Agile Earth Observing Satellite
Scheduling Problem Since satellites are orbital spacecraft, a target is visible to a satellite only when it is flying over it.Compared to nonagile satellites, agile satellite's pitching ability extends the visible time window [1]. Figure 1 illustrates the temporal constraints of agile satellites.As is shown in Figure 1(a), the visible time window of target 1 is [ws 1,we 1].At any point of the time window, the satellite has a unique attitude for observing target 1.The attitude at ws 1 is attitude ws 1. Figure 1(b) shows that an attitude maneuver is needed between two consecutive observations.Suppose that the end attitude of target 1 is atie 1 and the start attitude of target 2 is atis 2, and the difference between the start time of the latter observation and the end time of the former observation must be larger than the attitude maneuver time: that is, st 2 − et 1 > min(atie 1 , atis 2 ), where min(atie 1 , atis 2 ) denotes the minimum attitude maneuver time between atie 1 and atis 2. One notices that the minimum transition time taken by a maneuver between two observations is not constant and it depends on the precise time at which the transition is triggered.

Problem Formulation.
In the modeling, we assume that all the targets have been processed into strip tasks which are along-track for good imaging quality as in [22].The tasks such as point target and stereo imaging could be regarded as target with different duration times.
A set of notations of the model is shown as follows: : the profit of target  Time-dependent transition constraint Figure 1: Temporal constraint of agile satellite.
Decision variables are Constraints are ws  ≤ st  < et  < we  , ∀  = 1; (3) et  + min (atie  , atis  ) < st  ∀  = 1; (5) ,  = 0, . . ., NT; (10) Equation (1) states that the objective is to maximize the sum of the profits of the executed targets.Equation (2) introduces the decision variables of the model, where   takes a value of 1 if target  is executed and   = 0; otherwise;   takes a value of 1 if target  is executed after target  and   = 0 otherwise.
Equations ( 3)- (13) give the constraints of the problem.Equation (3) states that any scheduled target should be executed in the time window.Equation (4) states that the end imaging time of a scheduled target is the sum of the start imaging time and the duration time of the target.Equation (5) states that the start imaging time of the following target should be bigger than the sum of the end imaging time of the former target and the maneuver time.Equation (6) states that a target could not be executed following itself.Equations (7) and (8) state that there are a virtual starting target and a virtual ending target whose start time and duration time are both 0. Equations ( 9) and (10) state that any executed target could only have one following target and one previous target.Equation (11) is the classical Dantzig, Fulkerson, and Johnson (DFJ) subtour elimination constraint [23].Equation (12) states that target  and target  are both executed if target  is executed after target .Equation ( 13) states the domain of the variables.
The key to optimizing this model is to determine a feasible sequence of targets, which maximize the overall profits while satisfying all temporal constraints.Therefore, it is necessary to further analyze the attitude maneuver characteristics of agile satellites.

The Characteristics of the Function 𝑑min.
In this subsection, we introduce how to calculate the function min and the method to compute the earliest start time of a target on the basis of the analysis of the characteristics of min.
The function min returns the minimum transition time given two attitudes.The maneuver process includes three phases: acceleration, plateau, and deceleration.The satellite first uniformly accelerates to a maximum speed and then remains in the maximum speed for a period and hereafter Figure 2: Interpolation procedure used for computing the earliest start time.
decelerates until stop.After maneuver, a tranquilization time is required to reach the pointing stability.Attitudes remain fixed during imaging and all targets are preprocessed to be along-track strips.Equation ( 5) is a key constraint of the AEOS scheduling problem.We note that the "delay function" defined in [20] is in fact a deformation of (5).Informally, delay ct (et  , st  ) is the delay obtained in st  if a transition in minimum time from atie  to atis  is triggered at time et  .This delay corresponds to the difference between the minimum arrival time associated with the transition et  + min(atie  , atis  ) and the required arrival time st  .A strictly negative delay corresponds to a transition ending before deadline st  , which means the constraint is satisfied.A strictly positive delay indicates that the constraint is violated.A null delay corresponds to an arrival right on time.Definition 2. An attitude maneuver constraint ct: (et  , st  , min) is said to be delay-monotonic iff its delay function delay ct (⋅, ⋅) satisfies the conditions below, where ( ) is the domain of the time variable: where This definition means that, for being delay-monotonic, an attitude maneuver constraint ct: (et  , st  , min) on two successive observations  and  must verify that, on the one hand, the later the transition is triggered in et  , the greater is the delay in st  , and on the other hand the earlier the transition must end in st  , the greater the delay is.The notion of delay-monotonicity is related to the notions of monotonic constraints, defined, for instance, in [24].The delay-monotonicity of the attitude maneuver time constraint is the theoretical basis of the segment domination based pruning strategy proposed in Section 3.5.
The transition temporal constraint of the agile satellite is delay-monotonic as shown in [20].Now, we introduce a method to compute the earliest start time of the next target given the end time and the attitude of the current target.Such an evaluation is an optimization problem in itself, and an iterative method for approximating the earliest start time of the next target is illustrated in Figure 2 and formally defined in Algorithm 1.This method corresponds to the standard false position method, used to find a zero of an arbitrary function.Applied to the case of t-simple temporal constraints, the method works as follows.If leftmost point  1 = ( 1 , ( 1 )) has a negative delay ( 1 ) ≤ 0, then  1 is directly returned.Otherwise, if rightmost point  2 = ( 2 , ( 2 )) has a strictly positive delay ( 2 ) > 0, then +∞ is returned, which means there is no start time satisfying the temporal constraint.Otherwise, points  1 and  2 have opposite delaysigns (( 1 ) ≤ 0 ∧ ( 2 ) > 0) and then compute delay ( 3 ) in  3 , the -value of the intersection between segment ( 1 ,  2 ) and the -axis.See Figure 1 for an illustration.If the delay in  3 = ( 3 , ( 3 )) is negative, then the mechanism is applied again by taking  2 ←  3 , otherwise taking  1 ←  3 if the delay is positive.The procedure stops when value ( 3 ) is less than a given precision.Algorithm 1 gives a possible way to compute the earliest start time of the next target.

A Branch and Bound Algorithm
In this section, the branch and bound (B&B) algorithm proposed in this paper is introduced.The B&B algorithm is actually a combined algorithm, and different components of the algorithm will be introduced, respectively, such as the expression of a solution, the initialization method, the pruning mechanism, and current best solution updating method.

General Framework.
In this subsection, the general framework of the B&B algorithm is introduced.Components that need to be elaborated in a B&B algorithm include the branching strategy and variable branching order.
Algorithm 2 shows the general procedure of the B&B algorithm.The algorithm adopts depth-first search strategy to search the solution space.At each node of the search tree, the algorithm first computes the total profit of the corresponding solution and updates the current best solution if an improved solution is discovered.The algorithm then tests if the search space below the current node can be pruned.Specifically, three conditions are tested in the following order: (1) whether the symmetry breaking based pruning condition (lines (13)∼ (15)) is satisfied; (2) whether the segment domination based pruning condition (lines ( 16)∼( 19)) is satisfied; and (3) whether its upper bound is lower than the global lower bound (the total profit of the current best solution, lines (24)∼( 27)).Once a condition is satisfied, the subtree following the current node is pruned and the algorithm backtracks.The node needs to be extended if none of the three conditions is verified.The algorithm returns a current best solution in the first case and an optimal one in the second case.The details of the three pruning strategies (the symmetry breaking based pruning strategy, the segment domination based pruning strategy, and the bound based pruning strategy) will be presented in the following Sections 3.4∼3.6.
In order to improve the efficiency of the B&B algorithm, it is a common way to provide a good lower bound of the problem at the beginning of the algorithm.So a lookahead construction method is proposed to initialize the lower bound of the B&B algorithm, which is illustrated in Section 3.3.

Solution Space and Solution Expression.
Before presenting the search space of the B&B algorithm, two concepts are first introduced: "sequence solution" and "schedule solution."A "sequence solution" is represented by a sequence of targets whose ordering is determined, while feasibility of the solution is not tested and the execution time of the observations is not arranged yet.The "schedule solution" is, on the contrary, a feasible solution with all temporal constraints satisfied and the execution time of the observations arranged.
The B&B algorithm searches in the "sequence solution" space.Every time the B&B algorithm examines a node in the search tree where a sequence solution lies, the algorithm applies a "schedule builder" (SB) to build a "schedule solution" based on the sequence solution and then computes the total profits of the schedule solution.
SB uses a greedy construction heuristic.Given a sequence solution ps, SB considers targets in the same order as they appear in ps.SB tries to arrange the observation of each target at its earliest possible start time.If a target cannot be scheduled due to the violation of temporal constraints, SB discards it and continues to examine the next one.The schedule solution is obtained when all targets in the sequence solution are examined by SB.The total profits of the schedule solution are the sum of the profits of all selected targets.Proposition 3.There must be a sequence solution in the search space that can be mapped onto an optimal schedule solution by the proposed schedule builder.
Proof.The schedule solution space can be divided into two subsets, say 1 and 2.1 contains all solutions whose selected observations are arranged at their earliest possible start time.In other words, in these solutions, no observation can be started earlier without violating the maneuver and time window constraints.While 2 is the complementary set of 1.We note that there must be an optimal schedule solution in 1.This is because, for any solution ss  of 2, there must be a solution ss from 1 whose objective value is not worse Input: tasks // the target list atiState // the initial attitude state of the satellite psC // the current sequence solution taskOrder // the extending order of the targets psOptC // the current best sequence solution proOptC // the current best profit num // the number of look-ahead targets Output: proOpt // the optimal sequence solution psOpt // the optimal profit (1) if IsEmpty(psOptC) (2) [psOptC, proOptC] ← LookaheadCon(tasks, atiState, num); //Initialization (3) end if (4) ssC ← []; proC ← 0; (5) if ∼ IsEmpty(psC) (6) ssC ← ScheduleBuilder(psC, tasks, atiState); (7) proC ← Profit(ssC); // Computing the current profit (8) if proC > proOptC && IsConsistent(psC, ssC) (9) proOptC ← proC; psOptC ← psC; //Updating the current best plan (10) end if (11) end if (12) unscheduledTasks ← SelectTask(ssC); // Selecting the targets which still have a visible time window (13) if IsEmpty(unscheduledTasks) || ∼ IsConsistent(psC, ssC) (14) return; // Backtracking if psC is not a consistent solution (15) else (16) dominatedBool ← CurDominated(psC, psOptC, tasks) (17) if dominatedBool (18) return; // Backtracking if current solution is dominated (19) end if (20) upBound ← BasicUpBound(ssC, tasks); // Computing the upper bound (21) if proC + upBound < proOptC (22) return; // Backtracking if the upper bound of current solution is less than proOptC (23) else (24) dominatingBool ← OptDominated(psC, psOptC, tasks) ( than that of ss  .In fact, ss can be obtained by anticipating all selected observations of ss  at their earliest possible start time.We also note that there must exist a sequence solution ps in the sequence solution space (which is also the search space of B&B) that can be mapped onto ss with the proposed schedule builder.The ps is the sequence solution having the same observation list and order as in ss.

Look-Ahead Construction Method.
It is known that a good initial solution will contribute to speed up the pruning process.We propose a look-ahead construction method (LACM) to provide a good lower bound at the very beginning.Let us call the branch and bound algorithm without the initialization, pruning method, and the updating method (lines (1)∼( 3), ( 16)∼ (19), and ( 24   bound algorithm (b-B&B for short), which could rapidly find the optimal solution of a small scale problem which contains about 12 targets.We design a heuristic algorithm based on the idea of rolling planning.The algorithm decides each target to be scheduled or not progressively according to the "natural" order which sorts the targets in their increasing start time of time windows.Given the current satellite attitude state, the algorithm finds the optimal solution of the next 12 targets with b-B&B and then selects the first target in the optimal partial solution.Afterwards, the algorithm updates the satellite attitude state and looks for the next optimal solutions of the subsequent 12 targets.The algorithm stops until the last target is considered.The pseudocode of the LACM is shown in Algorithm 3. It should be noted that the while loop in the algorithm is not an infinite loop.This is because the number of the targets is limited, and each time the satellite selects a target to observe, it removes the targets that violate the temporal constraints from the candidate set.So the candidate set is shrinking during the process and the while loop stops when the candidate set becomes empty.
An example is provided to illustrate the idea of our lookahead initialization method in Figure 3.Given the current attitude state ati  0 , the algorithm looks ahead num (num = 12) targets and finds that the optimal partial solution is 3 → 7 → 9 → 6.Then it selects target 3 to be scheduled, which is contained in the optimal solution, and updates the state to atie 3 (the attitude state at the end time of target 3).

Symmetry Breaking Based Pruning Strategy.
First a definition is introduced here, which is useful for presenting the details of the symmetry breaking based pruning strategy.Definition 4. A sequence solution ps is said to be consistent with the schedule solution ss provided by the schedule builder when ss contains all the observations in ps (i.e., |ps| = |ss|, where | | is the number of observations in the solution).
As is shown in Figure 4, the sequence solution ps2 is not consistent with its schedule solution ss, as target 1 and target 8 are not included in ss due to the violation of the attitude maneuver constraint.In contrast, the sequence solution ps1 is consistent with ss since |ps1| = |ss|.
It could be learned from Figure 4 that different sequence solutions may lead to the same schedule solution using the proposed SB.In other words, there are many symmetry configurations in the B&B search tree.Examining these symmetry configurations is a waste of time and does not lead to any improvement.To avoid this, a symmetry breaking based pruning strategy (SBBPS) is proposed and used during the searching process.The idea of the SBBPS is to break symmetries by pruning the subtrees below the sequence solutions that are inconsistent with their schedule solutions.This allows us to prevent examining duplicate sequence solutions that correspond to the same schedule solution.Specifically, at each node of the B&B algorithm, given a sequence solution ps, the algorithm builds a schedule solution ss with SB.If ps is inconsistent with ss, the algorithm prunes the subtrees below the node under consideration and alters the search to another branch.In the example shown in Figure 4, the subspace under the node of ps2(3 → 7 → 9 → 1) is pruned since ps2 is inconsistent with its schedule solution.Specifically, target 1 of ps2 cannot be scheduled since time is not enough for the satellite to maneuver from target 9 to target 1 .SBBPS is used in lines ( 13)∼(15) of Algorithm 2.

Segment Domination Based Pruning Strategy.
In this subsection, we propose a segment domination based pruning strategy (short for SDBPS hereafter) to further improve the search efficiency of the B&B algorithm.Before introducing the method, we first give a set of notations regarding the sequence solution ps.Let ps  denote the th target in the sequence and "+" connect two subsequences.Then ps = ps 1,..., + ps +1,...,|ps| , ∀ ≤ |ps|.Pro(ps) returns the total profits of the schedule solution ss generated by SB.Notice that Pro(ps) ̸ = Pro(ps 1,..., ) + Pro(ps +1,...,|ps| ) if ps is inconsistent with its schedule solution.
The main idea of the SDBPS is to prune sequence solutions that are dominated by a segment of the current best feasible solution.A node psC can be pruned if there is a partial solution ps  that has a higher profit and consumes less execution time than ps and all the targets observed in ps have no visible time window after the end time of psC.Theorem 5. Given a current best sequence solution  and a current node (|| = ), psC can be pruned if ∃ ≤ || such that {( 1,..., ) > ( 1,...,−1 ) and    ≥    + (   ,    )}.

Bound Based Pruning Strategy
3.6.1.Upper Bounding Method.An efficient method is adopted to estimate the upper bound, which simply adds the profit of the current branch and the sum of profits of all the targets which still have a time window to be imaged according to the current state of the satellite.This upper bounding method is demonstrated to be effective according to our experiments.
As shown in Figure 6, the current node is psC(3 → 7 → 9 → 6).The imaging end time of the last target observation is et 6 .The target 8 and target 4 still have a time window to be observed, since et 8 and et 4 are both greater than et 6 .So the upper bound of the current node psC is ( 3 +  7 +  9 +  6 ) + ( 8 +  4 ).

Segment Replacement Based Lower Bound Updating
Method.In this subsection, a segment replacement based Upper bound of psC  lower bound updating method (short for SRBLBUM hereafter) is proposed to update the current best solution psOptC with the similar idea of the pruning method, which attempts to check whether the current node psC(|psC| = ) dominates a partial solution of the current best solution.

(24)
If there is no such , it means the current node psC could not be better than a partial solution of the current best solution psOptC.Otherwise, judge  whether to meet (25).Replace psOptC with psOptC  = psC + psOptC +1⋅⋅⋅|pOptC| , if it is satisfied, Corollary 7 illustrates that it is rational to judge whether the current branch dominates the partial current best solution via the critical dominated position .

Corollary 7.
If the current node  does not dominate the partial solution  1,..., , where  is the critical dominated position satisfying (24), there is no other position ℎ of  that makes  1⋅⋅⋅ℎ be dominated by psC.
Proof.We have Pro (psOptC 1,..., ) < Pro (psC) ≤ Pro (psOptC So there is no other ℎ that could make the partial solution psOptC 1,...,ℎ of the current best solution psOptC be dominated by the current node psC.

Experimental Study
In this section, the performance of the proposed B&B algorithm is evaluated.First, test data is designed according to the actual requirements of the AEOSs in China.And then, these data are employed to analyze the impact of different methods on the performance of the B&B algorithm.

Test Data.
The examples of China's agile satellite platform are used to validate the B&B algorithm.The maneuver process includes acceleration, uniform maneuver, and deceleration.Tranquilization time is required to reach the pointing stability allowing for good image quality as well.Maneuvers of 45 ∘ could be completed in about 60 seconds.Overall, the maneuver time is highly dependent on the rotation angle and axis.For good imaging quality, attitude is recommended to remain fixed during imaging, so the targets are all along-track strips.While the across-track tilt angle for nominal imaging acquisitions is ±30 ∘ , the satellite could be figured to achieve ±45 ∘ off-nadir pointing capability.
In general, an Earth observation satellite has an imaging time of 40 minutes in one track, and the targets are uniform distributed in both sides of the imaging track.In application, the time of the scheduling algorithm is demanded to be less than 10 minutes.In order to test the performance of the algorithm, the number of the targets ranges from 30 to 55.And other parameters such as the duration time and tranquilization time are in Table 1.The parameters for instance generation are listed in Table 1 where the left part of the table associates with scenario attributes and the right part associates maneuverability.The number of targets ranges from 30 to 55, and targets are uniform distributed in both sides of the imaging track which means each target has an imaging time window.The duration of the targets is a Gauss distribution with a mean value of 15 and a variance of 9.The profit of the targets is a Gauss distribution whose mean value is a function of the duration; this means a more timeconsuming target may have a higher profit.The satellite has a maximum maneuver speed at 1 ∘ /s, an acceleration speed at 0.5 ∘ /s 2 , and a deceleration speed at 0.25 ∘ /s 2 .A tranquilization time of 5 s is needed after maneuver.
A total number of 260 instances were used to test our B&B algorithm, where, for each of the 26 different numbers of targets (from 30 to 55, see Table 1), 10 random instances were generated.The B&B algorithm is coded in MATLAB 2014a and run on a computer with a 2.4 GHz i5 CPU and 3.79 GB RAM.

Results
. This subsection analyzes the effect of different mechanisms, such as initialization solution, segment domination based pruning strategy, and best solution updating method, on the efficiency of the algorithm at different study scales.As the B&B algorithm will always find the optimal solution of the problem, we use the time cost as a measure to evaluate the efficiency of an algorithm.
The effects of different mechanisms on the algorithm efficiency are analyzed by comparing the B&B algorithm with the incomplete algorithms which lack a single mechanism.In the experiment, 10 experiments are randomly generated for each study scale.And then, the average time cost and the maximum time cost are used to analyze the effects of different mechanisms on the efficiency of the algorithm.
Three incomplete algorithms, noninitialization algorithm, nonpruning algorithm, and nonupdating algorithm, are designed for each mechanism.
The noninitialization algorithm, which is referred to as "nonInit," means that the algorithm has no initial solution before searching; that is, the current best solution is empty and the current best profit is 0 at the beginning of the search.However, the algorithm has the pruning method and best solution updating method corresponding to Sections 3.4, 3.5, and 3.6.
The nonpruning algorithm, which is referred to as "non-Prune," only adopts the pruning strategy in Sections 3.4 and 3.6, which prune a branch once the branch is found to be inconsistent, and does not use the pruning strategy SDBPS designed in Section 3.5.The initial solution of the algorithm is generated by the LACM of Section 3.3.And the SRBLBUM in Section 3.6.2 is used.
The nonupdating algorithm, which is referred to as "nonUpdate," is that the algorithm does not adopt the SRBLBUM of Section 3.6.2.The initial solution of the algorithm is generated by the LACM of Section 3.3, and the pruning strategies of Sections 3.4 and 3.5 are adopted.
The time cost statistics of the examples are shown in Figure 8 and Table 2.The left column of Table 2     The average time cost of the B&B algorithm is less than 150 s when there are 55 targets, which indicates that the algorithm has a high efficiency.Experiments show that the algorithm can effectively deal with temporal constraints composed of the time-dependent maneuvering and imaging time windows.In the extreme case of the experiments, the maximum time cost of the B&B algorithm is 587.6 s, not more than 10 min.This indicates that the B&B algorithm meets the needs of the use of the agile satellites, and the algorithm could find the optimal solution of a problem that is about twice the size of the actual demand.The effects of the different mechanisms are analyzed in the following.
The time costs of all the algorithms become larger with the increase of the size of the examples, but the growth rates of each algorithm are not the same, which shows that the robustness of each algorithm to the degree of difficulty is not the same.It can be seen from Figure 8 that the B&B algorithm grows the slowest, followed by nonupdating algorithm, noninitialization algorithm, and nonpruning algorithm.This phenomenon indicates that the interaction of various solving strategies can help to increase the stability of the algorithm to difficult problems.
It can be seen from Table 2 that the time cost of the nonpruning algorithm rises a lot with the increase of the size of the examples.When the size of the example reaches 35, the average time of the nonpruning algorithm has reached 6244.71 s, but the average time cost of the B&B algorithm is only 22.78 s.This means that the pruning strategy SDBPS in Section 3.5 can greatly improve the efficiency of the algorithm.
The change tendency of the time cost of the noninitialization algorithm is similar to that of the B&B algorithm.The difference between the two average time costs also rises with the increase of the example size.This shows that as the size of the example increases, the role of the initialization method increases.When the study size is around 55 targets, the time cost of the noninitialization algorithm is about two times that of the B&B algorithm; that is, the optimal solution time cost increases by about 219% in the case of no initialization method.This verifies that it could accelerate the algorithm where a good lower bound is provided at the beginning of the algorithm.
When the number of targets is less than 50, nonupdating algorithm and the B&B algorithm are almost the same.When the scale of the problem is larger than 50, the time difference between the two is gradually increased.According to the analysis of the latter, we can see that the number of successful updating times is not a lot, but there is no small effect on the searching efficiency, and the time cost will increase by 20% when the SRBLBUM in Section 3.6.2 is not adopted.
With the increase of the difficulty of the problem, the difference of the time cost between different algorithms becomes larger, which means the effect of each mechanism on the solution efficiency is increasing when the problem is hard to solve.The B&B algorithm has the best performance under different scale targets, followed by nonupdating algorithm, noninitialization algorithm, and nonpruning algorithm.So the SDBPS in Section 3.5 contributes the most, followed by the LACM in Section 3.3 and finally the SRBLBUM in Section 3.6.2.
The difference of the maximum time cost between the incomplete algorithm and the B&B algorithm is larger than the difference of the average time cost between the algorithms, indicating that the B&B algorithm has better stability.When the time cost of the B&B algorithm is large, the difference between each incomplete algorithm and the B&B algorithm is also large, which indicates that the effect of each mechanism is more obvious in the face of difficult problems.
To further analyze the effect of SDBPS and SRBLBUM on the efficiency of the solution, we also count the number of successes of various methods in different algorithms as shown in Figure 9.
The number of successful SDBPS increases with the increase of the size of the problem, and the change trend is similar to the time cost.The more complex the problem is, the greater the dependence of the pruning strategy is, which verifies that the pruning strategy SDBPS plays a more important role in complex problems in the preceding paper.The number of successful SDBPS of the noninitialization algorithm is the highest, which is about 25000 when there are 53 targets, followed by the nonupdating algorithm and the B&B algorithm.This could be caused by the pruning position of the B&B algorithm that is closer to the root node.Further explanation could be that the other strategies are helpful to pruning earlier, and thus the searching efficiency is improved.
The number of successful SDBPS and SRBLBUM is higher in the noninitialization algorithm, which means that SDBPS and SRBLBUM play a more important role in accelerating the optimal solution search.The number of successful SRBLBUM in the B&B algorithm is not large but has a slowly rising trend.Combined with the solution time, we can tell that it brings a good effect to the improvement of the searching efficiency, although there is only a small amount of successful SRBLBUM.When the problem is complex, SRBLBUM could save about 20% of the searching time.

Conclusion
This paper considers a new AEOSS problem with timedependent temporal constraints which was not investigated in the literature.To address this new problem, we proposed a highly efficient branch and bound (B&B) algorithm to find its optimal solution.The proposed B&B algorithm uses a look-ahead construction method to generate a high quality initial lower bound at the very beginning.It is also equipped with three complementary pruning strategies, namely, the symmetry breaking based pruning strategy, the segment domination based pruning strategy, and the bound based pruning strategy.The combined use of these three pruning strategies greatly reduces the search space and accelerates the search process.To validate the efficacy of the proposed algorithm, we conducted empirical experiments on a set of instances that are closely related to the real-life scenario.Computational results disclosed that the proposed B&B is highly efficient which meets engineering demand very well.Indeed, it is able to solve instances with 55 targets using only 164 seconds on average and 588 seconds in maximum.Additional experiments were also conducted to evaluate the effectiveness of three algorithm ingredients: the look-ahead construction method (LACM), the segment domination based pruning strategy (SDBPS), and the segment replacement based lower bound updating method (SRBLBUM, which is used within the bound based pruning strategy).The results revealed that all of the three ingredients contribute to improve the performance of the B&B algorithm, and the most contributive one is SRBLBUM, followed by LACM and finally SDBPS.
ws  : the start time of the time window of target  we  : the end time of the time window of target  dur  : the duration time of target  st  : the start imaging time of target  et  : the end imaging time of target  atis  : the attitude of the start imaging time of target , including the pitch, roll, and azimuth atie  : the attitude of the end imaging time of target , including the pitch, roll, and azimuth min(⋅, ⋅): the minimum transition time between two attitudes NT: the total number of targets : the set of all combinations of targets.Objective function is max =NT ∑ =1   ⋅   .

Figure 4 :
Figure 4: Sequence solution and scheduling builder.

Figure 5 :
Figure 5: Schematic diagram of the segment domination based pruning strategy.

Figure 6 :
Figure 6: Schematic diagram of the upper bound.

Figure 7 :
Figure 7: Schematic diagram of the segment replacement based lower bound updating method.
Figure 8(a) shows the average time cost of different algorithms under different scale cases; Figure 8(b) shows the maximum time cost.By comparing different incomplete

Figure 8 :
Figure 8: The time cost of different algorithms.

Figure 9 :
Figure 9: The number of successful pruning and updating attempts.
the scheduling problem with the development of the satellite platform.Therefore, temporal constraints are imperative in the agile satellite scheduling problem considered in this paper, which include visible time window constraint and time-dependent transition constraint.
is the number of targets of the examples.The statistical data of the nonpruning algorithm is only shown in the table because the time cost of the algorithm is too large to test all the examples.However, the available data in Table 2 are sufficient to analyze the effect of the pruning mechanism on the solution efficiency.

Table 2 :
The time costs of different algorithms.