| Step 1: Set the DE parameters and CR = 0.8. |
| Step 2: Initialize the population of m individuals where each decision |
| variable , , , and of is set randomly within the interval [1, ]. All |
| values must be integers. Considering that and . |
| Step 3: Evaluate the objective value J() for all m individuals, and determining the showing |
| the best fitness value, such that . |
| Step 4: Generate the trial population : |
| for (; ; ++) |
| do = floor(rand(); while (); |
| do = floor(rand(); while (() or ()); |
| jrand = floor(rand()); |
| for (; ; ++) // generate a trial vector |
| if (rand(0,1)<=CR or = jrand) |
| ; |
| else |
| ; |
| end if |
| end for |
| end for |
| Step 5: Evaluate the fitness values () of all trial individuals. Check all |
| individuals. If a candidate parameter set is not physically plausible, i.e. out of the |
| range [], then an exaggerated cost function value is returned. This aims to |
| eliminate ‘‘unstable” individuals. |
| Step 6: Select the next population : |
| for (; ; ++) |
| if |
| |
| else |
| |
| end if |
| end for |
| Step 7: If the iteration number () is met, then the output is the solution (an actual |
| ellipse contained in the image), otherwise go back to Step 3. |