Multi-AGV path planning method in flexible manufacturing workshop complex environment

By using a Petri net-based multi-AGV path planning method, combined with an improved A* algorithm and a probabilistic motion model, the problems of high-frequency path conflicts and AGV motion uncertainty in flexible manufacturing workshops were solved, achieving efficient and stable logistics transportation.

CN121165732APending Publication Date: 2025-12-19UNIV OF ELECTRONICS SCI & TECH OF CHINA
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202511399759.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-28
Publication Date
2025-12-19

AI Technical Summary

Technical Problem

Existing AGV path planning methods are inadequate in flexible manufacturing workshops to cope with high-frequency path conflicts, congestion deadlocks, and uncertainties in AGV motion states, resulting in insufficient real-time performance and stability, and failing to meet the needs of efficient and reliable logistics in complex environments.

Method used

A multi-AGV path planning method based on Petri net theory is adopted, combined with an improved A* algorithm and a probabilistic motion model. Congestion-aware path planning and collision-avoidance deadlock strategies are designed. By constructing a probabilistic motion model and optimizing path selection with dynamic constraints, the movement of AGVs is coordinated in real time to avoid conflicts and deadlocks.

Benefits of technology

It improves the efficiency and stability of path planning, reduces path conflicts and local congestion, solves deadlock problems, ensures efficient operation of the system in complex environments, and meets the logistics needs of flexible manufacturing workshops.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121165732A_ABST
    Figure CN121165732A_ABST
Patent Text Reader

Abstract

The invention provides a multi-AGV path planning method in a flexible manufacturing workshop complex environment, and the method comprises the steps: firstly carrying out the modeling of a logistics process of a flexible manufacturing workshop based on a Petri net theory, and then designing a single-AGV path planning algorithm considering the congestion degree based on a constructed Petri net model of the logistics process of the flexible manufacturing workshop, a multi-AGV collision deadlock prevention strategy based on a Petri net is designed, finally, a multi-AGV path optimization algorithm considering an AGV motion state uncertainty scene is designed, a collision conflict prevention method is expanded, and the AGV is constrained by constructing a probability motion model according to a station arrival prediction probability. According to the method, the stability and the transportation efficiency of the multi-AGV system in a complex dynamic environment are remarkably improved, and an innovative solution is provided for realizing intelligent and efficient logistics in a flexible manufacturing workshop.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the fields of intelligent manufacturing and logistics technology, and in particular to a method for multi-AGV path planning in complex environments of flexible manufacturing workshops. Background Technology

[0002] In the context of Industry 4.0, flexible manufacturing workshops have become crucial for the transformation and upgrading of the manufacturing industry due to their efficiency and flexibility. Automated Guided Vehicle (AGV) systems, as a core component of workshop logistics, significantly improve material handling efficiency through collaborative work. However, with the diversification of production tasks and rapid changes in cycle time, the complexity of workshop layouts and the random fluctuations in tasks are increasing, leading to high-frequency path planning methods facing problems such as path conflicts and congestion deadlocks. Traditional single-AGV path planning algorithms are mostly designed for stable production environments and are difficult to adapt to the needs of multi-AGV collaboration. While priority-based multi-AGV collaboration strategies can alleviate conflicts, their computational complexity surges with the increase in the number of AGVs or the complexity of the environment, resulting in insufficient real-time performance and stability, making them unsuitable for the complex environments of flexible manufacturing workshops.

[0003] Furthermore, the uncertainty of AGV movement in the complex environment of the workshop further exacerbates the difficulty of path planning. AGV speed fluctuations may prevent them from reaching the designated station within the specified time according to the planned path, which can easily lead to path conflicts and make it difficult to meet the needs of flexible manufacturing workshops for efficient and reliable logistics. There is an urgent need for a path planning method that can comprehensively solve the problems of path conflicts, deadlocks and uncertainties, while improving the efficiency and stability of multi-AGV systems, so as to meet the dynamic logistics needs of flexible manufacturing workshops. Summary of the Invention

[0004] The purpose of this invention is to provide a multi-AGV path planning method in the complex environment of a flexible manufacturing workshop, in order to solve the high-frequency conflicts caused by local congestion and uncertain AGV motion states that may occur in flexible manufacturing workshops. The method of this invention considers hierarchical collaborative path optimization for high-frequency path conflicts and congestion deadlock, so that the system can maintain efficient and stable operation in scenarios with fluctuating random tasks and uncertain AGV motion states.

[0005] A method for multi-AGV path planning in a complex environment of a flexible manufacturing workshop, the method comprising:

[0006] Step S1: Model the logistics process in the flexible manufacturing workshop based on Petri net theory;

[0007] Step S2: Based on the constructed Petri net model of the flexible manufacturing workshop logistics process, design a single AGV path planning algorithm that considers congestion.

[0008] Step S3: Design a multi-AGV anti-collision deadlock strategy based on Petri nets;

[0009] Step S4: Design a multi-AGV path optimization algorithm that considers the uncertain motion state of AGVs, extend the anti-collision method, and constrain the AGVs by constructing a probabilistic motion model and based on the predicted probability of station arrival.

[0010] Further, step S1 specifically includes:

[0011] Step S11: Analyze the working scenario of the AGV system in the flexible manufacturing workshop, establish a Petri net model of the logistics process in the flexible manufacturing workshop, use warehouses to represent the AGV pause points, path stations, material and finished product storage areas, use transitions to represent workshop paths, use tokens to represent AGVs, and the excitation of transitions indicates that the AGV leaves the node and goes to another transition along the transition. Each path station in the path system is also a communication station. The AGV communicates with the scheduling system and receives scheduling instructions at the communication station.

[0012] Step S12: Mathematically model the uncertainty of AGV motion in complex environments. Assume that the average speed v of the AGV moving between stations follows a log-normal probability distribution, with the following probability density function:

[0013]

[0014] Where, μ v and σ v These are the mean and standard deviation in the logarithmic space, respectively, μ v Indicates the preset speed, σ v Let represent speed fluctuations; assuming the distance between stations along the path is d, then the probability density function of the travel time t between stations is:

[0015]

[0016] Substituting the probability density of the average movement speed into the probability distribution function of the movement time t, we obtain the cumulative distribution function of the movement time t between AGV stations as follows:

[0017]

[0018] Further, in step S11, a time-colored Petri net is used to describe the AGV path system, and the workshop environment map is transformed into a time-colored Petri net model TCPN={P,R,C,F,W,M0,D}, where P is the set of places, R is the set of transitions, C is the set of token colors, F is the flow relationship, which is the set of directed arcs in the Petri net, defining the connection relationship between places and transitions, representing the flow path of tokens between places and transitions, W is the arc weight function, which assigns weights to the arcs in the flow relationship, M0 is the initial identifier, which is the initial token distribution on the set of places P, and D is the set of time delays defined on transitions or places;

[0019] The color set Θ in the Petri net is Θ = {θ1, θ2, ..., θ} m} represents the set of AGVs, θ m Let represent the m-th AGV. Each AGV is represented by a unique color. Each token θ corresponds to one AGV. The coloring map C in the Petri net represents the correspondence between the tokens of a place or transition and the color set. If a path node allows an AGV to enter, the coloring map of its corresponding place includes the color of that AGV. If the path allows AGV passage, the coloring map of the corresponding transition also includes the color of that AGV. The time delay set D in the Petri net is D = {d1, d2, ..., d...}. n} represents the time required for AGV route transportation.

[0020] Further, step S2 specifically includes:

[0021] The workshop transportation map is represented by a Petri net, the AGVs are represented by tokens, and the movement path of the tokens is represented by the stock sequence H(θ) = [p i ,p j ,...,p k The sequence indicates that the subscript in the sequence represents the warehouse number, and the transportation path of the AGV is the movement path of the token. Let the starting point of a single AGV be p0 and the ending point be p0. g The cost function of the A* algorithm is: f(p) = g(p) + h(p), where g(p) represents the planned cost from the starting point p0 to the current point p, and in the A* algorithm, it represents the shortest distance from the starting point p0 to the current point p; h(p) represents the cost from the current point p to the ending point p. g The estimated cost is heuristic information, which in the A* algorithm is the Manhattan distance between two points;

[0022] Set POS = {pos1,pos2,...,pos} p} represents the actual coordinates of each warehouse on the workshop map, where Len = {len1, len2, ..., len...} t} is the actual length of each transition in the workshop map, corresponding to the time attribute D in the time-delay Petri net;

[0023] In the A* algorithm, the planned cost g(p) includes path length cost, path turning cost, and node load cost. The path length cost g1(p) is expressed as: g1(p) = g(p) pre )+len(t<p pre ,p>), where g(p pre ) represents the cost of the parent library, len(t) <p pre p> indicates that p is from the parent library. pre The path length cost of the path transition to the next library p;

[0024] The turning cost g2(p) is determined based on the location between depots. The turning cost g2(p) for the starting depot and the second depot on the path is 0, while the turning cost for other depots on the path is determined by the following formula:

[0025]

[0026] The method for determining whether to turn is: calculate the parent library p. pre The preceding repository p of the parent repository pre1 The angle α1 of the line connecting the location p and the parent location p pre The angle α2 of the connecting line is calculated as follows:

[0027]

[0028] Where pos(p pre [0] indicates the parent library p pre The corresponding x-coordinate on the map, pos(p) pre [1] indicates the parent library p pre Corresponding to the vertical coordinate on the map, α1 and α2 are compared. If the difference between the two angles is greater than the set angle value β, then a turn is identified.

[0029] Design a two-dimensional matrix K to represent the node load in an m×n map. Let x represent the node load value corresponding to library p, and x be the iteration number. The node load matrix K iterates over time based on the node load. The node load cost g3(p) is calculated as follows: μ is a settable constant that determines the degree of influence of node load on the algorithm. When μ = 0, node load has no effect on path planning. The calculation formula is as follows:

[0030]

[0031] The iteration period of the node load matrix K is T, which means that the load matrix is ​​updated once every T time intervals. This represents the node load value after the x-th iteration. δ represents the number of AGVs that pass through this node during the time interval from the (x-1)th iteration to the xth iteration. p Here, E is a constant coefficient, representing the decrease in node load over time.

[0032] Therefore, the planned path cost g(p) is:

[0033]

[0034] The existing cost estimation is improved by introducing dynamic heuristic weights w, and the estimated cost is set as follows:

[0035] h(p)=wd=w(|pos(p)[0]-pos(p g )[0]|+|pos(p)[1]-pos(p g [1])

[0036]

[0037] d represents the distance from the current point p to the target point, i.e., the endpoint p. g Manhattan distance.

[0038] Furthermore, step S3 specifically includes:

[0039] Step S31, define AGV collision as: Where, p i M(p) represents any place in the set of places P. i ,θ) represents the location of Token θ in the kusto. i The identifier on the Petri net indicates whether the AGV is on the path node corresponding to this library. When the number of tokens in the Petri net model exceeds 1, a collision occurs. In the Petri net, the movement of the AGV is controlled by controlling the transition trigger. The trigger condition u(t,θ,time) is defined, which represents whether the token θ can trigger the transition t at time time. If u(t,θ,time) = 1, it can be triggered; otherwise, it cannot be triggered.

[0040] Since the capacity of a place in a Petri net is 1, when the token number on place p is 0, only one token among all the input transition front places can acquire the excitation right of place p. When the token number on place p is 1, none of the other tokens among the input transition front places can acquire the excitation right. This type of collision avoidance condition must hold for every place in the Petri net, and is expressed as:

[0041] An improved collision detection CBS algorithm is designed by combining the established Petri net model and the defined collision decision formula.

[0042] Step S32: Based on the Petri net model, a deadlock prevention strategy is proposed. When a deadlock occurs in the system, the corresponding Petri net part of the identifier will become unreachable, that is, the system loses part of its activity. Before each system state change, the system will check whether there are other AGVs that will cause a deadlock when each AGV triggers the next transition. This requires prioritizing the AGVs according to the remaining distance of the transportation task they are responsible for. When the priorities are equal, the AGVs are sorted by their IDs. The AGVs with lower priorities will first determine whether a deadlock will occur. If a deadlock will occur, the deadlock prevention strategy will be implemented.

[0043] Define reverse(t) as the reverse of transition t, if · t1 = t2 · and · t2 = t1 · Then t1 = reverse(t2) and t2 = reverse(t1). · t1 is the forward location of transition t1, t2 · For the backward places of transition t2, the sequence T represents a transition sequence {t1, t2, ..., t}. n}, t n To represent a transition, define reverse(T) as the reverse sequence of T: reverse(T) = {reverse(t)} n ),reverse(t n-1 ),...,reverse(t1)};

[0044] Define a set of n AGVs, i.e. The condition for deadlock or potential deadlock to occur is that either of the following two equations is satisfied:

[0045]

[0046] Wherein, M(t) i1 · ) for the warehouse t i1 · The algorithm identifies the AGV system deadlock and Path(θ) is the set of transitions. After defining the criteria for deadlock in the AGV system, the algorithm solves the deadlock problem by traversing the AGVs in reverse order of priority and judging whether the next transition will trigger deadlock. A Petri net-based deadlock detection algorithm is proposed.

[0047] Furthermore, the collision detection CBS algorithm is specifically as follows:

[0048] Step 1: Initialize the priority queue CT, sorted in ascending order according to the constraint node cost, and initialize an empty node R as the root node. R.constraints are the path constraints for node R;

[0049] Step 2: Update and maintain the load matrix K periodically;

[0050] Step 3: Apply the single AGV path planning algorithm to each AGV to obtain R.solution, which is the multi-AGV path planning solution obtained by the node under its path constraints;

[0051] Step 4: Add up the costs obtained from the path planning of each AGV to get R.cost = cost(R.solution);

[0052] Step 5: Insert the root node R into CT. If CT is not empty, continue to loop and remove the head node N of CT.

[0053] Step 6: Perform a conflict check on N.soultion. If there is no conflict in N.soultion, then the final path planning result is the solution. r =N.solution, and exit the loop; otherwise, remove the head node N from CT and find the conflict place.

[0054] Step 7: Loop through the tokens θ representing the AGVs involved in the conflicts. i ;

[0055] Step 8: Initialize the new node B, node constraints B.constrations = N.constrations + (θ) i ,p,time);

[0056] Step 9: Calculate the path cost B.cost = cost(B.solution), and insert B into CT;

[0057] Step 10: End the loop and output the final collision-free path planning result (solution). r .

[0058] Furthermore, the Petri net-based deadlock detection algorithm is specifically as follows:

[0059] Step 1: Initialization and AGVθ i List of AGVs that cause deadlock

[0060] Step 2: Loop through all AGVs except θ i AGVθ outside j Obtain AGVθ jNext step of change j ;

[0061] Step 3: Let x = index(reverse(t) j ),θ i ), index(reverse(t j ),θ i ) represents the transition t j The reverse transition in AGVθ i If the index corresponding to the planned path is not in the path, then x = -1, y = index(t) i ,θ i );

[0062] Step 4: If x < y, then θ j The next change is not in θ i With θ j Break out of the loop within the path between them;

[0063] Step 5: Let transition t n =t i Set flag = true, and if y ≤ x, then keep looping through steps 6-8;

[0064] Step 6: If index(reverse(t) n ),θ j If ) = -1, then set flag = false and exit the loop;

[0065] Step 7: If next(θ) i ,t n ) = null, next(θ) i ,t n ) represents AGVθ i Path changes t n The next change is to set flag = false and exit the loop;

[0066] Step 8: Update y = y + 1, x = x - 1, t n =next(θ) i ,t n );

[0067] Step 9: If flag = true, then set the AGV... j Add it to D;

[0068] Step 10: End the loop and output the list D of AGVs that cause the deadlock.

[0069] Furthermore, when a deadlock or potential deadlock is detected, the system needs to automatically resolve the deadlock. If this is not possible, a deadlock-free path must be replanned. This needs to be done by selecting an intermediate location. The method for obtaining an intermediate location is as follows:

[0070] Step 1: When a deadlock is detected between AGVs, obtain the deadlock path subsequence [p] i ,p j ,...,p n ];

[0071] Step 2: The intermediate warehouses are obtained using a breadth-first search algorithm combined with a deadlock detection algorithm. Breadth-first search is performed on warehouses outside the deadlock path subsequence, and warehouses on other AGV paths are excluded.

[0072] Step 3: Determine the intermediate locations by identifying the subsequence of the deadlock path and the location closest to the target point, provided that the new path does not constitute a deadlock.

[0073] Step 4: After obtaining the intermediate warehouse, first plan the path for the AGV to reach the intermediate warehouse, and then plan the path from the intermediate warehouse to the destination.

[0074] Further, step S4 specifically includes:

[0075] Let AGV represent the token θ. i The planned path is H(θ) i )=[p i1 ,p i2 ,...,p ik ,..,p in ], then Tokenθ i At time t, it is located at p ik The predicted occupancy probability is expressed as:

[0076]

[0077] Define the probability of motion delay caused by AGV speed fluctuation as: θ represents time t i The probability of not reaching the next path location is obtained from step S12. Since the AGV position is known at the initial time, the probability of the planned path point being occupied at t=0 is 1. The occupancy probability of each station on the planned path can be predicted by iterative calculation based on the predicted occupancy probability formula, thereby predicting the AGV's movement status.

[0078] The positional constraint under high motion delay is defined, and the Token θ represented by any two AGVs is given. i and θ j If, according to the planned path, the expected location of the reservoir at time t is H(θ) i)[m] and H(θ) j If [n], then the path constraint becomes:

[0079]

[0080] ∨ represents the intersection. If the probability of motion delay of any AGV at time t in the planned path is greater than η, where η is the set constant threshold, then this AGV must satisfy two constraints at the same time; otherwise, it only needs to satisfy constraint (1).

[0081] The constraints on the cooperative motion of multiple AGVs are enhanced based on the predicted probability. Less than the set threshold λ, i.e., AGV i Arrive at the warehouse on time ik If the probability is less than the set value, then p is not... ik For subsequent path planning, only consider p. ik The path planning conflict before reaching p ik Then, secondary path planning is performed. When the path station detects the presence of an AGV... j When motion delay occurs, for AGV j Perform separate path planning based on node constraints.

[0082] The beneficial technical effects of this invention are as follows:

[0083] To improve the efficiency and stability of path planning, this invention uses a hierarchical collaborative optimization path planning method, combined with an improved A* algorithm, Petri net theory and probabilistic motion model, to significantly improve the efficiency and stability of path planning for multi-AGV systems in complex environments. Especially in scenarios with random fluctuations in tasks and uncertain AGV motion states, the system can maintain high-efficiency operation and avoid the real-time problems caused by the surge in computational complexity of traditional methods.

[0084] To reduce path conflicts and local congestion, the improved single AGV path planning algorithm can dynamically assess the congestion level of path nodes by introducing congestion factors and node loads, and prioritize paths with lower loads, thereby effectively avoiding local congestion areas. At the same time, the multi-AGV anti-collision strategy further reduces the probability of high-frequency path conflicts through conflict prediction and real-time coordination.

[0085] To solve the deadlock problem, an anti-deadlock strategy based on Petri net theory is designed to detect and resolve cyclic waiting deadlock problems in multi-AGV systems in real time. By prioritizing and dynamically adjusting AGV paths, this invention ensures that the system maintains the continuity and reliability of logistics transportation in complex environments.

[0086] To adapt to complex and dynamic environments, this invention addresses the uncertainties in the motion state of AGVs in flexible manufacturing workshops (such as speed fluctuations and changes in ground conditions) by constructing a probabilistic motion model and introducing uncertainty constraints. This method can optimize path selection in dynamic environments, balance efficiency and robustness, and meet the needs of flexible manufacturing workshops for efficient and reliable logistics. Attached Figure Description

[0087] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0088] Figure 1 This is a flowchart of a multi-AGV path planning method provided by an embodiment of the present invention in a complex environment of a flexible manufacturing workshop;

[0089] Figure 2 This is an example diagram of the Petri net model of the logistics process corresponding to the AGV system provided in this embodiment of the invention;

[0090] Figure 3 This is an example diagram of collision conflicts in an AGV system provided in an embodiment of the present invention;

[0091] Figure 4 This is an example diagram of AGV system deadlock provided in an embodiment of the present invention;

[0092] Figure 5 This is a flowchart of the AGV system unlocking process provided in an embodiment of the present invention;

[0093] Figure 6 This is a schematic diagram of the AGV system unlocking provided in an embodiment of the present invention. Detailed Implementation

[0094] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0095] A multi-AGV path planning method for complex environments in flexible manufacturing workshops is proposed. First, considering the potential local congestion in the workshop, a single AGV path optimization planning algorithm considering congestion degree is designed. Based on this, a multi-AGV anti-collision deadlock strategy based on Petri net theory is designed. Then, for the uncertain AGV motion state phenomenon that may occur in complex workshop environments, a multi-AGV path optimization algorithm for uncertain workshop environments is designed.

[0096] To address the high-frequency path conflict and congestion issues in single AGV path planning within the complex environment of flexible manufacturing workshops, this paper proposes a congestion-aware path planning algorithm based on an improved A* algorithm. First, by analyzing the impact of task random fluctuations and spatial complexity on path planning, the traditional A* algorithm is improved by introducing a congestion factor as part of a heuristic function to dynamically evaluate the congestion level of path nodes, thereby optimizing path selection and avoiding localized congestion areas.

[0097] The multi-AGV anti-collision deadlock strategy uses Petri net modeling to describe the motion state and resource occupation relationship of multiple AGVs, and identifies potential collision and deadlock scenarios. Then, by designing an anti-collision mechanism, combined with a collision avoidance mechanism based on conflict prediction, the movement of AGVs is coordinated in real time to avoid collisions. For the deadlock problem, a dynamic conflict detection and unlocking algorithm is introduced. When a circular waiting is detected, the deadlock is resolved by adjusting the AGV path or pausing the operation of some AGVs.

[0098] The proposed multi-AGV path optimization algorithm for uncertain workshop environments first constructs a multi-AGV probabilistic motion model based on the predicted probability of path station occupancy, quantifying the speed and position uncertainties of AGVs caused by factors such as ground conditions and load changes. Then, these uncertainty constraints are introduced into the path planning, and the improved A* algorithm and Petri net collaborative strategy are combined to optimize the path selection of multiple AGVs, ensuring that conflicts and deadlocks are avoided in dynamic environments. Through iterative path optimization, efficiency and robustness are balanced.

[0099] A method for multi-AGV path planning in a complex environment of a flexible manufacturing workshop, the method comprising the following steps:

[0100] Step S1 involves modeling the logistics process in a flexible manufacturing workshop based on Petri net theory, providing theoretical support for multi-AGV path planning methods in flexible manufacturing workshops under complex environments. Specifically, this includes:

[0101] Step S11: Analyze the working scenario of the AGV system in the flexible manufacturing workshop, establish a Petri net model of the logistics process in the flexible manufacturing workshop, use warehouses to represent the AGV pause points, path stations, material and finished product storage areas, use transitions to represent workshop paths, use tokens to represent AGVs, and the excitation of transitions indicates that the AGV leaves the node and moves to another transition. Each path station in the path system is also a communication station. The AGV communicates with the scheduling system and receives scheduling instructions at the communication station.

[0102] To distinguish different AGVs and represent the time required for transportation, a time-colored Petri net is used to describe the AGV path system. The workshop environment map is transformed into a time-colored Petri net model TCPN = {P, R, C, F, W, M0, D}, where P is the set of places, R is the set of transitions, C is the set of token colors, F is the flow relation (i.e., the set of directed arcs in the Petri net), defining the connection relationship between places and transitions, representing the flow path of tokens between places and transitions, W is the arc weight function, assigning weights to the arcs in the flow relation, M0 is the initial identifier, which is the initial token distribution on the set of places P, and D is the set of time delays defined on transitions or places. The capacity of each place in the Petri net model is set to 1, because each path node can only accommodate one AGV. The weight of each arc in the Petri net model is 1, indicating that the activation of a transition causes tokens to flow from the transition input place to the transition output place, representing the movement of the AGV.

[0103] The color set Θ in the Petri net is Θ = {θ1, θ2, ..., θ} m} represents the set of AGVs, θ m Let represent the m-th AGV. Each AGV is represented by a unique color. Each token θ corresponds to one AGV. The coloring map C in the Petri net represents the correspondence between the tokens (i.e., the set of AGVs allowed to travel through the edge) of a place (i.e., a path node) and the color set. If a path node allows an AGV to enter, the coloring map of its corresponding place includes the color of that AGV. Similarly, if a path allows an AGV to travel, the coloring map of the path's corresponding transition also includes the color of that AGV. Typically, a path allows all AGVs to travel. The time delay set D in the Petri net is {d1, d2, ..., d...}. n} represents the time required for AGV path transportation, and the Petri net model is as follows: Figure 2 As shown.

[0104] Step S12: Mathematically describe the uncertainty of AGV movement in complex environments. After the scheduling command is sent to the AGV, the AGV executes the movement command. Due to factors such as the workshop environment, the AGV's movement speed fluctuates, causing fluctuations in delivery time between stations. This corresponds to the time delay fluctuations in the transition between warehouses represented by the path stations in the Petri net model of the logistics process. Assume that the average movement speed v of the AGV between stations follows a log-normal probability distribution, and its probability density function is:

[0105]

[0106] Where, μ v and σ v These are the mean and standard deviation in the logarithmic space, respectively, μ v Indicates the preset speed, σ v This represents speed fluctuation. Let the distance between stations along the path be d, then the probability density function of the travel time t between stations is:

[0107]

[0108] Substituting the probability density of the average movement speed into the probability distribution function of the movement time t, we obtain the cumulative distribution function of the movement time t between AGV stations as follows:

[0109]

[0110] Step S2, based on the constructed Petri net model of the flexible manufacturing workshop logistics process, designs a single AGV path planning algorithm that considers congestion, specifically including:

[0111] The workshop transportation map is represented by a Petri net, while the AGV is represented by a token. The movement path of the token is represented by the stock sequence H(θ) = [p i ,p j ,...,p k The sequence indicates that the subscripts in the sequence represent the warehouse number, and the AGV's transportation path is the same as the token's movement path. The final output of the single AGV path planning algorithm is the warehouse sequence. Let the starting point of a single AGV be p0 and the ending point be p0. g The cost function of the A* algorithm is: f(p) = g(p) + h(p), where g(p) represents the planned cost from the starting point p0 to the current point p, which is known information in path planning, and in the A* algorithm, it represents the shortest distance from the starting point p0 to the current point p; h(p) represents the cost from the current point p to the destination point p. g The estimated cost is heuristic information, which in the A* algorithm is the Manhattan distance between the two points.

[0112] In the workshop, since the shortest path for each AGV does not necessarily result in the highest global efficiency of the system, but may instead cause local congestion, the cost function cannot be simply calculated using the running path length. Instead, it should be designed in combination with multiple factors. This invention considers the number of turns and the degree of path congestion as multiple factors.

[0113] To meet the needs of path planning, the Petri net is augmented with the attribute POS = {pos1,pos2,...,pos}. p} represents the actual coordinates of each warehouse on the workshop map, where Len = {len1, len2, ..., len...} t} is the actual length of each transition in the workshop map, corresponding to the time attribute D in the time-delay Petri net.

[0114] The planned cost g(p) in the A* algorithm is improved by considering not only the path length but also the turning cost and node load cost. The calculation of the path length cost g1(p) is relatively simple. When p is obtained from the parent library... pre When searching for the next location along the transition, the path length cost g1(p) is expressed as: g1(p) = g(p) pre )+len(t<p pre ,p>), where g(p pre ) represents the cost of the parent repository, len(t<p) pre p> indicates that p is from the parent library. pre The path length cost of the path transition to the next library p.

[0115] The turning cost g2(p) of the path can be determined based on the location between the storage locations. The turning cost g2(p) of the starting storage location and the second storage location on the path is 0, while the turning cost of other storage locations on the path is determined by the following formula:

[0116]

[0117] The specific determination of whether to turn or not requires judging the first two nodes of place p to find the parent place p. pre The preceding repository p of the parent repository pre1 The angle α1 of the line connecting the location p and the parent location p pre The angle α2 of the connecting line is calculated as follows:

[0118]

[0119] Where pos(p pre [0] indicates the parent library p pre The corresponding x-coordinate on the map, pos(p) pre [1] indicates the parent library ppre Corresponding to the vertical coordinate on the map, and similarly for other coordinates, α1 and α2 are compared. If the difference between the two angles is greater than the set angle value β, as shown in the following formula, then a turn is determined:

[0120] min(|α1-α2|,2π-|α1-α2|)>β;

[0121] To minimize local congestion during the single AGV path planning phase, the concept of node load is introduced. A two-dimensional node load matrix K is designed to represent the node load among the nodes in an m×n map. Let x represent the node load value corresponding to library p, and x be the iteration number. The node load matrix K iterates over time based on the node load. The node load cost g3(p) is obtained from the following formula: μ is a settable constant that determines the degree of influence of node load on the algorithm. When μ = 0, node load has no effect on path planning. The calculation formula is shown below:

[0122]

[0123] The iteration period of the node load matrix K is T, which means that the load matrix is ​​updated once every T time intervals. In the formula, x is the number of iterations. This represents the node load value after the x-th iteration. δ represents the number of AGVs that pass through this node during the time interval from the (x-1)th iteration to the xth iteration. p Here, E is a constant coefficient, representing the decrease in node load over time. Since workshop transportation tasks have a certain regularity, AGVs may pass through the same node multiple times. By introducing node load, nodes with lower loads will be prioritized during single AGV path planning, thereby reducing the occurrence of local congestion during planning.

[0124] Therefore, the cost g(p) of the planned path can be obtained as:

[0125]

[0126] In the standard A* algorithm, the estimated cost h(p) is represented as the distance from the current point p to the target point, i.e., the endpoint p. g The Manhattan distance d is shown in the following formula:

[0127] h(p)=d=|pos(p[0]-pos(p) g )[0]|+|pos(p)[1]-pos(p g )[1]|;

[0128] To accelerate the initial search speed, a dynamic heuristic weight w is introduced to improve the estimated cost, as shown in the following formula. By setting the dynamic heuristic weight, the algorithm can speed up the initial search speed while maintaining optimality in the later stage, thereby improving the efficiency of the algorithm.

[0129] h(p)=w(|pos(p)[0]-pos(p g )[0]|+|pos(p)[1]-pos(p g [1])

[0130]

[0131] Step S3, design a multi-AGV anti-collision deadlock strategy based on Petri nets, specifically including:

[0132] Step S31, design a multi-AGV anti-collision strategy, defining AGV collisions as follows:

[0133]

[0134] Where, p i M(p) represents any place in the set of places P. i ,θ) represents the location of Token θ in the kusto. i The identifier on the Petri net indicates whether the AGV is on the path node corresponding to this library. When the number of tokens in the Petri net model exceeds 1, a collision occurs. In the Petri net, AGV movement is controlled by controlling transition triggering. To handle whether each transition is triggered, a triggering condition u(t,θ,time) is defined, representing whether token θ can trigger transition t at time time time. If u(t,θ,time) = 1, it can be triggered; otherwise, it cannot. An example of AGV system collision conflict is shown below. Figure 3 As shown.

[0135] Since the capacity of a place in a Petri net is 1, when the token number on place p is 0, only one token among all the input transition front places can acquire the excitation right of place p. When the token number on place p is 1, none of the other tokens among the input transition front places can acquire the excitation right. This type of collision avoidance condition must hold for every place in the Petri net, and is expressed as:

[0136] The movement path of an AGV is represented by the sequence of places traversed by the token θ, H(θ)[k], where H(θ)[k] represents the place with path index k. This invention addresses the collision avoidance problem in multi-AGV cooperative movement by predicting conflicts in advance to prevent them during multi-AGV path planning. It combines the established Petri net model and the defined collision conflict determination formula to design an improved CBS (Conflict-Based Search) algorithm to achieve multi-AGV collision avoidance. The specific steps are as follows:

[0137] Step 1: Initialize the priority queue CT, sorted in ascending order according to the constraint node cost, and initialize an empty node R as the root node. R.constraints are the path constraints for node R;

[0138] Step 2: Update and maintain the load matrix K periodically;

[0139] Step 3: Apply the single AGV path planning algorithm to each AGV to obtain R.solution, which is the multi-AGV path planning solution obtained by the node under its path constraints;

[0140] Step 4: Add up the costs obtained from the path planning of each AGV to get R.cost = cost(R.solution);

[0141] Step 5: Insert the root node R into CT. If CT is not empty, continue to loop and remove the head node N of CT.

[0142] Step 6: Perform a conflict check on N.soultion. If there is no conflict in N.soultion, then the final path planning result is the solution. r =N.solution, and exit the loop; otherwise, remove the head node N from CT and find the conflict place.

[0143] Step 7: Loop through the tokens θ representing the AGVs involved in the conflicts. i ;

[0144] Step 8: Initialize the new node B, node constraints B.constrations = N.constrations + (θ) i ,p,time);

[0145] Step 9: Calculate the path cost B.cost = cost(B.solution), and insert B into CT;

[0146] Step 10: End the loop and output the final collision-free path planning result (solution). r ;

[0147] To avoid localized congestion caused by random fluctuations in delivery tasks, when planning multiple AGV paths, the node cost in the constraint tree CT also needs to be calculated in conjunction with the map load. Based on the node cost, nodes with lower costs are prioritized within the same layer. The cost of a single planned AGV path is:

[0148]

[0149] The cost of a single path is calculated similarly to the improved A* algorithm mentioned earlier, consisting of the path length cost road(θ) plus the node load cost k. p The turning cost angle(θ) is used to calculate the total path cost based on the Petri net multi-AGV collision avoidance strategy, which is the sum of the costs of each individual path.

[0150] Step S32: Design a multi-AGV anti-deadlock strategy. In addition to considering node collision issues, multi-AGV collaborative transportation also needs to consider the circular dependency of multi-AGV path resources.

[0151] Based on the proposed Petri net model of the logistics process, a deadlock prevention strategy is proposed. When a deadlock occurs in the system, the corresponding Petri net portion becomes unreachable, meaning the system loses some activity. The deadlock situation is represented by a Petri net, such as... Figure 4 As shown, the first path in the planned path is H(θ1) = [p0, p1, p2, p5], the second path is H(θ2) = [p6, p3, p2, p1, p4], and the third path is H(θ3) = [p5, p2, p3, p6]. It can be seen that in this case, if the AGVs all move simultaneously according to the predetermined route, a circular waiting deadlock will be formed, that is, θ2 and θ3 will both wait for the other to release the path resources. To avoid deadlock, θ2 can reach the destination first, and then θ1 and θ3 can continue to move to the destination.

[0152] To resolve deadlock issues, before each system state change, the system checks whether other AGVs will cause a deadlock when each AGV triggers the next transition. This requires prioritizing the AGVs. In this invention, the priority order is based on the remaining distance of the transport task undertaken by each AGV. When priorities are equal, the AGV ID is used for sorting. AGVs with lower priority are first assessed for potential deadlock. If a deadlock is possible, a deadlock prevention strategy is implemented. The scheduling system uses the deadlock prevention algorithm to check whether an AGV can move to the next position. AGV detection is performed according to priority; if the detection is out of order, deadlock resolution will be impossible.

[0153] Define reverse(t) as the reverse of transition t, if ·t1 = t2 · and · t2 = t1 · Then t1 = reverse(t2) and t2 = reverse(t1). · t1 is the forward location of transition t1, t2 · For the backward places of transition t2, the sequence T represents a transition sequence {t1, t2, ..., t}. n}, t n To represent a transition, define reverse(T) as the reverse sequence of T: reverse(T) = {reverse(t)} n ),reverse(t n-1 ),...,reverse(t1)};

[0154] Define a set of n AGVs, i.e. The condition for deadlock or potential deadlock to occur is that either of the following two equations is satisfied:

[0155]

[0156] Wherein, M(t) i1 · ) for the warehouse t i1 · The algorithm identifies the AGV system deadlock and uses Path(θ) as the transition set. After defining the criteria for deadlock in the AGV system, the algorithm resolves deadlock by traversing the AGVs in reverse priority and determining whether the next transition will trigger deadlock. The specific steps of the proposed Petri net-based deadlock detection algorithm are as follows:

[0157] Step 1: Initialization and AGVθ i List of AGVs that cause deadlock

[0158] Step 2: Loop through all AGVs except θ i AGVθ outside j Obtain AGVθ j Next step of change j ;

[0159] Step 3: Let x = index(reverse(t) j ),θ i ), index(reverse(t j ),θ i ) represents the transition t j The reverse transition in AGVθ i If the index corresponding to the planned path is not in the path, then x = -1, y = index(t) i ,θ i );

[0160] Step 4: If x < y, then θ j The next change is not in θ i With θ j Break out of the loop within the path between them;

[0161] Step 5: Let transition t n =t i Set flag = true, and if y ≤ x, then keep looping through steps 6-8;

[0162] Step 6: If index(reverse(t) n ),θ j If ) = -1, then set flag = false and exit the loop;

[0163] Step 7: If next(θ) i ,t n ) = null, next(θ) i ,t n ) represents AGVθ i Path changes t n The next change is to set flag = false and exit the loop;

[0164] Step 8: Update y = y + 1, x = x - 1, t n =next(θ) i ,t n );

[0165] Step 9: If flag = true, then set the AGV... j Add it to D;

[0166] Step 10: End the loop and output the list D of AGVs that cause the deadlock.

[0167] When a deadlock or potential deadlock is detected, the system needs to automatically resolve the deadlock. If this is not possible, a deadlock-free path should be replanned, which can be done by selecting an intermediate storage location.

[0168] The method for obtaining intermediate libraries proposed in this invention is as follows:

[0169] Step 1: When a deadlock is detected between AGVs, obtain the deadlock path subsequence [p] i ,p j ,...,p n ];

[0170] Step 2: The intermediate warehouses are obtained using a breadth-first search algorithm combined with a deadlock detection algorithm. Breadth-first search is performed on warehouses outside the deadlock path subsequence, and warehouses on other AGV paths are excluded.

[0171] Step 3: Determine the intermediate locations by identifying the subsequence of the deadlock path and the location closest to the target point, provided that the new path does not constitute a deadlock.

[0172] Step 4: After obtaining the intermediate warehouse, first plan the path for the AGV to reach the intermediate warehouse, and then plan the path from the intermediate warehouse to the destination.

[0173] AGV system unlocking process as follows Figure 5 As shown in the diagram, the unlocking process is as follows: Figure 6 As shown.

[0174] Step S4: Design a multi-AGV path optimization algorithm considering scenarios with uncertain AGV motion states. Extend the anti-collision method by constructing a probabilistic motion model and constraining the AGVs based on the predicted station arrival probability, thereby improving the collaborative transportation efficiency of the system in environments with motion delays. The details are as follows:

[0175] By constructing a probabilistic motion model and path constraints under high motion delay, and combining this with the currently planned AGV path, the probabilistic model can be used to predict the AGV state at the next time step. Let the AGV represent the token θ. i The planned path is H(θ) i )=[p i1 ,p i2 ,...,p ik ,..,p in ], then Tokenθ i At time t, it is located at p ik The predicted occupancy probability is expressed as:

[0176]

[0177] Define the probability of motion delay caused by AGV speed fluctuation as: θ represents time t i The probability of not reaching the next path location is obtained from step S12. Since the AGV position is known at the initial time, the probability of the planned path point being occupied at t=0 is 1. The occupancy probability of each station on the planned path can be predicted by iterative calculation based on the predicted occupancy probability formula, thereby predicting the AGV's movement status.

[0178] Based on the probabilistic motion model, the position constraints under high motion delay are redefined, and the Token θ represented by any two AGVs is given. i and θ j If, according to the planned path, the expected location of the reservoir at time t is H(θ)i )[m] and H(θ) j If [n], then the path constraint becomes:

[0179]

[0180]

[0181] ∨ represents the intersection. If the probability of motion delay of any AGV at time t in the planned path is greater than η, where η is the set constant threshold, then this AGV must satisfy both constraints simultaneously; otherwise, only constraint (1) needs to be satisfied. Since adding constraints will reduce transportation efficiency, constraints should only be added when the predicted probability of motion delay is large.

[0182] After establishing motion constraints, a multi-AGV optimization collision avoidance method considering motion delay is proposed based on a probabilistic motion model. This method checks whether the AGV has reached the next target point before each round of movement; if not, the AGV replans its path. The multi-AGV cooperative motion constraints are enhanced based on predicted probabilities. Less than the set threshold λ, i.e., AGV i Arrive at the warehouse on time ik If the probability is less than the set value, then p is not... ik For subsequent path planning, only consider p. ik The path planning conflict before reaching p ik Then, secondary path planning is performed. This reduces the impact of collision constraints on the system and decreases invalid conflict calculations. When a path station detects the presence of an AGV... j When motion delay occurs, for AGV j Perform separate path planning based on node constraints.

[0183] Therefore, considering the complex production environment of the workshop, researching an effective path planning method to address the impact of random fluctuations in transportation tasks and uncertainties in AGV motion states on AGV scheduling is of great significance to enterprises and researchers, and can help flexible manufacturing workshops achieve efficient and reliable dynamic logistics.

[0184] like Figure 1As shown, in this embodiment, a hierarchical collaborative optimization framework is used, combined with Petri net theory to design an improved A* algorithm, a multi-AGV anti-collision deadlock strategy, and a multi-AGV path optimization method under probabilistic motion model constraints to address the challenges posed by random fluctuations in tasks and uncertainties in AGV motion states. In a specific embodiment, firstly, the workshop logistics process is modeled based on Petri nets to provide theoretical support for path planning; then, a single AGV path planning algorithm considering congestion is used to optimize individual AGV path selection, effectively reducing local congestion; furthermore, multi-AGV anti-collision and anti-deadlock strategies are employed to ensure stable system operation under high-frequency conflicts and resource competition; finally, a path optimization algorithm for uncertain environments is introduced to improve the system's dynamic adaptability.

[0185] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for multi-AGV path planning in a complex environment of a flexible manufacturing workshop, characterized in that, The method includes: Step S1: Model the logistics process in the flexible manufacturing workshop based on Petri net theory; Step S2: Based on the constructed Petri net model of the flexible manufacturing workshop logistics process, design a single AGV path planning algorithm that considers congestion. Step S3: Design a multi-AGV anti-collision deadlock strategy based on Petri nets; Step S4: Design a multi-AGV path optimization algorithm that considers the uncertain motion state of AGVs, extend the anti-collision method, and constrain the AGVs by constructing a probabilistic motion model and based on the predicted probability of station arrival.

2. The method according to claim 1, characterized in that, Step S1 further includes: Step S11: Analyze the working scenario of the AGV system in the flexible manufacturing workshop, establish a Petri net model of the logistics process in the flexible manufacturing workshop, use warehouses to represent the AGV pause points, path stations, material and finished product storage areas, use transitions to represent workshop paths, use tokens to represent AGVs, and the excitation of transitions indicates that the AGV leaves the node and goes to another transition along the transition. Each path station in the path system is also a communication station. The AGV communicates with the scheduling system and receives scheduling instructions at the communication station. Step S12: Mathematically model the uncertainty of AGV motion in complex environments. Assume that the average speed v of the AGV moving between stations follows a log-normal probability distribution, with the following probability density function: Where, μ v and σ v These are the mean and standard deviation in the logarithmic space, respectively, μ v Indicates the preset speed, σ v Let represent speed fluctuations; assuming the distance between stations along the path is d, then the probability density function of the travel time t between stations is: Substituting the probability density of the average movement speed into the probability distribution function of the movement time t, we obtain the cumulative distribution function of the movement time t between AGV stations as follows:

3. The method according to claim 2, characterized in that, In step S11, a time-colored Petri net is used to describe the AGV path system. The workshop environment map is transformed into a time-colored Petri net model TCPN = {P, R, C, F, W, M0, D}, where P is the set of places, R is the set of transitions, C is the set of token colors, F is the flow relationship, which is the set of directed arcs in the Petri net, defining the connection relationship between places and transitions, representing the flow path of tokens between places and transitions, W is the arc weight function, which assigns weights to the arcs in the flow relationship, M0 is the initial identifier, which is the initial token distribution on the set of places P, and D is the set of time delays defined on transitions or places. The color set Θ in the Petri net is Θ = {θ1, θ2, ..., θ} m } represents the set of AGVs, θ m Let represent the m-th AGV. Each AGV is represented by a unique color. Each token θ corresponds to one AGV. The coloring map C in the Petri net represents the correspondence between the tokens of a place or transition and the color set. If a path node allows an AGV to enter, the coloring map of its corresponding place includes the color of that AGV. If the path allows AGV passage, the coloring map of the corresponding transition also includes the color of that AGV. The time delay set D in the Petri net is D = {d1, d2, ..., d...}. n } represents the time required for AGV route transportation.

4. The method according to claim 1, characterized in that, Step S2 further includes: The workshop transportation map is represented by a Petri net, the AGVs are represented by tokens, and the movement path of the tokens is represented by the stock sequence H(θ) = [p i ,p j ,...,p k The sequence indicates that the subscript in the sequence represents the warehouse number, and the transportation path of the AGV is the movement path of the token. Let the starting point of a single AGV be p0 and the ending point be p0. g The cost function of the A* algorithm is: f(p) = g(p) + h(p), where g(p) represents the planned cost from the starting point p0 to the current point p, and in the A* algorithm, it represents the shortest distance from the starting point p0 to the current point p; h(p) represents the cost from the current point p to the ending point p. g The estimated cost is heuristic information, which in the A* algorithm is the Manhattan distance between two points; Set POS = {pos1,pos2,...,pos} p } represents the actual coordinates of each warehouse on the workshop map, where Len = {len1, len2, ..., len...} t } is the actual length of each transition in the workshop map, corresponding to the time attribute D in the time-delay Petri net; In the A* algorithm, the planned cost g(p) includes path length cost, path turning cost, and node load cost. The path length cost g1(p) is expressed as: g1(p) = g(p) pre )+len(t<p pre ,p>), where g(p pre ) represents the cost of the parent repository, len(t<p) pre ,p> indicates that p is from the parent library pre The path length cost of the path transition to the next library p; The turning cost g2(p) is determined based on the location between depots. The turning cost g2(p) for the starting depot and the second depot on the path is 0, while the turning cost for other depots on the path is determined by the following formula: The method for determining whether to turn is: calculate the parent library p. pre The preceding repository p of the parent repository pre1 The angle α1 of the line connecting the location p and the parent location p pre The angle α2 of the connecting line is calculated as follows: Where pos(p pre [0] indicates the parent library p pre The corresponding x-coordinate on the map, pos(p) pre [1] indicates the parent library p pre Corresponding to the vertical coordinate on the map, α1 and α2 are compared. If the difference between the two angles is greater than the set angle value β, then a turn is identified. Design a two-dimensional matrix K to represent the node load in an m×n map. Let x represent the node load value corresponding to library p, and x be the iteration number. The node load matrix K iterates over time based on the node load. The node load cost g3(p) is calculated as follows: μ is a settable constant that determines the degree of influence of node load on the algorithm. When μ = 0, node load has no effect on path planning. The calculation formula is as follows: The iteration period of the node load matrix K is T, which means that the load matrix is ​​updated once every T time intervals. This represents the node load value after the x-th iteration. δ represents the number of AGVs that pass through this node during the time interval from the (x-1)th iteration to the xth iteration. p Here, E is a constant coefficient, representing the decrease in node load over time. Therefore, the planned path cost g(p) is: The existing cost estimation is improved by introducing dynamic heuristic weights w, and the estimated cost is set as follows: d represents the distance from the current point p to the target point, i.e., the endpoint p. g Manhattan distance.

5. The method according to claim 1, characterized in that, Step S3 further includes: Step S31, define AGV collision as: Where, p i M(p) represents any place in the set of places P. i ,θ) represents the location of Token θ in the kusto. i The identifier on the Petri net indicates whether the AGV is on the path node corresponding to this library. When the number of tokens in the Petri net model exceeds 1, a collision occurs. In the Petri net, the movement of the AGV is controlled by controlling the transition trigger. The trigger condition u(t,θ,time) is defined, which represents whether the token θ can trigger the transition t at time time. If u(t,θ,time) = 1, it can be triggered; otherwise, it cannot be triggered. Since the capacity of a place in a Petri net is 1, when the token number on place p is 0, only one token among all the input transition front places can acquire the excitation right of place p. When the token number on place p is 1, none of the other tokens among the input transition front places can acquire the excitation right. This type of collision avoidance condition must hold for every place in the Petri net, and is expressed as: An improved collision detection CBS algorithm is designed by combining the established Petri net model and the defined collision decision formula. Step S32: Based on the Petri net model, a deadlock prevention strategy is proposed. When a deadlock occurs in the system, the corresponding Petri net part of the identifier will become unreachable, that is, the system loses part of its activity. Before each system state change, the system will check whether there are other AGVs that will cause a deadlock when each AGV triggers the next transition. This requires prioritizing the AGVs according to the remaining distance of the transportation task they are responsible for. When the priorities are equal, the AGVs are sorted by their IDs. The AGVs with lower priorities will first determine whether a deadlock will occur. If a deadlock will occur, the deadlock prevention strategy will be implemented. Define reverse(t) as the reverse of transition t, if · t1 = t2 · and · t2 = t1 · Then t1 = reverse(t2) and t2 = reverse(t1). · t1 is the forward location of transition t1, t2 · For the backward places of transition t2, the sequence T represents a transition sequence {t1, t2, ..., t}. n }, t n To represent a transition, define reverse(T) as the reverse sequence of T: reverse(T) = {reverse(t)} n ),reverse(t n-1 ),...,reverse(t1)}; Define a set of n AGVs, i.e. The condition for deadlock or potential deadlock to occur is that either of the following two equations is satisfied: Wherein, M(t) i1 · ) for the warehouse t i1 · The algorithm identifies the AGV system deadlock and Path(θ) is the set of transitions. After defining the criteria for deadlock in the AGV system, the algorithm solves the deadlock problem by traversing the AGVs in reverse order of priority and judging whether the next transition will trigger deadlock. A Petri net-based deadlock detection algorithm is proposed.

6. The method according to claim 5, characterized in that, The specific collision detection CBS algorithm is as follows: Step 1: Initialize the priority queue CT, sorted in ascending order according to the constraint node cost, and initialize an empty node R as the root node. R.constraints are the path constraints for node R; Step 2: Update and maintain the load matrix K periodically; Step 3: Apply the single AGV path planning algorithm to each AGV to obtain R.solution, which is the multi-AGV path planning solution obtained by the node under its path constraints; Step 4: Add up the costs obtained from the path planning of each AGV to get R.cost = cost(R.solution); Step 5: Insert the root node R into CT. If CT is not empty, continue to loop and remove the head node N of CT. Step 6: Perform a conflict check on N.soultion. If there is no conflict in N.soultion, then the final path planning result is the solution. r =N.solution, and exit the loop; otherwise, remove the head node N from CT and find the conflict place. Step 7: Loop through the tokens θ representing the AGVs involved in the conflicts. i ; Step 8: Initialize the new node B, node constraints B.constrations = N.constrations + (θ) i ,p,time); Step 9: Calculate the path cost B.cost = cost(B.solution), and insert B into CT; Step 10: End the loop and output the final collision-free path planning result (solution). r .

7. The method according to claim 5, characterized in that, The Petri net-based deadlock detection algorithm is as follows: Step 1: Initialization and AGVθ i List of AGVs that cause deadlock Step 2: Loop through all AGVs except θ i AGVθ outside j Obtain AGVθ j Next step of change j ; Step 3: Let x = index(reverse(t) j ),θ i ), index(reverse(t j ),θ i ) represents the transition t j The reverse transition in AGVθ i If the index corresponding to the planned path is not in the path, then x = -1, y = index(t) i ,θ i ); Step 4: If x < y, then θ j The next change is not in θ i With θ j Break out of the loop within the path between them; Step 5: Let transition t n =t i Set flag = true, and if y ≤ x, then keep looping through steps 6-8; Step 6: If index(reverse(t) n ),θ j If ) = -1, then set flag = false and exit the loop; Step 7: If next(θ) i ,t n ) = null, next(θ) i ,t n ) represents AGVθ i Path changes t n The next change is to set flag = false and exit the loop; Step 8: Update y = y + 1, x = x - 1, t n =next(θ) i ,t n ); Step 9: If flag = true, then set the AGV... j Add it to D; Step 10: End the loop and output the list D of AGVs that cause the deadlock.

8. The method according to claim 7, characterized in that, When a deadlock or potential deadlock is detected, the system needs to automatically resolve the deadlock. If this fails, a deadlock-free path must be replanned. This requires selecting an intermediate location. The method for obtaining an intermediate location is as follows: Step 1: When a deadlock is detected between AGVs, obtain the deadlock path subsequence [p] i ,p j ,...,p n ]; Step 2: The intermediate warehouses are obtained using a breadth-first search algorithm combined with a deadlock detection algorithm. Breadth-first search is performed on warehouses outside the deadlock path subsequence, and warehouses on other AGV paths are excluded. Step 3: Determine the intermediate locations by identifying the subsequence of the deadlock path and the location closest to the target point, provided that the new path does not constitute a deadlock. Step 4: After obtaining the intermediate warehouse, first plan the path for the AGV to reach the intermediate warehouse, and then plan the path from the intermediate warehouse to the destination.

9. The method according to claim 1, characterized in that, Step S4 further includes: Let AGV represent the token θ. i The planned path is H(θ) i )=[p i1 ,p i2 ,...,p ik ,..,p in ], then Tokenθ i At time t, it is located at p ik The predicted occupancy probability is expressed as: Define the probability of motion delay caused by AGV speed fluctuation as: θ represents time t i The probability of not reaching the next path location is obtained from step S12. Since the AGV position is known at the initial time, the probability of the planned path point being occupied at t=0 is 1. The occupancy probability of each station on the planned path can be predicted by iterative calculation based on the predicted occupancy probability formula, thereby predicting the AGV's movement status. The positional constraint under high motion delay is defined, and the Token θ represented by any two AGVs is given. i and θ j If, according to the planned path, the expected location of the reservoir at time t is H(θ) i )[m] and H(θ) j If [n], then the path constraint becomes: ∨ represents the intersection. If the probability of motion delay of any AGV at time t in the planned path is greater than η, where η is the set constant threshold, then this AGV must satisfy two constraints at the same time; otherwise, it only needs to satisfy constraint (1). The constraints on the cooperative motion of multiple AGVs are enhanced based on the predicted probability. Less than the set threshold λ, i.e., AGV i Arrive at the warehouse on time ik If the probability is less than the set value, then p is not... ik For subsequent path planning, only consider p. ik The path planning conflict before reaching p ik Then, secondary path planning is performed. When the path station detects the presence of an AGV... j When motion delay occurs, for AGV j Perform separate path planning based on node constraints.

Citation Information

Cited By

  • XR task planning and instruction issuing method for brewing automation

    CN122089021A