Robot path planning method and system based on HAC algorithm
Through HAC algorithm and dynamic weighted tables, multi-robot path planning is optimized, path conflict problem in large warehouses is solved, efficient cargo transportation and management is achieved, and warehouse transportation efficiency is improved.
Patent Information
- Application Number
- CN202310181970.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-24
- Publication Date
- 2025-08-22
- Estimated Expiration
- 2043-02-24
AI Technical Summary
The existing technology cannot effectively solve the conflict problems in multi-robot systems, especially in large warehouses. The lack of adaptability and global optimization of robot path planning, resulting in inefficient transportation and difficulty in management.
The path planning method based on the HAC algorithm is adopted, and by constructing a small warehouse raster model and feature matrix, using the A* algorithm to optimize the path, and combining the dynamic weighted table to deal with conflicts, prioritize high-demand goods, and dynamically adjust the robot transportation order.
It improves warehouse transportation efficiency, reduces path conflicts, improves the outbound speed of high-priority goods, and reduces system running time overhead.
Smart Images

Figure CN116203959B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of robot path planning, and in particular relates to a robot path planning method and system based on a HAC algorithm. Background Art
[0002] The statements in this section merely provide background information related to the present invention and do not necessarily constitute prior art.
[0003] Conflict-free multi-robot scheduling is the core of intelligent warehousing systems. As warehouses continue to expand and the number of robots increases, the system's operational processes become complex and interconnected. The optimal route for a single robot or the optimal strategy for a single problem may not be optimal when the system operates globally. Furthermore, the delivery priority of different orders during inbound delivery is a factor that impacts warehouse efficiency. Demand for goods varies significantly between warehouses, and simply picking items sequentially for a single order significantly reduces system efficiency.
[0004] Since there's more than one robot in a warehouse, conflicts can arise between them. When other robots frequently pass through a single robot's shortest path, serious conflicts can occur. These conflicts are highly dynamic and intertwined, easily leading to chain conflicts, congestion, and even deadlocks. Furthermore, randomly storing materials significantly reduces warehouse efficiency, complicates management, and creates significant chaos when robots transport materials out of the warehouse.
[0005] The inventors discovered that existing methods lack a path optimization strategy that can be applied to multiple scenarios. This inability to adapt conflict strategies to different warehouses hinders the efficiency of transporting high-demand goods. Furthermore, they fail to fully optimize conflicts from a global perspective, only qualitatively reducing them rather than quantitatively eliminating them. Consequently, multiple robots frequently encounter conflicts during movement, leading to numerous starts and stops. Summary of the Invention
[0006] In order to overcome the shortcomings of the above-mentioned prior art, the present invention provides a robot path planning method and system based on the HAC algorithm. It proposes a multi-robot path planning method based on the HAC algorithm with high computational efficiency and dynamic adaptability based on historical order data, targeting warehouse picking needs in different scenarios.
[0007] To achieve the above objectives, one or more embodiments of the present invention provide the following technical solutions:
[0008] A first aspect of the present invention provides a robot path planning method based on the HAC algorithm.
[0009] The robot path planning method based on the HAC algorithm includes the following steps:
[0010] Obtain historical order tasks, extract the historical order item data set in the historical order tasks, and form a feature matrix;
[0011] Build a small warehouse grid model, perform similarity aggregation on the data in the feature matrix based on the HAC algorithm, obtain the demand for goods sorted from high to low, prioritize the transportation of goods batches with high demand among the pending order tasks, and assign the pending order tasks to the corresponding robots;
[0012] Based on the cost estimation function of the A* algorithm, the path optimization is performed for each robot with an order task to obtain the optimal path with the minimum cost from the starting point to the target point for each robot;
[0013] Obtain the location information of each robot at every moment, store the location information uniformly and call it according to time to form a reservation table;
[0014] The optimal path of each two robots is compared with the reservation table to check whether there is a path conflict. If there is a conflict, a dynamic weighted table is formed with each robot label and the corresponding dynamic weight, and the dynamic weighted table is used to determine the order in which the robots pass through the conflict point; if there is no conflict, the robot directly executes the order task according to the corresponding optimal path until all the order tasks to be assigned are completed.
[0015] A second aspect of the present invention provides a robot path planning system based on the HAC algorithm.
[0016] The robot path planning system based on the HAC algorithm includes:
[0017] The feature matrix acquisition module is configured to: acquire historical order tasks, extract historical order item data set in the historical order tasks, and form a feature matrix;
[0018] The demand ranking module is configured to: build a small warehouse grid model, perform similarity aggregation on the data in the feature matrix based on the HAC algorithm, obtain the demand for goods sorted from high to low, prioritize the shipment of goods with high demand among the pending order tasks, and assign the pending order tasks to the corresponding robots;
[0019] The optimal path acquisition module is configured to: perform path optimization for each robot with an order task based on the A* algorithm cost estimation function, and obtain the optimal path with the lowest cost from the starting point to the destination point for each robot;
[0020] The reservation table establishment module is configured to: obtain the position information of each robot at each moment, store the position information uniformly and call it according to time to form a reservation table;
[0021] The path conflict judgment module is configured to compare the optimal path of each two robots with the reservation table to check whether there is a path conflict. If there is a conflict, a dynamic weighted table is formed with each robot label and the corresponding dynamic weight, and the dynamic weighted table is used to determine the order in which the robots pass through the conflict point; if there is no conflict, the robot directly executes the order task according to the corresponding optimal path until all the order tasks to be assigned are completed.
[0022] A third aspect of the present invention provides a computer-readable storage medium having a program stored thereon, which, when executed by a processor, implements the steps in the robot path planning method based on the HAC algorithm as described in the first aspect of the present invention.
[0023] The fourth aspect of the present invention provides an electronic device, comprising a memory, a processor, and a program stored in the memory and executable on the processor. When the processor executes the program, the steps in the robot path planning method based on the HAC algorithm as described in the first aspect of the present invention are implemented.
[0024] One or more of the above technical solutions have the following beneficial effects:
[0025] 1. The present invention proposes a relatively standard small-scale storage model that is applicable to a variety of storage modes and can meet the storage requirements of various scenarios. Reasonable environmental representation is conducive to establishing planning methods and selecting appropriate search algorithms, ultimately achieving less time expenditure and planning a more satisfactory path.
[0026] 2. This invention addresses the multi-vehicle scheduling problem in intelligent warehousing systems and improves the reservation table, which greatly reduces the storage space occupied by the reservation table while improving operational efficiency. It also improves the A* algorithm to avoid both vertex conflicts and edge conflicts.
[0027] 3. The present invention adds a dynamic weighted table to address inevitable conflicts, prioritizes high-priority goods, and improves warehouse delivery efficiency.
[0028] 4. The present invention adds a HAC algorithm to analyze the demand for goods in the current order and reasonably allocate and sort the order sequence, so as to provide different targeted solutions for different warehouses and maximize the efficiency of high-demand goods outbound.
[0029] Advantages of additional aspects of the present invention will be given in part in the following description and in part will be obvious from the following description, or will be learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] The accompanying drawings, which constitute a part of the specification of the present invention, are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute improper limitations on the present invention.
[0031] Figure 1 This is a flow chart of a multi-robot path planning method based on the HAC algorithm according to the first embodiment of the present invention;
[0032] Figure 2 This is a schematic diagram of the characteristics of commodity codes in Example 1 of the present invention;
[0033] Figure 3 Schematic diagram of a binary tree model under the HAC algorithm in Example 1 of the present invention;
[0034] Figure 4 This is a schematic diagram of order sorting after using the HAC algorithm in Example 1 of the present invention;
[0035] Figure 5 A small warehouse grid model diagram established in Example 1 of the present invention;
[0036] Figure 6 This is a schematic diagram of shelf allocation according to the first embodiment of the present invention;
[0037] Figure 7 This is an example of a reservation statement in accordance with the present invention;
[0038] Figure 8 This is a comparison diagram of the efficiency before and after using the dynamic weighting table in Example 1 of the present invention;
[0039] Figure 9 This is a diagram of order history aggregation results after using the HAC algorithm in Example 1 of the present invention.
[0040] Figure 10 This is a system structure diagram of embodiment 2 of the present invention. DETAILED DESCRIPTION
[0041] It should be noted that the following detailed descriptions are exemplary and intended to provide further explanation of the present invention. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which the present invention belongs.
[0042] It should be noted that the terms used herein are for describing particular embodiments only and are not intended to limit the exemplary embodiments according to the present invention.
[0043] In the absence of conflict, the embodiments of the present invention and the features thereof may be combined with each other.
[0044] Example 1
[0045] like Figure 1 As shown, this embodiment provides a robot path planning method based on the HAC algorithm, comprising the following steps:
[0046] Step 1: Get historical shipping order tasks;
[0047] In this embodiment, the historical order task can be determined based on the historical order data retrieved. A certain amount of historical order item data needs to be extracted to form a feature matrix, which is used as the training sample set D input to the HAC algorithm;
[0048] In one or more embodiments, step 1 requires extracting a certain amount of historical order item data to form a feature matrix, which serves as the training sample set D input to the HAC algorithm, specifically including:
[0049] Step 101: Extract the outer box barcode and quantity information of the historical order items. Taking the product barcode EAN-13 as an example, the valid information in the barcode generally includes the product production area, manufacturer code, and factory product code, such as Figure 2 As shown, the EAN-13 barcode has 13 digits and is divided into 4 parts, divided into 3-5-4-1. The first part represents the country, the second part represents the manufacturer, the third part represents the product code within the factory, and the fourth part is the verification code.
[0050] The four pieces of information, namely, the production area, manufacturer code, factory code, and quantity of goods under the same code, are extracted from the outer box barcode as characteristic information of the historical order items.
[0051] Step 102: Construct a feature matrix, where the rows represent the feature information of a single item and the columns represent the feature index of the item. i As an element in the feature matrix, Each sample X i There are 4 feature information, namely X i ={X i1 ,X i2 ,X i3 ,X i4}, then the feature matrix composed of historical order item data with a quantity of m is as follows:
[0052]
[0053] Among them, X ij is the jth test index of the i-th sample. Since each feature has different dimensions, it needs to be standardized before clustering. The formula is as follows:
[0054]
[0055] in, S j are the mean and standard deviation of the test indicators, respectively.
[0056] Step 103: Input the data in the feature matrix into the HAC algorithm as a training sample set D.
[0057] Step 2: Based on the constructed small warehouse grid model and HAC algorithm, perform hierarchical agglomerative clustering analysis on the data in the feature matrix to form a demand aggregation binary tree model sorted from high to low. Divide the number of categories according to demand and obtain a priority ranking reference table that adapts to this warehouse model. Use this as the standard to prioritize new order tasks.
[0058] As one or more embodiments, step 2 performs hierarchical agglomerative clustering analysis on the data in the feature matrix based on the constructed small warehouse grid model and HAC algorithm to form a demand aggregation binary tree model sorted from high to low, such as Figure 3 As shown in the figure, according to the number of categories divided by demand, a priority sorting reference table adapted to this warehouse model is obtained, and the new order tasks are prioritized based on this standard, including:
[0059] Step 201: During initialization, each item data point in the training sample set D is treated as an independent cluster.
[0060] Step 202: Calculate the item similarity between every two clusters and merge the two most similar clusters.
[0061] In the similarity analysis part, in order to clarify the similarity between individual goods items, it is necessary to calculate the distance between clusters. This paper uses Euclidean distance to establish a distance matrix. The calculation formula of Euclidean distance is as follows:
[0062]
[0063] Among them, d pq For sample X p and X q The Euclidean distance between them, p,q∈{1,2,…,n}, j is the feature index.
[0064] Regarding the calculation method of similarity, the Ward method (the sum of squares of deviations method) is generally superior to the shortest distance method (Single), the longest distance method (Complete) and the average distance method (Average) in terms of separation effect. The Ward method can always minimize the increment of the sum of squares of deviations within the class after clustering. If the categories are well divided, the sum of squares of deviations of similar samples is small (high similarity), while the sum of squares of deviations of inter-class samples is large (low similarity). Therefore, the Ward method is selected for cluster analysis in this embodiment, and the formula is as follows:
[0065]
[0066] Among them, C uis cluster u, l is the number of characteristic indicators in cluster u, the initial value is 1, and as the clustering proceeds, the number of characteristic indicators in cluster u is determined by the clustering results. is the average value of the characteristic index in cluster u, η(C u ) is the sum of squares of the characteristic indicators in cluster u.
[0067] Step 203: Repeat the above steps until the sample set D is merged into a cluster or the set termination condition is reached.
[0068] Step 204: Based on the binary tree model output by the HAC algorithm, the new orders are sorted in descending order of the demand for the goods, so that the goods with high demand are shipped first in the order. Figure 3 Take the order results as an example, the order of ordering in descending order of demand is DEFGABCHIJKL, such as Figure 4 .
[0069] As one or more embodiments, in step 2, Figure 5 The small warehouse grid model diagram is established. The construction process of the small warehouse grid model includes:
[0070] According to the position of the picking platform of the shelf, the relative position relationship between the warehouse shelves and the transportation channel, and the frequency of use of goods, a small warehouse grid model is constructed according to certain rules.
[0071] In this embodiment, for example, a small warehouse model with a length of 25 meters and a width of 26 meters is constructed;
[0072] First, the map is segmented using the grid method. Each grid is 1 meter long and 1 meter wide. The map is segmented into 650 grids, such as Figure 5 shown.
[0073] The left area is the location of the picking platform, which is placed in the two leftmost columns of the warehouse. Each picking platform occupies two grids. The black area is the placement of warehouse shelves. Warehouse shelves are arranged in the form of shelf groups in the warehouse. Each shelf group occupies 8 grids and is arranged in the form of 2 rows and 4 columns.
[0074] The shelf groups are separated by a grid width, which serves as the transportation channel for the robot. The white area is the transportation channel. Figure 5 As shown, the robot can deliver the goods to the designated shelves through the transport channel.
[0075] This example ignores the problem of different pallet sizes caused by different sizes of goods. It assumes that each cargo pallet is a standard module with a length of 1 meter and a width of 1 meter, and the robot only transports one pallet per mission.
[0076] It can be understood that the corresponding dimensions in this embodiment can be set according to specific needs.
[0077] The shelf group is divided into three parts according to the frequency of goods use, namely high-frequency shelves, medium-frequency shelves and low-frequency shelves. Figure 6 As shown, it is convenient for placing and transporting goods.
[0078] Step 3: Use the improved A* algorithm estimation function as the objective function, and perform path optimization for the robot with the order transportation task to obtain the optimal path with the lowest cost from the starting point to the destination point;
[0079] In one or more embodiments, the improved A* algorithm estimation function is used as the objective function, and a path optimization is performed on a robot with an order transport task to obtain an optimal path with the lowest cost from a starting point to a destination point, specifically including:
[0080] Step 301: The robot starts from the starting grid point and expands the surrounding grid at the current grid point.
[0081] In this embodiment, the robots in the warehouse only move forward, backward, left, and right, so a four-neighborhood search method is used.
[0082] The current position is called the parent node. The estimated costs of the four surrounding grids are calculated and placed in the storage expansion node candidate table. After all the surrounding nodes have completed the estimated costs, the grid with the smallest estimated cost is selected as the new moving position, and this position becomes the new parent node.
[0083] Step 302: Continue expanding the grid with the new parent node as the center, and repeat this step repeatedly until the robot reaches the target point.
[0084] The expression of the cost estimation function improved by the A* algorithm is:
[0085]
[0086] Where g(n) represents the actual cost of moving from the starting grid to the current grid n. The actual cost is generally represented by distance or time. The present invention uses time as a unified scalar to compare the cost of the function f(n). is the total extra time the robot spends turning from the starting grid to the current grid, p is the number of turns from the starting grid to the current grid, is the extra time the robot spends waiting in place due to path conflicts during the process from the starting grid to the current grid, and q is the number of times the robot waits in place during the process from the starting grid to the current grid. The expression of g(n) is:
[0087]
[0088] Where d is the actual moving distance of the robot from the starting grid to the current grid n, and v is the speed of the robot at a constant speed.
[0089] h(n) represents the heuristic estimated cost from the current grid point n to the target grid point, which is expressed as:
[0090]
[0091] Among them, d n is the estimated shortest distance from the current grid point n to the target grid point of the robot. The estimated distance is calculated using the Harmanton distance, which is expressed as the sum of the horizontal distance and the vertical distance between the current node n and the target point.
[0092] d n =bs(nx-goal.x)+bs(ny-goal.y) (8)
[0094] Finally, an optimal path with the lowest cost from the starting point to the target point is obtained, including the x-axis position, y-axis position, vehicle head direction, and current time. The path information composed of these feature information is stored in the matrix of the corresponding robot number in the cell array AllPath.
[0095] Step 4: Compare the optimal path with the reservation table to check whether there is a path conflict. If there is a conflict, follow step 5 and use the dynamic weighted table to determine the passing order of the conflict points. If there is no conflict, directly execute the current order transportation task according to the optimal path.
[0096] As one or more embodiments, in step 4, the process of constructing the reservation table includes:
[0097] Obtain the position information of each robot at each moment and store the position information uniformly.
[0098] The information in the cell array AllPath is called according to time to form a reservation table.
[0099] The reservation table created is as follows Figure 7 As shown in the figure, k represents the number of reservation tables corresponding to the current moment. The reservation tables are arranged in chronological order. The time interval is the time Δt consumed by the robot to move from the center of the grid to the center of the adjacent grid. The system records a reservation table every Δt. The kth reservation table records the position status of all robots at the time k·Δt. The kcth reservation table records the information at the time (kc)·Δt. The r in the kth reservation table i x represents robot r i The horizontal coordinate of the warehouse location at time k·Δt, r i y represents robot ri The vertical coordinate of the position at this moment.
[0100] When the robot updates its path, the location information in the reservation table will be updated synchronously. The information in the reservation table is empty in the initial state.
[0101] In one or more embodiments, in step 4, the optimal path is compared with the reservation table to check whether there is a path conflict. If there is a conflict, a dynamic weighted table is used to determine the order of passing the conflict points. Otherwise, the current order transportation task is executed according to the optimal path, specifically including:
[0102] Step 401: Call the reservation table to check whether the same coordinates appear in the reservation table at each moment. If so, it can be determined that this extended node will have a vertex conflict, and the passing order of the conflict points is determined using the dynamic weighted table; if not, go to step 402.
[0103] Step 402: Cross-call the reservation table and apply the judgment formula to determine whether the two robots have swapped positions at two adjacent moments. The judgment formula is as follows:
[0104] F g(n) (x,y)∈R (k+1) ∩N f(n) (x,y)∈R (k) (9)
[0106] where R (k) With R (k+1) are matrices that record the position information of all robots in the kth reservation table and the k+1th reservation table. g(n) (x, y) represents the horizontal and vertical coordinate information of the parent node whose actual cost is g(n) that the A* algorithm is currently expanding. f(n) (x,y) represents F g(n) The parent node at position (x,y) is trying to expand the horizontal and vertical coordinates of the node with a cost of f(n). When the path planning is completed, the robot moves to the parent node F g(n) The location of (x, y) should correspond to the time recorded in the k-th appointment table. Therefore, how to locate the k-th appointment table can be calculated using the following formula:
[0107]
[0108] AllPath is a cell array that stores all robot paths. The number of cells matches the number of robots. Each cell stores the position and status of a robot from its starting point to the destination of all tasks in a batch of orders. Each row of the AllPath(i) cell contains four elements: the ordinate of robot i's current position in the coordinate system, the abscissa of robot i's current position in the coordinate system, the current heading of robot i (where 1 indicates the heading is facing the positive direction of the horizontal axis, and so on clockwise), and the current time. The number of rows in the AllPath(i) cell is determined by the movement time of robot i. The time interval Δt between each row of the AllPath(i) cell is the time it takes for the robot to move from the center of the current grid on the grid map to the center of the adjacent grid during normal operation. This is synchronized with the reservation table. Therefore, length(AllPath(i))Δt represents the time required for the robot to complete the path it has determined. length(AllPath(i)) represents the time required for the robot to complete the path it has determined.
[0109] If the judgment formula of formula 9 is satisfied, it can be determined that this extended node will have a conflict, and the passing order of the conflict point is determined according to step 5; if it is not satisfied, the current order task is directly executed according to the optimized route.
[0110] Step 5: Use the dynamic weighted table to determine the passing order of the conflict points.
[0111] Step 501: Query the demand for the type of goods being transported, the current transportation status of the robot, the remaining transportation time of the robot's current task, etc., and store them to form a dynamic weighted table consisting of a matrix composed of robot numbers and corresponding dynamic weights, as shown in Table 1.
[0112] Table 1 Dynamic weighted table
[0113]
[0114] Dynamic weight is w i Indicates that the robot i The weight at the current moment, weight w i The matrix is constructed as follows:
[0115] W i =[R i , J i , h(n) i ] (11)
[0117] Among them, R i Indicates robot r iThe priority level of the materials in the current transport mission. After receiving the mission, the robot obtains a weight R according to the type of goods. i , until this task is completed. Figure 6 The classification of the middle shelf, here the goods are also divided into three types, high frequency, medium frequency, low frequency goods R i Assign values of 1, 2, and 3 respectively. i Indicates robot r i Is there any cargo at the current moment? If yes, it means the robot r i At this time, it is in the shipping stage, and the value is assigned to 1. If it is not, it means the robot r i At this time, it is in the stage of receiving goods, and the value is assigned to 2. h(n) i Indicates robot r i The inspiration time for the current position to reach the target point.
[0118] Step 502: When a conflict occurs, the central controller calls the dynamic weighting table and determines the order of passing by comparing the dynamic weights of the robots in the conflict situation.
[0119] In the warehouse model of this example, the weighted priority is selected as follows: First, the more frequent the material demand, the higher the priority of the corresponding robot, which is the dominant factor; second, if the robots in conflict are transporting the same type of materials, the robot in the shipping state has a higher priority than the robot in the picking state; third, when robots of the same material category and the same picking / shipping state conflict, the robot with the shorter remaining inspiration time has a higher priority.
[0120] The path of the robot with higher priority remains unchanged; the robot with lower priority needs to return to step 3 and recalculate the transportation route.
[0121] Step 6: Check whether the current batch of orders is completed. If completed, return to step 1 and obtain and execute the above path planning again. If not completed, continue execution.
[0122] In order to verify the effectiveness of the dynamic weighted algorithm, in the warehouse grid map model established in this example, the A* algorithm based on the reservation table is compared with the dynamic weighted table optimization algorithm designed by the present invention (hereinafter referred to as the optimization algorithm). A simulation experiment is also carried out. The simulation experiment is as follows: In the grid map established in this article, 5 groups of transportation tasks are run by the traditional A* algorithm and the optimization algorithm based on the dynamic weighted table in this article respectively. The number of tasks in the 5 groups is 100, 150, 200, 250, and 300 respectively, and all are transported by 10 robots. By recording the final transportation completion time of all high-frequency goods in the task, the improvement of the transportation efficiency of high-priority goods by the dynamic weighted table is compared and analyzed. The simulation results are as follows: Figure 8As shown in the figure, compared to the traditional A* algorithm model, the optimization algorithm based on the dynamic weighted table shows that the efficiency of high-frequency cargo transportation for the five task groups increases more significantly as the number of cargo increases. The average time for high-frequency cargo transportation is reduced by 13.83%, a significant improvement in efficiency.
[0123] To verify the effectiveness of the HAC algorithm, we compared the A* algorithm based on the reservation table with the improved A* algorithm based on the HAC algorithm designed in this paper (hereinafter referred to as the optimization algorithm) in the warehouse grid map model established in this example. Simulation experiments were also conducted. The simulation experiments are as follows:
[0124] Five groups of experiments were conducted for comparative analysis. Based on the warehouse logistics historical order data of the cooperative enterprise, the historical goods orders shipped from the warehouse in the past month were retrieved, and the feature matrix was formed as the training sample set D based on the feature information of the order items. The data was aggregated by similarity using the HAC algorithm. The aggregation results of the HAC algorithm for historical orders are as follows: Figure 9 As shown in the figure, the algorithm analyzes the demand for the goods in the current order and rearranges the order in descending order of demand, ensuring that high-demand goods are shipped earlier in the order. Experimental results show that the overall shipping time for high-demand goods is reduced by an average of 15.00%, demonstrating the effectiveness of the algorithm.
[0125] Example 2
[0126] This embodiment provides a robot path planning system based on the HAC algorithm.
[0127] The robot path planning system based on the HAC algorithm includes:
[0128] The feature matrix acquisition module is configured to: acquire historical order tasks, extract historical order item data set in the historical order tasks, and form a feature matrix;
[0129] The demand ranking module is configured to: build a small warehouse grid model, perform similarity aggregation on the data in the feature matrix based on the HAC algorithm, obtain the demand for goods sorted from high to low, prioritize the transportation of goods with high demand in the first batches among the pending order tasks, and assign the pending order tasks to the corresponding robots;
[0130] The optimal path acquisition module is configured to: perform path optimization for each robot with an order task based on the A* algorithm cost estimation function, and obtain the optimal path with the lowest cost from the starting point to the destination point for each robot;
[0131] The reservation table establishment module is configured to: obtain the position information of each robot at each moment, store the position information uniformly and call it according to time to form a reservation table;
[0132] The path conflict judgment module is configured to compare the optimal path of each two robots with the reservation table to check whether there is a path conflict. If there is a conflict, a dynamic weighted table is formed with each robot label and the corresponding dynamic weight, and the dynamic weighted table is used to determine the order in which the robots pass through the conflict point. If there is no conflict, the robot directly executes the order task according to the corresponding optimal path until all the order tasks to be assigned are completed.
[0133] Example 3
[0134] This embodiment provides a computer-readable storage medium having a computer program stored thereon. When the program is executed by a processor, the steps in the robot path planning method based on the HAC algorithm as described above are implemented.
[0135] Example 4
[0136] This embodiment provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, the steps in the robot path planning method based on the HAC algorithm as described above are implemented.
[0137] It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of hardware embodiments, software embodiments, or embodiments combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage and optical storage, etc.) containing computer-usable program code.
[0138] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0139] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0140] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The steps for the function specified in one or more boxes.
[0141] Those skilled in the art will appreciate that all or part of the processes in the above-described method embodiments can be implemented by instructing related hardware through a computer program. The program can be stored in a computer-readable storage medium, and when executed, the program can include the processes in the above-described method embodiments. The storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
[0142] The foregoing description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Those skilled in the art will readily appreciate that various modifications and variations of the present invention are possible. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present invention are intended to be within the scope of protection of the present invention.
Claims
1. A robot path planning method based on the HAC algorithm is characterized by: The following steps are involved: Obtain historical order tasks, extract the historical order item data set in the historical order tasks, and form a feature matrix; Build a small warehouse grid model, perform similarity aggregation on the data in the feature matrix based on the HAC algorithm, obtain the demand for goods sorted from high to low, prioritize the transportation of goods batches with high demand among the pending order tasks, and assign the pending order tasks to the corresponding robots; Based on the cost estimation function of the A* algorithm, the path optimization is performed for each robot with an order task to obtain the optimal path with the minimum cost from the starting point to the target point for each robot; Obtain the location information of each robot at every moment, store the location information uniformly and call it according to time to form a reservation table; The optimal path of each two robots is compared with the reservation table to check whether there is a path conflict. If there is a conflict, a dynamic weighted table is formed with each robot label and the corresponding dynamic weight, and the dynamic weighted table is used to determine the order in which the robots pass through the conflict point; if there is no conflict, the robot directly executes the order task according to the corresponding optimal path until all the order tasks to be assigned are completed.
2. The robot path planning method based on the HAC algorithm according to claim 1, characterized in that: The four pieces of information from the outer box barcode, namely, the production area, manufacturer code, factory code, and the quantity of goods with the same code, are extracted as historical order item data to construct a feature matrix.
3. The robot path planning method based on the HAC algorithm according to claim 1, characterized in that: The similarity aggregation of data in the feature matrix is performed based on the HAC algorithm, specifically including: Each item data point in the feature matrix is treated as an independent cluster, and the item similarity between each two clusters is calculated. The two most similar clusters are merged until the data in the feature matrix is merged into one cluster or the set termination condition is reached. A binary tree model is obtained, and the demand for goods sorted from high to low is obtained based on the binary tree model.
4. The robot path planning method based on the HAC algorithm according to claim 1, characterized in that: Starting from the starting grid point of the warehouse grid model, the grids around the current grid point are expanded. The current grid point position is called the parent node. The estimated cost of the grids in the four surrounding directions is calculated. The grid with the smallest estimated cost is selected as the new moving position, and the new moving position becomes the new parent node. Continue to expand the grid with the new parent node as the center until the robot reaches the target point, completing the path optimization.
5. The robot path planning method based on the HAC algorithm according to claim 1, characterized in that: The expression of the A* algorithm cost estimation function is: Where g(n) represents the actual cost of moving from the starting grid to the current grid n. is the total extra time the robot spends turning from the starting grid to the current grid, p is the number of turns from the starting grid to the current grid, is the extra time the robot spends waiting in place due to path conflicts during the process from the starting grid to the current grid, q is the number of waiting times from the starting grid to the current grid, and h(n) represents the heuristic estimated cost from the current grid n to the target grid point.
6. The robot path planning method based on the HAC algorithm according to claim 1, characterized in that: Call the reservation table, compare the optimal path of each two robots with the reservation table, and check whether the coordinates in the reservation table at each moment are the same as the optimal path of the two robots at this moment. If so, it can be determined that a vertex conflict will occur at this extension node. Use the dynamic weighted table to determine the order in which the robots pass through the conflict point.
7. The robot path planning method based on the HAC algorithm according to claim 6, characterized in that: If the appointment table at each moment does not have the same coordinates as the optimal path of the two robots at that moment, the two robots will cross-call the appointment table and use the judgment formula to determine whether the two robots have swapped positions at two adjacent moments. The judgment formula is as follows: F g(n) (x,y)∈R (k+1) ∩N f(n) (x,y)∈R (k) where R (k) With R (k+1) are matrices that record all robot position information in the kth reservation table and the k+1th reservation table, respectively. g(n) (x, y) represents the horizontal and vertical coordinate information of the parent node whose actual cost is g(n) that the A* algorithm is currently expanding, N f(n) (x, y) represents F g(n) The horizontal and vertical coordinate information of the node whose parent node at position (x, y) is trying to expand with a cost of f(n).
8. The robot path planning system based on the HAC algorithm is characterized by: include: The feature matrix acquisition module is configured to: acquire historical order tasks, extract historical order item data set in the historical order tasks, and form a feature matrix; The demand ranking module is configured to: build a small warehouse grid model, perform similarity aggregation on the data in the feature matrix based on the HAC algorithm, obtain the demand for goods sorted from high to low, prioritize the transportation of goods with high demand in the batches to be assigned, and assign the assigned order tasks to the corresponding robots; The optimal path acquisition module is configured to: perform path optimization for each robot with an order task based on the A* algorithm cost estimation function, and obtain the optimal path with the lowest cost from the starting point to the destination point for each robot; The reservation table establishment module is configured to: obtain the position information of each robot at each moment, store the position information uniformly and call it according to time to form a reservation table; The path conflict judgment module is configured to compare the optimal path of each two robots with the reservation table to check whether there is a path conflict. If there is a conflict, a dynamic weighted table is formed with each robot label and the corresponding dynamic weight, and the dynamic weighted table is used to determine the order in which the robots pass through the conflict point; if there is no conflict, the robot directly executes the order task according to the corresponding optimal path until all the order tasks to be assigned are completed.
9. A computer-readable storage medium having a program stored thereon, characterized in that: When the program is executed by a processor, the steps of the robot path planning method based on the HAC algorithm as described in any one of claims 1 to 7 are implemented.
10. An electronic device comprising a memory, a processor, and a program stored in the memory and executable on the processor, wherein: When the processor executes the program, the steps in the robot path planning method based on the HAC algorithm as described in any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Large-scale customization full-cycle multi-objective optimization method based on two-stage planning
CN114707702A
Robot path planning method and system based on dynamic weighting and thermodynamic diagram algorithm
CN114895690A