Discrete Dynamics in Nature and Society

Discrete Dynamics in Nature and Society / 2017 / Article

Research Article | Open Access

Volume 2017 |Article ID 7345941 | 15 pages | https://doi.org/10.1155/2017/7345941

A Branch and Bound Algorithm for Agile Earth Observation Satellite Scheduling

Academic Editor: Filippo Cacace
Received15 May 2017
Revised25 Jul 2017
Accepted31 Jul 2017
Published07 Sep 2017

Abstract

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 efficient enough for engineering application. In particular, it is able to solve instances with 55 targets to optimality within 164 seconds on average. Furthermore, we carried out additional experiments to analyze the contribution of each key algorithm ingredient.

1. 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. [57] 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 near-optimal 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-as-needed 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 indicator-based 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 [1317].

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.

2. Agile Earth Observing Satellite Scheduling Problem

2.1. Problem Description

It is assumed that the resource constraints such as memory and energy are no longer the tight constraints of 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.

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

2.2. 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 : the start time of the time window of target : the end time of the time window of target : the duration time of target : the start imaging time of target : the end imaging time of target : the attitude of the start imaging time of target , including the pitch, roll, and azimuth: the attitude of the end imaging time of target , including the pitch, roll, and azimuth: the minimum transition time between two attitudesNT: the total number of targets: the set of all combinations of targets.

Objective function is

Decision variables are

Constraints are

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 ; otherwise; takes a value of 1 if target is executed after target and 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.

2.3. The Characteristics of the Function

In this subsection, we introduce how to calculate the function and the method to compute the earliest start time of a target on the basis of the analysis of the characteristics of .

The function 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 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).

Definition 1. The delay function associated with an attitude maneuver constraint is function defined by , where .
Informally, is the delay obtained in if a transition in minimum time from to is triggered at time . This delay corresponds to the difference between the minimum arrival time associated with the transition and the required arrival time . A strictly negative delay corresponds to transition ending before deadline , 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 is said to be delay-monotonic iff its delay function 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 on two successive observations and must verify that, on the one hand, the later the transition is triggered in , the greater is the delay in , and on the other hand the earlier the transition must end in , 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 has a negative delay , then is directly returned. Otherwise, if rightmost point has a strictly positive delay , then is returned, which means there is no start time satisfying the temporal constraint. Otherwise, points and have opposite delay-signs () and then compute delay in , the -value of the intersection between segment and the -axis. See Figure 1 for an illustration. If the delay in is negative, then the mechanism is applied again by taking , otherwise taking if the delay is positive. The procedure stops when value is less than a given precision. Algorithm 1 gives a possible way to compute the earliest start time of the next target.

Input: // the time window of the start time
// the end time of the previous target
// a maximum number of iterations
pre // a desired precision
output: // the earliest start time of the next target
(1) ; if then return
(2) ; if then return +∞
(3) to maxIter
(4)
(5)
(6) if
(7) else if then
(8) else
(9)
(10) return

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

3.1. 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: whether the symmetry breaking based pruning condition (lines (13)~(15)) is satisfied; whether the segment domination based pruning condition (lines (16)~(19)) is satisfied; and 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.

Input: // the target list
// the initial attitude state of the satellite
// the current sequence solution
// the extending order of the targets
// the current best sequence solution
// the current best profit
// the number of look-ahead targets
Output: // the optimal sequence solution
// the optimal profit
(1)
(2) //Initialization
(3)
(4);
(5)
(6);
(7); // Computing the current profit
(8)
(9); ; //Updating the current best plan
(10)
(11)
(12); // Selecting the targets which still
have a visible time window
(13)
(14) if is not a consistent solution
(15)
(16)
(17)
(18)
(19)
(20); // Computing the upper bound
(21)
(22); // Backtracking if the upper bound of current solution is less than
(23)
(24)
(25) //Updating the current best solution
(26);
(27)
(28); // Determining the number of targets that
have not been tried
(29)for to numOfNext
(30);
(31)
(32)
(33);
(34)end if
(35)end if
(36);
(37);

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 look-ahead construction method is proposed to initialize the lower bound of the B&B algorithm, which is illustrated in Section 3.3.

3.2. 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 . 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 and . 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 is the complementary set of . We note that there must be an optimal schedule solution in . This is because, for any solution ss′ of , there must be a solution ss from whose objective value is not worse 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.

3.3. 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)~(27)) a basic branch and 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.

Input: // the target list
// the initial attitude state of the satellite
// the number of look-ahead targets
Output: // the sequence solution
// the profit of the sequence solution
(1) ;
(2) ;
(3) ;
(4) ;
(5) ~isempty
(6)
(7)
(8) ; // Extracting at most num near targets
(9) ;
(10)
(11) ;
(12) ;

An example is provided to illustrate the idea of our look-ahead initialization method in Figure 3. Given the current attitude state , the algorithm looks ahead targets and finds that the optimal partial solution is . Then it selects target 3 to be scheduled, which is contained in the optimal solution, and updates the state to (the attitude state at the end time of target 3).

3.4. 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 is said to be consistent with the schedule solution provided by the schedule builder when contains all the observations in (i.e., , where is the number of observations in the solution).

As is shown in Figure 4, the sequence solution is not consistent with its schedule solution , as and are not included in due to the violation of the attitude maneuver constraint. In contrast, the sequence solution is consistent with since .

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 is pruned since is inconsistent with its schedule solution. Specifically, of cannot be scheduled since time is not enough for the satellite to maneuver from to . SBBPS is used in lines (13)~(15) of Algorithm 2.

3.5. 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 . Let denote the target in the sequence and “+” connect two subsequences. Then . returns the total profits of the schedule solution generated by Notice that if 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 can be pruned if there is a partial solution that has a higher profit and consumes less execution time than and all the targets observed in have no visible time window after the end time of .

Theorem 5. Given a current best sequence solution and a current node , psC can be pruned if such that and .

Proof. indicates that is dominated by in terms of total profit and ensures the subsequence is consistent with its schedule solution.

As is shown in Figure 5, the current node is and the current best solution is . The target with “” means it is in the current best solution . If (15) and (16) are simultaneously true, is worse than (which is for sure consistent with its schedule solution). For this reason, the current node can be pruned. Equation (16) also requires that the imaging start time of in must be earlier than the imaging start time of in

To test whether the condition of SDBPS is verified for the current sequence solution , the algorithm identifies a critical position of that satisfies

If there is no such , it means an improved best solution is found and the current best solution is updated with . Otherwise, the algorithm tests (18) and prunes if it is true

The following corollary justifies the practice of judging the domination of the current sequence solution with respect to the current best solution via the critical position .

Corollary 6. If does not dominate the current sequence solution , no other subsequences of can dominate