|
Algorithm 1: Solving the energy-efficient collision-free machine/AGV scheduling problem in the virtual planning layer |
| 1: |
task state = new |
| 2: |
if AGV state = idle |
| 3: |
if assigned then task state = ready |
| 4: |
initialize the parameters of energy-efficient collision-free machine/AGV scheduling problem |
| 5: |
initialize the parameters of APC |
| 6: |
initialize the parameters of the solving system |
| 7: |
encode the APC individual by Equation (38) |
| 8: |
select fitness function by Equations (37) and (12) |
| 9: |
for ite = 1 to
|
| 10: |
|
produce the random seeds by
|
| 11: |
|
produce seeds from the previous fruits |
| 12: |
|
calculate fitness by Equations (37) and (12) |
| 13: |
|
choose the best solutions by
|
| 14: |
|
choose the elite individual with the highest fitness |
| 15: |
|
choose a fruit through parthenogenesis |
| 16: |
|
produce fruits through social learning by
|
| 17: |
|
end justification by
|
| 18: |
end for |
| 19: |
output the optimal solution in the virtual planning layer |
| 20: |
if scheduled then task state = performing |
| 21: |
if interrupted then task state = waiting |
| 22: |
if completed then task state = exit |