A Bi-Level Path Planning Algorithm for Multi-AGV Routing Problem
Abstract
:1. Introduction
- We propose a bi-level path planning algorithm. The second level algorithm reduces and resolves conflicts by using a grid map that reflects the real environment structure of the factory while maintaining the shortest AGV path planned by the first level algorithm.
- We consider that the AGVs with low priority use RRT with kinematics constraints to travel along a temporary path in the grid to give way to the AGVs with high priority when AGV paths of different priorities conflict.
- We consider that the AGVs encounter dynamic obstacles during the execution of the task and adopt a strategy to solve it.
2. Manufacturing Environment and AGVs Routing Modeling
2.1. Environment Modeling
2.1.1. Topological Modeling
2.1.2. Grid Modeling
2.2. Multi-AGVs Path Planning Modeling
- No-load AGVs can pass through any node (green and red);
- AGVs carrying shelves or goods can only pass through green nodes;
- The line between the nodes is a one-way lane but can be driven in both directions;
- The safety radius of AGV is 0.2 m;
- The AGV has three states: no-load stationary, load driving, and no-load driving.
3. The Bi-Level Path Planning Algorithm
3.1. First-Level Path Planning Algorithm Based on the Topological Map
- (1)
- Establish the weight matrix of corresponding nodes of AGV in different states. For AGVs carrying shelves or goods, the weight of a circular node is 1 + 0.1 × 1 = 1.1, and the node of a triangle is infinity. For no-load AGVs, the weight of the circular node is 1 + 0.1 × 1 = 1.1, and the weight of the triangular node is 1.
- (2)
- Build an extensive list and close list. The points to be detected in the path planning are stored in the open list, and the points that have been detected are stored in the close list. Each node in the list has three attributes: parent node, G, and H, where the parent node is the previous node. G is the cost from the starting node to the current node, and H is the cost from the current node to the target node. Initially, the close list contains only the starting node vi.
- (3)
- According to the heuristic function F(x) = G + H, calculate the node cost to search for the optimal path of the car in different states. G is the product of the G value of the node’s parent node plus the distance from the node’s parent node to its Manhattan and the node’s weight for this state of AGV. H is the Manhattan distance from the current node to the target node.
- (4)
- Search the adjacent node of the last node in the close list. If the adjacent node is already in the close list, the point is ignored; if its adjacent node is in the open list, then compare the F value through this point with the F value of the previous node, if current F is larger, ignore it, otherwise update the attribute of the adjacent node, update its parent node to this node and update the G value to a smaller G value; if its adjacent node is not in the open list, then calculate its G and H and add it to the open list.
- (5)
- Put the node with the smallest F value in the currently open list into the close list, and determine whether the target node is in the close list at this time. If the target node is in the close list at this time, the optimal path of the car in this state is found, otherwise, skip to step 4.
3.2. Second-Level Path Planning Algorithm Based on the Grid Map
3.2.1. Kinematic Constraints of AGV
3.2.2. RRT Algorithm with Kinematic Constraints
Algorithm 1. Pseudocode for RRT Algorithm with Kinematic Constraints. | |
| |
1: | G.init(Xinit) |
2: | For i=0 to K do |
3: | Xrand random-config(Xfree) |
4: | Extend(G, Xrand) |
5: | End for |
6: | Return G |
Function: Extend(G,Xrand) | |
1: | Xnear nearest-neighbor(G, Xrand) |
2: | Rrand random-config(Xnear) |
3: | If compare(Rrand) then |
4: | u select-input(Xrand, Xnew) |
5: | Xnew new-state(Xnear, u, Δt) |
6: | If kinematics- satisfaction(Arcf) and collision-free-path(Xnear, Xnew) then |
7: | G.add-node(Xnew) |
8: | G.add-node(Xnear,Xnew,u) |
9: | End if |
10: | End if |
11: | Return G |
- Step 1
- initialize the search tree G with X;
- Step 2
- randomly select a configuration space Xrand from Xfree;
- Step 3
- execute the Extend() function to add one of nodes representing a passable route to the search tree G. In the Extend() function:
- (1)
- Select the nearest node Xnear in G by the nearest-neighbor() function;
- (2)
- Generate a circle named Rrand, whose arc passes through the x and y coordinates in Xnear. By maintaining a certain angle, the AGV can go from Xnear to Rrand. If the radius of this Rrand circle is smaller than the smallest steering angle of the AGV, then return to step 2;
- (3)
- This circle Rrand is divided into two arcs, the arc from Xnear to Rrand is the trajectory of the AGV car named Arcf;
- (4)
- Find the movement from Xnear to Xnew in the direction of Xrand; Starting from Xnear, AGV drive along Arcf for a while, then AGV reaches a new point Xnew;
- (5)
- If the motion satisfies the kinematic constraint Equation (8) and there is no collision in this movement, Add Xnew to the tree G, and the edge goes from Xnear to Xnew;
- (6)
- If Xnew is in Xgoal, it ends successfully, if not, it skips to continue to execute the Extend() function.
4. Experimental Studies
4.1. Experiments on Functionality of the Improved A* Algorithm
4.2. Experiments on the Effectiveness of the Improved A* Algorithm
4.3. Experiments on the Bi-Level Path Planning Algorithm
- Through CloudTCS, input the target point and execute the action;
- The system assigns the order task to this AGV;
- After the AGV completes the task (Figure 14), the status changes to IDIE and waits for the next order.
- One hundred orders are generated and wait in the queue;
- Establish connections with all AGVs (as shown in Figure 15). According to the priority strategy, the first seven orders are assigned to the AGV, then use the first-level path planning algorithm directly to plan the optimal path.
- AGV accepts orders cyclically. When encountering conflicts, AGV can solve the conflicts well through the local grid map established by itself.
- Seven AGVs completed 100 order tasks.
5. Conclusions
Author Contributions
Funding
Conflicts of Interest
References
- Teso-Fz-Betoño, D.; Zulueta, E.; Fernandez-Gamiz, U.; Aramendia, I.; Uriarte, I. A Free Navigation of an AGV to a Non-Static Target with Obstacle Avoidance. Electronics 2019, 8, 159. [Google Scholar] [CrossRef] [Green Version]
- Xing, Y.; Yang, Y.; Zu, Q.; Yu, J. Application of AGV technology and design and calculation of driving system. AIP Conf. Proc. 2019, 2073, 020028. [Google Scholar]
- Draganjac, I.; Miklic, D.; Kovacic, Z.; Vasiljevic, G.; Bogdan, S. Decentralized Control of Multi-AGV Systems in Autonomous Warehousing Applications. IEEE Trans. Autom. Sci. Eng. 2016, 13, 1433–1447. [Google Scholar] [CrossRef]
- Chen, Z.; He, X.; Cao, Z.; Jin, Y.; Li, J. Position Estimation of Automatic-Guided Vehicle Based on MIMO Antenna Array. Electronics 2018, 7, 193. [Google Scholar] [CrossRef] [Green Version]
- Tai, R.; Wang, J.; Chen, W. A prioritized planning algorithm of trajectory coordination based on time windows for multiple AGVs with delay disturbance. Assem. Autom. 2019, 39, 753–768. [Google Scholar] [CrossRef]
- Zhong, M.; Yang, Y.; 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]
- Liu, C.; Tan, J.; Zhao, H.; Li, Y.; Bai, X. Path planning and intelligent scheduling of multi-AGV systems in workshop. In Proceedings of the 36th Chinese Control Conference (CCC), Dalian, China, 26–28 July 2017. [Google Scholar] [CrossRef]
- Kim, S.; Jin, H.; Seo, M.; Har, D. Optimal path planning of automated guided vehicle using dijkstra algorithm under dynamic conditions. In Proceedings of the 2019 7th International Conference on Robot Intelligence Technology and Applications, Daejeon, Korea, 1–3 November 2019; pp. 231–236. [Google Scholar]
- Wang, C.; Wang, L.; Qin, J.; Wu, Z.; Duan, L.; Li, Z.; Cao, M.; Ou, X.; Su, X.; Li, W.; et al. Path planning of automated guided vehicles based on improved A-Star algorithm. In Proceedings of the 2015 IEEE International Conference on Information and Automation, Lijiang, China, 8–10 August 2015; pp. 2071–2076. [Google Scholar] [CrossRef]
- Meng, A.C.; Wand, M.; Hwang, V.S. A Methodology of Map-Guided Autonomous Navigation with Range Sensor in Dynamic Environment. In Proceedings of the 1988 Cambridge Symposium on Advances in Intelligent Robotics Systems, Boston, MA, USA, 6–11 November 1988. [Google Scholar]
- Zhe, L. A rapid path planner for autonomous ground vehicle. J. Shanghai Jiaotong Univ. 2009, 14, 306–309. [Google Scholar] [CrossRef]
- He, C.; Mao, J. AGV optimal path planning based on improved ant colony algorithm. MATEC Web Conf. 2018, 232, 1–6. [Google Scholar] [CrossRef] [Green Version]
- Yan, Z.; Ouyang, B.; Li, D.; Liu, H.; Wang, Y. Artificial-intelligence-driven fog radio access networks: Recent advances and future trends network intelligence empowered industrial robot control in the F-RAN environment. IEEE Wirel. Commun. 2020, 27, 58–64. [Google Scholar] [CrossRef]
- Yuan, H. Research and implementation of intelligent vehicle path planning based on four-layer neural network. In Proceedings of the 2019 Chinese Automation Congress (CAC), Hangzhou, China, 22–24 November 2019; pp. 578–582. [Google Scholar]
- Martinez-alfaro, H.; Flugrad, D.R. Collision-Free path planning for mobile robots and/or AGVs using simulated annealing. In Proceedings of the IEEE International Conference on Systems, Man and Cybernetics, San Antonio, TX, USA, 2–5 October 1994; Volume 1, pp. 270–275. [Google Scholar]
- Xing, L.; Liu, Y.; Li, H.; Wu, C.; Lin, W.; Chen, X. A novel tabu search algorithm for multi-AGV routing problem. Mathematics 2020, 8, 279. [Google Scholar] [CrossRef] [Green Version]
- Umar, U.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, 81, 2123–2141. [Google Scholar] [CrossRef]
- Han, Z.; Wang, D.; Liu, F.; Zhao, Z. Multi-AGV path planning with double-path constraints by using an improved genetic algorithm. PLoS ONE 2017, 12, e0181747. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Liu, J.; Wang, Z.; Xu, Q.; Huang, Q. Path scheduling for multi-AGV system based on two-staged traffic scheduling scheme and genetic algorithm. J. Comput. Methods Sci. Eng. 2015, 15, 163–169. [Google Scholar] [CrossRef]
- Schueftan, D.S.; Bernal, I.F.M. Indoor mapping using SLAM for applications in Flexible Manufacturing Systems. In Proceedings of the 2015 IEEE 2nd Colombian Conference on Automatic Control (CCAC), Manizales, Colombia, 14–16 October 2015; pp. 5–10. [Google Scholar]
- Wu, Z.; Wang, X.; Wang, J.; Wen, H. Research on improved graph-based SLAM used in intelligent garage. In Proceedings of the 2017 IEEE International Conference on Information and Automation (ICIA), Macau, China, 18–20 July 2017; pp. 592–597. [Google Scholar]
- Hu, X.; Luo, Z.; Jiang, W. AGV localization system based on ultra-wideband and vision guidance. Electronics 2020, 9, 448. [Google Scholar] [CrossRef] [Green Version]
- Weng, J.F.; Su, K.L. Development of a SLAM based automated guided vehicle. J. Intell. Fuzzy Syst. 2019, 36, 1245–1257. [Google Scholar] [CrossRef]
- Liu, C.; Mao, Q.; Chu, X.; Xie, S. An improved A-star algorithm considering water current, traffic separation and berthing for vessel path planning. Appl. Sci. 2019, 9, 1057. [Google Scholar] [CrossRef] [Green Version]
© 2020 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 (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Yuan, Z.; Yang, Z.; Lv, L.; Shi, Y. A Bi-Level Path Planning Algorithm for Multi-AGV Routing Problem. Electronics 2020, 9, 1351. https://doi.org/10.3390/electronics9091351
Yuan Z, Yang Z, Lv L, Shi Y. A Bi-Level Path Planning Algorithm for Multi-AGV Routing Problem. Electronics. 2020; 9(9):1351. https://doi.org/10.3390/electronics9091351
Chicago/Turabian StyleYuan, Zhiheng, Zhengmao Yang, Lingling Lv, and Yanjun Shi. 2020. "A Bi-Level Path Planning Algorithm for Multi-AGV Routing Problem" Electronics 9, no. 9: 1351. https://doi.org/10.3390/electronics9091351