Multi-agv cooperative deadlock prediction and unlocking method and system, and storage medium

By identifying predicted deadlock loops in a multi-AGV system and selecting unlocking strategies based on weight values, the problem of accurate detection and unlocking of deadlock loops in multi-AGV collaboration is solved, thereby improving the system's operating efficiency.

CN115793633BActive Publication Date: 2026-03-31MULTIWAY ROBOTICS TECH (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-03
Publication Date
2026-03-31

AI Technical Summary

Technical Problem

Existing technologies are insufficient to accurately detect the existence of deadlocks when multiple AGVs are working together and to effectively break the deadlock loop, resulting in frequent deadlocks in multi-AGV systems.

Method used

By determining the resource set occupied and resource set requested by AGVs in a preset scheduling model, a predicted deadlock loop is generated, and an unlocking strategy is selected based on the weight value to achieve the prediction and unlocking of the deadlock loop.

Benefits of technology

It improves the accuracy of deadlock detection and unlocking in multi-AGV collaborative systems, reduces the occurrence of deadlock, and ensures the efficient operation of AGV collaborative scheduling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115793633B_ABST
    Figure CN115793633B_ABST
Patent Text Reader

Abstract

The application relates to the field of intelligent control of mobile robots, and discloses a multi-AGV cooperative deadlock prediction and unlocking method and system and a storage medium, the method comprising the following steps: determining a predicted deadlock ring of a plurality of AGVs in a cooperative scheduling process according to an occupied resource set and an applied resource set of the plurality of AGVs in a preset scheduling model; generating a predicted deadlock ring unlocking strategy set based on the predicted deadlock ring; selecting a predicted target unlocking strategy from the unlocking strategy set according to the weight values of parameters in the unlocking strategy set; and unlocking the predicted deadlock ring based on the predicted target unlocking strategy. The application can more accurately predict a deadlock ring generated by AGV cooperation and unlock the predicted deadlock ring compared with the prior art by predicting the deadlock ring generated by AGV cooperation, generating an unlocking strategy according to the predicted deadlock ring, and unlocking the deadlock ring through the unlocking strategy when the deadlock ring is predicted to exist.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of intelligent control of mobile robots, and in particular to a method, system and storage medium for deadlock prediction and unlocking of multi-AGV collaborative systems. Background Technology

[0002] With the development of mobile robot intelligent control technology, multi-AGV collaboration is widely used in intelligent warehousing and logistics scheduling operations. To achieve multi-AGV collaborative work, it is necessary to ensure that there is no collision between each AGV, so as to avoid deadlock.

[0003] However, existing technologies mainly use time windows or graph theory-based methods to detect deadlock loops. But these algorithms are too complex, and the uncertainty of multi-AGV systems makes multi-AGV deadlock almost unavoidable and difficult to detect accurately.

[0004] Therefore, accurately detecting the existence of deadlocks during multi-AGV collaboration and resolving detected deadlocks has become an urgent problem to be solved.

[0005] The above content is only used to help understand the technical solution of the present invention and does not represent an admission that the above content is prior art. Summary of the Invention

[0006] This invention provides a method, system, and storage medium for predicting and unlocking deadlocks in multi-AGV collaboration, aiming to solve the technical problem in the prior art of accurately detecting the existence of deadlocks in multi-AGV collaboration and unlocking detected deadlocks.

[0007] To achieve the above objectives, the present invention provides a deadlock prediction and unlocking method for multi-AGV collaborative operation, the method comprising the following steps:

[0008] The predicted deadlock loop of the multiple AGVs in the collaborative scheduling process is determined based on the set of resources occupied and the set of resources requested by the multiple AGVs in the preset scheduling model.

[0009] A set of predictive deadlock loop unlocking strategies is generated based on the predicted deadlock loop;

[0010] The target unlocking strategy is selected from the unlocking strategy set based on the weight values ​​of each parameter in the unlocking strategy set.

[0011] The predicted deadlock loop is unlocked based on the predicted target unlocking strategy.

[0012] Optionally, the step of determining the predicted deadlock loop of the multiple AGVs in the collaborative scheduling process based on the resource set occupied and resource request set of the multiple AGVs in the preset scheduling model includes:

[0013] Based on the preset scheduling model of the multiple AGVs, determine whether there is an intersection between the AGVs occupying the resource set and the AGVs requesting resources.

[0014] If not, it is determined that the AGV has generated a predicted deadlock loop during the collaborative scheduling process.

[0015] Optionally, the step of generating a set of predicted deadlock loop unlocking strategies based on the predicted deadlock loop includes:

[0016] Based on the predicted deadlock loop, an estimated rescheduling set and an estimated resource occupancy set are obtained, and the early unlocking status of the AGV is determined according to the estimated rescheduling set and the estimated resource occupancy set.

[0017] When the AGV's early unlocking state is an unlockable state, obtain the available resource set to search for a set of deadlock loop unblocking strategies within the unlocking time of the deadlock loop in the unlockable state.

[0018] When the set of deadlock unblocking strategies does not intersect with the set of rescheduled estimated resource requests, the set of predicted deadlock unblocking strategies is generated.

[0019] Optionally, the step of selecting a predicted target unlocking strategy from the unlocking strategy set based on the weight values ​​of each parameter in the unlocking strategy set includes:

[0020] Determine whether the set of predicted deadlock loop unlocking strategies is empty based on the set of predicted deadlock loop unlocking strategies.

[0021] If the set of predicted deadlock loop unlocking strategies is not empty, then calculate the weight value of each predicted deadlock loop strategy in the set of predicted deadlock loop unlocking strategies and select the predicted target unlocking strategy according to the weight value.

[0022] Optionally, after the step of calculating the weight value of each solution's predicted deadlock loop unlocking strategy in the predicted deadlock loop unlocking strategy set and selecting the predicted target unlocking strategy according to the weight value if the predicted deadlock loop unlocking strategy set is not empty, the method further includes:

[0023] If the predicted target unlocking strategy cannot untie the predicted deadlock loop, then the predicted target unlocking strategy is deleted from the predicted deadlock loop unlocking strategy set, and the predicted deadlock loop unlocking strategy set and the available resource set are updated.

[0024] Once the set of predicted deadlock loop unlocking strategies and the set of available resources are updated, a new predicted target unlocking strategy is selected to unlock the predicted deadlock loop.

[0025] Optionally, after determining the predicted deadlock loop of the multiple AGVs in the collaborative scheduling process based on the resource set occupied and resource request set of the multiple AGVs in the preset scheduling model, the method further includes:

[0026] Determine whether the AGVs in the set of resources to be allocated are empty based on the preset scheduling model of the multiple AGVs;

[0027] If not, it is determined that the AGV has generated a deadlock loop during the collaborative scheduling process.

[0028] Optionally, after the step of determining that the AGV has generated a deadlock loop during the collaborative scheduling process if no, the method further includes:

[0029] Based on the deadlock loop, calculate the heuristic function value corresponding to the deadlock loop solution of the rescheduled AGV set and use the heuristic function value as the objective function.

[0030] The deadlock loop resolution strategies for all AGVs are solved based on the objective function to generate the deadlock loop resolution strategy set.

[0031] Optionally, after the step of solving the deadlock loop resolution strategy for all AGVs according to the objective function to generate the deadlock loop unlocking strategy set, the method further includes:

[0032] Based on the deadlock loop unlocking strategy set, determine whether the deadlock loop unlocking strategy set is empty;

[0033] If the deadlock loop unlocking strategy set is not empty, then calculate the weight value of each unlocking strategy in the deadlock loop unlocking strategy set and select the target unlocking strategy according to the weight value;

[0034] The deadlock loop is unlocked according to the target unlocking strategy.

[0035] Furthermore, to achieve the above objectives, the present invention also proposes an AGV collaborative deadlock prediction and unlocking system, the AGV collaborative deadlock prediction and unlocking system comprising:

[0036] The deadlock type determination module is used to determine the predicted deadlock loop of the multiple AGVs in the collaborative scheduling process based on the set of resources occupied and the set of resources requested by the multiple AGVs in the preset scheduling model.

[0037] The unlocking strategy generation module is used to generate a set of predictive deadlock loop unlocking strategies based on the predicted deadlock loop.

[0038] The strategy selection module is used to select a target unlocking strategy from the unlocking strategy set based on the weight values ​​of each parameter in the unlocking strategy set;

[0039] The deadlock loop unlocking module is used to unlock the predicted deadlock loop based on the target unlocking strategy.

[0040] The storage medium stores a deadlock prediction and unlocking program for multi-AGV collaboration. When the processor executes the multi-AGV collaboration deadlock prediction and unlocking program, it implements the steps of the multi-AGV collaboration deadlock prediction and unlocking method described above.

[0041] This invention determines a predicted deadlock loop during the collaborative scheduling process of multiple AGVs based on their occupied resource set and requested resource set in a preset scheduling model; generates a set of predicted deadlock loop unlocking strategies based on the predicted deadlock loop; selects a predicted target unlocking strategy from the unlocking strategy set according to the weight values ​​of each parameter in the unlocking strategy set; and unlocks the predicted deadlock loop based on the predicted target unlocking strategy. This invention predicts deadlock loops generated during AGV collaboration, generates an unlocking strategy based on the predicted deadlock loop, and unlocks the deadlock loop using the unlocking strategy when a deadlock loop is predicted. Compared to existing technologies, this invention can more accurately predict the existence of deadlock loops during AGV collaboration and unlock the predicted deadlock loops. Attached Figure Description

[0042] Figure 1 This is a flowchart illustrating the first embodiment of the deadlock prediction and unlocking method for multi-AGV collaboration of the present invention.

[0043] Figure 2 This is a schematic diagram illustrating the generation of the predicted deadlock loop in the first embodiment of the multi-AGV collaborative deadlock prediction and unlocking method of the present invention.

[0044] Figure 3 This is a flowchart illustrating the second embodiment of the deadlock prediction and unlocking method for multi-AGV collaboration of the present invention.

[0045] Figure 4 This is a flowchart illustrating the third embodiment of the deadlock prediction and unlocking method for multi-AGV collaboration of the present invention.

[0046] Figure 5 This is a flowchart illustrating the process of resolving the deadlock loop in the third embodiment of the multi-AGV collaborative deadlock prediction and unlocking method of the present invention.

[0047] Figure 6 This is a flowchart illustrating the fourth embodiment of the deadlock prediction and unlocking method for multi-AGV collaboration of the present invention.

[0048] Figure 7 This is a schematic diagram of the overall process of deadlock loop detection and unlocking in the fourth embodiment of the deadlock prediction and unlocking method of multi-AGV collaboration of the present invention.

[0049] Figure 8This is a system structure block diagram of the multi-AGV collaborative deadlock prediction and unlocking system of the present invention.

[0050] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0051] It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the scope of the invention.

[0052] This invention provides a deadlock prediction and unlocking method for multi-AGV collaboration, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the deadlock prediction and unlocking method for multi-AGV collaboration of the present invention.

[0053] In this embodiment, the multi-AGV collaborative deadlock prediction and unlocking method includes the following steps:

[0054] Step S10: Determine the predicted deadlock loop of the multiple AGVs in the collaborative scheduling process based on the resource set occupied and resource request set of the multiple AGVs in the preset scheduling model;

[0055] It should be noted that the executing entity of the method in this embodiment can be an electronic computing service device with data processing, network communication, and program execution functions, such as an in-vehicle embedded tablet or in-vehicle computer, or other in-vehicle electronic devices capable of achieving the same or similar functions. This embodiment does not limit this. Here, we will use a multi-AGV collaborative deadlock prediction and unlocking device as an example to describe various embodiments of the in-vehicle personal safety protection method of the present invention.

[0056] It should be understood that the above-mentioned preset scheduling model is a directed graph model that establishes each AGV along a pre-planned trajectory in a two-dimensional state space where multiple AGVs work together. This model can realize the scheduling of multiple AGVs.

[0057] Understandably, the aforementioned set of occupied resources and set of requested resources represent, respectively, the total set of all resources occupied by the AGV at the current moment during the scheduling and operation process, and the total set of resources that need to be requested for subsequent operation.

[0058] It should be understood that the aforementioned predicted deadlock loop refers to the deadlock prediction and unlocking device for multi-AGV collaboration, which pre-detects potential deadlock loops during the collaborative scheduling of multiple AGVs. The predicted deadlock loop is defined as: at time t+Δt, based on the predicted state... Each predicted AGV m∈A W The set of resources to be requested for (t+Δt) The corresponding set of resources that will be used There exists another or more AGVs such that each of the AGVs n∈A W (t+Δt), n≠m, the set of resources that will be occupied at time t+Δt. With AGV m∈A W The set of resources to be requested for (t+Δt) The intersection of the two is not empty, that is Conversely, the same applies. Here, Δt is the estimated deadlock loop time interval parameter. Due to the uncertainty of the multi-AGV system, the larger Δt is, the lower the accuracy of the deadlock loop prediction will be.

[0059] It should be noted that the step of determining the predicted deadlock loop of the multiple AGVs in the collaborative scheduling process based on the resource set occupied and resource set requested by the multiple AGVs in the preset scheduling model specifically involves determining whether there is an intersection between the AGVs in the resource set occupied and the AGVs in the resource set requested by the preset scheduling model of the multiple AGVs; if not, it is determined that the AGVs have generated a predicted deadlock loop in the collaborative scheduling process.

[0060] In its specific implementation, the aforementioned multi-AGV collaborative deadlock prediction and unlocking device schedules AGVs by establishing a directed graph model in the two-dimensional state space of multi-AGV collaborative operation, in which each AGV travels along a pre-planned trajectory. Based on the preset scheduling model, it determines whether there is an intersection between the AGVs occupying the resource set and the AGVs requesting resources, thereby determining whether a deadlock loop exists. If there is an intersection, the deadlock loop is determined to exist.

[0061] Furthermore, after the step of determining the predicted deadlock loop of the multiple AGVs in the collaborative scheduling process based on the resource set occupied and resource set requested by the multiple AGVs in the preset scheduling model, the method further includes: determining whether the AGVs in the resource set to be allocated are empty based on the preset scheduling model of the multiple AGVs; if not, determining that the AGVs have generated a deadlock loop in the collaborative scheduling process.

[0062] It should be understood that the above-mentioned resources to be allocated are the resources that the currently scheduled AGV will allocate to the AGV in order to enable the AGV to continue running, so that the AGV has resources to be allocated and forms a total set.

[0063] Furthermore, this is achieved by traversing a directed graph G along a pre-planned trajectory, where the directed graph G = (V, E) consists of a vertex set and an edge set, where the vertex set represents the set of all path nodes, and the edge set... It is a set of path trajectory lines composed of any two path nodes.

[0064] It should be noted that the above resource is defined as any vertex n i ∈V or any edge e j ∈E, and can be allocated for scheduling AGVs. The resource set R is the union of the edge set and the vertex set, R=V∪E. From the perspective of resource allocation, the scheduling system must ensure the exclusivity of each resource to ensure that there is no collision between multiple AGVs running at the same time. That is, a resource can only be occupied by one AGV at the same time. The authorized AGV set A=[1,…,K], where the authorized AGV set A represents all AGVs activated in the scheduling system.

[0065] It should be noted that, denoted as k, at time t, the state x of each AGV k∈A=[1,…,K] k (t) is defined as the geometric center position p of AGV k at time t. k (t) and velocity v k The combination of (t), x k (t)={p k (t),v k (t)}, the state space occupied by AGV k Let O be the contour of AGV k at time t and the set of all corresponding state spaces within the contour. Let O be the resource set occupied by AGV k and the resource set requested by AGV k. k (t) and R k (t), occupying resource set O k (t) represents the state space occupied by AGV k at time t. The corresponding path resource set, the requested resource set R k (t) includes not only the resources on the planned path that AGV k needs to request at time t, but also the state space occupied by all resources requested by AGV k′∈A (k′≠k) at time t. The state space occupied by AGV k The set of resources corresponding to non-empty intersections includes the resources that AGV k needs to request for the specified path at time t, as well as the resources requested by other AGVs that have contour collisions with the resources requested by AGV k.

[0066] It should be understood that, as Figure 2 As shown, Figure 2 This diagram illustrates the generation of a predicted deadlock loop in a multi-AGV collaborative deadlock prediction and unlocking method. Assume the current time is t1, and the resources occupied by AGV1 at time t1+Δt are... And AGV1 will request resources at time t1+Δt. AGV2 will request resources at time t1+Δt. The resources that AGV2 will occupy at time t1+Δt are when and At that time, the estimated set of AGV resources to be rescheduled. This is equivalent to AGV1 and AGV2 forming a predicted deadlock loop in terms of the resources they will request and the resources they will occupy.

[0067] It should be noted that the estimated rescheduling set is a set formed by the multi-AGV collaborative deadlock prediction and unlocking device pre-estimating the resources to reschedule possible deadlock loops, and integrating the results of the pre-estimation of various possible scheduling resources.

[0068] Step S20: Generate a set of predicted deadlock loop unlocking strategies based on the predicted deadlock loop;

[0069] It should be understood that the above-mentioned set of predicted deadlock ring unlocking strategies refers to the set of deadlock prediction unlocking strategies that a multi-AGV collaborative deadlock prediction unlocking device can generate based on the predicted deadlock ring before unlocking the predicted deadlock ring. Finally, the multiple predicted deadlock ring unlocking strategies are combined to form an unlocking strategy set.

[0070] In a specific implementation, the multi-AGV collaborative deadlock prediction and unlocking device generates multiple unlocking strategies by solving the predicted deadlock loop based on the predicted deadlock loop, and makes the multiple unlocking strategies form a set of predicted deadlock loop unlocking strategies.

[0071] Step S30: Select a predicted target unlocking strategy from the unlocking strategy set according to the weight values ​​of each parameter in the unlocking strategy set;

[0072] It should be noted that the weight value is the weight value of each strategy in the current unlocking strategy set after comparison. The weight value obtained by calculation can realize the selection of a better unlocking strategy, thereby achieving the goal of breaking the predicted deadlock loop at a faster speed.

[0073] It is understood that the predicted target unlocking strategy is that after the multi-AGV collaborative deadlock prediction and unlocking device obtains the weight values, it will select the unlocking strategy corresponding to the more suitable weight value as the strategy for predicting the deadlock loop target unlocking.

[0074] In the specific implementation, the deadlock loop unblocking weight of each strategy is calculated based on each strategy in the unlocking strategy set. After the multi-AGV collaborative deadlock prediction and unlocking device obtains the deadlock loop unblocking weight values ​​of each strategy, the deadlock loop unblocking strategy with the smallest weight value is selected as the prediction target unlocking strategy.

[0075] Step S40: Unlock the predicted deadlock loop based on the predicted target unlocking strategy.

[0076] It should be noted that after the deadlock prediction and unlocking device with multi-AGV collaboration obtains the predicted target unlocking strategy, it reschedules the AGV corresponding to the predicted target unlocking strategy to unlock the deadlock loop.

[0077] In practice, the multi-AGV collaborative deadlock prediction and unlocking device reschedules the AGVs according to the predicted target unlocking strategy and completes the scheduling within the time interval of the predicted target unlocking strategy, thereby unlocking the predicted deadlock loop.

[0078] This embodiment determines the predicted deadlock loop during the collaborative scheduling process of multiple AGVs based on the resource occupancy set and resource request set of multiple AGVs in a preset scheduling model; generates a set of predicted deadlock loop unlocking strategies based on the predicted deadlock loop; selects a predicted target unlocking strategy from the unlocking strategy set according to the weight values ​​of each parameter in the unlocking strategy set; and unlocks the predicted deadlock loop based on the predicted target unlocking strategy. This invention predicts deadlock loops generated during AGV collaboration, generates an unlocking strategy based on the predicted deadlock loop when its existence is predicted, and unlocks the deadlock loop using the unlocking strategy. Compared to existing technologies, this invention can more accurately predict the existence of deadlock loops during AGV collaboration and unlock the predicted deadlock loops.

[0079] refer to Figure 3 , Figure 3 This is a flowchart illustrating the second embodiment of the deadlock prediction and unlocking method for multi-AGV collaboration of the present invention.

[0080] Based on the first embodiment described above, in this embodiment, in order to solve for the unlocking strategy of the predicted deadlock loop, step S20 includes:

[0081] Step S201: Based on the predicted deadlock loop, obtain the estimated rescheduling set and the estimated occupied resource set, and determine the early unlocking status of the AGV according to the estimated rescheduling set and the estimated occupied resource set;

[0082] It is understood that the estimated set of occupied resources is a set formed by the multi-AGV collaborative deadlock prediction and unlocking device by pre-estimating the set of resources that the AGVs will occupy and integrating the pre-estimation results.

[0083] It should be noted that the aforementioned early unlocking state is a state generated by the multi-AGV collaborative deadlock prediction and unlocking device in anticipating whether the AGV can be unlocked. When the multi-AGV collaborative deadlock prediction and unlocking device obtains the early unlocking state, it can obtain the predicted deadlock loop problem, thereby optimizing the predicted deadlock loop unlocking strategy through this problem.

[0084] Step S202: When the AGV's early unlocking state is an unlockable state, obtain the available resource set to search for a set of deadlock loop unblocking strategies within the unlocking time of the deadlock loop when the unlockable state is reached.

[0085] It should be understood that the unlockable state refers to a future time when the AGV is in an early unlocked state. The unlocking strategy corresponding to the mapping relationship between the occupied resources and requested resources of the AGV can enable the predicted deadlock loop to reach the unlocked state. When the AGV is in an unlockable state, the deadlock prediction and unlocking device of multiple AGVs can unlock the predicted deadlock loop through the deadlock loop unlocking strategy.

[0086] Step S203: When the set of deadlock unblocking strategies does not intersect with the set of rescheduled estimated resource requests, the set of predicted deadlock unblocking strategies is generated.

[0087] It should be understood that the estimated resource request set is a set formed by the multi-AGV collaborative deadlock prediction and unlocking device by pre-estimating the set of resources that the AGVs will request and integrating the pre-estimation results.

[0088] It should be noted that in the set of available resources Inside, for each AGV dl i ∈A RE The search for the current state corresponds to the unlock time T at the endpoint. RE Set of strategies for resolving deadlock loops To reschedule any other AGVdl within the AGV set j ∈A RE ,dl j ≠dl i Occupancy status And at the preset unlock time T RE Internal non-deadlock in running AGV assembly The estimated set of application resources No intersection was found, and a corresponding set of current predicted deadlock loop unlocking strategies was generated.

[0089] It is understood that the available resource set is the set of resources that are not occupied or requested by AGVs and have not been allocated as resources to be allocated by the deadlock prediction and unlocking device of multi-AGV collaboration.

[0090] In this embodiment, the multi-AGV collaborative deadlock prediction and unlocking device obtains an estimated rescheduling set and an estimated resource-occupied set based on the predicted deadlock loop, and determines the early unlocking state of the AGV based on the estimated rescheduling set and the estimated resource-occupied set. When the early unlocking state of the AGV is an unlockable state, it obtains an available resource set to search for a deadlock loop unblocking strategy set within the unlocking time of the deadlock loop during the unlockable state. When the deadlock loop unblocking strategy set and the estimated rescheduling resource request set do not intersect, the predicted deadlock loop unlocking strategy set is generated. This realizes the determination of the early unlocking state based on rescheduling and the estimated resource-occupied set, the determination of the deadlock loop unblocking strategy set through the early unlocking state, and the generation of the predicted deadlock loop unlocking strategy set based on the deadlock loop unblocking strategy set and the estimated resource request set.

[0091] refer to Figure 4 , Figure 4 This is a flowchart illustrating the third embodiment of the deadlock prediction and unlocking method for multi-AGV collaboration of the present invention.

[0092] Based on the first embodiment described above, in this embodiment, in order to unlock the predicted deadlock loop, step S30 includes:

[0093] Step S301: Determine whether the predicted deadlock loop unlocking strategy set is empty based on the predicted deadlock loop unlocking strategy set;

[0094] It should be noted that the definition of predicting deadlock loop unlocking is: minimizing the rescheduled AGV set A RE The sum of the heuristic function values ​​corresponding to the solutions to the deadlock loop resolution strategies of all AGVs within (t) is the objective function. Solving for the rescheduled AGV set A... RE The deadlock-breaking strategy for all AGVs within (t) is constrained by the motion model and the maximum acceleration upper limit U. max The acceleration or deceleration of motion with constant acceleration in the trajectory direction, and the maximum speed limit V. max The constraints of collision-free scheduling are as follows: for each rescheduled AGV set AGV dl i ∈A RE (t), in the nth strategy for resolving the deadlock cycle, n∈[1,…,N], the corresponding deadlock resolution strategy. The heuristic function and the corresponding AGV are defined as follows: and t time AGVdl i The velocity, acceleration, and position states are respectively and Let T RE Given a preset unlocking time parameter, the mathematical form of a deadlock loop strategy solution is as follows:

[0095]

[0096] Formula 1:

[0097] Formula 2:

[0098] Formula 3:

[0099] Formula 4:

[0100]

[0101] It should be understood that the specific expression of the above mathematical form is that, with time t as the starting time, each AGV dl i ∈A RE The starting point of (t) The position and state of the vehicle where the deadlock loop occurs at the current moment, and the endpoint of the strategy to be solved. The current deadlock loop AGVdl i The planned task endpoint is given by Equation 1, which stipulates that the deadlock loop AGV must conform to the motion model. Based on the search algorithm, the deadlock loop solution can be obtained. Equations 2 and 3 stipulate that the deadlock loop AGV must satisfy the maximum upper limit condition of speed and acceleration during the deadlock resolution process. Equation 4 stipulates that the resources requested by the deadlock loop AGV during the deadlock resolution process cannot collide with the state space occupied by other AGV strategy solutions within the deadlock loop. Equation 5 stipulates that the resources requested by the deadlock loop AGV during the deadlock resolution process cannot collide with the state space occupied by other AGVs outside the deadlock loop. That is, Equations 4 and 5 require the deadlock loop resolution strategy solution to satisfy the collision-free scheduling constraint.

[0102] Step S302: If the set of predicted deadlock loop unlocking strategies is not empty, calculate the weight value of each predicted deadlock loop strategy in the set of predicted deadlock loop unlocking strategies and select the predicted target unlocking strategy according to the weight value.

[0103] It should be understood that if the set of predicted deadlock loop unlocking strategies is empty, the information that the set of predicted deadlock loop unlocking strategies is empty will be fed back to the deadlock prediction and unlocking device of multi-AGV collaboration, and the process of solving the predicted deadlock loop without a solution will be performed.

[0104] It should be noted that after step S302, the following steps are also included:

[0105] Step S303: If the predicted target unlocking strategy cannot untie the predicted deadlock loop, then delete the predicted target unlocking strategy from the predicted deadlock loop unlocking strategy set, and update the predicted deadlock loop unlocking strategy set and the available resource set;

[0106] It should be understood that the method for updating the set of predicted deadlock loop unlocking strategies is based on a search method combining recursion trees and optimal strategies. Specifically, it involves defining an available resource set R. A (t) represents the set of non-deadlocked vehicles in operation at time t. Occupy resource set and reschedule AGV set A RE (t) The difference between the set of occupied resources and the set of resources R, i.e. The difference set obtained at this time is the update of the predicted deadlock loop unlocking strategy set, and at time t, for each rescheduled AGV set, the AGV dl i ∈A RE (t), based on their current states, estimate the set of available resources {R} within a certain time T. A (t)} t∈(,) .

[0107] Step S304: After the set of predicted deadlock loop unlocking strategies and the set of available resources are updated, a new predicted target unlocking strategy is selected to unlock the predicted deadlock loop.

[0108] It should be noted that, as Figure 5 As shown, Figure 5 This is a flowchart illustrating the process of resolving a deadlock loop in a multi-AGV collaborative deadlock prediction and unlocking method. The steps of this flowchart include: initializing the nth deadlock loop resolution strategy, where n = 0, A... RE =A RE (t), Where A RE , A RE (t) and Let dl represent the set of rescheduled AGVs, the set of running AGVs that are not deadlocked, the set of rescheduled AGVs at time t, and the set of running AGVs that are not deadlocked at time t, respectively. For each AGV belonging to the set of rescheduled AGVs, dl i ∈A RE In T RE Internal forecast A RE Available resource set And make the initial set of deadlock cycle strategies to be solved, queue {S} n}={Φ}, making the initial deadlock cycle strategy solution Sol n =Φ, the first step is to consider the available resource set. Inside, for each AGV dl i ∈A RE The search for the current state corresponds to the unlock time T when the endpoint is reached. RE Set of strategies for resolving deadlock loops This prevents it from interacting with any other AGV dl within the rescheduled AGV set. j ∈A RE ,dl i ≠dl i Occupied state space And at the preset unlock time T RE Internal non-deadlock in running AGV assembly The estimated set of application resources The intersection is generated, and the corresponding set of deadlock cycle strategies to be solved at the present time is generated. The second step is to solve for the deadlock cycle strategy set S. n If empty, proceed to step seven. Otherwise, proceed to step three. In step three, a heuristic function for resolving deadlock strategies is set based on task priority, distance to the endpoint, and the number of AGVs in the current rescheduled AGV set, providing the current set of deadlock loop strategies S to be resolved. n For each strategy, calculate its deadlock-resolving weights and select the strategy with the smallest deadlock-resolving weight. s The current optimal strategy and the corresponding AGV dl i * =dl s ∈A RE First, update n = n + 1; second, change the current optimal strategy from the third step. s As the nth element of the solution to the deadlock cycle, i.e. s n = s Sol n =Sol n-1 ∪s n Fifth step: Is there a solution condition for breaking the deadlock cycle defined as A? RE At least one vehicle must reach the destination and obtain the corresponding depth N, or when n = N, the sum of the distances of all vehicles from the destination must be less than the sum of the distances of all vehicles from the destination when n = 0, where N is a set depth parameter. If a solution to the deadlock loop is determined, it is returned to the scheduling system and the solution is obtained in the corresponding (t + (n - 1)T)T according to the deadlock loop resolution strategy. RE ,t+nT RE ) n∈[,…,] The deadlock cycle resolution strategy is executed at time intervals. If no solution is found, step six is ​​executed. In step six, the current optimal strategy is subtracted from the current set of deadlock cycle resolution strategies. s Both update S n =S n \ s And update the queue of deadlock cycle strategies to be solved {S}.n}={S n-1}∪S n and update the set of available resources. Return to step one and continue with A. RE The internal AGV continues searching for a strategy to solve the deadlock cycle; step seven, determines the queue of deadlock cycle strategies to be solved {S}. n If the value is empty, return to the scheduling system to handle the deadlock loop as unsolvable; otherwise, proceed to step eight. In step eight, based on the deadlock loop resolution heuristic function, retrieve the deadlock loop resolution strategy from the queue {S}. n The optimal solution strategy was found. s And the corresponding AGV, update n to the depth corresponding to the optimal strategy, and return to execute the fourth step.

[0109] In this embodiment, the multi-AGV collaborative deadlock prediction and unlocking device determines whether the predicted deadlock loop unlocking strategy set is empty based on the set of predicted deadlock loop unlocking strategies. If the set of predicted deadlock loop unlocking strategies is not empty, the weight value of each deadlock loop unlocking strategy in the set is calculated, and a target unlocking strategy is selected based on the weight value. If the target unlocking strategy cannot unlock the predicted deadlock loop, the target unlocking strategy is deleted from the set of predicted deadlock loop unlocking strategies, and the set of predicted deadlock loop unlocking strategies and the set of available resources are updated. After the set of predicted deadlock loop unlocking strategies and the set of available resources are updated, a new target unlocking strategy is selected to unlock the predicted deadlock loop. This achieves the unlocking of the predicted deadlock loop using the obtained target unlocking strategy.

[0110] refer to Figure 6 , Figure 6 This is a flowchart illustrating the fourth embodiment of the deadlock prediction and unlocking method for multi-AGV collaboration of the present invention.

[0111] Based on the first embodiment described above, in this embodiment, in order to unlock the deadlock loop that has already been generated, after step S10, the method further includes:

[0112] Step S101: Determine whether the AGVs in the resource set to be allocated are empty according to the preset scheduling model of the multiple AGVs;

[0113] It should be understood that the purpose of determining that the AGVs in the set of resources to be allocated are empty is to detect whether there are any AGVs with resources to be allocated, so as to avoid AGVs stopping working because they have not applied for resources.

[0114] Step S102: If not, it is determined that the AGV has generated a deadlock loop during the collaborative scheduling process.

[0115] It should be understood that a deadlock loop in multi-AGV collaborative work is defined as follows: at time t, there are at least two or more AGVs waiting to be allocated resources, and the intersection of the resource request set of each AGV and the resource set occupied by the other AGV is not empty.

[0116] Furthermore, the mathematical definition of the condition for detecting a deadlock loop involving multiple AGVs is: if there exists an AGV m∈A W (t)(A W (t) represents the AGV to be allocated resources, and the resource set O occupied by AGV m is... m (t), for each AGV n∈A, there exists at least one other AGV. W The resource set R of (t) n (t), m≠n, such that O m (t)∩R n (t)≠Φ, conversely O n (t)∩R m (t)≠Φ must also hold true. At time t, the set of AGVs forming a deadlock loop and the set of all AGVs blocked by this deadlock loop are defined as the rescheduled AGV set A. RE (t) = [1,…,D], the set of other non-deadlocked AGVs at runtime. Therefore, from the perspective of resource allocation, the deadlock problem in multi-AGV collaborative operation can be equivalent to rescheduling the AGV set A when a condition involving a multi-AGV deadlock loop is detected at time t. RE All AGVs within (t) are in a stagnant state due to the inability to obtain resources.

[0117] Furthermore, if at any time t1 a deadlock loop condition involving multiple AGVs is detected, the corresponding set of rescheduled AGVs A is... RE (t1), at time t2, t2>t1, another deadlock loop involving multiple AGVs and the corresponding rescheduled AGV set A is detected. RE (t2), if A RE (t2)∩A RE If (t1) = Φ, then independent multi-AGV deadlock loops exist, and the corresponding deadlock loops are processed sequentially according to time order; if Then the current deadlock loop resolution procedure is stopped and re-triggered, thereby ensuring the exclusivity of resources and achieving collision-free scheduling to detect whether a deadlock loop has occurred.

[0118] It should be noted that after step S102, the following steps are also included:

[0119] Step S103: Based on the deadlock loop, calculate the heuristic function value corresponding to the deadlock loop solution of the rescheduled AGV set and use the heuristic function value as the objective function;

[0120] It should be noted that the heuristic function value can be used to solve for deadlock loop solutions.

[0121] It should be understood that, for a deadlock loop that has already occurred, the deadlock loop resolution strategy for all AGVs in the rescheduled AGV set can be solved by rescheduling the deadlock loop resolution strategy of all AGVs in the rescheduled AGV set at a relatively low cost, and by using the sum of all heuristic function values ​​as the objective function.

[0122] Step S104: Solve for the deadlock loop resolution strategy of all AGVs according to the objective function to generate the deadlock loop resolution strategy set.

[0123] It should be understood that the deadlock loop resolution strategy is obtained by solving for the above-mentioned heuristic function value.

[0124] It is understood that the unlocking strategy set is the set of all deadlock loops formed after solving the deadlock loop solution for each AGV.

[0125] It should be noted that after step S104, the following steps are also included:

[0126] Step S105: Determine whether the deadlock loop unlocking strategy set is empty based on the deadlock loop unlocking strategy set;

[0127] It should be noted that the purpose of determining whether the deadlock ring unlocking strategy set is empty is that the deadlock prediction and unlocking device of multi-AGV collaboration can detect whether there is a deadlock ring unlocking strategy by knowing the contents of the deadlock ring unlocking strategy set, which is more conducive to executing the subsequent deadlock ring unlocking steps.

[0128] Step S106: If the deadlock loop unlocking strategy set is not empty, calculate the weight value of each unlocking strategy in the deadlock loop unlocking strategy set and select the target unlocking strategy according to the weight value;

[0129] Understandably, if the set of predicted deadlock loop unlocking strategies is empty, the deadlock loop unlocking strategy set is fed back to the multi-AGV collaborative deadlock prediction and unlocking device, and the deadlock loop is processed as unsolvable.

[0130] Step S107: Unlock the deadlock loop according to the target unlocking strategy.

[0131] Understandably, the deadlock loop is broken by rescheduling the AGV through the obtained target unlocking strategy.

[0132] Reference Figure 7 , Figure 7 This is a schematic diagram of the overall process of deadlock loop detection and unlocking in this embodiment. The process of deadlock loop detection and unlocking executes the following steps: Step (1) Establish a mathematical model corresponding to AGV status and resources; (2) Obtain the current AGV status and the status of occupying corresponding resources, as well as the status of AGV requesting resources; (3) Based on the AGV status fed back by the scheduling system, determine whether there is an AGV waiting for resource allocation. If there is no AGV waiting for resource allocation, execute step (4) to continue to detect the AGV requesting resource status and return to step (2); If there is an AGV waiting for resource allocation, execute step (5) to detect whether the AGV requesting resources is blocked due to collision and continues to wait for the requested resources. If the AGV requesting resources does not need to wait for the requested resources, execute step (6); otherwise, execute step (8) to determine whether there is an AGV waiting for resource allocation. Deadlock loop; (6) Determine if a predicted deadlock loop exists. If no predicted deadlock loop exists, the AGV executes step (7) to continue running and returns to step (2). Otherwise, execute steps (10) and (11) to obtain the resource occupation and application relationship and local deadlock loop resolution procedures for all AGVs involved in the predicted deadlock loop. Step (8) If no deadlock loop is detected at present, the AGV executes step (9) to continue applying for the allocated resources. Otherwise, if a deadlock loop exists at present, execute the deadlock loop resolution procedure in step (11). Based on the deadlock loop resolution result in step (11), step (12) determines whether the current deadlock loop is resolved. If there is no solution to the deadlock loop, step (13) returns to the scheduling system that there is no solution to the deadlock loop. If a deadlock loop resolution strategy solution is obtained, step (14) controls the AGVs involved in the deadlock loop to execute the strategy according to the deadlock loop resolution strategy solution.

[0133] It should be noted that the specific steps for unlocking the deadlock loop are as follows: Figure 5 The process for resolving the predicted deadlock loop is the same as shown, and will not be repeated here.

[0134] This embodiment determines whether the AGVs in the resource set to be allocated are empty based on a preset scheduling model of the multiple AGVs. If not, it determines that a deadlock loop has occurred during the collaborative scheduling process. Based on the deadlock loop, it calculates the heuristic function value corresponding to the solution of the deadlock loop resolution strategy for the rescheduling AGV set and uses the heuristic function value as the objective function. It solves the deadlock loop resolution strategy for all AGVs according to the objective function to generate the deadlock loop unlocking strategy set. Based on the deadlock loop unlocking strategy set, it determines whether the deadlock loop unlocking strategy set is empty. If the deadlock loop unlocking strategy set is not empty, it calculates the weight value of each unlocking strategy in the deadlock loop unlocking strategy set and selects the target unlocking strategy according to the weight value. It unlocks the deadlock loop according to the target unlocking strategy, which can accurately unlock the deadlock loop that has already occurred.

[0135] refer to Figure 8 , Figure 8 This is a system structure block diagram of the multi-AGV collaborative deadlock prediction and unlocking system of the present invention.

[0136] The deadlock type determination module 801 is used to determine the predicted deadlock loop of the multiple AGVs in the collaborative scheduling process based on the resource set occupied and resource set requested by the multiple AGVs in the preset scheduling model.

[0137] The unlocking strategy generation module 802 is used to generate a set of predicted deadlock loop unlocking strategies based on the predicted deadlock loop.

[0138] The strategy selection module 803 is used to select a target unlocking strategy from the unlocking strategy set according to the weight values ​​of each parameter in the unlocking strategy set;

[0139] The deadlock loop unlocking module 804 is used to unlock the predicted deadlock loop based on the target unlocking strategy.

[0140] This embodiment determines the predicted deadlock loop during the collaborative scheduling process of multiple AGVs based on the resource occupancy set and resource request set of multiple AGVs in a preset scheduling model; generates a set of predicted deadlock loop unlocking strategies based on the predicted deadlock loop; selects a predicted target unlocking strategy from the unlocking strategy set according to the weight values ​​of each parameter in the unlocking strategy set; and unlocks the predicted deadlock loop based on the predicted target unlocking strategy. This invention predicts deadlock loops generated during AGV collaboration, generates an unlocking strategy based on the predicted deadlock loop when its existence is predicted, and unlocks the deadlock loop using the unlocking strategy. Compared to existing technologies, this invention can more accurately predict the existence of deadlock loops during AGV collaboration and unlock the predicted deadlock loops.

[0141] The various embodiments or specific implementations of the deadlock prediction and unlocking system for AGV collaboration of the present invention can be referred to the above-described method embodiments, and will not be repeated here.

[0142] Furthermore, this embodiment of the invention also proposes a storage medium storing a multi-AGV collaborative deadlock prediction and unlocking program. When the multi-AGV collaborative deadlock prediction and unlocking program is executed by a processor, it implements the steps of the multi-AGV collaborative deadlock prediction and unlocking method described above.

[0143] It should be noted that, in this document, the terms "comprising," "including," or any other variations are intended to cover non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or system. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.

[0144] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0145] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention can essentially be said to contribute to the prior art in the form of a software product. This computer software product is stored in a storage medium (such as read-only memory / random access memory, magnetic disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of the present invention.

[0146] The above are merely preferred embodiments of the present invention and do not limit the scope of the patent. Any equivalent structural or procedural transformations made based on the description and drawings of the present invention, or direct or indirect applications in other related technical fields, are similarly included within the scope of patent protection of the present invention.

Claims

1. A multi-AGV cooperative deadlock prediction and unlocking method, characterized in that, The method comprises the following steps: The method comprises the following steps: According to the occupied resource set and the applied resource set of the plurality of AGVs in the preset scheduling model, a predicted deadlock ring in the cooperative scheduling process of the plurality of AGVs is determined; A predicted deadlock ring unlocking strategy set is generated based on the predicted deadlock ring; According to the weight values of various parameters in the unlocking strategy set, a predicted target unlocking strategy is selected from the unlocking strategy set, wherein the parameters include task priority, distance to the end point, and the number of AGVs in the current rescheduling AGV set; The predicted deadlock ring is unlocked based on the predicted target unlocking strategy; The step of generating the predicted deadlock ring unlocking strategy set based on the predicted deadlock ring comprises: Based on the predicted deadlock ring, an estimated rescheduling set and an estimated occupied resource set are obtained, and the advance unlocking state of the AGV is determined according to the estimated rescheduling set and the estimated occupied resource set; When the advance unlocking state of the AGV is a lockable state, an available resource set is obtained to search for a deadlock ring unlocking strategy set for unlocking the deadlock ring within the unlocking time of the lockable state; 2. The method of claim 1, wherein, When the deadlock ring unlocking strategy set and the estimated applied resource set of the rescheduling do not have an intersection, the predicted deadlock ring unlocking strategy set is generated. The step of determining the predicted deadlock ring in the cooperative scheduling process of the plurality of AGVs according to the occupied resource set and the applied resource set of the plurality of AGVs in the preset scheduling model comprises: According to the preset scheduling model of the plurality of AGVs, it is determined whether there is an intersection between the AGVs of the occupied resource set and the AGVs of the applied resource set; 3. The method of claim 1, wherein, If not, it is determined that the AGV produces a predicted deadlock ring in the cooperative scheduling process. The step of selecting a predicted target unlocking strategy from the unlocking strategy set according to the weight values of various parameters in the unlocking strategy set comprises: According to the predicted deadlock ring unlocking strategy set, it is determined whether the predicted deadlock ring unlocking strategy set is empty; 4. The method of claim 3, wherein, If the predicted deadlock ring unlocking strategy set is not empty, the weight values of each predicted deadlock ring strategy in the predicted deadlock ring unlocking strategy set are calculated, and a predicted target unlocking strategy is selected according to the weight values. After the step of calculating the weight values of each predicted deadlock ring strategy in the predicted deadlock ring unlocking strategy set and selecting a predicted target unlocking strategy according to the weight values when the predicted deadlock ring unlocking strategy set is not empty, the following steps are further included: If the predicted target unlocking strategy cannot unlock the predicted deadlock ring, the predicted target unlocking strategy is deleted from the predicted deadlock ring unlocking strategy set, and the predicted deadlock ring unlocking strategy set and the available resource set are updated; 5. The method according to any one of claims 1 to 4, characterized in that, After the predicted deadlock ring unlocking strategy set and the available resource set are updated, a new predicted target unlocking strategy is selected to unlock the predicted deadlock ring. After the step of determining the predicted deadlock ring in the cooperative scheduling process of the plurality of AGVs according to the occupied resource set and the applied resource set of the plurality of AGVs in the preset scheduling model, the following steps are further included: According to the preset scheduling model of the plurality of AGVs, it is determined whether the AGVs of the to-be-allocated resource set are empty; If not, it is determined that the AGV produces a deadlock ring in the cooperative scheduling process.

6. The method of claim 5, wherein, After the step of determining that the AGV produces a deadlock ring in the cooperative scheduling process, the method further comprises: Based on the deadlock ring, a heuristic function value corresponding to a deadlock ring resolution strategy solution of a re-scheduling AGV set is calculated, and the heuristic function value is taken as a target function; According to the target function, a deadlock ring resolution strategy of all AGVs is solved to generate a set of deadlock ring unlocking strategies.

7. The method of claim 6, wherein, After the step of solving the deadlock ring resolution strategy of all AGVs according to the target function to generate the set of deadlock ring unlocking strategies, the method further comprises: According to the set of deadlock ring unlocking strategies, it is determined whether the set of deadlock ring unlocking strategies is empty; If the set of deadlock ring unlocking strategies is not empty, a weight value of each unlocking strategy in the set of deadlock ring unlocking strategies is calculated, and a target unlocking strategy is selected according to the weight value; The deadlock ring is unlocked according to the target unlocking strategy.

8. An AGV coordination deadlock prediction and unlocking system, characterized in that, The system comprises: A deadlock type judgment module is configured to determine a predicted deadlock ring of a plurality of AGVs in a cooperative scheduling process according to a set of occupied resources and a set of applied resources of the plurality of AGVs in a preset scheduling model; An unlocking strategy generation module is configured to generate a set of predicted deadlock ring unlocking strategies based on the predicted deadlock ring; A strategy selection module is configured to select a target unlocking strategy from the set of unlocking strategies according to a weight value of each parameter in the set of unlocking strategies, the parameter including a task priority, a distance to an end point, and a number of AGVs in a current re-scheduling AGV set; A deadlock ring unlocking module is configured to unlock the predicted deadlock ring based on the target unlocking strategy. The unlocking strategy generation module is configured to obtain an estimated re-scheduling set and an estimated occupied resource set based on the predicted deadlock ring, and determine an advance unlocking state of the AGV according to the estimated re-scheduling set and the estimated occupied resource set; when the advance unlocking state of the AGV is a lockable state, an available resource set is obtained to search for a deadlock ring resolution strategy set within an unlocking time of the deadlock ring unlocking in the lockable state; when the deadlock ring resolution strategy set and the estimated applied resource set of re-scheduling do not produce an intersection, the set of predicted deadlock ring unlocking strategies is generated.

9. A storage medium, characterized by The storage medium has a multi-AGV cooperative deadlock prediction unlocking program stored thereon, and the multi-AGV cooperative deadlock prediction unlocking program, when executed by the processor, implements the steps of the multi-AGV cooperative deadlock prediction unlocking method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Automated container terminal with multi-automatically guided vehicle path conflict elimination method

    CN106774305A

  • Scheduling control method and system for transportation equipment

    CN112990806A