| Algorithm 1: The BROMLDE Algorithm Procedure |
| Input: Objective function:, Search-space limits: (), Population size: , Dimension of problem:, Maximal function evaluations: Jumping rate: Output: Global minimum Global minimizer 1 Set the current function evaluations 2 Set the population bounds randomly generate an initial population 3 for to do //ROML population initialization (generation g = 0) 4 5 6 7 Check the bounds in the current generation by Equation (17) 8 end 9 Get population by selecting fittest points from 10 11 Get and by Equations (20)–(22) 12 while do //Main loop(generation g > 0) 13 //Generate mutation matrix 14 for to do 15 16 Generate , where 17 Generate 18 switch do 19 ; 20 21 22 end 23 ; 24 end 25 Calculate the evolutionary step size by Equation (25) 26 Generate the trial vector by Equations (26) and (27) and control the boundaries of by Equation (28) 27 Update population by Equations (29) and (30) 28 29 if then //ROML population with generation jumping 30 Update the bounds by calculating the smallest and biggest values of all dimensions in the population 31 for to do 32 33 34 35 Check the bounds in the current generation by Equation (17) 36 end 37 Select fittest individuals from and update the population by Equation (33) 38 39 end 40 Update and by Equation (34) 41 end |