A path lock control precomputation optimization method, device, equipment and storage medium
By constructing a simplified vehicle feature library and road network spatial index, and adopting a three-round progressive filtering mechanism, the problem of wasted computing resources and low efficiency of existing path lock control pre-computation algorithms in large-scale scenarios is solved, and efficient path lock control pre-computation is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN NEW TREND INT ROBOT CO LTD
- Filing Date
- 2026-04-29
- Publication Date
- 2026-07-03
Smart Images

Figure CN122116688B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of AGV traffic management technology, and in particular to a path locking pre-calculation optimization method, device, equipment, and storage medium. Background Technology
[0002] With the large-scale application of industrial AGV clusters, multi-vehicle mixed scheduling, ultra-large-scale complex road networks, and high-density waypoint planning have become the mainstream forms in intelligent manufacturing and warehousing logistics scenarios. The corresponding path locking pre-calculation system has become a core technology to replace traditional real-time traffic management solutions. However, in practical engineering applications, existing pre-calculation algorithms still have the following core shortcomings that prevent them from adapting to large-scale scenarios:
[0003] 1. Existing algorithms require collision detection for all combinations of road segments and nodes across the entire road network. In scenarios with 20,000 road segments and 10,000 nodes, the total number of combinations can reach 10. 9 The level is such that more than 99% of the combinations are collision-free. Full detection leads to a serious waste of computing resources, and the pre-calculation time can reach several hours, which is completely unable to meet the needs of engineering applications.
[0004] 2. The existing algorithm does not utilize the topological relationship between points and segments, but directly performs complex polygon detection on road segment combinations, and does not eliminate invalid combinations in advance through low-complexity distance calculation; at the same time, it does not utilize the size inclusion relationship between vehicle types, and repeatedly performs detection on all vehicle types, further amplifying computational redundancy;
[0005] 3. Existing algorithms first perform full collision detection, and then traverse waypoints separately to calculate the release distance, resulting in a large number of repetitive waypoint distance calculations and collision detections; at the same time, the full waypoint traversal method from the start point to the end point can result in hundreds of iterations in long road segments and multi-waypoint scenarios, leading to extremely low solution efficiency.
[0006] 4. The existing algorithm does not set up a fast collision determination rule based on a distance threshold. For a large number of combinations that can be directly determined to have or not have a collision by simple distance calculation, it still performs complex convex polygon intersection detection, which further increases the computation time. Summary of the Invention
[0007] The purpose of this invention is to provide a path locking pre-computation optimization method, apparatus, device, and storage medium, which aims to solve the problems of serious waste of computational resources and low solution efficiency in existing algorithms.
[0008] In a first aspect, embodiments of the present invention provide a path locking pre-calculation optimization method, comprising:
[0009] Load the original geometric model of the multi-model AGV, extract the vertices of the outer convex polygon of each model, calculate the minimum circumscribed circle radius of each model, and generate a simplified model feature library.
[0010] Load the road network data from the operation map, construct the topological connection relationship between nodes and road segments, and generate a road network spatial index;
[0011] Based on the simplified vehicle feature library and the road network spatial index, all node pairs are traversed. The first round of filtering is performed by the Euclidean distance of the node pairs and the radius of the outer edge of the corresponding vehicle. Polygonal collision detection and minimum safe release distance are then performed on the remaining node pairs after the first round of filtering to generate a node interlock dataset and a node release distance set.
[0012] Based on the simplified vehicle feature library and the road network spatial index, all road segments and node combinations are traversed. A second round of filtering is performed using the node interlock dataset, the distance between road segments and nodes, and the radius of the outer edge of the corresponding vehicle model. Polygon collision detection and minimum safe release distance are then performed on the remaining road segments and node combinations after the second round of filtering to generate a road segment node interlock dataset and a road segment node release distance set.
[0013] Based on the simplified vehicle feature library and the road network spatial index, all road segment pairs are traversed. Three rounds of filtering are performed using the node interlock dataset, the road segment node interlock dataset, the distance between road segments, and the outer edge enclosing circle radius of the corresponding vehicle model. Polygon collision detection and minimum safe release distance are then performed on the remaining road segment pairs after the three rounds of filtering to generate the road segment interlock dataset and the road segment release distance set.
[0014] Secondly, embodiments of the present invention provide a path locking pre-calculation optimization device, comprising:
[0015] The loading module is used to load the original geometric models of multi-model AGVs, extract the vertices of the outer convex polygons of each model, calculate the minimum circumscribed circle radius of each model, and generate a simplified model feature library.
[0016] The building module is used to load the road network data of the operation map, build the topological connection relationship between nodes and road segments, and generate the road network spatial index;
[0017] The first-round screening module is used to traverse all node pairs based on the simplified vehicle feature library and the road network spatial index, perform the first round screening by the Euclidean distance of the node pairs and the radius of the outer edge of the corresponding vehicle, and perform polygon collision detection and solve the minimum safe release distance for the remaining node pairs after the first round screening, generating a node interlock dataset and a node release distance set.
[0018] The second-round screening module is used to traverse all road segments and node combinations based on the simplified vehicle feature library and the road network spatial index. It performs a second round of screening by using the node interlock dataset, the distance between road segments and nodes, and the radius of the outer edge of the corresponding vehicle model. It then performs polygon collision detection and solves the minimum safe release distance for the remaining road segments and node combinations after the second round of screening, generating a road segment node interlock dataset and a road segment node release distance set.
[0019] The three-round screening module is used to traverse all road segment pairs based on the simplified vehicle feature library and the road network spatial index. It performs three rounds of screening using the node interlock dataset, the road segment node interlock dataset, the distance between road segments, and the outer edge enclosing circle radius of the corresponding vehicle model. It then performs polygon collision detection and solves for the minimum safe release distance on the remaining road segment pairs after the three rounds of screening, generating a road segment interlock dataset and a road segment release distance set.
[0020] Thirdly, embodiments of the present invention provide a computer device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the path locking pre-calculation optimization method described in the first aspect.
[0021] Fourthly, embodiments of the present invention also provide a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, which, when executed by a processor, implements the path locking pre-computation optimization method described in the first aspect.
[0022] This invention discloses a path locking pre-calculation optimization method, apparatus, device, and storage medium. The method includes: loading the original geometric model of a multi-model AGV, extracting the vertices of the outer convex polygons of each model, calculating the minimum circumscribed circle radius of each model, and generating a simplified model feature library; loading road network data from the operation map, constructing the topological connection relationship between nodes and road segments, and generating a road network spatial index; based on the simplified model feature library and the road network spatial index, traversing all node pairs, performing a first round of screening based on the Euclidean distance of the node pairs and the corresponding model's outer circumscribed circle radius, and performing polygon collision detection and solving for the minimum safe release distance on the remaining node pairs after the first round of screening, generating a node interlock dataset and a node release distance set; based on the simplified model feature library and the... The road network spatial index traverses all road segments and node combinations. A second round of filtering is performed using the node interlock dataset, the distance between road segments and nodes, and the radius of the outer bounding circle of the corresponding vehicle model. Polygonal collision detection and minimum safe release distance calculation are then applied to the remaining road segments and node combinations after the second round of filtering, generating a road segment-node interlock dataset and a road segment-node release distance set. Based on the simplified vehicle model feature library and the road network spatial index, all road segment pairs are traversed. A third round of filtering is performed using the node interlock dataset, the road segment-node interlock dataset, the distance between road segments, and the radius of the outer bounding circle of the corresponding vehicle model. Polygonal collision detection and minimum safe release distance calculation are then applied to the remaining road segment pairs after the third round of filtering, generating a road segment interlock dataset and a road segment release distance set. This invention constructs a simplified vehicle feature library and road network spatial index, employing a three-round progressive filtering mechanism. It sequentially eliminates combinations without collision risk by combining Euclidean distance, the radius of the outer bounding circle, and the pre-interlock dataset, thus curbing the problem of exploding computational combinations in large-scale road networks from the source. Polygonal collision detection is performed only on the selected and retained valid combinations, significantly reducing collision detection redundancy. Simultaneously, collision detection and minimum safe release distance are solved synchronously, reducing repetitive iterative calculations and effectively addressing the shortcomings of excessive iterations and high system computational load in release distance calculation. Finally, the multi-type interlock and release distance datasets are loaded into the traffic management system, enabling rapid response to lock control query requests. While ensuring path lock control detection accuracy, it significantly improves pre-calculation efficiency, reduces system resource consumption, and can stably adapt to AGV scheduling application scenarios involving large-scale complex road networks, multiple waypoints, and mixed vehicle types. This invention also provides a path lock control pre-calculation optimization device, a computer-readable storage medium, and a computer device, all possessing the aforementioned beneficial effects, which will not be elaborated further here. Attached Figure Description
[0023] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the following description of the embodiments will be briefly introduced. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0024] Figure 1 A flowchart illustrating the pre-calculation optimization method for path locking;
[0025] Figure 2 A flowchart illustrating the data preprocessing process;
[0026] Figure 3 This is a planar geometric schematic diagram of the Diff model.
[0027] Figure 4 This is a planar geometric schematic diagram of a steering wheel vehicle.
[0028] Figure 5 A flowchart illustrating the calculation of interlocking relationships between nodes;
[0029] Figure 6 A flowchart illustrating the calculation of interlocking relationships between nodes and road segments;
[0030] Figure 7 This is a schematic diagram illustrating the locking and control relationships between road segments and nodes;
[0031] Figure 8 A flowchart illustrating the calculation process for road segments and interlocking relationships between road segments;
[0032] Figure 9 This is a schematic diagram showing the interlocking and control relationships between road segments;
[0033] Figure 10 A flowchart illustrating the output of the results;
[0034] Figure 11 This is a schematic diagram of the road segments and nodes on the map.
[0035] Figure 12 A schematic diagram showing the lock-related road segments and release distances for vehicle models T1 and T2;
[0036] Figure 13 A schematic diagram showing the locking-related road segments and release distances for vehicle model T2;
[0037] Figure 14 A schematic block diagram of a path locking pre-calculation optimization device. Detailed Implementation
[0038] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0039] It should be understood that, when used in this specification and the appended claims, the terms “comprising” and “including” indicate the presence of the described features, integrals, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more of its features, integrals, steps, operations, elements, components and / or collections thereof.
[0040] It should also be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the invention. As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms unless the context clearly indicates otherwise.
[0041] It should also be further understood that the term "and / or" as used in this specification and the appended claims refers to any combination of one or more of the relevant listed items and all possible combinations, and includes such combinations.
[0042] Please see Figure 1 This embodiment provides a path locking pre-calculation optimization method, including:
[0043] S101: Load the original geometric model of the multi-model AGV, extract the vertices of the outer convex polygon of each model, calculate the minimum circumscribed circle radius of each model, and generate a simplified model feature library.
[0044] In this embodiment, please refer to Figures 2-4 Load the original geometric models of multi-model AGVs, extract the vertices of the convex polygons along the outer edges of each model, calculate the minimum circumscribed circle radius of each model, and generate a simplified model feature library including:
[0045] Load the original geometric model of the multi-model AGV;
[0046] Based on the original geometric model, the vehicle identifier and the corresponding planar projection original polygon vertex coordinates are extracted, and the original polygon vertex coordinates are sorted in a clockwise direction to generate the original geometric model dataset for each vehicle.
[0047] Based on the original geometric model dataset, the outer convex hull of all vertex coordinates in the global coordinate system is calculated, and the minimum outer vertex of the original polygon is extracted by the convex hull algorithm to generate the outer convex polygon vertex dataset of each vehicle model.
[0048] Based on the vertex dataset of convex polygons with outer edges, the Euclidean distance from each smallest outer edge vertex to the origin of the coordinate system is calculated to obtain the vertex distance set.
[0049] The maximum value of each car model in the vertex distance set is used as the minimum circumcircle radius of the car model to generate a dataset of circumcircle radii for each car model.
[0050] By associating the dataset of vertices of the convex polygons along their outer edges with the dataset of circumscribed circle radii according to vehicle model identifiers, a simplified vehicle model feature library is obtained.
[0051] This embodiment extracts the vertices of the outer convex polygons of the original geometric model and uses the convex hull algorithm to filter out redundant internal vertices, retaining only the minimum outer contour representing the space occupied by the vehicle model. This significantly reduces the computational cost of convex polygon intersections in subsequent collision detection, while avoiding interference from complex details in the original model on detection accuracy. By calculating the minimum circumcircle radius of each vehicle model, the complex polygon collision determination is simplified to Euclidean distance comparison, providing a fast determination index with extremely low computational cost for multi-level screening of node-node, road segment-node, and road segment-road segment. After associating the vertices of the outer convex polygons with the circumcircle radius according to the vehicle model identifier to form a feature library, standardized encapsulation and reuse of vehicle model data are achieved. During the pre-calculation process, there is no need to repeatedly load the original model or repeatedly calculate geometric features, which significantly reduces the time spent on data parsing and feature extraction. In addition, the construction process of this feature library is decoupled from the subsequent lock control detection logic, so that when the vehicle model data is updated, only the feature library needs to be regenerated without modifying the core detection algorithm, which greatly improves the maintainability and scalability of the system.
[0052] Specifically, the system first loads the original geometric model configuration file of the multi-model AGV. The configuration file is stored in JSON format. Each record contains the model identifier, the model drive type, and the original polygon vertex coordinate sequence of the model under the planar projection. All vertex coordinates are defined with the geometric center of the vehicle as the origin.
[0053] The system calls a JSON parsing library to read each vehicle model record in the configuration file, extracting the vehicle model identifier and its corresponding original polygon vertex coordinates for planar projection, forming a temporary vertex list. For the original polygon vertex coordinates of each vehicle model, the system uses a planar point set sorting algorithm to reorder all vertices clockwise, ensuring the consistency of the polygon boundary orientation. After sorting, the system associates and encapsulates the vehicle model identifier with the sorted sequence of original polygon vertex coordinates to generate the original geometric model dataset for each vehicle model. This dataset serves as the input for subsequent convex hull calculation and feature extraction.
[0054] The system reads the original polygon vertex coordinate sequence for each vehicle model from the original geometric model dataset. Since the original vertex coordinates are defined in a local coordinate system with the vehicle's geometric center as the origin, and subsequent collision detection needs to be performed in the global road network coordinate system, the system pre-computes a unified coordinate system transformation. It iterates through the original vertex coordinates of each vehicle model, superimposing the local coordinates of each vertex with the vehicle reference point coordinates. Combining this with the origin offset and rotation angle defined in the map configuration file, an affine transformation is used to transform all vertex coordinates to the global road network coordinate system. After the transformation, each vertex obtains its absolute position in global space.
[0055] The system performs convex hull calculations on the vertex set for each vehicle model, using the Andrew algorithm as the core algorithm for convex hull extraction. The algorithm first sorts the vertex set in ascending order of x-coordinate; if x-coordinates are the same, it sorts them in ascending order of y-coordinate, resulting in a sorted vertex sequence. Then, it constructs the upper and lower convex hulls: starting from the leftmost vertex, it traverses the sorted vertices sequentially, using the cross product to determine if the vector formed by the current vertex and the top of the stack forms a right turn. If a right turn is formed, the vertex is popped from the stack; otherwise, the current vertex is pushed onto the stack. After constructing the upper convex hull, the same logic is used to construct the lower convex hull by traversing from the rightmost vertex to the left. Finally, the upper and lower convex hulls are merged, and duplicate endpoints are removed to obtain the complete convex hull vertex sequence. Taking a steering wheel vehicle model as an example, its original polygon contains six vertices, which are simplified to a rectangular convex hull composed of four vertices after convex hull extraction, reducing the number of vertices by one-third. The system associates the extracted external convex polygon vertex sequence with the vehicle model identifier to generate an external convex polygon vertex dataset for each vehicle model. In this dataset, each vehicle model corresponds to a set of convex polygon vertex coordinates arranged counterclockwise. The vertex order is checked for consistency to ensure that the edges formed by adjacent vertices are all edges of the convex hull.
[0056] The system reads the vertex sequence of convex polygons for each vehicle model from the external convex polygon vertex dataset. For each vehicle model, it independently executes the distance calculation process, traversing each vertex in the convex polygon vertex sequence, extracting the x and y coordinates of the vertex, and substituting them into the Euclidean distance formula to calculate the straight-line distance from that vertex to the origin.
[0057] ;
[0058] Among them, R i Indicates model T i The minimum circumcircle radius; (x i ,k,y i k) represents model T i The planar coordinates of the k-th vertex of a convex polygon; (x i ,0,y i ,0) represents model T i Vehicle reference point coordinates (origin); Ki Indicates model T i The total number of vertices. The above formula provides core parameters for all subsequent distance filtering stages, and also provides a quantitative basis for sorting car models from smallest to largest (by R). i (Sorted from smallest to largest), providing core judgment indicators for rapid pre-screening of circles with O(1) complexity throughout the entire process.
[0059] The system iterates through the vertex distance set for each vehicle model, using a linear comparison algorithm to compare distance values item by item. The maximum value in the vertex distance set is extracted as the minimum circumcircle radius of that vehicle model (i.e., generating a 2D convex polygon model with the maximum outer edge of the planar projection). The system encapsulates the identifiers of all vehicle models and their corresponding minimum circumcircle radii in key-value pairs, generating a dataset containing circumcircle radius information for ten vehicle models.
[0060] The system uses the vehicle model identifier as the primary key to align and match the convex polygon vertex dataset with the circumscribed circle radius dataset, ensuring that the convex polygon vertex sequence of each vehicle model is bound to the corresponding minimum circumscribed circle radius in the same data structure. A vehicle model feature structure is created, which includes fields such as vehicle model identifier, convex polygon vertex sequence, minimum circumscribed circle radius, and minimum circumscribed circle dimension. The minimum circumscribed circle dimension is obtained by traversing the convex polygon vertices and calculating the minimum and maximum values of the horizontal and vertical coordinates, respectively representing the width and length of the vehicle model. The system stores the feature structure of each vehicle model in a hash table with the vehicle model identifier as the index, and constructs a simplified vehicle model feature library. This feature library uses an indexing mechanism with O(1) time complexity, enabling subsequent node-node filtering, road segment-node filtering, and road segment-road segment filtering steps to quickly locate the convex polygon model and circumscribed circle radius of any vehicle model. During the construction of the feature library, the system simultaneously performs data integrity verification, checking whether the convex polygon vertex sequence of each vehicle model is closed, whether the circumscribed circle radius is positive, and whether the minimum circumscribed circle dimension is reasonable. The establishment of the simplified vehicle feature library marks the completion of the vehicle data preprocessing stage. This feature library extracts the complex information in the original geometric model into structured lightweight data. The circumcircle radius serves as the core parameter for fast filtering and can be directly called in Euclidean distance comparison. The convex polygon vertex sequence serves as the geometric model for accurate detection and provides accurate boundary information in subsequent polygon intersection detection.
[0061] In some embodiments, after constructing a simplified vehicle feature library, the system enters the vehicle inclusion relationship determination stage. This stage aims to identify the spatial inclusion relationships between different vehicle models, providing support for subsequent collision inference logic based on smaller to larger dimensions. The system first extracts the minimum circumscribed circle radius of all vehicle models from the simplified vehicle feature library, sorts the models according to their radius values from smallest to largest, and generates a sorted list of vehicle models. The sorting operation uses a quicksort algorithm to ensure that the sorting of all vehicle models is completed in constant time. In the sorted results, the vehicle with the smallest circumscribed circle radius is placed first, and the vehicle with the largest radius is placed last; this order directly corresponds to the arrangement of the vehicle models' outer edge dimensions from smallest to largest.
[0062] Based on the sorted list of vehicle models, the system iterates through all vehicle model pairs using a double-loop structure. The outer loop iterates through each large vehicle model, while the inner loop iterates through all small vehicles with radii smaller than the given model, avoiding redundant traversals and judgments. For each combination of a large and a small vehicle model, the system reads the vertex sequences of the outer convex polygons of both models from a simplified vehicle feature library. Since the convex polygon vertices of both models are standardized with the vehicle's geometric center as the origin and in a global coordinate system, the system can directly perform inclusion relationship determination without additional coordinate transformations.
[0063] The inclusion relationship determination employs a composite detection algorithm combining ray casting and vertex traversal. Specifically, inclusion relationships are determined according to the following formula:
[0064] ;
[0065] Wherein: T s For small car models (R) s Smaller), T l For large vehicles (R) l Larger); polygon(T) l ) for large vehicle T l The outer edge of the convex polygonal region; P s,k ∈polygon(T l This indicates that all vertices of the smaller vehicle type fall inside the convex polygon of the larger vehicle type, which is determined by the ray casting method.
[0066] After determining the inclusion relationship of all vehicle type pairs, the system constructs a vehicle type inclusion relationship index table. This index table uses vehicle type identifiers as keys. For each large vehicle type, it records a list of identifiers for all small vehicle types it contains; for each small vehicle type, it records a list of identifiers for all large vehicle types it contains. The index table uses a bidirectional hash structure, supporting both quick lookup of the set of small vehicle types contained in a large vehicle type and quick lookup of the set of large vehicle types contained in a small vehicle type. The index table is also organized according to vehicle size order, ensuring that the inclusion relationship chain of any vehicle type can be located in O(1) time complexity during collision detection. This index table enables the system to perform polygon intersection detection only on the smallest vehicle type in the subsequent three-layer progressive collision detection (node-node, segment-node, segment-segment), and directly infer the collision results of all large vehicle types it contains, thus reducing the computational burden of repeated vehicle type detection.
[0067] The time complexity of step S101 is O(Mk+M). 2 ), where M is the number of car models (usually M≤10), and k is the number of vertices of the convex polygon of the car model (k≈4-8); because the value of M is extremely small, M 2 It is negligible, and the actual engineering complexity can be simplified to O(Mk), which hardly consumes any computing resources.
[0068] S102: Load the road network data of the operation map, construct the topological connection relationship between nodes and road segments, and generate the road network spatial index;
[0069] In this embodiment, loading the road network data of the operation map, constructing the topological connection relationship between nodes and road segments, and generating the road network spatial index include:
[0070] The node identifier, x-coordinate, and y-coordinate of all nodes are parsed and extracted from the road network data and stored in the original node data array to generate the original node dataset.
[0071] Parse and extract the segment identifiers, start node identifiers, end node identifiers, and waypoint sequences of all road segments from the road network data and store them in the original road segment data array, along with the original road segment dataset;
[0072] Traverse each road segment in the original road segment dataset, extract the start node identifier and end node identifier of each road segment, and locate the node coordinates corresponding to the start node identifier and the node coordinates corresponding to the end node identifier in the original road segment dataset respectively, to generate the start coordinates and end coordinates of each road segment.
[0073] By associating the starting point coordinates and the ending point coordinates with the corresponding road segment identifiers, a road segment endpoint coordinate dataset is obtained.
[0074] Based on the road segment endpoint coordinate dataset, the start node identifier and end node identifier of each road segment are used as keys, and the road segment identifiers are added to the list of associated road segments corresponding to the keys to generate a node-road segment topology association table.
[0075] Iterate through each node in the node-segment topology association table and obtain the start or end coordinates of the associated segment from the segment endpoint coordinate dataset.
[0076] Calculate the Euclidean distance between the node coordinates and the starting coordinates or the node coordinates and the ending coordinates, and use the Euclidean distance as the adjacent edge weight to generate a road network spatial adjacency index table with the node identifier as the index and the node identifier and the adjacent edge weight as the value.
[0077] The original node dataset, the original road segment dataset, the node-road segment topology association table, and the road network spatial adjacency index table are all stored in the road network spatial index.
[0078] This embodiment achieves standardized integration of road network topology and spatial information through hierarchical analysis and structured construction of road network data, demonstrating significant technical advantages. By extracting raw data from nodes and road segments separately and constructing dedicated datasets, it achieves standardized splitting and storage of road network data, effectively avoiding data chaos and redundant readings. By establishing a node-road segment topology association table, it clearly depicts the bidirectional binding relationship between nodes and road segments, providing accurate topological support for the progressive filtering of subsequent lock control pre-calculation and reducing invalid combination traversal. Based on Euclidean distance, it constructs adjacent edge weights and forms a road network spatial adjacency index table, deeply integrating topological relationships and spatial locations, significantly improving the response efficiency of subsequent spatial distance calculations and lock control queries. Finally, it unifies multiple types of data and association tables into a unified road network spatial index, achieving integrated management of road network information, facilitating rapid invocation of the pre-calculation process, reducing data retrieval time and system computational load, and is well-suited for multi-vehicle AGV path lock control pre-calculation scenarios in large-scale, multi-waypoint complex road networks.
[0079] Specifically, in a large-scale industrial warehousing scenario, the road network comprises 20,000 road segments and 10,000 nodes. The system first loads the road network configuration file of the operational map. This configuration file is stored in JSON format, and the system calls a JSON parsing library to read the file content item by item. For node data, the system extracts the identifier, x-coordinate, and y-coordinate of each node and stores this information in a node raw data array to generate a node raw dataset. This dataset uses the node identifier as the primary key, facilitating rapid node coordinate location later. For road segment data, the system extracts the identifier, start node identifier, end node identifier, and waypoint sequence of each road segment and stores them in a road segment raw data array to generate a road segment raw dataset. The waypoint sequence is stored in JSON array format, containing the coordinates and orientation information of all key points on the road segment, providing a foundation for subsequent waypoint diffusion sampling.
[0080] After extracting the basic data, the system iterates through each road segment in the original dataset. For the currently processed segment, the system reads its start-point and end-point node identifiers and performs a hash lookup in the original node dataset using these identifiers as keys to obtain the x-coordinates and y-coordinates of the start-point node and the end-point node, respectively. The system combines these coordinate values into start-point and end-point coordinate objects and associates them with the segment identifier to generate a road segment endpoint coordinate dataset. This dataset, indexed by the segment identifier, stores the start-point and end-point coordinates of each road segment, providing direct geometric parameters for subsequent segment simplification and distance calculation.
[0081] Based on the road segment endpoint coordinate dataset, the system further constructs a node-road segment topology association table. The system initializes an empty hash table, with the node identifier as the key and the list of road segment identifiers associated with that node as the value. It iterates through each record in the road segment endpoint coordinate dataset, extracting the start and end node identifiers of the road segment, and adding the current road segment identifier to the corresponding lists for the start and end nodes, respectively. After the iteration is complete, each node identifier is associated with all road segment identifiers that start or end at that node, forming a bidirectional topology mapping relationship between nodes and road segments.
[0082] The system then constructs a road network spatial adjacency index table. This index table stores the spatial distance between any two adjacent nodes, serving as a pre-calculated weight for subsequent fast filtering. The system traverses each node in the node-segment topology association table, designating that node as the center node. For each road segment associated with the center node, the system retrieves the start and end coordinates of the road segment from the segment endpoint coordinate dataset. It determines whether the center node coordinates and the start coordinates coincide: if they coincide, the other endpoint is the end coordinate; otherwise, the other endpoint is the start coordinate. After determining the other endpoint, the system retrieves the node identifier and its coordinates corresponding to that other endpoint from the original node dataset. It calculates the Euclidean distance between the center node coordinates and the other endpoint coordinates, which is the spatial straight-line distance between the two adjacent nodes. The system uses the center node identifier as a first-level index and the other endpoint node identifier as a second-level index, storing the calculated Euclidean distance as the adjacency edge weight in a hash table. If there are multiple road segments connecting two nodes, the system takes the minimum distance of all road segments as the final adjacent edge weight to ensure that the index table reflects the shortest spatial distance between nodes.
[0083] Taking a typical intersection as an example, node A has coordinates (0, 0). Its associated road segment L1 starts at A and ends at B (10, 0), while road segment L2 starts at A and ends at C (0, 10). The system calculates the distance between node A and node B as 10, and the distance between node A and node C as 10, storing these values in the adjacency index table. For node B, its associated road segment L1 starts at A, ends at B, and its other endpoint is also A, with a distance of 10. Through this bidirectional calculation, the index table fully covers the adjacency relationships of all node pairs.
[0084] After completing the construction of all the above data structures, the system encapsulates the original node dataset, the original road segment dataset, the node-road segment topology association table, and the road network spatial adjacency index table together and stores them in the road network spatial index. The index adopts a hierarchical hash structure. The original node dataset and the original road segment dataset provide basic geometric information, the node-road segment topology association table provides topological connection relationships, and the road network spatial adjacency index table provides the pre-calculated spatial distance between nodes. In the subsequent node-node interlock detection, the system can directly obtain the coordinates of any two nodes from the index and calculate the Euclidean distance; in the road segment-node interlock detection, the system quickly locates the list of road segments connected to the target node through the node-road segment topology association table and performs rapid filtering by combining the distance data in the adjacency index table. The entire index construction process is completed in the preprocessing stage, enabling the subsequent three-layer progressive filtering to complete the data query in O(1) time complexity, greatly reducing the coordinate parsing and repeated distance calculations in real-time calculation, and providing efficient data support for the lightweight optimization of the entire pre-calculation process.
[0085] The time complexity of step S102 is O(N+P_total), where N is the total number of road network elements (number of road segments + number of nodes, maximum 30000), and P_total is the total number of road points in the entire road network; the road point preprocessing is a linear traversal, and the overall complexity is linear, with no high-complexity calculations.
[0086] S103: Based on the simplified vehicle feature library and the road network spatial index, traverse all node pairs, perform the first round of screening by the Euclidean distance of the node pairs and the radius of the outer edge of the corresponding vehicle, and perform polygon collision detection and solve the minimum safe release distance for the remaining node pairs after the first round of screening to generate a node interlock dataset and a node release distance set.
[0087] In this embodiment, please refer to Figure 5 Based on a simplified vehicle feature library and road network spatial index, all node pairs are traversed. The first round of filtering is performed using the Euclidean distance between node pairs and the radius of the outer bounding circle of the corresponding vehicle model. Polygonal collision detection and minimum safe release distance calculation are then performed on the remaining node pairs after the first round of filtering, generating a node interlock dataset and a node release distance set, including:
[0088] Based on the road network spatial index, all node identifiers and node coordinates are extracted, and a hierarchical index traversal mechanism is used to combine all nodes in pairs to generate a set of node pairs to be detected.
[0089] Based on the set of node pairs to be detected, read the vehicle feature parameter set in the simplified vehicle feature library, extract the outer edge enclosing circle radius data of each vehicle, calculate the Euclidean distance between each node pair in the set of node pairs to be detected, and obtain the node distance.
[0090] Node pairs whose node distance is greater than the sum of the outer edge enclosing circle radius of the two vehicle models and the preset safety expansion radius are removed to generate a candidate node pair set.
[0091] Based on the candidate node pair set, read the maximum outer edge two-dimensional convex polygon model of each vehicle in the simplified vehicle feature library, and extract the list of vehicle models that each node in the candidate node pair set is allowed to stop.
[0092] Sort the car models in the car model list by outer edge size from smallest to largest to generate a car model pair sequence. Project the maximum outer edge two-dimensional convex polygon model of each car model in the car model pair sequence onto the stopping area of the corresponding node, perform convex polygon intersection determination, and generate a node interlocking dataset.
[0093] For node pairs and vehicle type combinations with interlocking relationships, the minimum safe release distance is calculated based on the coordinates of the nodes and the path topology in the road network spatial index, thus obtaining the node release distance set.
[0094] This embodiment employs a hierarchical index traversal mechanism to generate a set of node pairs to be detected, avoiding redundant combinations caused by brute-force traversal and effectively improving the efficiency of node pair combination generation. A first-round coarse screening is performed by combining the Euclidean distance of nodes with the radius of the vehicle's outer edge enclosing circle and a preset safety expansion radius, quickly eliminating a large number of node pairs without collision risk, curbing the problem of combination explosion from the source, and significantly reducing the computational scale of subsequent accurate detection. Sorting vehicle models by their outer edge dimensions from smallest to largest and performing convex polygon intersection judgment can accurately identify interlocking relationships between nodes, reducing the redundancy of collision detection. Solving for the minimum safe release distance only for node pairs and vehicle model combinations with interlocking relationships avoids full-scale invalid iterative calculations, effectively reducing the system's computational load. Simultaneously, the node interlocking dataset and node release distance set generated by this scheme can serve as a prerequisite for subsequent road segment-related lock control calculations, achieving progressive lightweight calculations. While ensuring detection accuracy, it significantly improves pre-calculation efficiency and is suitable for multi-vehicle AGV scheduling scenarios in large-scale complex road networks.
[0095] Specifically, the system extracts the identifiers and corresponding x and y coordinates of all nodes from the road network spatial index, and uses a hierarchical index traversal mechanism to combine all nodes pairwise. The hierarchical index traversal is based on the hash value of the node identifiers, dividing the nodes into multiple buckets. During traversal, only nodes from different buckets or different positions within a bucket are combined, avoiding repeated calculations of the same node pair in both directions. Simultaneously, it ensures that C→D and D→C are stored as independent combinations in the set of node pairs to be detected, satisfying the full coverage requirement of bidirectional locking relationships. After traversal, the system generates a set of node pairs to be detected.
[0096] The system then performs an initial quick filter on the set based on the nodes to be detected. Specifically, the initial quick filter is performed according to the following formula:
[0097] ;
[0098] The formula for determining node-to-node interlock relationships is:
[0099] ;
[0100] Here, Filter represents a candidate node pair; For node N m With N n The Euclidean distance between them; T i For node N m Vehicles permitted to park: T j For node N nAllowed vehicle models to park; Intersect() is a function to determine the intersection of convex polygons. If they intersect, it returns True, indicating that the envelopes (the smallest continuous spatial area occupied by the AGV body and load during its movement) of the two parked AGVs overlap and have an interlocking relationship; if they do not intersect, it returns False. R j Indicates model T j The minimum circumscribed circle radius (i.e., the radius of the circle enclosed by the outer edge); D safe Indicates the preset safe expansion radius. (polygon) park The convex polygon representing the parking envelope of the vehicle model at the node; Mutex represents node interlocking.
[0101] For interlocked node pairs and vehicle type combinations, the system simultaneously calculates the minimum safe release distance. Since both vehicles are stationary in node-to-node interlocked scenarios, the minimum safe release distance is the spatial distance between the two nodes plus a safety redundancy. The system retrieves the coordinates of the two nodes from the road network spatial index, recalculates the Euclidean distance, adds this distance to a preset safety expansion radius, and stores this as the minimum safe release distance for the node pair and vehicle type combination in the node release distance set. For node pairs with small spacing in the aforementioned intersection scenario, the system calculates the release distance as the actual distance between the two nodes plus a 0.5-meter safety redundancy.
[0102] After detecting all candidate node pairs, the system stores the node interlock dataset and the node release distance dataset separately. The node interlock dataset records the node identifier pairs with collision risks, the corresponding vehicle model combination information, and the collision determination results. The node release distance dataset records the minimum safe release distance corresponding to each interlock relationship. These two datasets serve as the first-round screening basis for subsequent road segment-node interlock detection. In road segment-node detection, the system can directly query the node interlock dataset. If the starting or ending node of a road segment has an interlock record with the target node, it is determined that the road segment and the target node have a potential collision risk and need to proceed to the subsequent detection process; otherwise, the road segment-node combination is directly eliminated. Through this hierarchical reuse screening mechanism, the system converges complex detection tasks layer by layer, providing core support for the lightweight optimization of the entire pre-computation process.
[0103] The time complexity of step S103 is O(Q). 2 +Q1×M×(k+l)), where Q is the total number of nodes (maximum 10000), and Q1 is the number of node pairs remaining after distance filtering (only Q1 is the number of nodes remaining after distance filtering). 2 Within 1% of the total number of vehicle models (M represents the number of vehicle models); by filtering out more than 99% of invalid combinations through distance filtering, and combining the "small first, then large" logic to reduce duplicate vehicle model detection by more than 90%, the actual engineering complexity is far lower than the theoretical value, solving the O(Q) problem of traditional solutions for full detection.2 ×M×(k+l) 2 Highly complex problems.
[0104] S104: Based on the simplified vehicle feature library and the road network spatial index, traverse all road segments and node combinations, perform a second round of filtering using the node interlock dataset, the distance between road segments and nodes, and the outer edge enclosing circle radius of the corresponding vehicle model, and perform polygon collision detection and solve for the minimum safe release distance on the remaining road segments and node combinations after the second round of filtering to generate the road segment node interlock dataset and the road segment node release distance set;
[0105] In this embodiment, please refer to Figure 6 and Figure 7 Based on a simplified vehicle feature library and road network spatial index, all road segments and node combinations are traversed. A second round of filtering is performed using the node interlock dataset, the distance between road segments and nodes, and the radius of the outer bounding circle of the corresponding vehicle model. Polygonal collision detection and minimum safe release distance calculation are then performed on the remaining road segments and node combinations after the second round of filtering, generating a road segment node interlock dataset and a road segment node release distance set, including:
[0106] Based on the node interlock dataset and road network spatial index, all combinations of road segments and nodes are traversed to extract the starting node, ending node and target node of the road segment;
[0107] If there is no interlock record between the starting node and the target node and no interlock record between the ending node and the target node in the node interlock dataset, then the combination of road segment and node is removed, and the first round of road segment node screening result set is generated.
[0108] Based on the combination of remaining road segments and nodes in the first round of road segment node screening results set, the remaining road segments are simplified into straight line segments according to the coordinates of the starting and ending nodes of the remaining road segments.
[0109] Calculate the nearest perpendicular distance from the target node to the corresponding straight line segment for each remaining road segment;
[0110] If the nearest vertical distance is greater than the sum of the outer perimeter radius of the two vehicle models and the preset safety distance, then the combination of road segment and node is eliminated, and a second-round filtering result set of road segment and node is generated.
[0111] Based on the remaining combinations in the second round of screening results for road segment nodes, traverse the list of allowed vehicle types for the remaining road segments and the list of allowed vehicle types for the nodes to park, and generate a set of vehicle type matching pairs.
[0112] Take the smallest size vehicle pair from the vehicle pair matching set, project the largest outer convex polygon model of the first vehicle in the smallest size vehicle pair onto the driving plane of the road segment, project the largest outer convex polygon model of the second vehicle in the smallest size vehicle pair onto the parking area of the target node, perform convex polygon intersection detection, record the vehicle pairs and road segment node pairs with collision risk, and generate the road segment node interlock dataset.
[0113] Based on the risk combinations with collision risks in the interlocked data set of road segment nodes, the minimum safe release distance for each risk combination is calculated by simplifying the safe collision radius in the vehicle feature library and the lane curvature and length data in the road network spatial index, thus generating a set of release distances for road segment nodes.
[0114] This embodiment uses a node interlock dataset as a prerequisite, prioritizing the elimination of combinations where the start, end, and target nodes have no interlock records, achieving rapid initial screening and significantly reducing invalid calculation combinations, continuing the progressive lightweight logic. Road segments are simplified into straight lines, and the nearest perpendicular distance from the target node to the straight line segment is calculated. A second round of screening is performed, combining the vehicle model's outer edge radius with a preset safety distance. This simple and efficient screening logic further eliminates combinations without collision risk, effectively curbing the explosion of combination numbers and reducing the computational scale of subsequent detections. Matching pairs are generated by traversing the vehicle model lists of road segments and nodes, and convex polygon intersection detection is prioritized for the smallest vehicle model pairs. Vehicle model inclusion relationships are used to avoid redundant operations in detecting all vehicle model pairs, improving collision detection efficiency. Only combinations with collision risk are calculated for the minimum safe release distance. Combining the core data of the simplified vehicle model feature library and road network spatial index, computational accuracy is ensured while reducing invalid iterations and lowering the system's computational load. In addition, the generated interlock dataset and release distance set of road segment nodes can serve as a prerequisite for subsequent road segment locking calculations, further improving the progressive lightweight computing system, adapting to the locking pre-calculation needs of large-scale complex road networks and multi-vehicle mixed scenarios, and balancing efficiency and accuracy.
[0115] Specifically, the system reads all interlock records from the node interlock dataset and traverses all combinations of road segments and nodes using the road network spatial index. For the currently processed road segment, the system extracts the start node identifier, end node identifier, and target node identifier from the road network spatial index. The system then performs hash lookups in the node interlock dataset for each combination of start and target nodes, and for each combination of end and target nodes.
[0116] Next, the second round of progressive screening will be conducted using the following formula:
[0117] ;
[0118] in, , They are respectively road segment Ln The start and end nodes; Mutex(N) a N b ) is node N a With N b The interlocked records are the output results of the first-level node-node filtering; if there is no interlock, it is ∅.
[0119] The system then performs a second round of screening on the remaining combinations in the first round of screening results. The formula for determining the vertical distance in the second round of screening is:
[0120] ;
[0121] in, For node N m To section L n The shortest perpendicular distance for a simplified straight line segment.
[0122] The system then performs three rapid pre-screenings of anchor point circles. The formula for these three rapid pre-screenings of anchor point circles is as follows:
[0123] ;
[0124] Where, d proj For target node N m to perpendicular point P proj Euclidean distance.
[0125] The three-level progressive screening formula clarifies the progressive logic of first reusing the previous layer topology results, then performing full-segment vertical distance screening, and finally performing precise anchor point circle screening. This reduces more than 99.99% of invalid road segment-node combination calculations from the source, aligning with the core idea of layered progression. Simultaneously, the newly added three-stage rapid pre-screening using anchor points, with vertical points as anchors, directly determines whether there is a possibility of collision between the minimum spatial distance between nodes and road segments through O(1) complexity Euclidean distance calculation, completely avoiding the detection of convex polygons for risk-free combinations.
[0126] The system performs precise collision detection on the remaining combinations in the three-round screening result set. For each road segment-node combination, the system retrieves the list of allowed vehicle types for the road segment and the list of allowed vehicle types for the node from the road network spatial index, traverses the two lists to generate all possible vehicle type matching pairs, and stores them in the vehicle type matching pair set. The system sorts the vehicle type matching pairs according to the vehicle's outer edge size from smallest to largest, and first processes the smallest size vehicle type pair. It retrieves the vertex sequence of the largest outer edge convex polygon of the first vehicle and the second vehicle from the simplified vehicle feature library. The convex polygon model of the first vehicle is projected onto the driving plane of the road segment. During the projection, the road point sequence of the road segment needs to be considered. The convex polygon is rotated and translated according to the orientation angle of the road segment at the road point position. The convex polygon model of the second vehicle is projected onto the parking area of the target node, and rotated and translated according to the orientation angle of the node.
[0127] After projection, the system performs convex polygon intersection detection. Using the separating axis theorem, the normal vectors of each side of the two convex polygons are extracted as separating axes. All vertices of the two convex polygons are projected onto each separating axis, and the minimum and maximum values of the projection intervals are calculated. If the two projection intervals do not overlap on any separating axis, the two convex polygons are determined to be non-intersecting; if the projection intervals overlap on all separating axes, the two convex polygons are determined to intersect. Taking an intersection scenario as an example, the road segment is an east-west straight road, and the target node is located at a stop point on the north side of the middle section of the road segment. When a large vehicle is driving on the road segment, its convex polygon overlaps with the convex polygon of a small vehicle parked at the node. The system determines that the road segment-node combination and the corresponding vehicle pair have a collision risk. The system stores the road segment identifier, node identifier, vehicle pair information, and collision determination results with collision risk into the road segment-node interlocked dataset. During the detection process, if the smallest vehicle pair is determined to have a collision risk, the system directly infers the collision result to all larger vehicle pairs that contain the smallest vehicle based on the vehicle inclusion relationship index table in the simplified vehicle feature library, without having to repeatedly perform polygon intersection detection on these larger vehicle pairs; if the smallest vehicle pair is determined to have no collision risk, it is directly inferred that the larger vehicle pairs it contains also have no collision risk.
[0128] For risk combinations with collision risks in the interlocked data set of road segments, the system uses vertical points as core anchor points. Based on the pre-screening results of anchor point circles, it breaks down the directional sampling logic for three scenarios and simultaneously introduces a fast circle removal mechanism during the sampling process, reducing the iterative computation load by more than 95%. Specifically:
[0129] The formula for vertical point anchoring in a road segment-node scenario is:
[0130] ;
[0131] The formula for calculating the cumulative path length at perpendicular points is:
[0132] ;
[0133] The formula for calculating the node-anchor distance is:
[0134] ;
[0135] Among them, Line(L) n ) is road segment L n The simplified straight line segment starts at Sn,1 and ends at Sn,end; For node N m Euclidean distance to any point P on the line segment; The vector from the starting point of the road segment to the perpendicular point. The direction vector of the road segment; , ) is node N m global coordinates, (x proj y proj (P is the perpendicular point) proj The global coordinates.
[0136] Next, based on the envelope overlap state at the perpendicular point, the optimal sampling direction is determined, implementing differentiated logic of unidirectional sampling when overlapping and bidirectional sampling when not overlapping. This reduces more than 50% of invalid sampling calculations from the source. The calculation formula is as follows:
[0137] ;
[0138] in, For vehicle type T on the road section i At the perpendicular point P proj The convex polygonal envelope of the driving trajectory at the location; For the T-type vehicle parked at the node j At node N m The stopping envelope of the convex polygon at the point; Intersect() is the intersection determination of the convex polygons, and True is true if they intersect, indicating that the envelopes of the two vehicles overlap at the perpendicular point.
[0139] If the envelopes at the vertical point overlap, it means that the AGV has collided with the vehicle on the node at the vertical point and needs to travel to the vertical point (towards the destination) to escape the collision risk. The release distance must be after the vertical point, and only one-way sampling is needed in the direction of the destination. There is no need to detect the entry section, reducing the amount of calculation by more than 50%. If the envelopes at the vertical point do not overlap, it means that the collision risk points may be distributed before and after the vertical point. Two-way sampling is needed to both sides to ensure that no critical collision points are missed.
[0140] Then, rapid removal of sampling points is performed. The formula for rapid removal of sampling points is as follows:
[0141] ;
[0142] in, For the current sampling point S n,p With target node N m The Euclidean distance between them.
[0143] Furthermore, the trajectory envelope collision determination formula is as follows:
[0144] ;
[0145] in, The vehicle envelope of the AGV when it travels to the sampling point; The envelope of the AGV vehicle body parked at the node.
[0146] This embodiment uses a fast sampling point elimination formula. Before each sampling, it first uses a circular distance determination with O(1) complexity to directly eliminate sampling points with no collision risk. Only sampling points within the distance threshold are subjected to high-complexity convex polygon intersection detection. Without losing detection accuracy, the amount of computation is further reduced by more than 90%.
[0147] Next, based on the directional sampling results, the critical interference point of the first collision and the safe release point without collision were accurately located, providing a precise benchmark for the release distance calculation;
[0148] Specifically, the formula for locating the safety release point in unidirectional sampling mode is:
[0149] ;
[0150] Formula for locating critical collision points in bidirectional sampling mode (with non-overlapping envelopes at perpendicular points):
[0151] ;
[0152] Formula for locating the safety release point in bidirectional sampling mode:
[0153] ;
[0154] Formula for determining collision-free scenarios:
[0155] ;
[0156] Among them, L n,p Let Sn be the sampling point, and p be the distance from road segment L. n Cumulative path length from the starting point; S forward S is the sequence of sampling points from the vertical point towards the end of the road segment; backward The sequence of sampling points is perpendicular to the direction from the starting point of the road segment; L releaseThe cumulative path length from the first collision-free safety point to the starting point of the road segment is the core benchmark value of the release distance. If there is no collision in the entire sampling interval, it is determined that there is no interlock relationship between the road segment-node-vehicle type combination, and there is no need to calculate the release distance.
[0157] This embodiment achieves accurate boundary finding for directional sampling through the positioning formula of the sub-sampling mode, compressing the traditional hundreds of iterations of detection across the entire road segment to a maximum of 10 directional detections, reducing the number of iterations by more than 95%.
[0158] Furthermore, to meet the core requirement that the envelope of the remaining movement trajectory of the AGV does not overlap with the envelope of the stationary trolley when it travels to this distance, vehicle characteristics, path parameters, and braking performance are coupled in multiple dimensions to achieve precise adaptation of the release distance in the road segment-node scenario. A multi-parameter coupling optimization method for the minimum safe release distance in the road segment-node scenario is adopted, and the calculation formula is as follows:
[0159] ;
[0160] in, This represents the minimum safe release distance after multi-parameter coupling; the braking safety distance term D. brake Used to match the motion performance of AGVs and ensure that there is no risk of collision in the remaining trajectory envelope during braking.
[0161] ;
[0162] Among them, v max t is the maximum travel speed of the AGV. response t represents the system response time. brake For braking time, a max This is the maximum braking deceleration.
[0163] Curvature compensation term D curve It is used to match the curvature of road sections, compensate for the vehicle sweep envelope when turning, and ensure that the remaining trajectory in the curve scene does not overlap.
[0164] ;
[0165] Where ĸ is the local curvature of the road segment where the safety release point is located; W is the width of the AGV body; and ω is the curvature weighting coefficient (1.0~1.5 for curves and 0 for straight sections).
[0166] The time complexity of step S104 is O(N×Q+N1×P_sample×M×(k+l)), where N is the total number of road network elements, N1 is the number of combinations remaining after two rounds of screening (only within 0.1% of N×Q), and P_sample is the average number of waypoints in the diffusion sampling (≤10). By filtering out more than 99% of invalid combinations through the previous results, the diffusion sampling reduces the number of iterations from P (≤400) to less than 10, reducing the complexity by more than 97%.
[0167] S105: Based on the simplified vehicle feature library and the road network spatial index, traverse all road segment pairs, perform three rounds of filtering using the node interlock dataset, the road segment node interlock dataset, the distance between road segments, and the outer edge enclosing circle radius of the corresponding vehicle model, and perform polygon collision detection and solve for the minimum safe release distance on the remaining road segment pairs after the three rounds of filtering to generate the road segment interlock dataset and the road segment release distance set;
[0168] In this embodiment, please refer to Figure 8 and Figure 9 Based on a simplified vehicle feature library and road network spatial index, all road segment pairs are traversed. Three rounds of filtering are performed using the node interlock dataset, the road segment node interlock dataset, the distance between road segments, and the radius of the outer bounding circle of the corresponding vehicle model. Polygonal collision detection and minimum safe release distance calculation are then performed on the remaining road segment pairs after the three rounds of filtering, generating a road segment interlock dataset and a road segment release distance set, including:
[0169] Traverse all road segment pairs based on the road network spatial index;
[0170] If there is no interlock record between the start and end nodes of the first road segment, or between the start and end nodes of the second road segment, in the node interlock dataset, or between the nodes of the first and second road segments, then the road segment pair will be removed, and the first round of road segment pair selection result set will be generated.
[0171] Based on the remaining road segment pairs in the first round of screening results, the two road segments of each road segment pair are simplified into straight line segments.
[0172] If two line segments have no intersection, calculate the shortest distance between them.
[0173] If the nearest distance is greater than the sum of the outer radii of the two vehicle models and the preset safety distance, then the road segment pair is removed, and a second-round filtering result set of road segment pairs is generated.
[0174] Based on the remaining road segment pairs in the second round of screening results, extract the list of allowed vehicle types for the two road segments in the remaining road segment pairs, generate all vehicle type pair combinations and sort them according to the outer edge size of the vehicle type, project the maximum outer edge convex polygon model of the smallest size vehicle type pair onto the driving plane of the two road segments respectively to perform convex polygon intersection detection, and generate the road segment interlock dataset.
[0175] Based on the combination of road segment pairs and vehicle type pairs that have a collision risk in the road segment interlock data, the closest point pair between two road segments is located.
[0176] The sampling is diffused bidirectionally outward from the nearest point pair to both ends of the two road segments, and the sampling point where the first collision is detected is located as the first interference point;
[0177] The minimum safe release distance is obtained by superimposing the cumulative path length from the interference location point to the starting point of the first road segment with the predetermined safe distance, and a set of road segment release distances is generated.
[0178] This embodiment uses node interlock datasets and road segment node interlock datasets as preliminary screening criteria to eliminate multiple road segment pairs without interlocking relationships in one go. This significantly reduces invalid calculation combinations from the source, effectively curbing the problem of the explosion in the number of road segment pair combinations under large-scale road networks, and continuing the design concept of progressive lightweight design throughout the entire process. Road segments are simplified to straight line segments for calculating the nearest distance, simplifying the computational complexity of spatial distances. A second round of screening is performed by combining the radius of the vehicle's outer edge enclosing circle with a preset safety distance, which can quickly eliminate road segment pairs without collision risk, further reducing the computational scale of subsequent accurate detection and improving screening efficiency. By extracting a list of vehicles allowed to pass through the road segment, generating combinations, and sorting them by size, convex polygon intersection detection is performed first on the smallest vehicle pair. The vehicle inclusion relationship is used to avoid redundant operations in detecting all vehicle pairs, significantly reducing the computational load of collision detection. When solving for the minimum safe release distance, the first interference point is located by bidirectional diffusion sampling of the nearest point pair, replacing the traversal of all road points, reducing the number of iterations, ensuring computational accuracy while improving efficiency. The entire process involves layer-by-layer screening and step-by-step progression, which not only ensures the accuracy of lock control detection but also minimizes the computational load on the system. This improves the lightweight system for pre-calculation of path lock control for multi-vehicle AGVs and can stably adapt to large-scale complex road networks and industrial application scenarios involving multiple vehicle types.
[0179] Specifically, all road segment pairs are traversed based on the road network spatial index. The traversal adopts a hierarchical indexing mechanism, using the hash value of the road segment identifier for bucketing, ensuring that the forward and reverse combinations of each road segment pair are processed separately to meet the traffic management requirements for two-way traffic. For the currently processed road segment pair, the system extracts the start node identifier and end node identifier of the first road segment, and the start node identifier and end node identifier of the second road segment.
[0180] The system queries the node interlock dataset for interlock records between the start and end nodes of the first road segment, the start and end nodes of the second road segment, and the segment-point interlock records between each node of the first and second road segments. Specifically, the filtering is performed using the following formula:
[0181] ;
[0182] Among them, Mutex node (L a L b ) is road segment L a With L b Mutex records the interlocking between the start and end nodes (first-level output); lane-node (L a L b ) is road segment L a With L b The interlocking records between nodes (second-level output).
[0183] The system then performs a second round of screening on the remaining road segments in the first round of screening results. The formula for determining the distance between road segments in the second round of screening is as follows:
[0184] ;
[0185] Among them, Intersect(L a L b () is used to determine the intersection of simplified straight segments of two road segments; if they intersect, the result is True. The shortest Euclidean distance for the simplified straight sections of the two road segments.
[0186] The system then performs three rapid pre-screenings of anchor points using circles. The formula for these three rapid pre-screenings is as follows:
[0187] ;
[0188] Where, d anchor For the closest point pair between two road segments (P) a P b The Euclidean distance between them.
[0189] The system performs precise collision detection on the remaining road segment pairs in the second round of screening results. For each road segment pair, the system extracts the list of allowed vehicle types for the first road segment and the list of allowed vehicle types for the second road segment from the road network spatial index. It then iterates through the two lists to generate all possible combinations of vehicle type pairs, sorts them by their outer edge dimensions from smallest to largest, and stores them in the vehicle type pair sequence. The system first extracts the smallest size vehicle type pair for processing, obtaining the maximum outer edge convex polygon vertex sequence of the first vehicle and the maximum outer edge convex polygon vertex sequence of the second vehicle from the simplified vehicle feature library. The convex polygon model of the first vehicle is projected onto the driving plane of the first road segment. During the projection process, the road point sequence of the road segment needs to be considered. The convex polygon is rotated and translated according to the orientation angle of the road segment at each road point position to ensure that the polygon matches the actual driving posture of the road segment. The convex polygon model of the second vehicle is projected onto the driving plane of the second road segment, and is similarly rotated and translated according to the orientation angle of the road segment.
[0190] After projection, the system performs convex polygon intersection detection. Using the separating axis theorem, the normal vectors of each side of the two convex polygons are extracted as separating axes. All vertices of the two convex polygons are projected onto each separating axis, and the minimum and maximum values of the projection intervals are calculated. If the two projection intervals do not overlap on any separating axis, the two convex polygons are determined to be non-intersecting; if the projection intervals overlap on all separating axes, the two convex polygons are determined to intersect. Taking an intersection scenario as an example, east-west and north-south road segments intersect at the intersection. When a large vehicle travels on the east-west road segment, its convex polygon overlaps with that of a small vehicle traveling on the north-south road segment in the intersection area. The system determines that this road segment pair and its corresponding vehicle combination pose a collision risk. The system stores the identifiers of the road segment pairs with collision risks, the vehicle pair information, and the collision determination results in the road segment interlock dataset. During the detection process, if the smallest vehicle pair is determined to have a collision risk, the system will directly infer the collision result to all larger vehicle pairs that contain the smallest vehicle based on the vehicle inclusion relationship index table in the simplified vehicle feature library, without having to repeat the polygon intersection detection; if the smallest vehicle pair is determined to have no collision risk, it will directly infer that the larger vehicle pairs it contains also have no collision risk.
[0191] For road segment pairs and vehicle type combinations with a central collision risk in the road segment interlocking dataset, the system simultaneously calculates the minimum safe release distance. The system fully extends the anchor point circle pre-screening, scenario-specific directional sampling, rapid elimination, and precise boundary finding methods from the road segment-node scenario to the road segment-road segment scenario, achieving lightweight release distance calculation across all scenarios. The anchoring formula for the closest point pair between two road segments is:
[0192] ;
[0193] Among them, P a,p For section La The p-th waypoint on the path, P b,q For section L b The q-th waypoint on; , ) represents the closest point pair between two road segments, i.e., the reference anchor point for diffusion sampling. d represents the shortest Euclidean distance between two geometric objects in space.
[0194] Anchor point envelope overlap determination and sampling direction decision formula:
[0195] ;
[0196] Formula for quick rejection of sampling points:
[0197] ;
[0198] First formula for locating the interference boundary point:
[0199] ;
[0200] Among them, S diffuse This is a sequence of bidirectional diffusion sampling points centered on the anchor point; S a,p For sampling point P a,p Distance from section L a The cumulative path length from the starting point.
[0201] This embodiment extends the lightweight solution system of road segment-node scenarios to road segment-road segment scenarios. Through the optimization of the entire process of nearest point pair anchoring, rapid sampling point elimination, and directional boundary finding, the hundreds of iterations of traditional full road segment traversal are compressed to less than 10 times, which completely solves the industry pain point of the explosion of road segment-road segment scenario combinations and excessive computation.
[0202] To address the shortcomings of low accuracy and high iteration count in fixed-step sampling, and to achieve adaptive adjustment of the sampling step size while balancing detection accuracy and solution speed, this embodiment employs a bidirectional diffusion sampling step size adaptive optimization method. The calculation formula is as follows:
[0203] ;
[0204] Where: step max A large step size (0.5~1m recommended) is used for fast traversal of areas with no risk of collision; step min Small step size (recommended 0.1~0.2m) is used for accurate detection in the vicinity of collision zones; d current This represents the Euclidean distance between the current sampling point pairs.
[0205] This embodiment optimizes the rapid scanning of distant areas and accurate detection of near areas through an adaptive step size formula. It upgrades the fixed step size diffusion sampling to adaptive variable step size sampling, further reducing the average number of iterations from 10 to less than 5 without sacrificing detection accuracy, thus enhancing the effect of quickly calculating the diffusion distance.
[0206] The system begins iterative detection of the sampling point group. The detection order is based on the combination of the distances of the sampling points from their respective road segment starting points, prioritizing the detection of the sampling points closest to the nearest points P and Q, i.e., detecting points P and Q themselves first. The system extracts the current sampling point from the first road segment sampling point sequence and the corresponding sampling point from the second road segment sampling point sequence, forming a sampling point pair. For the current sampling point, the system obtains the driving orientation angle of the first road segment at the first sampling point location from the road network spatial index; this angle is calculated using the coordinate difference between adjacent road points. The system also obtains the driving orientation angle of the second road segment at the second sampling point location. Finally, the system extracts the maximum outer convex polygon vertex sequence of the first vehicle model and the maximum outer convex polygon vertex sequence of the second vehicle model from the simplified vehicle model feature library.
[0207] The system projects the convex polygon model of the first vehicle model onto the first sampling point and rotates it according to the driving orientation angle at the first sampling point, so that the orientation of the convex polygon is consistent with the tangent direction of the road segment at that point. The projection process involves translation and rotation transformations of the vertex coordinates. First, the coordinates of each vertex of the convex polygon are translated according to the coordinates of the first sampling point, and then a rotation matrix transformation is performed according to the orientation angle to obtain the global coordinates of the projected vertices. Similarly, the convex polygon model of the second vehicle model is projected onto the second sampling point and rotated according to the driving orientation angle at the second sampling point to obtain the global coordinates of the projected vertices.
[0208] After projection, the system performs convex polygon intersection detection. Using the separating axis theorem, the normal vectors of each side of the two convex polygons are extracted as separating axes. All vertices of the two convex polygons are projected onto each separating axis, and the minimum and maximum values of the projection intervals are calculated. If the two projection intervals do not overlap on any separating axis, the two convex polygons are determined not to intersect at the current sampling point, and the system continues processing the next set of sampling point pairs. If the projection intervals overlap on all separating axes, the two convex polygons are determined to intersect, indicating a collision risk between the two vehicles at the corresponding sampling point.
[0209] The system identifies the first interference point as the sampling point on the first road segment within the initial collision detection sampling point group. This interference point represents the location where the AGV is most likely to collide during its journey on the first road segment. The system obtains the cumulative path length from this interference point to the starting point of the first road segment from the sampling point sequence, using this length as the basis for calculating the minimum safe release distance. After localization, the system immediately terminates the current diffusion sampling detection process, ceasing to detect subsequent sampling point groups further away from the nearest point pair to avoid unnecessary calculations. If no collision is detected after traversing all sampling point groups, the road segment is deemed to have no collision risk under the current vehicle type combination, and no release distance record needs to be generated. Through this bidirectional diffusion sampling and first collision point localization mechanism, the system reduces the number of iterations required to traverse and detect all road points on the entire road segment in traditional solutions from hundreds to less than ten, significantly improving the computational efficiency of releasing distance calculation while ensuring detection accuracy.
[0210] In some embodiments, multi-dimensional parameters such as vehicle characteristics, path curvature, interference position, and braking performance are coupled to replace the simple distance superposition formula, thereby achieving precise adaptation of the release distance.
[0211] The calculation formula is:
[0212] ;
[0213] in, This represents the minimum safe release distance after multi-dimensional parameter coupling; the braking safety distance term D. brake Used to match the motion performance of AGVs and avoid the risk of sudden stops.
[0214] ;
[0215] Among them, v max t is the maximum travel speed of the AGV. response t represents the system response time. brake For braking time, a max This is the maximum braking deceleration.
[0216] Curvature compensation term D curve Used to match the curvature of road sections and compensate for vehicle sweep envelope during turns.
[0217] ;
[0218] Where ĸ is the local curvature of the road segment where the safety release point is located; W is the width of the AGV body; and ω is the curvature weighting coefficient (1.0~1.5 for curves and 0 for straight sections).
[0219] The system retrieves the cumulative path length from the interference location point to the starting point of the first road segment from the road network spatial index. This length is then superimposed with the vehicle type's safe collision radius, the road segment curvature compensation distance, and a preset safe distance to obtain the minimum safe release distance for this risk combination. The system associates the calculated release distance with the corresponding first road segment identifier, second road segment identifier, and vehicle type pair information, storing this information in the road segment release distance set. After calculating all risk combinations, the road segment release distance set and the road segment interlock dataset together constitute a complete road segment-road segment interlocking relationship database. This database is then merged with the node interlock dataset, node release distance set, road segment node interlock dataset, and road segment node release distance set generated in the preceding steps to form a complete pre-calculated result covering all node-node, road segment-node, and road segment-road segment interlocking relationships, which is then used by the traffic management system for table lookup during runtime.
[0220] In some embodiments, the dual-scene locking relationship and release distance are simultaneously determined and judged. The formula for simultaneously determining the dual-scene locking relationship and release distance is as follows:
[0221] ;
[0222] This embodiment clarifies the synchronicity between locking / control relationship determination and release distance calculation through this formula. Only when collision detection determines an interlocking relationship is the release distance calculation result for the corresponding scenario output synchronously; when there is no interlocking relationship, the result of no locking / control is output synchronously, without the need for subsequent separate calculations. This completely replaces the traditional two-step method of first fully detecting locking / control relationships and then separately traversing and calculating the release distance.
[0223] The time complexity of this step is O(N). 2 +N2×P_sample×M×(k+l)), where N is the total number of road network elements, and N2 is the number of combinations remaining after two rounds of screening (only N). 2 Within 0.01%, P_sample is the average number of road points in the diffusion sampling (≤10); by filtering out more than 99.99% of invalid combinations through pre-processing, the problem of the number of combinations exploding for full detection in traditional road segments is completely solved, reducing the theoretical O(N) error to within 0.01%. 2 ×P×M×(k+l) 2 Extremely high complexity, reduced to linear level for practical engineering complexity.
[0224] In some embodiments, to address the industry pain point of requiring full recalculation after partial modifications to the road network, incremental precalculation updates are implemented to further enhance the engineering practicality of efficient pre-control. This embodiment only recalculates the affected road network elements, using the following formula:
[0225] ;
[0226] Where Updateset is the set of road network elements that need to be recalculated; L affect This is the set of associated road segments affected by the modified node; This refers to the start / end point of the associated road segment.
[0227] This embodiment reduces the pre-calculation time for map updates from several hours to minutes by recalculating only the affected road network elements, without recalculating the entire road network.
[0228] In some embodiments, after generating the road segment interlock dataset and the road segment release distance set, the following is included:
[0229] A multi-dimensional hierarchical index is constructed based on the node interlock dataset, node release distance set, road segment node interlock dataset, road segment node release distance set, road segment interlock dataset, and road segment release distance set.
[0230] Specifically, in order to achieve fast querying of pre-calculated results with O(1) complexity, the offline pre-calculated results are efficiently transformed into the real-time control capabilities of the traffic management system.
[0231] The calculation formula is as follows:
[0232] ;
[0233] Where Addr is the memory address of the target lock record; Hash(L main Hash(Type) is the first-level hash, using the main road segment identifier as the key to locate the lock control record group corresponding to the main road segment; Hash(Type) is the second-level hash, using the lock control object type (node / road segment) as the key to locate the corresponding sub-group; Hash(T) is the third-level hash. main The third-level hash uses the main vehicle model identifier as the key to accurately locate the target lock control record and the corresponding release distance.
[0234] This embodiment clarifies the core implementation logic of multi-dimensional hierarchical indexing through a three-level hash addressing formula, and quantitatively proves that the query complexity of the pre-calculated result is O(1), compared to the O(n) complexity of existing real-time collision detection. 2 This reduces complexity and achieves an order-of-magnitude performance improvement.
[0235] After calculating the road segment interlock dataset and road segment release distance set, the node interlock dataset, node release distance set, road segment node interlock dataset, road segment node release distance set, road segment interlock dataset, and road segment release distance set are loaded into the traffic management system to respond to the lock control query request and output the list of lock control objects and the corresponding minimum safe release distance.
[0236] For details, please refer to Figure 10The system loads pre-generated node interlock datasets, node release distance sets, road segment node interlock datasets, road segment node release distance sets, road segment interlock datasets, and road segment release distance sets from structured storage files into the traffic management system's memory cache. The loading process includes parsing the serialized data file and reconstructing it into a multi-level index tree structure based on node ID, road segment ID, lock control type, and vehicle type combination, ensuring efficient key-value pair storage in memory. When the traffic management system receives an AGV passage request, it parses the vehicle type ID, target road segment ID, and current task path information in the request. Based on a multi-dimensional hierarchical index, using the target road segment ID and vehicle type ID as query keys, it quickly locates the matching lock control relationship type. The system retrieves the corresponding lock control object identifier list based on the lock control relationship type and simultaneously obtains the minimum safe release distance value corresponding to each identifier. The lock control object identifiers are associated and bound with the release distance values to generate a structured lock control object list, which includes lock control object identifiers such as road segment IDs or node IDs, and the corresponding specific minimum safe release distance values. The system directly outputs this list to the AGV path planning module, which is used to calculate the locking trigger point of the AGV in the target road segment in real time, ensuring that the AGV automatically unlocks when it reaches the release distance threshold, thus achieving seamless connection and safe execution of path planning.
[0237] In one specific embodiment, please refer to Figure 11 The system loads the operational data for the road network, reads the waypoint set and lane set, where the waypoint set contains nodes 1 to 6, and the lane set contains road segments 1 to 8. It extracts the node identifier, node coordinates, waypoint type, and orientation angle data for each node; for example, the coordinates of node 1 are (x1, y1), node 2 are (x2, y2), and node 5 are (x5, y5). It also extracts the road segment identifier, lane type, starting waypoint identifier, ending waypoint identifier, control point sequence, lane length, and driving direction data for each road segment; for example, road segment 1 is a one-way straight road segment, starting at node 1 and ending at node 2; road segment 7 is a two-way straight road segment, connecting node 2 and node 5; and road segment 3 is a one-way curved road segment, starting at node 3 and ending at node 4, and includes a curve control point sequence.
[0238] Based on the original road network information set, node attribute sets and road segment attribute sets are generated, and directed connections between nodes and road segments are established. For example, node 1 is the starting point of road segment 1, the ending point of road segment 6, and the starting point of road segment 8; node 2 is the ending point of road segment 1, the starting point of road segment 2, and the bidirectional endpoint of road segment 7; node 5 is the ending point of road segment 4, the starting point of road segment 5, and the other endpoint of road segment 7. Based on the directed connections, the road network topology is generated, and a node-road segment association index is constructed. For example, node 1 is associated with road segment 1, road segment 6, and road segment 8; road segment 1 is associated with the starting node 1 and the ending node 2.
[0239] Next, based on the vehicle model dataset and the map dataset, locking relationship detection is performed. Taking road segment 1 (node 1→node 2) and road segment 8 (node 1→node 4) as examples, they intersect at node 1, and the interlocking relationship between node 1 and other nodes (such as node 4 and node 5) is detected; road segment 2 (node 2→node 3) and road segment 7 (node 2→node 5) intersect at node 2, and road segment 8 and road segment 7 have spatial intersections, so the inter-segment locking relationship between road segment 8 and road segment 7 is detected; the spatial position of road segment 3 (one-way curve) with road segment 4 and road segment 2 is checked, and it is determined whether its distance from other road segments is less than the sum of the vehicle model's outer edge and the safety distance. If it is less than the sum of the outer edge and the safety distance of a certain vehicle model combination, convex polygon intersection detection is further performed to generate a locking relationship and release distance table.
[0240] When an AGV departs from node 1 and requests passage through segment 1, it queries the locking relationship and release distance table to obtain the locked objects for segment 1, such as other AGVs at node 1, AGVs on segment 8, and the corresponding dynamic release distance threshold. While the AGV is passing through segment 1, it monitors the distance to the locked objects in real time. When the distance reaches the threshold, it releases the lock on node 1 or segment 8. For example, when the AGV travels to a position D away from node 1 on segment 1, and the distance to the AGV on segment 8 reaches the safe release distance, the lock on node 1 is released, allowing other AGVs to pass through segment 8.
[0241] In one specific embodiment, please refer to Figure 12 and Figure 13 When performing the interlocking relationship detection between road segments, taking the interlocking scenario of road segment A and road segment B as an example, after generating a list of road segment pairs, for the combination of road segment A and road segment B, the lists of vehicle types T1 and T2 allowed to pass through road segment A and road segment B are extracted, generating different vehicle type combinations such as T1-T1, T1-T2, and T2-T2. For the T1-T1 combination, the convex polygon of vehicle type T1 is projected onto the driving plane of road segment A, and simultaneously projected onto the driving plane of road segment B. Convex polygon intersection detection is performed. Because the two vehicles are of the same type and there is a risk of spatial overlap in their driving paths, it is determined that this road segment pair has an interlocking relationship with the T1-T1 combination. For the T1-T2 combination, the convex polygon of vehicle type T1 is projected onto the driving plane of road segment A, and the convex polygon of vehicle type T2 is projected onto the driving plane of road segment B. Similarly, spatial overlap risk is detected, and an interlocking relationship is determined to exist.
[0242] For road segment pairs and vehicle type combinations with interlocking relationships, the parameters of the corresponding vehicle type are extracted to calculate the dynamic release distance. For the combination of T1 in road segment A and T1 in road segment B, a shorter starting release distance is calculated by combining the geometric and motion parameters of T1 with the local curvature of road segment A, adapting to the space occupation and braking requirements of the same vehicle type, ensuring that the two vehicles maintain a preset safe distance during travel. For the combination of T1 in road segment A and T2 in road segment B, because T2 has larger geometric parameters such as vehicle length and width, its braking distance is longer, and the calculated starting release distance is longer, adapting to the space occupation and braking requirements of T2, ensuring that the safe distance between the two vehicles is not less than a preset threshold. Subsequently, the road segment pairs, vehicle type combinations, and corresponding starting release distances are stored in the interlocking relationship and release distance table, clearly marking the differences in release distances corresponding to different vehicle type combinations, forming independent interlocking rules for road segment vehicle type combinations.
[0243] When a request for vehicle type T2 to enter road segment B is received, the system queries the locking relationship and release distance table to find that the interlocked road segment for road segment B is road segment A, the corresponding vehicle type combinations are road segment A-T1 and road segment B-T2, and the corresponding starting release distance. The system monitors the travel distance of vehicle type T1 on road segment A in real time. When the travel distance of T1 on road segment A (distance from the starting point) is greater than the release distance of the corresponding vehicle type combination on road segment A, it determines that the safety distance has been met, releases the starting lock of road segment B, and allows T2 to enter road segment B. This release logic only applies to the combinations of road segment A-T1 and road segment B-T2 and does not affect the interlocking relationship of other vehicle type combinations. For example, the release rule for the T1-T1 combination still needs to wait for T1 on road segment A to travel beyond its corresponding shorter release distance before releasing the lock on road segment B for T1, ensuring that the release rules for different vehicle types take effect independently and avoiding misunderstandings of locking across combinations.
[0244] This embodiment focuses on a multi-dimensional comparison of the core performance of the multi-model AGV path locking pre-calculation algorithm before and after optimization. The specific comparison content is shown in Table 1:
[0245] Table 1
[0246]
[0247] This demonstrates that the optimized lightweight algorithm achieves a significant reduction in computational complexity across various combinations. The computational complexity of node-to-node combinations is reduced by over 90%, and that of road segment-to-node combinations by over 97%. Road segment-to-road segment combinations not only reduce complexity to linear level (an order of magnitude reduction) but also completely resolve the problem of exploding combinations. Simultaneously, the total execution volume of polygon collision detection is reduced by over 95%, and the proportion of duplicate vehicle model detections is reduced to below 30%, a reduction of over 70%. In the release distance calculation stage, the number of iterations per road segment is reduced by over 97%, and duplicate calculations are eliminated by simultaneously solving collision detection and release distance, simplifying the solution process by 50%. Regarding road network adaptability, the optimized algorithm can stably adapt to ultra-large-scale scenarios with over 20,000 road segments and over 10,000 nodes, a more than 10-fold increase in scale compared to the previous maximum of 2,000 road segments, fully realizing lightweight and efficient pre-computation.
[0248] Please see Figure 14 This embodiment provides a path locking pre-calculation optimization device 200, including:
[0249] Loading module 201 is used to load the original geometric model of multi-model AGV, extract the vertices of the outer convex polygon of each model, calculate the minimum circumscribed circle radius of each model, and generate a simplified model feature library.
[0250] Module 202 is used to load the road network data of the operation map, construct the topological connection relationship between nodes and road segments, and generate the road network spatial index;
[0251] The first-round screening module 203 is used to traverse all node pairs based on the simplified vehicle feature library and the road network spatial index, perform the first round screening by the Euclidean distance of the node pairs and the radius of the outer edge of the corresponding vehicle, and perform polygon collision detection and solve the minimum safe release distance for the remaining node pairs after the first round screening, generating a node interlock dataset and a node release distance set.
[0252] The second-round screening module 204 is used to traverse all road segments and node combinations based on the simplified vehicle feature library and the road network spatial index, perform a second round of screening using the node interlock dataset, the distance between road segments and nodes, and the outer edge enclosing circle radius of the corresponding vehicle model, and perform polygon collision detection and solve for the minimum safe release distance on the remaining road segments and node combinations after the second round of screening, generating a road segment node interlock dataset and a road segment node release distance set;
[0253] The three-round screening module 205 is used to traverse all road segment pairs based on the simplified vehicle feature library and the road network spatial index, and perform three-round screening using the node interlock dataset, the road segment node interlock dataset, the distance between road segments, and the outer edge enclosing circle radius of the corresponding vehicle model. It then performs polygon collision detection and solves for the minimum safe release distance on the remaining road segment pairs after the three-round screening, generating a road segment interlock dataset and a road segment release distance set.
[0254] Furthermore, the loading module 201 includes:
[0255] The model loading unit is used to load the original geometric models of multi-model AGVs;
[0256] The parsing unit is used to parse and extract the vehicle identifiers and corresponding planar projection original polygon vertex coordinates based on the original geometric model, and sort the original polygon vertex coordinates in a clockwise direction to generate the original geometric model dataset of each vehicle.
[0257] The extraction unit is used to calculate the outer convex hull of all vertex coordinates in the global coordinate system based on the original geometric model dataset, and extract the minimum outer vertex of the original polygon through the convex hull algorithm to generate the outer convex polygon vertex dataset of each vehicle model.
[0258] The distance calculation unit is used to calculate the Euclidean distance from each smallest outer edge vertex to the origin of the coordinate system based on the outer edge convex polygon vertex dataset, thereby obtaining the vertex distance set.
[0259] The generation unit is used to take the maximum value of each car model in the vertex distance set as the minimum circumcircle radius of the car model, and generate a dataset of circumcircle radii for each car model.
[0260] The association unit is used to associate the vertex dataset of the convex polygon along the outer edge with the circumscribed circle radius dataset according to the vehicle model identifier to obtain a simplified vehicle model feature library.
[0261] Furthermore, the building module 202 includes:
[0262] The storage unit is used to parse and extract the node identifiers, x-coordinates, and y-coordinates of all nodes from the road network data and store them into the node original data array to generate the node original dataset.
[0263] The parsing and extraction unit is used to parse and extract the segment identifiers, start node identifiers, end node identifiers, and waypoint sequences of all road segments from the road network data and store them in the original road segment data array, along with the original road segment dataset.
[0264] Generate coordinate units to traverse each road segment in the original road segment dataset, extract the start node identifier and end node identifier of each road segment, and locate the node coordinates corresponding to the start node identifier and the node coordinates corresponding to the end node identifier in the original road segment dataset, thereby generating the start coordinates and end coordinates of each road segment.
[0265] The coordinate association unit is used to associate the starting point coordinates and the ending point coordinates with the corresponding road segment identifier to obtain the road segment endpoint coordinate dataset;
[0266] The addition unit is used to, based on the road segment endpoint coordinate dataset, take the start node identifier and end node identifier of each road segment as keys, and add the road segment identifier to the associated road segment list corresponding to the key to generate a node-road segment topology association table.
[0267] The node traversal unit is used to traverse each node in the node segment topology association table and obtain the start coordinates or end coordinates of the associated segment of the node from the segment endpoint coordinate dataset.
[0268] The index table generation unit is used to calculate the Euclidean distance between the node coordinates of the node and the starting point coordinates or the Euclidean distance between the node coordinates of the node and the ending point coordinates, and use the Euclidean distance as the adjacent edge weight to generate a road network spatial adjacency index table with node identifier as index and node identifier and adjacent edge weight as value.
[0269] The common storage unit is used to store the original node dataset, the original road segment dataset, the node-road segment topology association table, and the road network spatial adjacency index table into the road network spatial index.
[0270] Furthermore, the first-round screening module 203 includes:
[0271] The combination unit is used to extract all node identifiers and node coordinates based on the road network spatial index, and to combine all nodes in pairs using a hierarchical index traversal mechanism to generate a set of node pairs to be detected.
[0272] The data extraction unit is used to read the vehicle feature parameter set in the simplified vehicle feature library based on the set of node pairs to be detected, extract the outer edge enclosing circle radius data of each vehicle, calculate the Euclidean distance between each node pair in the set of node pairs to be detected, and obtain the node distance.
[0273] The node pair elimination unit is used to eliminate node pairs whose node distance is greater than the sum of the outer edge enclosing circle radius of the two vehicle models and the preset safety expansion radius, thereby generating a candidate node pair set.
[0274] The model extraction unit is used to read the maximum outer edge two-dimensional convex polygon model of each vehicle in the simplified vehicle feature library based on the candidate node pair set, and extract the list of vehicle models that each node in the candidate node pair set is allowed to stop.
[0275] The sorting unit is used to sort the models in the model list from smallest to largest according to their outer edge size to generate a model pair sequence, project the maximum outer edge two-dimensional convex polygon model of each model in the model pair sequence onto the stopping area of the corresponding node, perform convex polygon intersection determination, and generate a node interlocking dataset.
[0276] The release distance calculation unit is used to calculate the corresponding minimum safe release distance for node pairs and vehicle type combinations that have interlocking relationships, based on the coordinates of the nodes and the path topology in the road network spatial index, and obtain the node release distance set.
[0277] Furthermore, the second-round screening module 204 includes:
[0278] The combined traversal unit is used to traverse all combinations of road segments and nodes based on the node interlock dataset and the road network spatial index, and extract the starting node, ending node and target node of the road segment;
[0279] The first combination elimination unit is used to eliminate the combination of road segment and node if there is no interlock record between the starting node and the target node and no interlock record between the ending node and the target node in the node interlock dataset, and generate the first round of road segment node screening result set.
[0280] The simplification unit is used to simplify the remaining road segments into straight line segments based on the combination of remaining road segments and nodes in the first round of filtering results set of the road segment nodes, according to the coordinates of the starting node and ending node of the remaining road segments.
[0281] The vertical distance calculation unit is used to calculate the nearest vertical distance from the target node of each remaining road segment to the corresponding straight line segment.
[0282] The second combination elimination unit is used to eliminate the combination of road segment and node if the nearest vertical distance is greater than the sum of the outer edge enclosing circle radius of the two vehicle models and the preset safety distance, and generate a two-round screening result set of road segment and node;
[0283] The list traversal unit is used to traverse the list of allowed passing vehicle types and the list of allowed parking vehicle types of the remaining road segments based on the remaining combinations in the second round of filtering results set of the road segment nodes, and generate a set of vehicle type matching pairs.
[0284] The recording unit is used to extract the smallest size vehicle pair from the vehicle matching pair set, project the largest outer convex polygon model of the first vehicle in the smallest size vehicle pair onto the driving plane of the road segment, project the largest outer convex polygon model of the second vehicle in the smallest size vehicle pair onto the parking area of the target node, perform convex polygon intersection detection, record the vehicle pairs and road segment node pairs with collision risk, and generate a road segment node interlocking dataset.
[0285] The safe release distance calculation unit is used to calculate the minimum safe release distance for each risk combination based on the risk combinations with collision risks in the interlocking data set of the road segment nodes, by using the safe collision radius in the simplified vehicle feature library and the lane curvature and length data in the road network spatial index, and to generate a set of release distances for the road segment nodes.
[0286] Furthermore, the three-round screening module 205 includes:
[0287] The segment pair traversal unit is used to traverse all segment pairs based on the road network spatial index;
[0288] The first road segment pair elimination unit is used to eliminate the road segment pair if there is no interlock record between the start node and end node of the first road segment, or between the start node and end node of the second road segment in the node interlock dataset, or if there is no node interlock record between the first road segment and the second road segment in the road segment node interlock dataset, or if there is no node interlock record between the first road segment and the second road segment in the road segment node interlock dataset. This generates the first round of road segment pair filtering result set.
[0289] The road segment simplification unit is used to simplify the two road segments of the remaining road segment pairs in the first round of screening results set into straight line segments.
[0290] The nearest distance calculation unit is used to calculate the nearest distance between two line segments when they have no intersection.
[0291] The second road segment elimination unit is used to eliminate the road segment pair if the nearest distance is greater than the sum of the outer radii of the two vehicle models and the preset safety distance, and generate a second-round screening result set of road segment pairs.
[0292] The intersection detection unit is used to extract the list of allowed vehicle types for the two road segments in the remaining road segment pairs in the second round of screening results set of the road segment pairs, generate all vehicle type pair combinations and sort them according to the outer edge size of the vehicle type, project the maximum outer edge convex polygon model of the smallest size vehicle type pair onto the driving plane of the two road segments respectively to perform convex polygon intersection detection, and generate road segment interlock dataset.
[0293] The positioning unit is used to locate the closest point pair between two road segments based on the combination of road segment pairs and vehicle type pairs that have a collision risk in the road segment interlock dataset.
[0294] The diffusion sampling unit is used to diffuse sampling bidirectionally to both ends of the two road segments with the nearest point pair as the center, and to locate the sampling point where the first collision is detected as the first interference position point;
[0295] The superposition unit is used to obtain the minimum safe release distance by superimposing a predetermined safety distance on the cumulative path length from the interference position point to the starting point of the first road segment, and to generate a road segment release distance set.
[0296] Furthermore, the three-round screening module 205 includes:
[0297] The hierarchical indexing unit is used to construct a multi-dimensional hierarchical index based on the node interlock dataset, node release distance set, road segment node interlock dataset, road segment node release distance set, road segment interlock dataset, and road segment release distance set.
[0298] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the above-described apparatus and unit can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0299] The present invention also provides a computer-readable storage medium having a computer program stored thereon, which, when executed, can implement the methods provided in the above embodiments. The storage medium may include various media capable of storing program code, such as a USB flash drive, a portable hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0300] The present invention also provides a computer device, which may include a memory and a processor. The memory stores a computer program, and when the processor calls the computer program in the memory, it can implement the methods provided in the above embodiments. Of course, the computer device may also include various network interfaces, power supplies, and other components.
[0301] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section. It should be noted that those skilled in the art can make various improvements and modifications to this invention without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this invention.
[0302] It should also be noted that, in this specification, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusivity.
[0303] The term "comprises" implies that a process, method, article, or apparatus 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 apparatus. Unless otherwise specified, an element defined by the phrase "comprises a..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
Claims
1. A method for pre-calculation and optimization of path locking control in multi-vehicle industrial AGVs, characterized in that, include: Load the original geometric model of the multi-model AGV, extract the vertices of the outer convex polygon of each model, calculate the minimum circumscribed circle radius of each model, and generate a simplified model feature library. Load the road network data from the operation map, construct the topological connection relationship between nodes and road segments, and generate a road network spatial index; Based on the simplified vehicle feature library and the road network spatial index, all node pairs are traversed. The first round of filtering is performed by the Euclidean distance of the node pairs and the radius of the outer edge of the corresponding vehicle. Polygonal collision detection and minimum safe release distance are then performed on the remaining node pairs after the first round of filtering to generate a node interlock dataset and a node release distance set. Based on the simplified vehicle feature library and the road network spatial index, all road segments and node combinations are traversed. A second round of filtering is performed using the node interlock dataset, the distance between road segments and nodes, and the radius of the outer edge of the corresponding vehicle model. Polygon collision detection and minimum safe release distance are then performed on the remaining road segments and node combinations after the second round of filtering to generate a road segment node interlock dataset and a road segment node release distance set. Based on the simplified vehicle feature library and the road network spatial index, all road segment pairs are traversed. Three rounds of filtering are performed using the node interlock dataset, the road segment node interlock dataset, the distance between road segments, and the outer edge enclosing circle radius of the corresponding vehicle model. Polygon collision detection and minimum safe release distance are then performed on the remaining road segment pairs after the three rounds of filtering to generate the road segment interlock dataset and the road segment release distance set. Based on the simplified vehicle feature library and the road network spatial index, all node pairs are traversed. A first-round filtering is performed using the Euclidean distance between the node pairs and the radius of the outer bounding circle of the corresponding vehicle model. Polygonal collision detection and minimum safe release distance calculation are then performed on the remaining node pairs after the first-round filtering, generating a node interlock dataset and a node release distance set, including: Based on the road network spatial index, all node identifiers and node coordinates are extracted, and a hierarchical index traversal mechanism is used to combine all nodes in pairs to generate a set of node pairs to be detected. Based on the set of node pairs to be detected, read the set of vehicle feature parameters in the simplified vehicle feature library, extract the outer edge enclosing circle radius data of each vehicle, calculate the Euclidean distance between each node pair in the set of node pairs to be detected, and obtain the node distance. Node pairs whose node distance is greater than the sum of the outer edge enclosing circle radius of the two vehicle models and the preset safety expansion radius are removed to generate a candidate node pair set. Based on the candidate node pair set, the maximum outer edge two-dimensional convex polygon model of each vehicle in the simplified vehicle feature library is read, and the list of vehicle models that each node in the candidate node pair set is allowed to stop is extracted. The models in the vehicle list are sorted by their outer edge size from smallest to largest to generate a model pair sequence. The maximum outer edge two-dimensional convex polygon model of each model in the model pair sequence is projected onto the stopping area of the corresponding node. The convex polygon intersection determination is performed to generate a node interlocking dataset. For node pairs and vehicle type combinations with interlocking relationships, the minimum safe release distance is calculated based on the coordinates of the nodes and the path topology in the road network spatial index, thus obtaining the node release distance set.
2. The multi-model industrial AGV path locking pre-calculation optimization method according to claim 1, characterized in that, The original geometric model of the multi-model AGV is loaded, the vertices of the convex polygons along the outer edge of each model are extracted, the minimum circumscribed circle radius of each model is calculated, and a simplified model feature library is generated, including: Load the original geometric model of the multi-model AGV; Based on the original geometric model, the vehicle identifier and the corresponding planar projection original polygon vertex coordinates are extracted, and the original polygon vertex coordinates are sorted in a clockwise direction to generate the original geometric model dataset of each vehicle. Based on the original geometric model dataset, the outer convex hull of all vertex coordinates in the global coordinate system is calculated, and the minimum outer vertex of the original polygon is extracted by the convex hull algorithm to generate the outer convex polygon vertex dataset of each vehicle model. Based on the aforementioned dataset of convex polygon vertices along the outer edge, the Euclidean distance from each smallest outer edge vertex to the origin of the coordinate system is calculated to obtain the vertex distance set. The maximum value of each vehicle model in the vertex distance set is used as the minimum circumcircle radius of the vehicle model to generate a dataset of circumcircle radii for each vehicle model. By associating the dataset of vertices of the convex polygons along their outer edges with the dataset of circumscribed circle radii according to vehicle model identifiers, a simplified vehicle model feature library is obtained.
3. The multi-model industrial AGV path locking pre-calculation optimization method according to claim 1, characterized in that, The process of loading the road network data of the operation map, constructing the topological connection relationship between nodes and road segments, and generating the road network spatial index includes: The node identifier, x-coordinate, and y-coordinate of all nodes are parsed and extracted from the road network data and stored in the original node data array to generate the original node dataset; Parse and extract the segment identifiers, start node identifiers, end node identifiers, and waypoint sequences of all road segments from the road network data and store them in the original road segment data array, along with the original road segment dataset; Traverse each road segment in the original road segment dataset, extract the start node identifier and end node identifier of each road segment, and locate the node coordinates corresponding to the start node identifier and the node coordinates corresponding to the end node identifier in the original road segment dataset respectively, to generate the start coordinates and end coordinates of each road segment. By associating the starting point coordinates and the ending point coordinates with the corresponding road segment identifiers, a road segment endpoint coordinate dataset is obtained. Based on the road segment endpoint coordinate dataset, the start node identifier and end node identifier of each road segment are used as keys, and the road segment identifiers are added to the associated road segment list corresponding to the key to generate a node-road segment topology association table. Iterate through each node in the node-segment topology association table and obtain the start or end coordinates of the associated road segment of the node from the road segment endpoint coordinate dataset; Calculate the Euclidean distance between the node coordinates and the starting point coordinates or the node coordinates and the ending point coordinates, and use the Euclidean distance as the adjacent edge weight to generate a road network spatial adjacency index table with node identifier as index and node identifier and adjacent edge weight as value. The original datasets of nodes, original datasets of road segments, node-road segment topology association tables, and road network spatial adjacency index tables are all stored in the road network spatial index.
4. The multi-model industrial AGV path locking pre-calculation optimization method according to claim 1, characterized in that, Based on the simplified vehicle feature library and the road network spatial index, all road segments and node combinations are traversed. A second round of filtering is performed using the node interlock dataset, the distance between road segments and nodes, and the radius of the outer bounding circle of the corresponding vehicle model. Polygonal collision detection and the calculation of the minimum safe release distance are then performed on the remaining road segments and node combinations after the second round of filtering. This generates a road segment node interlock dataset and a road segment node release distance set, including: Based on the node interlock dataset and the road network spatial index, all combinations of road segments and nodes are traversed to extract the starting node, ending node and target node of the road segment; If there is no interlock record between the starting node and the target node and no interlock record between the ending node and the target node in the node interlock dataset, then the combination of road segment and node is removed, and the first round of road segment node screening result set is generated. Based on the combination of remaining road segments and nodes in the first round of screening results, the remaining road segments are simplified into straight line segments according to the coordinates of the starting and ending nodes of the remaining road segments. Calculate the nearest perpendicular distance from the target node to the corresponding straight line segment for each remaining road segment; If the nearest vertical distance is greater than the sum of the outer perimeter radius of the two vehicle models and the preset safety distance, then the combination of the road segment and node is eliminated, and a second-round screening result set of road segment and node is generated. Based on the remaining combinations in the second round of screening results set of the road segment nodes, traverse the list of allowed passing vehicle types and the list of allowed parking vehicle types for the remaining road segments to generate a set of vehicle type matching pairs; Take the smallest size vehicle pair from the vehicle matching pair set, project the largest outer convex polygon model of the first vehicle in the smallest size vehicle pair onto the driving plane of the road segment, project the largest outer convex polygon model of the second vehicle in the smallest size vehicle pair onto the parking area of the target node, perform convex polygon intersection detection, record the vehicle pairs and road segment node pairs with collision risk, and generate the road segment node interlock dataset. Based on the risk combinations with collision risks in the interlocked data set of road segment nodes, the minimum safe release distance for each risk combination is calculated by using the safe collision radius in the simplified vehicle feature library and the lane curvature and length data in the road network spatial index, thus generating a set of release distances for road segment nodes.
5. The multi-model industrial AGV path locking pre-calculation optimization method according to claim 1, characterized in that, Based on the simplified vehicle feature library and the road network spatial index, all road segment pairs are traversed. Three rounds of filtering are performed using the node interlock dataset, the road segment node interlock dataset, the distance between road segments, and the outer radius of the corresponding vehicle model's bounding circle. Polygonal collision detection and minimum safe release distance calculation are then performed on the remaining road segment pairs after the three rounds of filtering, generating a road segment interlock dataset and a road segment release distance set, including: Traverse all road segment pairs based on the aforementioned road network spatial index; If the node interlock dataset does not contain an interlock record between the start and end nodes of the first road segment, or between the start and end nodes of the second road segment, or if the node interlock dataset does not contain an interlock record between the first and second road segments, or if the node interlock dataset does not contain an interlock record between the first and second road segments, then the road segment pair will be removed, and the first round of road segment pair filtering result set will be generated. Based on the remaining road segment pairs in the first round of screening results, the two road segments of the road segment pairs are simplified into straight line segments. If two line segments have no intersection, calculate the shortest distance between them. If the nearest distance is greater than the sum of the outer radii of the two vehicle models and the preset safety distance, then the road segment pair is removed, and a second-round screening result set of road segment pairs is generated. Based on the remaining road segment pairs in the second round of screening results, extract the list of allowed vehicle types for the two road segments in the remaining road segment pairs, generate all vehicle type pair combinations and sort them according to the outer edge size of the vehicle type, project the maximum outer edge convex polygon model of the smallest size vehicle type pair onto the driving plane of the two road segments respectively to perform convex polygon intersection detection, and generate a road segment interlock dataset. Based on the combinations of road segment pairs and vehicle type pairs that have a collision risk in the road segment interlock dataset, the closest point pair between two road segments is located. The sampling is diffused bidirectionally outward from the nearest point pair to both ends of the two road segments, and the sampling point where the first collision is detected is located as the first interference position point; The minimum safe release distance is obtained by superimposing the cumulative path length from the interference location point to the starting point of the first road segment with the predetermined safe distance, and a road segment release distance set is generated.
6. The multi-model industrial AGV path locking pre-calculation optimization method according to claim 1, characterized in that, The generation of the road segment interlock dataset and the road segment release distance set includes: A multi-dimensional hierarchical index is constructed based on the node interlock dataset, node release distance set, road segment node interlock dataset, road segment node release distance set, road segment interlock dataset, and road segment release distance set.
7. A pre-calculation and optimization device for path locking control in multi-vehicle industrial AGVs, characterized in that, include: The loading module is used to load the original geometric models of multi-model AGVs, extract the vertices of the outer convex polygons of each model, calculate the minimum circumscribed circle radius of each model, and generate a simplified model feature library. The building module is used to load the road network data of the operation map, build the topological connection relationship between nodes and road segments, and generate the road network spatial index; The first-round screening module is used to traverse all node pairs based on the simplified vehicle feature library and the road network spatial index, perform the first round screening by the Euclidean distance of the node pairs and the radius of the outer edge of the corresponding vehicle, and perform polygon collision detection and solve the minimum safe release distance for the remaining node pairs after the first round screening, generating a node interlock dataset and a node release distance set. The second-round screening module is used to traverse all road segments and node combinations based on the simplified vehicle feature library and the road network spatial index. It performs a second round of screening by using the node interlock dataset, the distance between road segments and nodes, and the radius of the outer edge of the corresponding vehicle model. It then performs polygon collision detection and solves the minimum safe release distance for the remaining road segments and node combinations after the second round of screening, generating a road segment node interlock dataset and a road segment node release distance set. The three-round screening module is used to traverse all road segment pairs based on the simplified vehicle feature library and the road network spatial index, and perform three rounds of screening using the node interlock dataset, the road segment node interlock dataset, the distance between road segments, and the outer edge enclosing circle radius of the corresponding vehicle model. It also performs polygon collision detection and solves the minimum safe release distance for the remaining road segment pairs after the three rounds of screening, generating a road segment interlock dataset and a road segment release distance set. The first-round screening module includes: The combination unit is used to extract all node identifiers and node coordinates based on the road network spatial index, and to combine all nodes in pairs using a hierarchical index traversal mechanism to generate a set of node pairs to be detected. The data extraction unit is used to read the vehicle feature parameter set in the simplified vehicle feature library based on the set of node pairs to be detected, extract the outer edge enclosing circle radius data of each vehicle, calculate the Euclidean distance between each node pair in the set of node pairs to be detected, and obtain the node distance. The node pair elimination unit is used to eliminate node pairs whose node distance is greater than the sum of the outer edge enclosing circle radius of the two vehicle models and the preset safety expansion radius, thereby generating a candidate node pair set. The model extraction unit is used to read the maximum outer edge two-dimensional convex polygon model of each vehicle in the simplified vehicle feature library based on the candidate node pair set, and extract the list of vehicle models that each node in the candidate node pair set is allowed to stop. The sorting unit is used to sort the models in the model list by their outer edge size from smallest to largest to generate a model pair sequence, project the maximum outer edge two-dimensional convex polygon model of each model in the model pair sequence onto the stopping area of the corresponding node, perform convex polygon intersection determination, and generate a node interlocking dataset. The release distance calculation unit is used to calculate the corresponding minimum safe release distance for node pairs and vehicle type combinations that have interlocking relationships, based on the coordinates of the nodes and the path topology in the road network spatial index, and obtain the node release distance set.
8. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the multi-model industrial AGV path locking pre-calculation optimization method as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, causes the processor to perform the multi-model industrial AGV path locking pre-calculation optimization method as described in any one of claims 1 to 6.