Research Article
A Branch and Bound Algorithm for Agile Earth Observation Satellite Scheduling
Algorithm 2
The branch and bound algorithm.
| 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); |
|