Input:Combat scenario parameters, including M, N, , , and . |
The first three best solutions in the tth iteration, , and . |
The control parameter a. |
Output:The assignment scheme of in the (t+1)th iteration, |
Procedures:Generate a random number between (0,1), denoted by rand |
if rand ≤ a // the roulette wheel selection method |
Calculate the fitness value of , and , denoted by , and in turn; |
Calculate , (); |
Set cum=0. |
Generate a random number between (0,1), denoted by r0 |
for l=α, β, δ |
cum= cum + |
if r0 ≤ cum |
; |
break |
endif |
endfor |
else // the reassignment method |
Set q_max= ; |
for j=1→N |
if q_max<=0 // determine if all weapons of have been assigned |
break // terminates the execution of the for loop, i.e. for j=1→N |
endif |
if E(i, j))==1 // can attack |
Generate a random integer, denoted by n_rand, between 1 and q_max; |
Assign n_rand weapons to ; |
Update q_max= q_max-n_rand; |
endif |
endfor |
endif |