Begin |
Step 1: Initialization. Set the generation counter ; Initialize the population of NP bats |
randomly and each bat corresponding to a potential solution to the given |
problem; define pulse frequency ; set loudness , the initial velocities and |
pulse rate ; set weighting factor . |
Step 2: Generating rotation coordinate system. Transform the original coordinate |
system into new rotation coordinate whose horizontal axis is the connection |
line from starting point to target point according to (1); |
convert battlefield threat information to the rotation coordinate system and |
divide the axis into equal partitions. Each feasible solution, denoted |
by P , is an array indicated by the composition of |
coordinates which are the floating-point numbers |
Step 3: Evaluate the threat cost J for each bat in P by (4) |
Step 4: while The halting criteria is not satisfied or MaxGeneration do |
Sort the population of bats P from best to worst by order of threat cost |
for each bat; |
for : NP (all bats) do |
Select uniform randomly |
|
|
|
if (rand ) then |
|
else |
|
end if |
Evaluate the fitness for the offsprings , , |
Select the offspring with the best fitness among the offsprings |
, , |
if (rand ) then |
; |
end if |
end for |
Evaluate the threat cost for each bat in by (4). |
Sort the population of bats from best to worst by order of threat cost |
for each bat; |
; |
Step 5: end while |
Step 6: Inversely transform the coordinates in final optimal path into the original |
coordinate, and output |
End. |