# A Three Stage Optimal Scheduling Algorithm for AGV Route Planning Considering Collision Avoidance under Speed Control Strategy

^{*}

## Abstract

**:**

## 1. Introduction

## 2. Problem Formulation

- (1)
- AGV route planning in the static environment

- (2)
- AGV route planning in the dynamic environment

## 3. Modeling

#### 3.1. Assumptions

- (1)
- In order to simplify the modeling, the route of AGV is only unidirectional, so there will be no opposite conflict.
- (2)
- Only one AGV can be driving in any road section.
- (3)
- The actual loading and unloading time of a container by QC follows the normal distribution of (120, 20), when the standard operation time of loading and unloading each container by the QC is about 120 s.
- (4)
- Each task can only be completed by one AGV, and each AGV can only load one container at a time.
- (5)
- The berths and yard blocks served by an AGV are not fixed.
- (6)
- Ignore the weather, AGV damage, and other force majeure factors.
- (7)
- The number of AGV and QC is known.
- (8)
- The number of tasks and the corresponding loading and unloading blocks of each task are known.

#### 3.2. AGV Route Modeling

Set | |

$Q$ | Set of QCs’ nodes |

$B$ | Set of blocks’ nodes |

$N$ | Set of nods in the route network, $n\in N$. |

$E$ | Set of sections of the route between node a and node b, ${e}_{ab}\in E$. |

$K$ | Set of AGVs, $\mathrm{k}\in K$. |

$J$ | Set of containers, $J={J}^{+}+{J}^{-}$ |

${J}^{+}$ | Set of loading containers |

${J}^{-}$ | Set of unloading containers |

$\overline{J}$ | Set of all tasks, $\overline{J}=\{I+F\}+J$, $I$ is virtual started task, $F$ is virtual finished task |

Parameter | |

${T}_{qb}$ | Set of traveling time between QC q and block b |

${\mathrm{qt}}_{ij}$ | The travelling time of AGVq transport task i and j |

${\mathrm{t}}_{qj}$ | The travelling time of AGVq transport task i |

${s}_{qij}$ | The travelling time of AGVq transport task I and task j on empty state |

${h}_{qi}$ | The waiting time of AGVq at QC i |

${h}_{bi}$ | The waiting time of AGVq at block b |

$g{p}_{i}$ | The earliest time that the AGV can be operated at the QC for task i |

$q{r}_{j}$ | Time when quayside crane completes container task j, $q{r}_{j}=\{\begin{array}{l}q{p}_{j},if\mathrm{h}=\mathrm{I}\\ q{r}_{i}+q{t}_{ij},else\end{array}$ |

$L$ | The length of AGV |

${L}_{s}$ | Safe distance to be kept by AGV when travelling or stopping for waiting |

${v}_{0}$ | AGV’s normal constant speed |

${v}_{1}$ | AGV deceleration speed |

$a$ | The acceleration of AGV acceleration and deceleration under speed control |

${t}_{1}$ | The speed after AGV decelerates from normal speed |

Decision variable: | |

${Z}_{ij}$ | 1, if the route path from node i to node j; 0, otherwise. |

${\mathrm{X}}_{abk}$ | 1, if AGV k chooses the route path from node a to node b; 0, otherwise. |

${y}_{ijk}$ | 1, AGV k completes task j after completing task i; 0, otherwise. |

#### 3.3. AGV Task Assignment Modeling

Set | |

$J$ | Set of containers, $J={J}^{+}+{J}^{-}$ |

${J}^{+}$ | Set of loading containers |

${J}^{-}$ | Set of unloading containers |

$\overline{J}$ | Set of all tasks, $\overline{J}=\{I+F\}+J$, $I$ is virtual started task, $F$ is virtual finished task |

${T}_{qb}$ | Set of traveling time between QC q and block b |

Parameter | |

${\mathrm{qt}}_{ij}$ | The travelling time of AGVq transport task i and j |

${\mathrm{t}}_{qj}$ | The travelling time of AGVq transport task i |

${s}_{qij}$ | The travelling time of AGVq transport task I and task j on empty state |

${h}_{qi}$ | The waiting time of AGVq at QC i |

${h}_{bi}$ | The waiting time of AGVq at block b |

$g{p}_{i}$ | The earliest time that the AGV can be operated at the QC for task i |

$q{r}_{j}$ | Time when quayside crane completes container task j, $q{r}_{j}=\{\begin{array}{l}q{p}_{j},if\mathrm{h}=\mathrm{I}\\ q{r}_{i}+q{t}_{ij},else\end{array}$ |

$L$ | The length of AGV |

${L}_{s}$ | Safe distance to be kept by AGV when travelling or stopping for waiting |

${v}_{0}$ | AGV’s normal constant speed |

${v}_{1}$ | AGV deceleration speed |

${v}_{2}$ | AGV acceleration speed |

$a$ | The acceleration of AGV acceleration and deceleration under speed control |

${t}_{1}$ | The speed after AGV decelerates from normal speed |

$L$ | The length of AGV |

${L}_{s}$ | Safe distance to be kept by AGV when travelling or stopping for waiting |

${v}_{0}$ | AGV’s normal constant speed |

${v}_{1}$ | AGV deceleration speed |

Variable | |

${y}_{ijk}$ | 1, AGV k completes task j after completing task i; 0, otherwise. |

- (1)
- AGV arrived late and the QC waited for AGV. ${h}_{qi}=(q{r}_{j}+q{t}_{ji})-q{p}_{i}$
- (2)
- AGV arrives early and needs to wait for the QC. ${h}_{qi}=q{p}_{i}-(q{r}_{j}+q{t}_{ji})$

#### 3.4. AGV Collision Avoidance Control Modeling

## 4. Solution Technology

#### 4.1. GA for the Assignment Model

#### 4.1.1. Coding of Chromosomes

#### 4.1.2. Fitness Function

#### 4.1.3. Selecting and Crossing

#### 4.1.4. Chromosomal Mutation

#### 4.2. Simulation Considering AGV Collision Avoidance Control

- (1)
- Entity: 1000 containers; three QC, five YCs and five Blocks.
- (2)
- Events: container generation, container unloading operation, AGV pick-up operation, AGV transportation, YCs loading and unloading operation, etc.
- (3)
- Control logic: sensor_ ctrl, conflict, exit_ ctrl, container_ in, container_ Out, etc.

#### 4.2.1. Simulation Experiment Observation Index

- (1)
- The makespan for AGV to complete loading and unloading tasks;
- (2)
- Number of collision avoidance control strategies under speed control strategy;
- (3)
- Utilization of AGVs

#### 4.2.2. Simulation Experimental Parameters

## 5. Analysis of Case Study

#### 5.1. Parameter Setting

#### 5.2. Analysis of Results

## 6. Conclusions

## Author Contributions

## Funding

## Data Availability Statement

## Acknowledgments

## Conflicts of Interest

## References

- Review of Maritime Transport 2021|UNCTAD. Available online: https://unctad.org/webflyer/review-maritime-transport-2021 (accessed on 23 October 2022).
- Liang, C.J.; Huang, Y.F.; Yang, Y. A quay crane dynamic scheduling problem by hybrid evolutionary algorithm for berth allocation planning. Comput. Ind. Eng.
**2009**, 56, 1021–1028. [Google Scholar] [CrossRef] - Zhang, Y.; Liang, C.J.; Shi, J.; Lim, G.; Wu, Y.W. Optimal Port Microgrid Scheduling Incorporating Onshore Power Supply and Berth Allocation Under Uncertainty. Appl. Energy
**2022**, 313, 118856. [Google Scholar] [CrossRef] - Qiu, L.; Hsu, W.J.; Huang, S.; Wang, H. Scheduling and routing algorithms for AGVs: A survey. Int. J. Prod. Res.
**1999**, 40, 745–760. [Google Scholar] [CrossRef] - Chen, X.C.; He, S.W.; Zhang, Y.X.; Tong, L.; Shang, P.; Zhou, X.S. Yard crane and AGV scheduling in automated container terminal: A multi-robot task allocation framework. Transp. Res. Part C Emerg. Technol.
**2020**, 114, 241–271. [Google Scholar] [CrossRef] - Kim, K.H.; Bae, J.W. A Look-Ahead Dispatching Method for Automated Guided Vehicles in Automated Port Container Terminals. Transp. Sci.
**2004**, 38, 224–234. [Google Scholar] [CrossRef] - Xin, J.B.; Negenborn, R.R.; Lodewijks, G. Rescheduling of interacting machines in automated container terminals. IFAC Proc.
**2014**, 47, 1698–1704. [Google Scholar] [CrossRef] [Green Version] - Confessore, G.; Fabiano, M.; Liotta, G. A network flow based heuristic approach for optimising AGV movements. J. Intell. Manuf.
**2013**, 24, 405–419. [Google Scholar] [CrossRef] - Errico, F.; Desaulniers, G.; Gendreau, M.; Rei, W.; Rousseau, L. A priori optimization with recourse for the vehicle routing problem with hard time windows and stochastic service times. Eur. J. Oper. Res.
**2016**, 249, 55–66. [Google Scholar] [CrossRef] - Wu, W.M.; Xing, Z.C.; Chen, X.Y.; Zhang, T.Q.; Niu, H.Y. A neural network based multi-state scheduling algorithm for multi-AGV system in FMS. J. Manuf. Syst.
**2022**, 64, 344–355. [Google Scholar] - Li, J.X.; Cheng, W.J.; Lai, K.K.; Ram, B. Multi-AGV Flexible Manufacturing Cell Scheduling Considering Charging. Mathematics
**2022**, 10, 3417. [Google Scholar] [CrossRef] - Liu, J.E.; Zhang, S.; Liu, H. Research on AGV Path Planning under “Parts-to-Picker” Mode. Open J. Soc. Sci.
**2019**, 7, 1–14. [Google Scholar] [CrossRef] - Zhong, M.S.; Yang, Y.S.; Dessouky, Y.; Postolache, O. Multi-AGV scheduling for conflict-free path planning in automated container terminals. Comput. Ind. Eng.
**2020**, 142, 106371. [Google Scholar] [CrossRef] - Chen, J.; Zhang, X.; Peng, X.; Xu, D.; Peng, J. Efficient routing for multi-AGV based on optimized Ant-agent. Comput. Ind. Eng.
**2022**, 167, 108042. [Google Scholar] [CrossRef] - Xing, L.; Liu, Y.; Li, H.; Wu, C.-C.; Lin, W.-C.; Chen, X. A Novel Tabu Search Algorithm for Multi-AGV Routing Problem. Mathematics
**2020**, 8, 279. [Google Scholar] [CrossRef] [Green Version] - Homayouni, S.M.; Tang, S.H.; Ismail, N.; Ariffin, M.K.A.M.; Samin, R. A hybrid genetic-heuristic algorithm for scheduling of automated guided vehicles and quay cranes in automated container terminals. In Proceedings of the 2009 International Conference on Computers & Industrial Engineering, Troyes, France, 6–9 July 2009; pp. 96–101. [Google Scholar]
- Homayouni, S.M.; Tang, S.H.; Ismail, N.; Ariffin, M.K.A. Using simulated annealing algorithm for optimization of quay cranes and automated guided vehicles scheduling. Int. J. Phys. Sci.
**2011**, 27, 6286–6294. [Google Scholar] [CrossRef] - Jerzy, Z.; Waldemar, M. Structural online control policy for collision and deadlock resolution in multi-AGV systems. J. Manuf. Syst.
**2021**, 60, 80–92. [Google Scholar] - Liu, Y.; Luo, Z.; Liu, Z.; Shi, J.; Cheng, G. Cooperative routing problem for ground vehicle and unmanned aerial vehicle: The application on intelligence, surveillance, and reconnaissance missions. IEEE Access
**2019**, 7, 63504–63518. [Google Scholar] [CrossRef] - Umar, A.; Ariffin, M.K.A.; Ismail, N.; Tang, S.H. Hybrid multiobjective genetic algorithms for integrated dynamic scheduling and routing of jobs and automated-guided vehicle (AGV) in flexible manufacturing systems (FMS) environment. Int. J. Adv. Manuf. Technol.
**2015**, 50, 1–15. [Google Scholar] [CrossRef] - Dimitri, A.; Loiseau, J.J.; Rosa, A. A Temporized Conflict-Free Routing Policy for AGVs. IFAC-Pap. Online
**2017**, 50, 11169–11174. [Google Scholar]

**Figure 3.**Flowchart of the methodology combining GA with simulation for the proposed three-stage optimization model.

$j\in {J}^{+}$ | $j\in {J}^{-}$ | |

$i\in {J}^{+}$ | $q{t}_{ij}={h}_{qi}+{s}_{ij}+{h}_{bi}+{t}_{j}$ | $q{t}_{ij}={h}_{qi}+{s}_{ij}$ |

$i\in {J}^{-}$ | $q{t}_{ij}={h}_{qi}+{t}_{i}+{h}_{bi}+{s}_{ij}+{h}_{bj}+{t}_{j}$ | $q{t}_{ij}={h}_{qi}+{t}_{i}+{h}_{bi}+{s}_{ij}$ |

$j\in {J}^{+}$ | $j\in {J}^{-}$ | |

$i\in {J}^{+}$ | ${s}_{ij}=t({q}_{i},{b}_{j})$ | ${s}_{ij}=t({q}_{i},{b}_{j})$ |

$i\in {J}^{-}$ | ${s}_{ij}=t({q}_{i},{b}_{j})$ | ${s}_{ij}=t({b}_{i},{q}_{j})$ |

No. | Icon | Object | Function |
---|---|---|---|

1 | Entity | Moving object unit for simulation modeling of container entity | |

2 | Trolley | Moving object unit for AGV simulation modeling | |

3 | Source | Generation unit for container generation | |

4 | Track | Track unit for road simulation modeling | |

5 | storage | A storage unit for simulation modeling of container locations in a storage yard | |

6 | Methods | An information unit for editing and controlling active events | |

7 | Generator | The firing unit, which is used to invoke the method | |

8 | Dialog | Dialog encapsulation for simulation models |

Distance | QC1 | QC2 | QC3 | Y1 | Y2 | Y3 | Y4 | Y5 | Y6 |
---|---|---|---|---|---|---|---|---|---|

QC1 | 0 | 70 | 140 | 140 | 110 | 220 | 180 | 290 | 250 |

QC2 | 330 | 0 | 70 | 220 | 180 | 150 | 110 | 220 | 180 |

QC3 | 400 | 330 | 0 | 290 | 250 | 220 | 180 | 150 | 110 |

B1 | 110 | 180 | 250 | 0 | 60 | 170 | 130 | 240 | 200 |

B2 | 150 | 220 | 300 | 40 | 0 | 210 | 170 | 280 | 240 |

B3 | 180 | 110 | 180 | 70 | 30 | 0 | 60 | 170 | 130 |

B4 | 220 | 150 | 220 | 110 | 70 | 30 | 0 | 210 | 170 |

B5 | 250 | 180 | 110 | 140 | 100 | 70 | 30 | 0 | 60 |

B6 | 290 | 220 | 150 | 180 | 140 | 110 | 70 | 40 | 0 |

Task No. | Starting Position | Target Position |
---|---|---|

1 | QC1 | Y1 |

2 | QC2 | Y3 |

3 | QC1 | Y4 |

$\vdots $ | $\vdots $ | $\vdots $ |

999 | QC1 | Y5 |

1000 | QC3 | Y6 |

Experiment No. | The Number of AGV | The Number of Tasks | Completion/s | Experiment No. | The Number of AGV | The Number of Tasks | Completion/s |
---|---|---|---|---|---|---|---|

Exp 01 | 5 | 30 | 1960 | Exp 16 | 8 | 200 | 8258.333 |

Exp 02 | 6 | 30 | 1678.333 | Exp 17 | 9 | 200 | 7780 |

Exp 03 | 7 | 30 | 1448.333 | Exp 18 | 10 | 200 | 6605 |

Exp 04 | 8 | 30 | 1370 | Exp 19 | 5 | 400 | 32,036.67 |

Exp 05 | 9 | 30 | 1180 | Exp 20 | 6 | 400 | 23,632.5 |

Exp 06 | 10 | 30 | 894.1667 | Exp 21 | 7 | 400 | 20,610 |

Exp 07 | 5 | 100 | 6632.5 | Exp 22 | 8 | 400 | 19,823.33 |

Exp 08 | 6 | 100 | 5903.333 | Exp 23 | 9 | 400 | 17,146.67 |

Exp 09 | 7 | 100 | 5008.333 | Exp 24 | 10 | 400 | 15,200 |

Exp 10 | 8 | 100 | 4140.833 | Exp 25 | 5 | 1000 | 70,726.67 |

Exp 11 | 9 | 100 | 3588.333 | Exp 26 | 6 | 1000 | 64,106.67 |

Exp 12 | 10 | 100 | 3358.333 | Exp 27 | 7 | 1000 | 56,153.33 |

Exp 13 | 5 | 200 | 15,075.83 | Exp 28 | 8 | 1000 | 52,202.5 |

Exp 14 | 6 | 200 | 11,896.67 | Exp 29 | 9 | 1000 | 43,945 |

Exp 15 | 7 | 200 | 9847.5 | Exp 30 | 10 | 1000 | 42,871.67 |

Experiment No. | The Number of AGV | The Number of Tasks | Completion/s | |
---|---|---|---|---|

Without Speed Control Strategy | With Speed Control Strategy | |||

Exp 01 | 5 | 30 | 1960 | 1960 |

Exp 02 | 6 | 30 | 1678.333 | 1678.333 |

Exp 03 | 7 | 30 | 1448.333 | 1448.333 |

Exp 04 | 8 | 30 | 1370 | 1370 |

Exp 05 | 9 | 30 | 1180 | 1180 |

Exp 06 | 10 | 30 | 894.1667 | 894.1667 |

Exp 07 | 5 | 100 | 7283.8 | 6632.5 |

Exp 08 | 6 | 100 | 6331.12 | 5903.333 |

Exp 09 | 7 | 100 | 5313.8 | 5008.333 |

Exp 10 | 8 | 100 | 4244.11 | 4140.833 |

Exp 11 | 9 | 100 | 3691.4 | 3588.333 |

Exp 12 | 10 | 100 | 3412.5 | 3358.333 |

Exp 13 | 5 | 200 | 39,588 | 15,075.83 |

Exp 14 | 6 | 200 | 25,667.4 | 11,896.67 |

Exp 15 | 7 | 200 | 20,712 | 9847.5 |

Exp 16 | 8 | 200 | 18,083.3 | 8258.333 |

Exp 17 | 9 | 200 | 13,218.4 | 7780 |

Exp 18 | 10 | 200 | 10,991.4 | 6605 |

Exp 19 | 5 | 400 | 71,610.55 | 32,036.67 |

Exp 20 | 6 | 400 | 50,213.1 | 23,632.5 |

Exp 21 | 7 | 400 | 44,089.3 | 20,610 |

Exp 22 | 8 | 400 | 38,805 | 19,823.33 |

Exp 23 | 9 | 400 | 34,143.4 | 17,146.67 |

Exp 24 | 10 | 400 | 29,325.1 | 15,200 |

Exp 25 | 5 | 1000 | 150,145.72 | 70,726.67 |

Exp 26 | 6 | 1000 | 119,282.64 | 64,106.67 |

Exp 27 | 7 | 1000 | 996,131.5 | 56,153.33 |

Exp 28 | 8 | 1000 | 899,917 | 52,202.5 |

Exp 29 | 9 | 1000 | 810,989 | 43,945 |

Exp 30 | 10 | 1000 | 770,183 | 42,871.67 |

The Number of AGV | The Number of Tasks | Best | Average | Worst |
---|---|---|---|---|

5 | 30 | 1204 | 1960 | 2341.44 |

5 | 100 | 4981.3 | 6632.5 | 9982.3 |

5 | 200 | 11,092 | 15,075.83 | 21,507 |

Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |

© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Liang, C.; Zhang, Y.; Dong, L.
A Three Stage Optimal Scheduling Algorithm for AGV Route Planning Considering Collision Avoidance under Speed Control Strategy. *Mathematics* **2023**, *11*, 138.
https://doi.org/10.3390/math11010138

**AMA Style**

Liang C, Zhang Y, Dong L.
A Three Stage Optimal Scheduling Algorithm for AGV Route Planning Considering Collision Avoidance under Speed Control Strategy. *Mathematics*. 2023; 11(1):138.
https://doi.org/10.3390/math11010138

**Chicago/Turabian Style**

Liang, Chengji, Yue Zhang, and Liang Dong.
2023. "A Three Stage Optimal Scheduling Algorithm for AGV Route Planning Considering Collision Avoidance under Speed Control Strategy" *Mathematics* 11, no. 1: 138.
https://doi.org/10.3390/math11010138