From: An emergency task autonomous planning method of agile imaging satellite
Algorithm III | General emergency task planning & insertion algorithm |
---|---|
1 | Start Procedure |
2 | Initialize the sets EM←Emergency Tasks |
the earliest start time ES, the latest end time LE, | |
loss[i][j]←loss of task i to task j, losspath[]={}, | |
mintime=0, | |
3 | Generate a loss matrix D[] |
4 | if loss[i][l] or loss[l][k] > loss[i][j] |
5 | Put the path number in tabu list |
6 | end if |
7 | if Dn< >Dn-1 then |
8 | for i in D and not in tabu list do |
9 | for j in D and not in tabu list do |
10 | if loss[i][l]+loss[l][j]<loss[i][j] then |
11 | D[i][j]=loss[i][l]+loss[l][j] |
12 | end if |
13 | end for |
14 | end for |
15 | end if |
16 | Sort the loss values in ascending order→ L[i] |
17 | Get time spent on each run→ Time[i] |
18 | for index i in L do |
19 | if mintime>LE-ES+σ then |
20 | Select loss path i |
21 | loop for |
22 | end if |
23 | end for |
24 | Insert emergency tasks in the corresponding position |
25 | End Procedure |