Next Article in Journal
Piezoelectric Shunt Damping for a Planar Motor Application under Cryogenic Conditions
Previous Article in Journal
Nonlinear Flux Linkage Observer with Model Reference Adaptive System for Improved Permanent Magnet Synchronous Motor Control
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Research on AGV Path Planning Based on Improved Directed Weighted Graph Theory and ROS Fusion

School of Mechanical Engineering, Beijing University of Science and Technology, Beijing 100083, China
*
Author to whom correspondence should be addressed.
Actuators 2024, 13(10), 404; https://doi.org/10.3390/act13100404
Submission received: 29 July 2024 / Revised: 17 September 2024 / Accepted: 24 September 2024 / Published: 7 October 2024
(This article belongs to the Section Actuators for Robotics)

Abstract

:
This article addresses the common issues of insufficient computing power and path congestion for automated guided vehicles (AGVs) in real-world production environments, as well as the shortcomings of traditional path-planning algorithms that mainly consider the shortest path while ignoring vehicle turning time and stability. We propose a secondary path-planning method based on an improved directed weighted graph theory integrated with an ROS. Firstly, the production environment is modeled in detail to identify the initial position of the AGV. Secondly, the operational area is systematically divided, key nodes are selected and optimized, and a directed weighted graph is constructed with optimized weights. It is integrated with the ROS for path planning, using the Floyd algorithm to find the optimal path. The effectiveness and superiority of this method have been demonstrated through simulation verification and actual AGV operation testing. The path planning strategy and fusion algorithm proposed in this article that comprehensively considers distance and angle steering are simple and practical, effectively reducing production costs for enterprises. This method is suitable for logistics sorting and small transport AGVs with a shorter overall path-planning time, higher stability, and limited computing power, and it has reference significance and practical value.

1. Introduction

With the continuous development of the manufacturing and logistics industries, automated guided vehicles (AGVs) and other intelligent vehicles are increasingly becoming key factors in improving production efficiency and logistics transportation effectiveness [1,2]. AGVs, as mobile platforms for automatic navigation, have been widely used in multiple scenarios such as factories, warehouses, and medical institutions [3,4]. These vehicles, with their high flexibility, efficiency, and automation level, have significantly optimized the modern industrial chain, improved overall operational efficiency, and brought important technical support and competitive advantages to enterprises [5].
With the increasing complexity of work environments, the problems associated with route planning and task assignment of AGVs are becoming more prominent, and they are key problems in AGV systems [6,7]. Path planning is not only related to operational efficiency but also directly affects energy consumption and safety, including reducing energy usage and minimizing collision risks [8,9]. In addition, the task allocation problem involves how to allocate tasks reasonably in a multi-vehicle environment to maximize system benefits [10]. Therefore, the path planning algorithm in a modern AGV system needs to be superior to traditional calculation methods based on the shortest distance, taking into account steering, distance, and other related factors to meet efficient and accurate operational requirements.
In current path-planning research, Li [11] investigated emergency ambulance route planning based on an improved Floyd algorithm, proposing an optimized approach and analyzing its practical application. Experimental comparisons between the traditional and improved algorithms revealed that the latter generates shorter and smoother routes in various scenarios, significantly enhancing efficiency and road adaptability during emergency responses, particularly in coping with real-time road changes and urgent needs. Cheng [12] addressed secondary path planning in automated parking systems using an improved Dijkstra algorithm. Experimental comparisons demonstrated that the optimized algorithm produces smoother curves and more efficient paths, significantly enhancing system adaptability and performance across various scenarios. Xiang [13] proposed a dynamic path-planning algorithm that utilizes a digital twin model to reflect real-time changes in the physical environment, enabling AGVs to effectively adjust scheduling and routes. This real-time adjustment helps optimize path curves to better adapt to environmental conditions and reduce operational times. However, frequent path adjustments may increase computational load and system complexity. Zhang [14] proposed a distributed task allocation method that dynamically adjusts path curves to achieve collision-free path planning in multi-AGV systems. This approach enhances system flexibility and real-time performance, significantly improving operational efficiency and safety. Although the method increases computational complexity and implementation challenges, it emphasizes balancing flexibility with resource consumption. Gallo [15] conducted an in-depth analysis of core AGV path-planning algorithms, experimentally comparing their performance in dynamic environments. A* and Dijkstra algorithms are stable in static settings but lack flexibility in dynamic conditions, often leading to redundant or suboptimal paths. In contrast, GA and PSO algorithms perform better in dynamic environments, providing smoother and more efficient path adjustments, effectively minimizing unnecessary AGV movements [16].
However, the path planning results in the cited literature are often curved, requiring real-time calculations that increase computational demand and potentially compromise stability, raising the risk of accidents. In response, we propose a secondary path-planning method based on an improved directed weighted graph theory integrated with an ROS, aiming to enable AGVs to travel in a straight line between the start and target points. Unlike the typical curved paths, straight-line travel significantly enhances AGV stability, reduces the overall operation time, and improves efficiency.
In this article, we first review the relevant literature on AGV applications and path planning research, then propose new research hypotheses, verify these hypotheses through simulation experiments and real vehicle experiments, and finally discuss and summarize them. To overcome the computational complexity and operational difficulty of existing methods [17], we propose a simplified path-planning method aimed at significantly reducing the computational burden and simplifying the operational process. This method simplifies the entire path-planning process by directly adjusting the AGV steering and quickly directing it to a predetermined discrete point. In addition, the method takes into account the cost loss caused by the steering angle, making it more suitable for industrial production and daily life application scenarios [18]. By optimizing the control strategy, this method emphasizes the feasibility and efficiency in practical operation, providing a practical and efficient new solution for path planning technology.
In the process of algorithm design, we conducted a detailed analysis of the motion characteristics of an AGV and developed a weighted model based on the vehicle turning angle, which is suitable for various application scenarios. This model was integrated into a directed weighted graph, and we introduced a new path evaluation metric to improve the accuracy of path selection. In order to optimize the adaptability of practical applications, we combined the Floyd algorithm with the robot operating system (ROS), utilizing the flexibility and modular advantages of the ROS [19], such as real-time communication and sensor data processing capabilities [20]. Additionally, through the ROS, the Floyd algorithm can be integrated with other robot systems to achieve coordinated processing of complex tasks. The aim of this study was to develop a concise and efficient AGV path optimization solution by combining the Floyd algorithm and ROS to meet the demands of modern industrial automation.
After theoretical validation, we further conducted practical tests on the proposed algorithm through real vehicle experiments [21,22]. By comparing our algorithm with traditional path-planning algorithms, the performance advantages and limitations of the new algorithm were systematically evaluated. The results of the real vehicle experiments effectively demonstrate the execution effectiveness and practicality of the proposed algorithm in real-world application environments.

2. Path Planning Based on Improved Directed Weighted Graph Theory

2.1. Traditional Directed Weighted Graph Theory

Traditional directed weighted graph theory explores in-depth key concepts such as paths, connectivity, and shortest paths [23,24] and expresses them in detail in mathematical theory:
  • Definition of a directed graph: A directed graph is composed of a set of vertices and a set of directed edges, each of which is represented by an ordered pair (u, v), where vertex u points to vertex v.
  • Representation of weighted graphs: Based on a directed graph, edge weights are introduced, which represent the cost or distance from the source vertex to the target vertex.
  • Paths and connectivity: A path is a series of vertices connected by an edge sequence in a graph. Formally, a path can be represented as (v0, v1, v2, …, vn), where vi represents a vertex and (vi, vi + 1) represents a directed edge from vi to vi + 1. If there is a path from vertex u to vertex v, then u and v are considered connected in the directed graph.
  • Shortest path problem: The shortest path from one vertex to another refers to the path with the minimum sum of weights on the path. Usually d(u, v) is used to represent the weight of the shortest path from vertex u to vertex v.
  • Dijkstra algorithm: This is an algorithm used to solve the shortest path of a single source in a weighted graph. The algorithm adopts a greedy strategy by continuously performing relaxation operations, selecting the vertex extension path of the currently known shortest path, until the shortest path from the source vertex to all other vertices is determined. It ultimately computes d(u,v).
These concepts and algorithms together comprise the framework of traditional directed weighted graph theory, which is widely applied in the fields of computer science and engineering [25,26], especially in network routing and path planning. Traditional directed weighted graph theory, as the core data structure in graph theory, provides a detailed description of the directed relationships between multiple nodes (or vertices) and assigns weights to each directed edge to solve graph structure problems with directionality and weighting [27,28]. The basic idea is to express the directionality and strength of edges through their weights, thereby clarifying the interrelationships and trade-offs between different nodes [29]. Specifically, the weight of each edge represents the directed path cost or distance from one node to another. This weight configuration not only reflects the directionality of the path but also quantifies the interaction cost between nodes, which provides a theoretical basis for analyzing and optimizing the complex network structure [30,31].
Assuming the map is an accessible area, as shown in Figure 1a, this area appears as a convex polygon. Due to the geometric properties of convex polygons, starting from any vertex (red point), it is possible to achieve a path to any target position (green point) in the map. This property stems from the definition of a convex polygon: in a convex polygon, a straight line segment between any two points is completely contained within the polygon [32]. Therefore, starting from any vertex of the convex polygon, one can directly reach any other position inside the polygon without detouring or crossing boundaries. This means that path planning becomes very simple and efficient in this situation, as there is no need to consider any obstacles or additional path choices.
In the concave polygon map shown in Figure 1b, if two red points are selected as the starting and ending points, it can be seen that these two points cannot be directly connected by a straight line but must pass through a transitional green point. By dividing the concave polygon along the yellow dashed line into two convex polygons and selecting the midpoint of the convex polygon boundary as the transition point, it is possible to achieve the goal of reaching any endpoint from any starting point in the concave polygon. This method involves decomposing the original concave polygon map and adding intermediate vertices located on the boundary lines of the decomposed convex polygons, thereby optimizing the efficiency of path selection. In geometry, convex and concave polygons are collectively referred to as simply connected domains, while environmental maps containing obstacles are defined as multi-connected domains [33]. When designing a directed weighted graph with multiple connected domains, vertices should be selected reasonably to enhance the logic and efficiency of path planning.
If a multi-connected domain map is decomposed into convex polygons in a single connected domain, the vertices for the directed weighted graph can be effectively selected. As shown in Figure 2, the original multiply connected domain is decomposed using the triangulation method, and the yellow dashed line indicates the decomposition process. As basic convex polygons in a simply connected domain, triangles have the characteristics of a simple structure and easy processing [34]. This method not only helps to clarify the boundaries of each region but also facilitates efficient path searching and network modeling.
Selecting the midpoints of all boundary lines as the origins, as indicated by the red dots in the figure, can efficiently set the vertices of a directed weighted graph. A further optimization step is to decompose the original map into the minimum number of convex polygons, thereby significantly reducing the number of vertices in the directed weighted graph [35]. By decomposing multiple connected domains into the minimum number of simply connected convex polygons, not only is the number of vertices reduced, but the utilization efficiency of the vertex positions is also improved. This method significantly improves the efficiency of path searching based on directed weighted graphs, providing a more efficient solution for subsequent path planning and searching.

2.2. Improving the Application of Directed Weighted Graph in Path Planning

According to the content of Section 2.1, traditional directed weighted graph theory mainly focuses on planning the path with the shortest distance [36] but ignores the time it takes for the vehicle to turn during driving and the stability issues caused by this. To design the most optimal and efficient path, it is necessary to improve the traditional directed weighted graph theory. The improved theory not only needs to consider the distance between nodes but also needs to take into account the turning angle between nodes. The basic process of the path planning algorithm based on this improved theory is shown in Figure 3. This method successfully integrates the factors of distance and steering angle to achieve more efficient and stable path-planning results.
To improve the shortest path calculation formula, the turning angle is introduced as a variable that influences the calculation of path weights. The improved path planning method integrates the traditional shortest path algorithm and incorporates the effect of the turning angle into the path selection process, enhancing both the rationality and accuracy of the route planning. Specifically, in the calculation process, not only the path length is considered but also the adaptability of different paths is evaluated based on the turning angle, thus achieving a more optimized path planning solution that meets the complex requirements of practical applications.
Step 1: Initialization.
Define the weight set W = ( w 1 , w 2 , , w n ) , where n 0 includes the weights between the starting and ending points and A i j represents the direct distance from node i to node j . The shortest path planning is based on the distance matrix D i j = A i j , which stores the shortest path information between nodes. Meanwhile, the path matrix P i j = i is used to store the specific paths between the starting and ending points for subsequent path queries and analysis. This initialization step ensures that complete initial conditions and the necessary data support are provided for the subsequent shortest path calculation.
Step 2: Weight Calculation.
First, measure the actual path lengths between discrete points d i and the turning angles t i between nodes. The path weights W i j = D i j + β × T i j are then calculated based on both path distance and turning angles, where D i j represents the distance matrix, T i j denotes the turning angle matrix, and β is the turning angle weight parameter used to evaluate the impact of the turning angle on path selection. This calculation method is reasonable as it not only considers the actual path distance but also incorporates the turning angle, reflecting the complexity of the path. Many existing path planning methods calculate solely based on distance; however, this may not fully account for the difficulty or cost of traveling from one point to another. For example, sharp turns or frequent changes in direction may increase travel time or energy consumption, reducing overall efficiency. By introducing the turning angle factor in the path calculation and combining it with the weight parameter β , this method provides a more comprehensive assessment of path cost, taking both distance and the potential extra cost due to turns into account. This improvement allows for more accurate path optimization, particularly in scenarios where travel time, energy consumption, and route complexity must all be considered.
Step 3: Dynamic Programming for Shortest Path Calculation.
Introduce the variable A K i , j , which represents the shortest path from vertex i to vertex j without passing through any vertex with an index greater than. The formula for calculating the shortest path is as follows:
A K i , j = min { A K 1 ( i , j ) , A K 1 ( i , k ) + A K 1 ( k , j ) + β × α i , k , j }
where α i , k , j represents the turning angle cost of the path from vertex i to vertex j via vertex. When K = n (where n is the total number of vertices), the final result is A n i , j = D i j , which is the globally optimal shortest path considering both distance and turning angle factors. Next, update the path matrix P i j = k by adding the key nodes of the shortest path to the path set p . This iterative process ensures that at each step, the path matrix accurately reflects all the nodes traversed between the starting and ending points, thus effectively optimizing path selection.

3. Solution and Application of Directed Weighted Graph Theory Based on the Floyd Algorithm

After completing the setting of vertices and allocation of weights in the directed weighted graph, the next step is to perform a search based on the weight matrix to obtain the connecting path between the given starting and ending points. The commonly used search algorithms include A*, D*, and other algorithms [37]. The Floyd algorithm, with its global optimality, multi-objective path planning ability, and effective processing of static graphs, exhibits more prominent advantages than A* and D* algorithms in specific application scenarios. Despite its high computational and spatial complexity, the Floyd algorithm is still a more suitable choice when pursuing the global optimal path and frequently searching for multi-objective paths. Therefore, the Floyd algorithm was used in this study to search the graph and obtain the final path.

3.1. Floyd Algorithm Solution Design

When solving the problem of the shortest path between all pairs of nodes, a classic algorithm based on dynamic planning is commonly used, namely, the Floyd algorithm [38]. This algorithm systematically examines all possible intermediate nodes to optimize the path length between any two nodes and is a commonly used path-searching method in graph theory. The core idea of the Floyd algorithm is to gradually update the path, so that each step considers the shorter path that may be obtained through an intermediate node, ultimately finding the shortest path between all node pairs.
The Floyd algorithm, also known as the Floyd–Warshall algorithm, can be represented in pseudocode as follows:
Void   Floyd ( )         int   k , i , j ;         for ( k = 0 ; k < n ; + + k )                 for ( i = 0 ; i < n ; + + i )                       for ( j = 0 ; j < n ; + + j )                           if ( D [ i ] [ k ] + D [ k ] [ j ] < D [ i ] [ j ] )                                     D [ i ] [ j ] = D [ i ] [ k ] + D [ k ] [ j ] ;
Floyd algorithm formula: D ( i , j ) = min ( D [ i , j ] ,   D [ i , k ] + D [ k , j ] )
Initialization phase: Firstly, a matrix D is initialized for the directed graph G, where D[i][j] represents the shortest path length from node i to node j. The initial values of matrix D are calculated based on the edge weights in Figure G, by which the basic data structure for algorithm iteration is constructed and the foundation for subsequent optimization calculations is laid [39].
Iterative update and optimization process: During algorithm execution, for each pair of nodes i and j, and for every possible intermediate node k, the algorithm checks whether there is a path i→k→j through node k whose length is shorter than the current known direct path i→j. If a shorter path is found, the algorithm updates the value of the distance matrix D[i][j] to the length of this shorter path. Through this repeated iterative process, the algorithm gradually optimizes and updates the values of the distance matrix D until it converges to the shortest path between each pair of nodes in the graph. Theoretically, the Floyd algorithm can be seen as an extension and application of Dijkstra’s algorithm in multi-source shortest-path problems [39]. In the different path-planning schemes presented in this article, the number of discrete points on each route is clearly defined. Therefore, according to the iterative and optimization process of the algorithm mentioned above, the algorithm will eventually converge.

3.2. Solution Application of the Floyd Algorithm

Figure 4 shows the running path map of the automated guided vehicle (AGV), where the black lines represent the distance weights between points. Thus, this figure can be regarded as a directed weighted graph. From this directed weighted graph, a directed weighted table, as shown in Table 1, can be generated. This tabular representation helps to systematically analyze and process the distance relationships between nodes, providing a clear and structured method for studying and optimizing AGV path planning.
Using the Floyd algorithm, the shortest path from any starting point to any endpoint can be calculated based on a directed weighting table. For example, in Figure 5, selecting point P0 as the starting point and point P12 as the endpoint, the Floyd algorithm can be applied to plan a green shortest path, as shown in Figure 5. This method ensures the minimization of the path length from the starting point to the endpoint, thereby optimizing route selection.
In theory, the Floyd algorithm finds the shortest route by searching through distance weights. However, in practical scenarios, the cost of only following the shortest route is not always optimal. This is because when the vehicle reaches a certain point, it needs to adjust its pose to face the next target point, and this pose adjustment process will also affect the final navigation outcome. Therefore, we propose a new route evaluation method for such scenarios, which considers distance weights while adding turn weight evaluation. The sum of the weights of these two constitutes the new weight of the edge. Based on this new weight system, the Floyd algorithm is applied to the updated directed weighted table to search for the optimal route, aiming to achieve more accurate and adaptable navigation results.
As shown in Figure 6, we assume the vehicle is located at point 0 and is traveling vertically downwards. The distance weight from point 0 to point 1 is 7. The vehicle needs to rotate counterclockwise 45 degrees to face point 1 when traveling from point 0 to point 1. For ease of calculation, the turning weight is defined as the turning angle divided by 10, which is 4.5. Therefore, the comprehensive weight calculation from point 0 to point 1 is 7 + 4.5 = 11.5. In this way, the weights between other points can be updated to obtain a new directed weighted graph and its corresponding directed weighting table, as shown in Table 2. This method comprehensively considers distance and turning factors, providing more comprehensive data support for path planning.
Similarly, in the new directed weighted table, the Floyd algorithm is used to search for the optimal route from point P0 to point P12. The search results are shown in Figure 7, where the red route indicates the determined optimal path. This method ensures that path planning not only considers the shortest distance, but also integrates steering efficiency, thereby achieving more accurate and efficient navigation results.
From Figure 7, it can be seen that, compared with path planning based solely on distance weights, the path planning results that combine both distance and steering weights indicate that the number of turns required by the vehicle during driving is reduced, and the overall cost is also lower. Therefore, this route is more optimized. This result highlights the importance of considering turning costs comprehensively in path planning in order to achieve more efficient and economical navigation effects.
Figure 8 shows the comparison of path planning results using the Floyd algorithm under two different weight conditions. This comparison chart intuitively presents the differences in path selection between considering only distance weight and simultaneously considering distance weight and steering weight. Through this method, the advantage of considering both steering weights in path planning can be more clearly observed.
It should be noted that routes with fewer turns are not always the optimal choice. Although a certain route may have fewer turns, if its distance weight is high, the algorithm may still choose a route with a lower distance weight but more turns. For example, from point P0 (vertically downwards) to point P13, from the directed weighted graph, although the path from point 4 to point 13 involves fewer turns, the distance weight is too high. Therefore, the algorithm may choose a route with more turns but a lower overall cost, such as 0-3-6-9-13, as shown in Figure 9. This indicates that the balance of comprehensive weights is crucial in path planning.
Figure 9 clearly shows that under any directed weighted graph conditions, the path planning results from point 0 to point 13 are the same. This indicates that the selected optimal path is consistent under different weight conditions, highlighting the stability and reliability of the algorithm under different conditions.
From the comparison between Figure 8 and Figure 9, it can be confirmed that with the introduction of steering weights, vehicles not only consider distance but also steering when searching for routes. Compared to path planning based solely on distance, this method searches for routes that are more in line with practical application needs and improves efficiency. This indicates that path planning that takes into account multiple factors is very beneficial for specific application scenarios.
Using the same application scenario, we also conducted comparative experiments using the A* pathfinding algorithm, and the results are shown in Figure 10. This comparison helps to evaluate the effectiveness and applicability of different algorithms under specific conditions.
Figure 10 shows the path results obtained using the A* algorithm from point P0 to P12, represented by the black route. Figure 11 shows the planning results from point P0 to P13, also represented by the black lines. From these two figures, it can be seen that when the starting and ending points are directly set, the A* algorithm can plan the shortest distance path. Although these paths are shorter in length compared to the paths planned by the Floyd algorithm, in actual driving, the vehicle needs to adjust its direction and speed in real time while considering impassable areas in the real scene. In addition, the A* algorithm is based on real-time searching, and as the range and complexity of the running scene increase (such as an increase in obstacles or non-drivable areas), the size of the search map and the coverage ratio of obstacles in the map increase, resulting in an increase in the complexity of the search. Therefore, the path planning calculation time of the algorithm will correspondingly increase, and it is possible to only achieve local optima rather than global optima. It can be seen that when the vehicle travels along the path searched by the A* algorithm, the overall cost is higher.
Please note that we used the overall time taken for the vehicle to travel from the starting point to the destination as the comprehensive cost standard for evaluating the route. The evaluation method focuses on overall efficiency to ensure that the path selection minimizes travel time to the greatest extent possible.

4. Simulation Experiment and Verification Analysis Based on the ROS

Conducting simulation experiments and validation analysis in an ROS-based environment is considered an efficient way to develop and test robotic applications [40,41]. In this study, the Gazebo simulation testing environment was configured based on a directed weighted graph (see Figure 12) of the vehicle operating scenario, aiming to accurately display the directionality and weights between nodes in the simulation. This setting is particularly critical for testing the navigation system and path planning algorithm of the robot. Figure 13 shows the carefully designed Gazebo simulation experimental environment.
In the Gazebo simulation experiment environment, a two-dimensional navigation map was successfully generated by applying the gmapping two-dimensional laser mapping algorithm [42]. As shown in Figure 14, this map provides an accurate spatial positioning foundation for research and development work, demonstrating the effectiveness of this method in precise map creation.
  • Simulation Experiment 1
In the first path-planning experiment, a systematic comparison was conducted by setting point P0 as the initial position and point P12 as the target destination. The experiment employed two different weighted directed graphs to assess the performance of the Floyd algorithm, a classical graph traversal method known for its ability to find the shortest paths in weighted graphs. In addition, the A* algorithm, renowned for its heuristic-based approach to efficiently explore path possibilities, was also utilized under identical conditions. The comparative analysis, as illustrated in Figure 15, shows the effectiveness and adaptability of these algorithms by examining their path planning outcomes across varying scenarios. This rigorous assessment provides a comprehensive understanding of the strengths and limitations inherent in each algorithm, thereby offering insights into their practical applications in diverse path-planning contexts.
In Figure 14, the gray boxed area represents the range of the local cost map, and the red dots indicate the scanning points of the single-line laser radar. Figure 15 shows another view of the local cost map, which clearly displays the expansion range of obstacles in the map. This obstacle expansion treatment is used to ensure that the vehicle body will not collide with obstacles when driving along the set route, thereby increasing the safety of driving [43].
  • Simulation Experiment 2
In the second path-planning experiment, the objective was to analyze and compare the performance of the Floyd and A* algorithms under varying weight conditions within directed weighted graphs. The experiment was designed with two distinct weight configurations, using point P0 as the starting position and point P13 as the destination. By applying the Floyd algorithm to both graphs, the paths were determined and subsequently compared with the paths generated by the A* algorithm for the same starting and ending points. Figure 16 illustrates the experimental outcomes, providing a visual representation of the paths selected by each algorithm under the different conditions. The core aim of this experiment was to rigorously assess the effectiveness and adaptability of these algorithms when exposed to diverse weight scenarios. By systematically evaluating their performance, we sought to elucidate the strengths and weaknesses of each algorithm in terms of computational efficiency, path optimality, and adaptability to varying graph weights. This comparison is critical for understanding the suitability of each algorithm in different practical applications, particularly in environments where weight factors are subject to change, thus offering a nuanced perspective on their real-world applicability and robustness.
Through the comparison Table 3 analysis of the results of Experiment 1, the following conclusions can be drawn:
(1)
The A* path search is the most efficient in terms of distance cost, but its overall time cost is the highest, possibly due to real-time turning adjustments.
(2)
The pure distance-directed weighted graph search based on the Floyd algorithm has higher distance and turning costs, so the overall cost is always in the middle.
(3)
Based on Floyd’s distance plus a turning directed weighted graph search, a balanced solution is provided, where the distance cost is relatively high, but the turning cost is relatively low, resulting in the lowest overall cost time.
In short, the choice of algorithm depends on the specific requirements of the application. If minimizing distance is more important, even though the total time might be higher, the A* path search might be more suitable. However, if the goal is to minimize the overall cost in terms of total time, then Floyd’s distance plus a turning directed weighted graph search would be more appropriate.
Through the comparison Table 4 analysis of the results of Experiment 2, the following conclusions can be drawn:
(1)
Floyd’s pure distance-based directed weighted graph search performance is balanced in all aspects, making it suitable for scenarios that require balancing various costs.
(2)
Floyd’s distance plus turning directed weighted graph search performs best in terms of turning cost, resulting in a more intuitive and smoother path, although the overall cost is slightly higher.
(3)
The A* path search performs best in terms of distance and overall time cost but has a high turning cost and poor path smoothness.
Different path search algorithms have their own advantages and disadvantages in different performance indicators. The pure distance directed weighted graph search based on the Floyd algorithm represents a comprehensive performance equilibrium. Floyd’s distance plus turning directed weighted graph search performs best in path smoothness, making it suitable for applications requiring high path intuitiveness. The A* path search has advantages in terms of distance and time, but the cost of turning is high. Therefore, suitable path search algorithms can be selected according to actual needs to achieve optimal results.

5. Real Vehicle Verification

After the simulation experiment was completed, in order to verify the effectiveness of the improved path-planning algorithm in real industrial environments and ensure its effectiveness and reliability in different application scenarios, we set up a validation environment in a standardized logistics warehouse. The validation environment consists of the following parts:
  • AGV configuration: The AGV is equipped with an industrial control computer (IPC), vehicle control unit (VCU), inertial measurement unit (IMU), DC module, battery compartment, laser radar, magnetic navigation and distance measurement sensors, and other equipment. It supports communication with the robot operating system (ROS).
  • Test scenario: We simulated complex environments in actual industrial production, including various types of obstacles, paths, and target points.
As shown in Figure 17, the final real vehicle validation environment provides a detailed display of the above configuration and scenario.
Experimental verification was conducted in the verification environment, and the results are shown in Figure 18 and Figure 19.
Figure 18 and Figure 19 significantly validate the effectiveness of the proposed secondary path-planning method based on the improved directed weighted graph theory and ROS integration. It can be clearly observed from the figures that the real vehicle path represented by the blue dashed line is highly consistent with the simulated path of the distance plus turning search represented by the red solid line. This high degree of consistency not only indicates that the error between the simulated path and the actual path is within an acceptable range but also proves the practicality and reliability of the proposed method in dealing with practical AGV path-planning problems. Compared with traditional methods, the secondary path-planning method proposed in this paper is not only innovative in theory but also demonstrates superior performance in practice. This indicates that improving the fusion method of the directed weighted graph theory and ROS is an effective solution in the application of AGV path planning.
In summary, Figure 18 and Figure 19 provide strong evidence to support the effectiveness of the path planning method proposed in this paper. Through theoretical and experimental validation, the secondary path-planning method based on the improved directed weighted graph theory and ROS integration can effectively optimize the path planning of AGVs in practical applications and has high application value and promotion potential. These findings provide important references and inspirations for further improving and applying this method in more complex and dynamic environments in the future.

6. Conclusions

We have introduced a directed weighted graph that combines distance weights and turning weights. Compared with the directed weighted graph based solely on distance weights, the paths obtained using the Floyd algorithm in actual applications significantly reduce the total travel time from the starting point to the endpoint. Furthermore, compared with the A* algorithm, this method not only shortens the path planning time in a wide range application scenarios but also effectively reduces the total travel time. Therefore, the application of the Floyd algorithm on a directed weighted graph that includes distance and turning weights is more suitable for the operation of automated guided vehicles (AGVs) in complex environments. The results of real vehicle verification show that the AGV path-planning algorithm proposed in this paper, based on the improved directed weighted graph theory and ROS integration, has significant practical application value in improving the efficiency and stability of path planning. In addition, the algorithm can reduce operating costs and energy consumption, making it suitable for various industrial production environments such as logistics sorting and small-scale transportation.
Future research should further optimize the algorithm by incorporating data from more practical application scenarios to enhance the intelligence level of path planning, thereby providing solid technical support for the widespread application of AGV systems.

Author Contributions

Conceptualization, Y.L. and L.L.; methodology, Y.L. and L.L.; software and validation, Y.L. and L.L.; formal analysis, Y.L.; investigation, Y.L.; data curation, Y.L. and L.L.; writing—original draft preparation and writing—review and editing, Y.L.; supervision, L.L.; project administration and funding acquisition, L.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the technology development project “Research on Intelligent Vehicle Path Planning and Control System” jointly established by Qilu University of Technology and Beijing Institute of Frontier Technology.

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Shin, H.; Li, T.; Segura, A. Trajectory optimization and scheduling for AGVs in automated container terminals. J. Intellgent Robot. Syst. 2017, 86, 253–268. [Google Scholar]
  2. Lee, S.; Kahng, H.; Cheong, T.; Kim, S. Iterative two-stage hybrid algorithm for the vehicle lifter location problem in semiconductor manufacturing. J. Manuffacturing Syst. 2019, 51, 106–119. [Google Scholar] [CrossRef]
  3. Li, Z.; Li, P. Advanced 3D Navigation System for AGV in Complex Smart Factory Environments. Electronics 2024, 13, 130. [Google Scholar] [CrossRef]
  4. Islam, M.; Liu, X.; El Saddik, A. Hierarchical and Flexible Traffic Management of Multi AGV Systems in Industrial Environments. IEEE Access 2023, 11, 3054–3067. [Google Scholar]
  5. Rusakova, I.; Kubanova, J.; Benco, D.; Kadlecová, D. Implementation of Automated Guided Vehicles for the Automation of Selected Processes and Elimination of Collisions between Handling Equipment and Humans in the Warehouse. Sensors 2024, 24, 1029. [Google Scholar] [CrossRef]
  6. Saidi, S.; Li, H.; Ghandar, A. Optimized simultaneous conflict-free task assignment and path planning for multi-AGV systems in automated warehouses. IEEE Trans. Autom. Sci. Eng. 2023, 20, 1773–1786. [Google Scholar]
  7. Brown, M.; Smith, J.; Roberts, N. Real-Time Conflict-Free Task Assignment and Path Planning of Multi-AGV Systems in Complex Industrial Settings. IEEE Trans. Ind. Inform. 2023, 19, 840–850. [Google Scholar]
  8. De Ryck, M.; Versteyhe, M.; Debrouwere, F. Energy-efficient path planning for a multiload automated guided vehicle executing multiple transport tasks in a manufacturing workshop environment. Environ. Sci. Pollut. Res. 2020, 54, 152–173. [Google Scholar]
  9. Sun, Y.; Liu, Y.; Liu, L.; Lu, J. An Automated Guided Vehicle Path Planning Algorithm Based on Improved A* and Dynamic Window Approach Fusion. Appl. Sci. 2023, 13, 10326. [Google Scholar] [CrossRef]
  10. Fang, H.; Wei, Y.; Chen, J.; Xin, B. Flocking of Second-Order Multiagent Systems With Connectivity Preservation Based on Algebraic Connectivity Estimation. IEEE Trans. Cybern. 2017, 47, 1067–1077. [Google Scholar] [CrossRef]
  11. Li, H. Ambulance emergency rescue path planning based on an improved Floyd algorithm. J. Jiangsu Ocean Univ. Nat. Sci. Ed. 2022, 31, 47–53. [Google Scholar]
  12. Yu, j.; Ge, X. Optimal Route Planning of Parking Lot Based on Dijkstra Algorithm. In Proceedings of the 2017 International Conference on Robots & Intelligent System (ICRIS), Huaian, China, 15–16 October 2017; pp. 221–224. [Google Scholar]
  13. Zhang, L.; Lan, Y.; Hu, Y.; Ren, W. A dynamic scheduling method for self-organized AGVs in production logistics systems. Procedia CIRP 2021, 104, 381–386. [Google Scholar] [CrossRef]
  14. Zhang, X.; Li, N. A Distributed Conflict-Free Task Allocation Method for Multi-AGV Systems. Electronics 2023, 12, 3877. [Google Scholar] [CrossRef]
  15. Gallo, M.D.; Mazzuto, G.; Ciarapica, F.E.; Bevilacqua, M. Dynamic Scheduling and Optimization of AGV in Factory Logistics Systems Based on Digital Twin. Appl. Sci. 2023, 13, 1762. [Google Scholar] [CrossRef]
  16. Lu, S.; Zhou, M.; Peng, X. A Review of Real-Time Fault Diagnosis Methods for industrial Smart Manufacturing. Processes 2023, 11, 369. [Google Scholar] [CrossRef]
  17. Fenton, N.; Neil, M. Risk assessment and decision analysis with Bayesian networks. J. Risk Res. 2018, 21, 600–620. [Google Scholar]
  18. Hossain, M.S.; Muhammad, G. Cloud-assisted industrial internet of things (IIoT)–enabled framework for health monitoring. Comput. Netw. 2016, 101, 192–202. [Google Scholar] [CrossRef]
  19. Al-Turjman, F.; Alturjman, S. Context-sensitive access in industrial internet of things (IIoT) healthcare applications. IEEE Trans. Ind. Inform. 2018, 14, 2736–2744. [Google Scholar] [CrossRef]
  20. Gopinathan, D.; Nayyar, A.; Qureshi, B. An Overview of IoT Sensor Data Processing, Fusion, and Analysis Techniques. Sensors 2020, 20, 6076. [Google Scholar] [CrossRef]
  21. Li, X.; Gao, T.; Qian, H.; Yan, S. An Improved Unauthorized Unmanned Aerial Vehicle Detection Algorithm Using Radiofrequency-Based Statistical Fingerprint Analysis. Sensors 2023, 23, 3110–3127. [Google Scholar]
  22. Shahzad, M.; Khan, U.; Mahmood, Z. A Fast and Accurate Real-Time Vehicle Detection Method Using Deep Learning for Unconstrained Environments. Appl. Sci. 2023, 13, 3059. [Google Scholar] [CrossRef]
  23. Aparicio, J.; Resende, M. An Efficient Implementation of a Shortest Path Algorithm. J. Graph Algorithms Appl. 2023, 27, 123–141. [Google Scholar]
  24. Goldberg, A. Point-to-point shortest path algorithms with preprocessing. In Proceedings of the 33nd Conference on Current Trends in Theory and Practice of Computer Science, Harrachov, Czech Republic, 20–26 January 2007; pp. 88–102. [Google Scholar]
  25. Wayahdi, M.; Ginting, S.; Syahputra, D. Greedy, A-Star, and Dijkstra’s Algorithms in Finding the Shortest Path. Int. J. Adv. Data Inf. Syst. 2021, 2, 45–52. [Google Scholar] [CrossRef]
  26. Chen, R.; Gotsman, C. Efficient Fastest-Path Computations for Road Maps. Compact. Vis. Media 2021, 7, 267–281. [Google Scholar] [CrossRef]
  27. Holzinger, A.; Carrington, A.; Müller, H. Measuring the quality of explanations: The system causability scale (SCS). KI—Künstl. Intell. 2020, 34, 193–198. [Google Scholar] [CrossRef]
  28. Gong, L.; Cheng, Q. Exploiting edge features for graph neural networks. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Long Beach, CA, USA, 15–20 June 2019; pp. 9211–9219. [Google Scholar]
  29. Ren, Z.; Zheng, Y.; Dong, X. Node importance estimation for neural networks on directed graphs. IEEE Trans Neural Netw. Learn. Syst. 2021, 32, 2152–2163. [Google Scholar]
  30. Hewa Welege, N.; Pan, W.; Kumaraswamy, M. Social network analysis applications in sustainable construction and built environment management: A review. Built Environ. Proj. Asset Manag. 2021, 11, 511–528. [Google Scholar] [CrossRef]
  31. He, Z.; Chen, W.; Wei, X.; Liu, Y. On the statistical significance of communities from weighted graphs. Sci. Rep. 2021, 11, 20304. [Google Scholar] [CrossRef]
  32. Huber, S.; Held, M. A fast straight-skeleton algorithm based on generalized motorcycle graphs. Int. J. Comput. Geom. Appl. 2012, 22, 471–498. [Google Scholar] [CrossRef]
  33. Choi, G.; Leung-Liu, Y.; Gu, X.; Lui, L. Parallelizable global conformal parameterization of simply-connected surfaces via partial welding. SIAM J. Imaging Sci. 2020, 13, 1049–1083. [Google Scholar] [CrossRef]
  34. Abel, Z.; Demaine, E.; Demaine, M. Reconfiguration of 3D Orthogonal Structures by Orthogonal Dissections. Discret. Comput. Geom. 2021, 66, 682–706. [Google Scholar]
  35. Lien, J.; Amato, N. Approximate Convex Decomposition of Polygons Computational. Geometry 2023, 35, 100–123. [Google Scholar]
  36. Goldberg, A.; Harrelson, C. Computing the shortest path: A* search meets graph theory. SIAM J. Comput. 2005, 34, 140–169. [Google Scholar]
  37. Anbarasi, J.; Izhar, L. A Systematic Review and Analysis of Intelligence-Based Pathfinding Algorithms in the Field of Video Games. Appl. Sci. 2022, 12, 5499. [Google Scholar] [CrossRef]
  38. Li, M.; Zhu, H. Efficiency of Floyd-Warshall Algorithm and its Variants in Network Analysis. Netw. Spat. Econ. 2021, 21, 509–523. [Google Scholar]
  39. Wang, H.; Yin, P.; Zheng, W.; Wang, H.; Zuo, J. Path Planning for Mobile Robots Based on Improved A* Algorithm and Dynamic Window Approach. Robotics 2020, 42, 346–353. [Google Scholar]
  40. Craus, M.; Bîrlescu, V.; Agop, M. Fractal Aspects in Classical Parallel Computing. Computers. 2016, 5, 19. [Google Scholar] [CrossRef]
  41. Jung, H.; Kim, D. A Comparative Study of All-Pairs Shortest Path Algorithms. J. Comput. Sci. 2022, 54, 101287. [Google Scholar]
  42. Oliveira, L.; de Moura, A. Floyd-Warshall Algorithm in Quantum Computing. Quantum Inf. Process. 2021, 20, 256. [Google Scholar]
  43. Park, J.; Kim, D. Obstacle Detection and Safely Navigate the Autonomous Vehicle from Unexpected Obstacles on the Driving Lane. Sensors 2020, 20, 4719. [Google Scholar] [CrossRef] [PubMed]
Figure 1. Vertex selection and path planning effects in convex polygons (a,b).
Figure 1. Vertex selection and path planning effects in convex polygons (a,b).
Actuators 13 00404 g001
Figure 2. Triangulation method for decomposing multi-connected domain maps (a,b).
Figure 2. Triangulation method for decomposing multi-connected domain maps (a,b).
Actuators 13 00404 g002
Figure 3. Basic process of the path planning algorithm based on the improved directed weighted graph theory.
Figure 3. Basic process of the path planning algorithm based on the improved directed weighted graph theory.
Actuators 13 00404 g003
Figure 4. Directed weighted graph of the vehicle operation scenario.
Figure 4. Directed weighted graph of the vehicle operation scenario.
Actuators 13 00404 g004
Figure 5. Path planning results of the Floyd algorithm.
Figure 5. Path planning results of the Floyd algorithm.
Actuators 13 00404 g005
Figure 6. Directed weighted graph with increased steering weights.
Figure 6. Directed weighted graph with increased steering weights.
Actuators 13 00404 g006
Figure 7. Path planning results after adding steering weights.
Figure 7. Path planning results after adding steering weights.
Actuators 13 00404 g007
Figure 8. Comparison of path planning results under different directed weighted graphs (P0–P12).
Figure 8. Comparison of path planning results under different directed weighted graphs (P0–P12).
Actuators 13 00404 g008
Figure 9. Comparison of path planning results under different directed weighted graphs (P0–P13).
Figure 9. Comparison of path planning results under different directed weighted graphs (P0–P13).
Actuators 13 00404 g009
Figure 10. Comparison results of path planning and A* algorithm path planning under different directed weighted graphs.
Figure 10. Comparison results of path planning and A* algorithm path planning under different directed weighted graphs.
Actuators 13 00404 g010
Figure 11. Comparison results of path planning and A* algorithm path planning under different directed weighted graphs II.
Figure 11. Comparison results of path planning and A* algorithm path planning under different directed weighted graphs II.
Actuators 13 00404 g011
Figure 12. Directed weighted graph of vehicle operation scenarios.
Figure 12. Directed weighted graph of vehicle operation scenarios.
Actuators 13 00404 g012
Figure 13. Gazebo simulation experiment environment diagram.
Figure 13. Gazebo simulation experiment environment diagram.
Actuators 13 00404 g013
Figure 14. Gazebo simulation experiment map.
Figure 14. Gazebo simulation experiment map.
Actuators 13 00404 g014
Figure 15. Path planning diagram based on ROS and directed weighted graph theory (P0–P12).
Figure 15. Path planning diagram based on ROS and directed weighted graph theory (P0–P12).
Actuators 13 00404 g015
Figure 16. Path planning diagram based on ROS and directed weighted graph theory (P0–P13).
Figure 16. Path planning diagram based on ROS and directed weighted graph theory (P0–P13).
Actuators 13 00404 g016
Figure 17. Real vehicle validation environment.
Figure 17. Real vehicle validation environment.
Actuators 13 00404 g017
Figure 18. Comparison between simulation experiment 1 and real vehicle verification.
Figure 18. Comparison between simulation experiment 1 and real vehicle verification.
Actuators 13 00404 g018
Figure 19. Comparison between simulation experiment 2 and real vehicle verification.
Figure 19. Comparison between simulation experiment 2 and real vehicle verification.
Actuators 13 00404 g019
Table 1. Directed weighted table of the pure distance weights.
Table 1. Directed weighted table of the pure distance weights.
012345678910111213
007151127infinfinfinfinfinfinfinfinf
1inf0infinfinf6infinfinfinfinfinfinfinf
2infinf0infinfinfinf12.914infinfinfinfinf
3infinfinf016.9inf3infinfinfinfinfinfinf
4infinfinfinf0infinfinfinfinfinfinfinf24.9
5infinfinfinfinf08.17inf14.1infinfinfinf
6infinfinfinfinfinf0infinf8infinfinfinf
7infinfinfinfinfinfinf0infinf7infinfinf
8infinfinfinfinfinfinfinf0infinfinf22.2inf
9infinfinfinfinfinfinfinfinf09.6infinf10.3
10infinfinfinfinfinfinfinfinfinf011infinf
11infinfinfinfinfinfinfinfinfinfinf04.8inf
12infinfinfinfinfinfinfinfinfinfinfinf015
13infinfinfinfinfinfinfinfinfinfinfinfinf0
Table 2. Directed weighting table with added steering weights.
Table 2. Directed weighting table with added steering weights.
012345678910111213
0011.52216.241infinfinfinfinfinfinfinfinf
1inf0infinfinf16.3infinfinfinfinfinfinfinf
2infinf0infinfinfinf24.916infinfinfinfinf
3infinfinf019.9inf9.4infinfinfinfinfinfinf
4infinfinfinf0infinfinfinfinfinfinfinf36.3
5infinfinfinfinf010.116.9inf14.9infinfinfinf
6infinfinfinfinfinf0infinf11.4infinfinfinf
7infinfinfinfinfinfinf0infinf16.7infinfinf
8infinfinfinfinfinfinfinf0infinfinf32.6inf
9infinfinfinfinfinfinfinfinf020.7infinf14.2
10infinfinfinfinfinfinfinfinfinf022.9infinf
11infinfinfinfinfinfinfinfinfinfinf012.7inf
12infinfinfinfinfinfinfinfinfinfinfinf015
13infinfinfinfinfinfinfinfinfinfinfinfinf0
Table 3. Comparison of results from Experiment 1.
Table 3. Comparison of results from Experiment 1.
Path Search
Algorithm
Distance Cost
(Meters)
Turning Cost
(Degrees)
Total Cost Time
(Seconds)
Floyd-based Pure Distance Directed Weighted Graph Search13.2854223.34
Floyd-based Distance plus Turning Directed Weighted Graph Search14.6419421.56
A* Path Search12.3685424.78
Table 4. Comparison of results from Experiment 2.
Table 4. Comparison of results from Experiment 2.
Path Search
Algorithm
Distance Cost
(Meters)
Turning Cost
(Degrees)
Total Cost Time
(Seconds)
Floyd-based Pure Distance Directed Weighted Graph Search12.1848923.87
Floyd-based Distance plus Turning Directed Weighted Graph Search12.8715923.25
A* Path Search10.2175822.13
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.

Share and Cite

MDPI and ACS Style

Li, Y.; Liu, L. Research on AGV Path Planning Based on Improved Directed Weighted Graph Theory and ROS Fusion. Actuators 2024, 13, 404. https://doi.org/10.3390/act13100404

AMA Style

Li Y, Liu L. Research on AGV Path Planning Based on Improved Directed Weighted Graph Theory and ROS Fusion. Actuators. 2024; 13(10):404. https://doi.org/10.3390/act13100404

Chicago/Turabian Style

Li, Yinping, and Li Liu. 2024. "Research on AGV Path Planning Based on Improved Directed Weighted Graph Theory and ROS Fusion" Actuators 13, no. 10: 404. https://doi.org/10.3390/act13100404

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop