Multi-agv cooperative scheduling method and system and related device
By establishing a multi-AGV collaborative scheduling method, and using mathematical models and self-organizing communication networks to predict deadlock loops and replan path resources, the deadlock and collision problems in the multi-AGV system are solved, and the system's operating efficiency is improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- 海南 ROBOT (ZHEJIANG) CO LTD
- Filing Date
- 2022-12-30
- Publication Date
- 2026-06-26
AI Technical Summary
Existing technologies are unable to effectively avoid deadlock and collision conflicts in multi-AGV systems, resulting in low system task execution efficiency, high complexity, or strict synchronization control requirements, making them unsuitable for efficient multi-AGV collaborative scheduling.
A mathematical model of AGV status and path resources is established to detect conflicts and dynamically update the clustered self-organizing communication network. By predicting deadlock loops and replanning path resources, local conflict resolution and deadlock loop removal are achieved.
It improves the operational efficiency of the multi-AGV collaborative scheduling system by predicting and adjusting the AGV status and position in advance to avoid collisions and improve the system's task execution efficiency.
Smart Images

Figure CN116132943B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of image similarity comparison technology, and in particular to a multi-AGV collaborative scheduling method, system and related equipment. Background Technology
[0002] Multi-AGV (Automatic Guided Vehicle) collaborative operation is widely used in intelligent warehousing and logistics scheduling. A system enabling multi-AGV collaborative operation can be viewed as a system that efficiently achieves collision-free scheduling goals by utilizing resource allocation mechanisms based on the status of multiple AGVs. From a resource allocation perspective, the scheduling system must ensure the exclusivity of each resource to guarantee no collisions between multiple AGVs. Deadlock occurs when resource conflict conditions are not met, achieving collision-free scheduling but reducing system task execution efficiency and potentially causing more vehicles to deadlock or even all AGVs to stop. However, due to human and non-human interference, this multi-AGV system is a dynamic and uncertain system, making multi-AGV deadlock almost unavoidable. The proper handling of AGV conflicts and deadlock issues is crucial for multi-AGVs to collaborate effectively and efficiently complete scheduling tasks.
[0003] Although there are many existing global resource allocation and scheduling methods based on path points and path lines as resources, such as time windows and deadlock loop detection based on graph theory, these algorithms are too complex or have very high requirements for the state control of AGVs under synchronization. Moreover, the uncertainty of multi-AGV systems makes multi-AGV deadlock phenomena and collision-based resource conflicts almost unavoidable and difficult to detect accurately. The above methods cannot be efficiently applied to multi-AGV deadlock detection, resource conflict resolution, and corresponding fast solution applications.
[0004] Therefore, existing technologies still need to be improved and developed. Summary of the Invention
[0005] The main objective of this invention is to provide a multi-AGV collaborative scheduling method, system, and related equipment to solve the problems existing in the prior art mentioned in the background section.
[0006] The first aspect of this invention discloses a multi-AGV collaborative scheduling method, comprising the following steps:
[0007] Establish a mathematical model that corresponds to AGV status and path resources;
[0008] Establish a spatial mathematical model for conflict detection;
[0009] Plan the speed of the AGVs to be assigned tasks;
[0010] Obtain the AGV status and path resource usage relationship over discrete time periods;
[0011] The clustered self-organizing communication network is dynamically updated based on the AGV status and path resource occupancy relationship over discrete time periods.
[0012] Detect whether the target AGV has requested the resources for the desired path;
[0013] If a target AGV requests the desired path resource, then continue to check if there are other AGVs that form a predicted deadlock loop with the target AGV's requested path resource in other path resources.
[0014] If other AGVs form a predicted deadlock loop with the target AGV's requested path resources on other path resources, then the target AGV's expected path resources will be replanned.
[0015] In an optional embodiment of the first aspect of the present invention, the step of continuing to detect whether other AGVs constitute a predicted deadlock loop with other path resources and the expected path resources requested by the target AGV after the target AGV requests desired path resources includes:
[0016] If no other AGV forms a predicted deadlock loop with the target AGV's requested path resources in other path resources, then continue to check whether the target AGV has left the spatial conflict area under the corresponding cluster management.
[0017] If the target AGV has not left the spatial conflict area under the corresponding cluster management, continue to check whether there is a deadlock loop in the spatial conflict area under the corresponding cluster management;
[0018] If a deadlock loop exists in the spatial conflict region under the corresponding cluster management, determine whether the deadlock loop can be resolved.
[0019] If the deadlock loop can be broken, then the corresponding deadlock loop breaking strategy is executed to break the deadlock loop.
[0020] In an optional embodiment of the first aspect of the present invention, the step of establishing a mathematical model corresponding to AGV status and path resources includes:
[0021] Establish a graph model related to the state of AGVs, set up multiple AGVs to work collaboratively in a workspace, with each AGV traveling along a pre-planned trajectory, and establish a directed graph for all two-dimensional state spaces under the workspace;
[0022] Establish a motion model related to the AGV state, define the AGV state as the combination of the position and speed of the AGV operation control center at each time, define the planned AGV state variables, and define the AGV's occupied state space as the outline of the AGV at each time and the set of all corresponding state spaces within the outline.
[0023] In an optional embodiment of the first aspect of the present invention, establishing the spatial mathematical model for conflict detection includes:
[0024] At intersections, path points in the graph model related to AGV status have at least two adjacent points. The path nodes at intersections are defined as spatial conflict detection resource points, and the corresponding set of edges is used as the spatial conflict detection resource set.
[0025] In the spatial conflict detection resource set, we recursively search for sufficiently long adjacent nodes in the space. The set of adjacent nodes obtained is defined as the spatial conflict detection label set. When the AGV detects that it has entered the conflict detection label set, the state is optimized through a cooperative game approach.
[0026] In an optional embodiment of the first aspect of the present invention, the AGV planning speed for task allocation includes:
[0027] To allocate tasks, the AGVs are planned to have speeds and positions and to correspond to discrete time periods. When the AGVs initialize tasks, the state planning of each AGV is to accelerate from the starting point to the maximum speed, where the maximum speed is less than or equal to the upper limit of the AGV's maximum speed, and then decelerate to the endpoint or directly decelerate to the endpoint at the maximum speed.
[0028] In an optional embodiment of the first aspect of the present invention, the dynamically updated clustered self-organizing communication network based on the AGV status and path resource occupancy relationship over discrete time periods includes:
[0029] Based on the dynamic updating of AGV status and path resource occupancy relationship in discrete time periods, a clustered self-organizing communication network is formed to form a hierarchical cluster structure. In the hierarchical cluster structure, the cluster head performs communication management and information sharing for the AGVs within the cluster.
[0030] In an optional embodiment of the first aspect of the present invention, the step of continuing to detect whether other AGVs constitute a predicted deadlock loop with the target AGV's requested path resources if a target AGV requests desired path resources includes:
[0031] If a target AGV requests desired path resources, then based on the pre-defined definition of predicted deadlock loops and the mapping relationship between AGV states and resources, it is detected whether other AGVs constitute predicted deadlock loops with the target AGV's requested desired path resources in other path resources.
[0032] A second aspect of the present invention discloses a multi-AGV collaborative scheduling system, the multi-AGV collaborative scheduling system comprising:
[0033] The first model building module is used to build a mathematical model corresponding to the AGV status and path resources.
[0034] The second model building module is used to build a spatial mathematical model for conflict detection.
[0035] The speed planning module is used to plan the speed for AGVs assigned tasks.
[0036] The data acquisition module is used to acquire the AGV status and path resource occupancy relationship over discrete time periods;
[0037] The network update module is used to dynamically update the clustered self-organizing communication network based on the AGV status and path resource occupancy relationship over discrete time periods.
[0038] The AGV dynamic detection module is used to detect whether a target AGV requests resources for a desired path.
[0039] The deadlock loop prediction module is used to detect whether there are other AGVs that form a deadlock loop with the target AGV's requested path resources if the target AGV requests the desired path resources.
[0040] The path replanning module is used to replan the expected path resources for the target AGV if there is a predicted deadlock loop between other AGVs and the expected path resources requested by the target AGV.
[0041] A third aspect of the present invention provides a multi-AGV collaborative scheduling device, the multi-AGV collaborative scheduling device comprising: a memory and at least one processor, the memory storing instructions, and the memory and the at least one processor being interconnected via a line;
[0042] The at least one processor invokes the instructions in the memory to cause the multi-AGV collaborative scheduling device to execute the multi-AGV collaborative scheduling method as described above.
[0043] A fourth aspect of the present invention provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the multi-AGV collaborative scheduling method as described in any of the preceding claims.
[0044] Beneficial Effects: This invention provides a multi-AGV collaborative scheduling method, system, and related equipment. The method includes establishing a mathematical model corresponding to AGV states and path resources; establishing a spatial mathematical model for conflict detection; planning speeds for AGVs assigned tasks; acquiring AGV states and path resource occupancy relationships over discrete time periods; dynamically updating the clustered self-organizing communication network; detecting whether a target AGV requests desired path resources; if so, further detecting whether other AGVs form a predicted deadlock loop with the target AGV's requested path resources on other path resources; if so, replanning desired path resources for the target AGV. If AGVs are waiting for resources due to collision-based resource conflicts, the scheduling method of this invention can improve the efficiency of the scheduling system by resolving conflicts locally in advance. Attached Figure Description
[0045] Figure 1 This is a schematic diagram of an embodiment of a multi-AGV collaborative scheduling method according to the present invention;
[0046] Figure 2 This is a schematic diagram of the entire process of a multi-AGV collaborative scheduling method according to the present invention;
[0047] Figure 3 This is a schematic diagram of a discrete-time motion control model according to the present invention;
[0048] Figure 4 This is a schematic diagram of a spatial mathematical model for conflict detection according to the present invention;
[0049] Figure 5 This is a schematic diagram of a clustered self-organizing communication network according to the present invention;
[0050] Figure 6 This is a schematic diagram of a resource-based prediction collision conflict according to the present invention;
[0051] Figure 7 This is a schematic diagram of a resource-based prediction of deadlock loop collisions according to the present invention.
[0052] Figure 8 This is a schematic diagram of an embodiment of a multi-AGV collaborative scheduling system according to the present invention;
[0053] Figure 9 This is a schematic diagram of an embodiment of a multi-AGV collaborative scheduling device according to the present invention. Detailed Implementation
[0054] This invention provides a method, system, and related equipment for collaborative scheduling of multiple AGVs. The terms "first," "second," "third," "fourth," etc. (if present) in the specification, claims, and accompanying drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments described herein can be understood in addition to those illustrated herein.
[0055] Or implemented in a sequence other than that described. Furthermore, the terms “comprising” or “having” and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product, or apparatus that includes a series of steps or units is not necessarily limited to those steps or units that are expressly listed, but may include other steps or units that are not expressly listed or that are inherent to such process, method, product, or apparatus.
[0056] See Figure 1 The first aspect of this invention discloses a multi-AGV collaborative scheduling method, comprising the following steps:
[0057] S100. Establish a mathematical model corresponding to AGV status and path resources;
[0058] S200. Establish a spatial mathematical model for conflict detection. In this step, a spatial mathematical model for conflict detection is established based on the spatial structure of the map in the model established in step S100.
[0059] S300, Plan the speed of the AGV to be assigned the task; In this step, specifically, the time of the scheduling system is first discretized into equal discrete time periods, and then the speed and position status of the AGV to be assigned the task to the scheduling system are planned and mapped to the discrete time periods.
[0060] S400: Obtain the AGV status and path resource occupancy relationship in the discrete time period; specifically, this step involves obtaining the AGV status and the status of occupying corresponding resources in the discrete time period at the current moment, as well as the status of AGV requesting resources.
[0061] S500: Dynamically update the clustered self-organizing communication network based on the AGV status and path resource occupancy relationship in discrete time period; In this step, the clustered self-organizing communication network is dynamically updated based on the AGV status and path resource occupancy relationship obtained in step S400 to form a hierarchical cluster structure, and the cluster head performs basic communication management and information sharing for the AGVs in the cluster.
[0062] S600: Detect whether there is a target AGV requesting the desired path resource; In this step, based on the AGV status fed back by the scheduling system, it is determined whether there is an AGV waiting to be allocated resources. If there is no AGV waiting to be allocated resources, continue to detect the AGV requesting resource status and return to step S400.
[0063] S700: If a target AGV requests the desired path resource, then continue to detect whether there are other AGVs that form a predicted deadlock loop with the target AGV's requested desired path resource in other path resources. In this invention, if there is an AGV waiting for resource allocation, the step is to detect whether there are other running vehicles that form a predicted deadlock loop with this AGV in the remaining path.
[0064] S800: If other AGVs form a predicted deadlock loop with the target AGV's requested desired path resources on other path resources, then the target AGV's desired path resources are replanned. In this step, if a predicted deadlock loop is determined to exist, the steps are executed to obtain the resource occupancy and request relationships of all AGVs involved in all deadlock loops in which the predicted AGV participates, the path is replanned, and the process returns to step S300 to plan the AGV's path reassignment speed.
[0065] In summary, by observing actual scenarios of multi-AGV collaborative operation, this invention discovers that multiple AGVs may predict deadlock in advance and avoid collisions by adjusting the states of the corresponding local AGVs, including speed and position, before entering a deadlock state. If at least two AGVs are waiting for resources due to collision-based resource conflicts, resolving the conflicts locally in advance can improve the efficiency of the scheduling system.
[0066] In an optional embodiment of the first aspect of the present invention, the step of continuing to detect whether other AGVs constitute a predicted deadlock loop with other path resources and the expected path resources requested by the target AGV after the target AGV requests desired path resources includes:
[0067] If no other AGV forms a predicted deadlock loop with the target AGV's requested path resources on other paths, then the system continues to check whether the target AGV has left the spatial conflict area under the corresponding cluster management. In this step, if it is determined that no predicted deadlock loop exists, the system executes the step to check whether this AGV has left the spatial conflict area under the corresponding cluster management. If it is detected that this AGV has left the spatial conflict area under the corresponding cluster management, this AGV continues to run at the planned speed and returns to step S400 so that the scheduling system can obtain the status of this AGV and the resource occupancy relationship in the discrete time period.
[0068] If the target AGV has not left the spatial conflict area under the corresponding cluster management, then continue to detect whether there is a deadlock loop in the spatial conflict area under the corresponding cluster management; in this step, if it is detected that this AGV is still in the spatial conflict area under the corresponding cluster management, the step of detecting whether there is a deadlock loop in the corresponding spatial conflict area is triggered. The difference from step S700 is that this step is to detect whether there is a deadlock loop in the resource occupation and request relationship of all AGVs in the physical area of the cluster spatial conflict.
[0069] If a deadlock loop exists in the spatial conflict region under the corresponding cluster management, it is determined whether the deadlock loop can be resolved. In this step, if a deadlock loop is detected in the corresponding cluster spatial conflict region, the scheduling system obtains the resource occupation and request relationships of all AGVs involved in the deadlock loop and executes the local deadlock loop resolution procedure. Based on the deadlock loop resolution result of the local deadlock loop resolution procedure, it is determined whether to resolve the current deadlock loop. If there is no solution to the deadlock loop, it is returned to the scheduling system that there is no solution to the deadlock loop.
[0070] If the deadlock loop can be resolved, the corresponding deadlock resolution strategy is executed to resolve the deadlock loop. In this step, if the deadlock loop can be resolved, the deadlock resolution strategy solution can be obtained. Then, the AGVs involved in the deadlock loop are controlled to execute the strategy according to the deadlock resolution strategy solution. It should be noted that the handling of deadlocks has a higher priority than the local conflict optimization and control. That is, once a deadlock occurs in a spatial conflict area, deadlock resolution must be completed first. Non-deadlock conflicts are handled based on the first-come, first-served principle until there is no deadlock state in the scheduling system. Then, conflict optimization and control are performed for the spatial conflict area. Therefore, if no deadlock loop is detected in the corresponding cluster spatial conflict area, the local cooperative game distributed control conflict resolution program is executed to optimize and control the scheduling variables of the AGVs with cluster spatial conflicts. The full process diagram of the multi-AGV collaborative scheduling method of this invention is shown below. Figure 2 As shown.
[0071] In an optional embodiment of the first aspect of the present invention, the step of establishing a mathematical model corresponding to AGV status and path resources includes:
[0072] Establish a graph model related to the AGV state, setting multiple AGVs to work collaboratively within a workspace. Each AGV travels along a pre-planned trajectory. Construct a directed graph G = (V, E) for all two-dimensional state spaces within the workspace, consisting of a vertex set V and an edge set E. Vertex set V represents the set of all path nodes, and edge set E... V×V is a set of path trajectories composed of any two path nodes.
[0073] A path resource is defined as any vertex n i ∈V or any edge e jThe path 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 are no collisions between multiple AGVs running simultaneously in the workspace, that is, a resource can only be occupied by one AGV at a time. The authorized AGV set A = [1, ..., K] is defined as all AGVs activated in the scheduling system.
[0074] Establish a motion model related to the AGV state, defining the AGV state as a combination of the position and speed of the AGV operation control center at each time step, defining the planned AGV state variables, and defining the AGV's occupied state space as the AGV's outline at each time step and the set of all corresponding state spaces within the outline. Specifically, in this step, at time t, the state x of AGV k∈A=[1,…,K] is... k (t) is defined as the position p of the motion control center 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)}, and the derivative of position is velocity, and the derivative of velocity is acceleration, i.e. and u k (t) is the acceleration of AGV k at time t. The maximum acceleration upper limit u is specified. k (t)=-U max orU max The acceleration or deceleration of motion with constant acceleration in the trajectory direction, and the maximum speed limit V. max .
[0075] Define the AGV state variables for planning k = [1, ..., K], n k,i = [1, ..., N] k ], This indicates that AGV k has reached a certain path node n of the corresponding planned path. k,i At that moment, N k This indicates the sequence number corresponding to the planned path endpoint of AGV k. This represents the path node n planned by AGV k. k,i Location in physical space.
[0076] 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 Rk (t). Occupied resource set O k (t) represents the state space occupied by AGV k at time t. The corresponding path resource set. 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 apply for at time t, as well as the resources applied for by other AGVs that have contour collisions with the resources applied for by AGV k.
[0077] The control of this invention is based on centralized control of the AGV's state using discrete time, such as... Figure 3 As shown in a discrete-time motion control model, continuous time is divided into finite discrete-time periods, and the state variable x h The measurement is taken at the beginning of the h-th time period, and a constant acceleration is applied throughout the h-th time period. The state variables of each AGV k∈A are mapped to all discrete time periods.
[0078] In an optional embodiment of the first aspect of the present invention, establishing the spatial mathematical model for conflict detection includes:
[0079] At an intersection, the path points in the graph model related to the AGV state have at least two adjacent points. The path points at the intersection are defined as spatial conflict detection resource points, and the corresponding set of edges is used as the spatial conflict detection resource set. In the spatial conflict detection resource set, sufficiently long adjacent nodes are recursively searched in the space, and the set of adjacent nodes obtained is defined as the spatial conflict detection label set. When the AGV detects that it has entered the conflict detection label set, state optimization is performed through a cooperative game approach.
[0080] Specifically, at intersections, path nodes in the graph model related to the AGV's state should have at least two adjacent nodes, and this intersection path node is defined as a spatial conflict detection resource point. The corresponding set of edges serves as the spatial conflict detection resource set. Within this resource set, sufficiently long adjacent nodes are recursively searched in the space. Make Spatial location satisfies the following Within a space with a center and radius B, the set Defined as a spatial conflict detection tag set. Parameter A is set long enough that when an AGV detects that it has entered the conflict detection tag set, state optimization can be performed by detecting the cooperative game AGV set. At a relatively far location at an intersection, the state of its cooperating AGVs can be predicted in a cooperative game manner, and its own state can be adjusted accordingly, achieving safe and efficient state control.
[0081] To achieve collision-free scheduling, a non-deadlock collision-free motion is defined as follows:
[0082] First step, such as Figure 4 As shown, define a path node n of the planned path corresponding to AGV k. k,i The collision region is defined by path node n. k,i Let the circular position state space be of radius h, assuming that the distance between all edges is greater than or equal to 2h; define the path node n of the planned path when AGV k enters or leaves. k,i The collision times are respectively Define an AGV k as reaching a path node n on a pre-planned path. k,i The time is The scheduling planning variable is defined as the combination of the times when all AGVs enter the collision zone corresponding to a certain path node, arrive at the corresponding path node, and leave the collision zone corresponding to that path node. k∈A=[1,…,K],n k,i ∈[1, ..., N k Based on the extracted current state parameters of all AGVs with timestamps, and the planned AGV state variables k = [1, ..., K], n k,i = [1, ..., N] k The estimated scheduling planning variables are expressed as follows: k∈A=[1,…,K],n k,i ∈[1, ..., N k ].
[0083] The second step is to define the conditions for no resource conflicts, k, k′=[1,…,K],n k,i = [1, ..., N] k ], n k′,i′ = [1, ..., N] k′ ], if k≠k′, Specifically, if there is a potential conflict where AGV k and AGV k′ may pass through the same path point in space, that is, the planned path has the condition of having the same path point. For a collision-free scheduling mechanism to be established, the following conditions must be met: AGV k leaving the collision region of this path node must be earlier than or equal to the time when any AGV k′∈A, k′≠k enters the collision-free region of this path node; or AGV k entering the collision region of this path node must be later than the time when any AGV k′∈A, k′≠k leaves the collision-free region of this path node. This ensures collision-free scheduling. If AGV k and AGV k′ may collide spatially by traversing the same edge, i.e. When both conditions are met, in addition to satisfying the aforementioned condition of avoiding potential conflicts at the same path point, it is also necessary to simultaneously satisfy the condition that the moment when AGV k leaves the starting collision region of a potentially colliding edge and enters the ending collision region of this edge must be earlier than or equal to the moment when any AGV k′∈A, k′≠k leaves the starting non-collision region of this edge, or the moment when AGV k leaves the starting collision region of a potentially colliding edge must be later than the moment when any AGV k′∈A, k′≠k enters the ending non-collision region of this edge, in order to ensure collision-free scheduling.
[0084] In an optional embodiment of the first aspect of the present invention, the AGV planning speed for task allocation includes:
[0085] To allocate tasks to AGVs, the system plans their speed and position, mapping them to discrete time periods. During task initialization, each AGV's state is planned to accelerate from its starting point to its maximum speed, which is less than or equal to the AGV's maximum speed limit. The AGV then maintains this maximum speed at a constant speed before decelerating to its destination, or decelerates directly to its destination. In this invention, the scheduling system plans the speed and position states of AGVs to allocate tasks, mapping them to discrete time periods. To ensure the scheduling system operates at maximum efficiency, during task initialization, each AGV's state is planned to accelerate from its starting point to a maximum possible speed, which is less than or equal to the AGV's maximum speed limit V. max It then decelerates to the endpoint at a constant maximum speed. Under the condition of detecting spatial conflict, the state of each cooperative AGV is adjusted in discrete time using a cooperative game optimization approach to achieve safe and efficient control.
[0086] In an optional embodiment of the first aspect of the present invention, obtaining the AGV status and path resource occupancy relationship over a discrete time period includes: obtaining the current status of each AGV based on the discrete time period in which the current time t is located. k = [1, ..., K], generating the resource set {O} for each AGV. k (t)} k∈A and the request resource set {R k (t)}k∈A A W (t) is the set of all AGVs waiting for resource allocation at time t.
[0087] In an optional embodiment of the first aspect of the present invention, the dynamically updated clustered self-organizing communication network based on the AGV status and path resource occupancy relationship over discrete time periods includes:
[0088] Based on the dynamic updating of AGV status and path resource occupancy relationships over discrete time periods, a clustered self-organizing communication network is formed, creating a hierarchical cluster structure. In this structure, a cluster head manages communication and shares information among the AGVs within the cluster. The hierarchical cluster self-organizing communication network structure formed in this invention is as follows: Figure 5 As shown, the cluster head performs basic communication management and information sharing for the AGVs within the cluster.
[0089] In an optional embodiment of the first aspect of the present invention, the detection of whether a target AGV requests the desired path resource (i.e., determining whether there are AGVs waiting to be allocated resources) is performed by determining the set A of AGVs waiting to be allocated resources. W The condition (t) is empty, used to detect whether there are AGVs waiting to be allocated resources. In this invention, a resource conflict in multi-AGV collaborative work is defined as follows: at time t, there are at least two AGVs waiting to be allocated resources, and the intersection of the resource request set of each AGV and the resource request set of another AGV is not empty. The condition for detecting a resource conflict involving multiple AGVs is mathematically defined as follows: if there exists an AGV m∈A... W (t), the resource set R requested by AGV m 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 At time t, the set of AGVs constituting a resource conflict and the set of all AGVs blocked by this resource conflict set are defined as a conflicting AGV set A. C (t) = [1, ..., C]. Therefore, from the perspective of resource allocation, the resource problem under multi-AGV collaborative operation can be equivalent to the condition at time t where a resource conflict involving more than 2 AGVs is detected, and set A... C All AGVs within (t) are in a stagnant state due to the inability to obtain resources.
[0090] In an optional embodiment of the first aspect of the present invention, the step of continuing to detect whether other AGVs constitute a predicted deadlock loop with the target AGV's requested path resources if a target AGV requests desired path resources includes:
[0091] If a target AGV requests desired path resources, then based on the pre-defined definition of predicted deadlock loops and the mapping relationship between AGV states and resources, it is detected whether other AGVs constitute predicted deadlock loops with the target AGV's requested desired path resources in other path resources.
[0092] Specifically, in this invention, each AGV l∈A W (t) Check if the deadlock loop condition is met. If a deadlock loop involving multiple AGVs is detected at any time t1, the corresponding set of AGVs A is rescheduled. 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 If multiple independent AGV deadlock loops exist, then the corresponding deadlock loops are processed sequentially according to time order; if The current deadlock resolution procedure is then stopped, and it is re-triggered. This ensures resource exclusivity and enables collision-free scheduling.
[0093] A deadlock loop in multi-AGV cooperative operation is defined as follows: at time t, there are at least two or more AGVs waiting for resource allocation, where the intersection of the resource request set of each AGV and the resource set occupied by the other AGV is not empty. The condition for detecting a deadlock loop involving multiple AGVs is mathematically defined as follows: if there exists an AGV m∈A... W (t), the resource set O occupied by AGV m 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 on the contrary This is also necessarily 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], other non-deadlocked AGV sets are running. 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.
[0094] Define the predicted resource conflict at time t+Δt, based on the predicted state. Each predicted AGV m∈AW The set of resources to be requested for (t+Δt) There exists another or more AGVs such that each of the AGVs n∈A W (t+Δt), n≠m, the set of resources to be requested 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 Δt is the set estimated deadlock loop time interval parameter. Due to the uncertainty of the multi-AGV system, the larger Δt is, the lower the accuracy of resource conflict prediction will be.
[0095] Figure 6 This is a schematic diagram of a resource-based prediction of collisions and conflicts. Assume the time point is t1. and and That is, AGV 1 and AGV 2 constitute a predicted resource conflict. A predicted deadlock loop is defined, 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 The reverse is also true. Δt is the set parameter for the estimated deadlock loop time interval. Due to the uncertainty of multi-AGV systems, the larger Δt is, the lower the accuracy of deadlock loop prediction will be.
[0096] Figure 7 This is a schematic diagram of a resource-based prediction of deadlock loop collisions. Assume the time point is t1. and and That is, AGV 1 and AGV 2 form a predictive deadlock loop.
[0097] Based on the above definition of predicted deadlock loop and the obtained AGV state-resource mapping relationship, detect whether the remaining paths corresponding to other running vehicles and the remaining path of this AGV constitute a predicted deadlock loop. Here, the remaining path is defined as the ordered set of path resources from the current state of the AGV to the destination corresponding to its task. Step (5) Check each AGV. At time t+T n The set of resources to be occupied The set of resources that AGV m will request The intersection of the two is not empty, that is The converse is also true, T m and T n Let be the times when AGV m and AGV n reach their respective endpoints at time t. In the deadlock loop predicted in this step, there exists at least one AGV whose remaining path resource set is completely contained within the remaining path resource sets of other AGVs in the deadlock, either in the opposite direction or in the same direction. Such an AGV set is defined as follows: AGV n∈A W The deadlocked AGV set formed by (t) AGV set for replanning paths
[0098] In an optional embodiment of the first aspect of the present invention, if other AGVs form a predicted deadlock loop with the target AGV's requested desired path resources in other path resources, then replanning the desired path resources for the target AGV includes: obtaining the resource occupation and request relationships corresponding to all AGVs involved in all deadlock loops in which the predicted AGV (i.e., the target AGV) participates, for each AGV n∈A W The set of replanned AGV paths for (t) Each AGV in the process replans its path, ensuring that the new path does not overlap with any other AGV (n∈A). W The path of (t) produces a deadlock loop.
[0099] In an optional embodiment of the first aspect of the present invention, the step of continuing to detect whether the target AGV has left the spatial conflict region under the corresponding cluster management if no other AGV forms a predicted deadlock loop with the target AGV's requested path resources in other path resources includes: based on AGV n∈A WThe spatial conflict region flag corresponding to the path resource requested by (t) is used to determine whether the AGV has entered a spatial conflict region. Since deadlock handling has a higher priority than local conflict optimization and control, once a deadlock occurs in a spatial conflict region, deadlock resolution must be completed first, and non-deadlock conflicts are handled based on the first-come, first-served principle. Conflict optimization and control are then performed for the spatial conflict region only after no deadlock state exists in the scheduling system. Therefore, if no deadlock cycle is detected in the corresponding spatial conflict region, the local cooperative game distributed control conflict resolution program is executed to optimize and control the scheduling variables of the AGV with spatial conflicts.
[0100] In an optional embodiment of the first aspect of the present invention, if no deadlock loop is detected in the corresponding cluster space conflict region, the execution step of the local cooperative game distributed control conflict resolution program to optimize and control the scheduling variables of the AGVs in the cluster space conflict includes: pre-defining a cooperative game under multiple AGV conflict resources, where the action space is acceleration or deceleration, and uniform speed movement can be regarded as movement with zero acceleration. The payoff function of the cooperative game reflects the quality of strategy execution. The goal is to minimize the sum of deviations of the cooperative AGVs from their respective previous optimal positions. At each spatial conflict detection resource point, the constraint condition of collision-free scheduling is satisfied.
[0101] In an optional embodiment of the first aspect of the present invention, if the deadlock loop can be resolved, the corresponding deadlock loop resolution strategy is executed to resolve the deadlock loop, which includes: judging the resource conflict state of the deadlock loop with the existence of spatial conflict regions and solving the deadlock loop optimization problem strategic solution; if there is no solution to the deadlock loop, it is returned to the scheduling system for further processing; otherwise, according to the deadlock resolution strategy, each AGV in the AGV set is centrally controlled to reschedule to execute the deadlock resolution strategy.
[0102] See Figure 8 The second aspect of the present invention discloses a multi-AGV collaborative scheduling system, the multi-AGV collaborative scheduling system comprising:
[0103] The first model building module 10 is used to build a mathematical model corresponding to the AGV status and path resources;
[0104] The second model building module 20 is used to build a spatial mathematical model for conflict detection.
[0105] Speed planning module 30 is used to plan the speed for the AGVs assigned tasks;
[0106] Data acquisition module 40 is used to acquire the AGV status and path resource occupancy relationship over discrete time periods;
[0107] Network update module 50 is used to dynamically update the clustered self-organizing communication network based on the AGV status and path resource occupancy relationship in discrete time periods;
[0108] The AGV dynamic detection module 60 is used to detect whether a target AGV has requested the desired path resources;
[0109] The deadlock loop detection module 70 is used to detect whether there are other AGVs that form a deadlock loop with the target AGV's requested path resources if the target AGV requests the desired path resources.
[0110] The path replanning module 80 is used to replan the expected path resources for the target AGV if there is a predicted deadlock loop between other AGVs and the expected path resources applied for by the target AGV in other path resources.
[0111] In an optional embodiment of the second aspect of the present invention, the multi-AGV collaborative scheduling system further includes:
[0112] The spatial conflict area detection module is used to continue detecting whether the target AGV has left the spatial conflict area under the corresponding cluster management if there are no other AGVs forming a predicted deadlock loop with the target AGV's expected path resources in other path resources.
[0113] The deadlock loop detection module is used to continue detecting whether there is a deadlock loop in the spatial conflict area under the corresponding cluster management if the target AGV has not left the spatial conflict area under the corresponding cluster management.
[0114] The deadlock loop resolution module is used to determine whether a deadlock loop can be resolved if a deadlock loop exists in a spatial conflict region under the corresponding cluster management.
[0115] The deadlock loop resolution module is used to execute the corresponding deadlock loop resolution strategy to resolve the deadlock loop if it can be resolved.
[0116] In an optional embodiment of the second aspect of the present invention, the first model building module includes:
[0117] The graph model building unit is used to build a graph model related to the state of AGVs. It sets up multiple AGVs to work collaboratively in a workspace, with each AGV traveling along a pre-planned trajectory, and builds a directed graph for all two-dimensional state spaces under the workspace.
[0118] The motion model building unit is used to build a motion model related to the AGV state. It defines the AGV state as a combination of the position and speed of the AGV operation control center at each time, defines the planned AGV state variables, and defines the AGV's occupied state space as the outline of the AGV at each time and the set of all corresponding state spaces within the outline.
[0119] In an optional embodiment of the second aspect of the present invention, the second model building module includes:
[0120] The spatial conflict detection resource set delineation unit is used to define path points in the graph model related to the AGV status at intersections, where each path point has at least two adjacent points. The path points at the intersections are defined as spatial conflict detection resource points, and the corresponding edge set is used as the spatial conflict detection resource set.
[0121] The spatial conflict detection tag set delineation unit is used to recursively search for sufficiently long adjacent nodes in the spatial conflict detection resource set, and define the set of adjacent nodes obtained as the spatial conflict detection tag set. When the AGV detects that it has entered the conflict detection tag set, it optimizes the state through a cooperative game.
[0122] In an optional embodiment of the second aspect of the present invention, the speed planning module is specifically used to plan the speed and position of the AGV assigned the task and correspond to a discrete time period. When the AGV initializes the task, the state planning of each AGV is to accelerate from the starting point to the maximum speed, the maximum speed being less than or equal to the upper limit of the maximum speed of the AGV, and then decelerate to the end point or directly decelerate to the end point at the maximum speed.
[0123] In an optional embodiment of the second aspect of the present invention, the network update module is specifically used to dynamically update the clustered self-organizing communication network based on the AGV status and path resource occupancy relationship over discrete time periods, forming a hierarchical cluster structure. In the hierarchical cluster structure, the cluster head performs communication management and information sharing for the AGVs within the cluster.
[0124] In an optional embodiment of the second aspect of the present invention, the predicted deadlock loop detection module is specifically used to detect whether other AGVs constitute a predicted deadlock loop with the expected path resources applied for by the target AGV in other path resources, based on the pre-set definition of the predicted deadlock loop and the mapping relationship between AGV status and resources.
[0125] Figure 9This is a schematic diagram of a multi-AGV collaborative scheduling device provided in an embodiment of the present invention. This multi-AGV collaborative scheduling device can vary significantly due to differences in configuration or performance. It may include one or more processors 110 (central processing units, CPUs) (e.g., one or more processors) and memory 120, and one or more storage media 130 (e.g., one or more mass storage devices) for storing applications or data. The memory and storage media can be temporary or persistent storage. The program stored in the storage media may include one or more modules (not shown in the diagram), each module including a series of instruction operations on the multi-AGV collaborative scheduling device. Furthermore, the processor may be configured to communicate with the storage media and execute the series of instruction operations stored in the storage media on the multi-AGV collaborative scheduling device.
[0126] The multi-AGV collaborative scheduling device of the present invention may further include one or more power supplies 140, one or more wired or wireless network interfaces 150, one or more input / output interfaces 160, and / or one or more operating systems, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, etc. Those skilled in the art will understand that... Figure 9 The structure of the multi-AGV collaborative scheduling device shown does not constitute a specific limitation on the multi-AGV collaborative scheduling device of the present invention. It may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0127] The present invention also provides a computer-readable storage medium, which can be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium, wherein the computer-readable storage medium stores instructions that, when the instructions are executed on a computer, cause the computer to perform the steps of the multi-AGV cooperative scheduling method.
[0128] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the system or system / unit described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0129] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, a video playback server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0130] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. 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 of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A multi-AGV collaborative scheduling method, characterized in that, Includes the following steps: Establish a mathematical model that corresponds to AGV status and path resources; Establish a spatial mathematical model for conflict detection; Plan the speed of the AGVs to be assigned tasks; Obtain the AGV status and path resource usage relationship over discrete time periods; The clustered self-organizing communication network is dynamically updated based on the AGV status and path resource occupancy relationship over discrete time periods. Detect whether the target AGV has requested the resources for the desired path; If a target AGV requests the desired path resource, then continue to check if there are other AGVs that form a predicted deadlock loop with the target AGV's requested path resource in other path resources. If other AGVs form a predicted deadlock loop with the target AGV's requested path resources on other path resources, then the target AGV's expected path resources will be replanned. The spatial mathematical model for conflict detection includes: At intersections, path points in the graph model related to AGV status have at least two adjacent points. The path nodes at intersections are defined as spatial conflict detection resource points, and the corresponding set of edges is used as the spatial conflict detection resource set. In the spatial conflict detection resource set, we recursively search for adjacent nodes within a preset distance in the space. The set of adjacent nodes obtained is defined as the spatial conflict detection tag set. When the AGV detects that it has entered the conflict detection tag set, the state is optimized through a cooperative game approach. The clustered self-organizing communication network that dynamically updates AGV status and path resource occupancy relationships over discrete time periods includes: Based on the dynamic updating of AGV status and path resource occupancy relationship in discrete time periods, a clustered self-organizing communication network is formed to form a hierarchical cluster structure. In the hierarchical cluster structure, the cluster head performs communication management and information sharing for the AGVs within the cluster.
2. The multi-AGV collaborative scheduling method according to claim 1, characterized in that, The step of continuing to detect whether other AGVs form a predicted deadlock loop with the target AGV's requested path resources if a target AGV requests the desired path resources includes: If no other AGV forms a predicted deadlock loop with the target AGV's requested path resources in other path resources, then continue to check whether the target AGV has left the spatial conflict area under the corresponding cluster management. If the target AGV has not left the spatial conflict area under the corresponding cluster management, continue to check whether there is a deadlock loop in the spatial conflict area under the corresponding cluster management; If a deadlock loop exists in the spatial conflict region under the corresponding cluster management, determine whether the deadlock loop can be resolved. If the deadlock loop can be broken, then the corresponding deadlock loop breaking strategy is executed to break the deadlock loop.
3. The multi-AGV collaborative scheduling method according to claim 1, characterized in that, The mathematical model for establishing the correspondence between AGV status and path resources includes: Establish a graph model related to the state of AGVs, set up multiple AGVs to work collaboratively in a workspace, with each AGV traveling along a pre-planned trajectory, and establish a directed graph for all two-dimensional state spaces under the workspace; Establish a motion model related to the AGV state, define the AGV state as the combination of the position and speed of the AGV operation control center at each time, define the planned AGV state variables, and define the AGV's occupied state space as the outline of the AGV at each time and the set of all corresponding state spaces within the outline.
4. The multi-AGV collaborative scheduling method according to claim 1, characterized in that, The AGV planning speed for task allocation includes: To allocate tasks, the AGVs are planned to have speeds and positions and to correspond to discrete time periods. When the AGVs initialize tasks, the state planning of each AGV is to accelerate from the starting point to the maximum speed, where the maximum speed is less than or equal to the upper limit of the AGV's maximum speed, and then decelerate to the endpoint or directly decelerate to the endpoint at the maximum speed.
5. The multi-AGV collaborative scheduling method according to claim 1, characterized in that, The step of continuing to detect whether other AGVs constitute a predicted deadlock loop with the target AGV's requested path resources if a target AGV requests resources for the desired path includes: If a target AGV requests desired path resources, then based on the pre-defined definition of predicted deadlock loops and the mapping relationship between AGV states and resources, it is detected whether other AGVs constitute predicted deadlock loops with the target AGV's requested desired path resources in other path resources.
6. A multi-AGV collaborative scheduling system, characterized in that, The multi-AGV collaborative scheduling system includes: The first model building module is used to build a mathematical model corresponding to the AGV status and path resources. The second model building module is used to build a spatial mathematical model for conflict detection. The speed planning module is used to plan the speed for AGVs assigned tasks. The data acquisition module is used to acquire the AGV status and path resource occupancy relationship over discrete time periods; The network update module is used to dynamically update the clustered self-organizing communication network based on the AGV status and path resource occupancy relationship over discrete time periods. The AGV dynamic detection module is used to detect whether a target AGV has requested the resources for the desired path. The deadlock loop prediction module is used to detect whether there are other AGVs that form a deadlock loop with the target AGV's requested path resources if the target AGV requests the desired path resources. The path replanning module is used to replan the expected path resources for the target AGV if there is a predicted deadlock loop between other AGVs and the expected path resources requested by the target AGV on other path resources. The establishment of the spatial mathematical model for conflict detection includes: At intersections, path points in the graph model related to AGV status have at least two adjacent points. The path nodes at intersections are defined as spatial conflict detection resource points, and the corresponding set of edges is used as the spatial conflict detection resource set. In the spatial conflict detection resource set, we recursively search for adjacent nodes within a preset distance in the space. The set of adjacent nodes obtained is defined as the spatial conflict detection tag set. When the AGV detects that it has entered the conflict detection tag set, the state is optimized through a cooperative game approach. The clustered self-organizing communication network that dynamically updates AGV status and path resource occupancy relationships over discrete time periods includes: Based on the dynamic updating of AGV status and path resource occupancy relationship in discrete time periods, a clustered self-organizing communication network is formed to form a hierarchical cluster structure. In the hierarchical cluster structure, the cluster head performs communication management and information sharing for the AGVs within the cluster.
7. A multi-AGV collaborative scheduling device, characterized in that, The multi-AGV collaborative scheduling device includes: a memory and at least one processor, wherein the memory stores instructions, and the memory and the at least one processor are interconnected via a line; The at least one processor invokes the instructions in the memory to cause the multi-AGV collaborative scheduling device to execute the multi-AGV collaborative scheduling method as described in any one of claims 1-5.
8. A computer-readable storage medium storing a computer program thereon, characterized in that, When the computer program is executed by the processor, it implements the multi-AGV cooperative scheduling method as described in any one of claims 1-5.