Pseudo (MSD-SSA)

Initialize the salp population x i ( i = 1 , 2 , , N ) considering upper and lower

Calculate the fitness of each salp

While (end condition is not satisfied)

F = the best salp

Equation (3) Calculate c1

if 0 t < T / 2

for each salp ( x i )

if (leaders)

Equations (7)-(10) calculates the random step of Levy flight

Update the position of the search agents by Equation (14) or Equation (15)

Equation (12) leader crossover operator operation

Greedy algorithm selects better leaders

else (followers)

Update the position of the search agents by Equation (17)

end

else T / 2 t < T

for each salp ( x i )

if (leaders)

Calculate the random step of Brownian motion

Update the position of the search agents by Equation (16)

else (followers)

Update the position of the search agents by Equation (17)

end

end

Amend the salp based on the upper and lower bounds of variables

end

return F