Path planning method, computer device and computer readable storage medium

By combining RFID sensors and predictive models with multi-population genetic algorithms, the problems of narrow search range and poor coordination in the path planning of warehouse robots have been solved, realizing efficient path planning for multi-robot collaborative work and improving production efficiency and accuracy.

CN121089754BActive Publication Date: 2026-04-14ZHONGKE YUNGU TECH
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ZHONGKE YUNGU TECH
Filing Date
2025-11-11
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

In automated production, existing path planning algorithms for warehouse robots suffer from narrow search ranges and slow convergence, failing to meet the needs of efficient collaborative work. In particular, path conflicts and inefficiencies are prone to occur when multiple robots are working together.

Method used

By combining RFID sensors and prediction models with multi-population genetic algorithms, the location and task information of warehouse robots are obtained. The prediction model outputs a set of predicted paths, constructs an objective function, and performs path planning to ensure the efficiency and accuracy of multi-robot collaborative work.

Benefits of technology

It enables rapid and accurate planning of multi-robot operation paths, avoids local optima, improves the collaborative work efficiency of warehouse robots, reduces logistics costs, and speeds up delivery.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121089754B_ABST
    Figure CN121089754B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a path planning method, a computer device and a computer readable storage medium. The method comprises the following steps: obtaining position information and task information of a warehouse robot; outputting a prediction path set by using a prediction model according to the position information and the task information; determining a target function according to the prediction path set; calculating a planning path according to the target function, and outputting the planning path to the warehouse robot. Therefore, after the robot position is accurately obtained, the prediction model is used to assist in realizing dynamic adjustment of the path and forward-looking optimization of the work. The target function is iteratively solved to realize path planning, which can not only avoid local optimization, but also quickly and accurately find an optimal picking path, while a scientific scheduling strategy ensures cooperation between multiple robots, meets the efficient and accurate picking demand of the manufacturing industry, reduces the logistics cost, and speeds up the delivery speed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of path planning technology, and in particular relates to a path planning method, computer device and computer-readable storage medium. Background Technology

[0002] In the technological fields involving large-scale manufacturing, especially in the areas of automated production and intelligent control represented by the automotive and construction machinery industries, AGVs (Automated Guided Vehicles) have been widely adopted as warehouse robots to participate in manufacturing production lines, automating material handling, assembly assistance, and production processes. Traditional manufacturing parts and materials warehousing is characterized by its diverse types and specifications, frequent inbound and outbound operations, and random demand; therefore, efficient picking paths are crucial for ensuring production continuity. Existing single intelligent algorithms (such as genetic algorithms and ant colony algorithms) have limitations such as narrow search range and slow convergence, failing to meet practical needs. How to improve the collaborative working efficiency of warehouse robots is a technical problem that urgently needs to be solved by those skilled in the art.

[0003] The preceding description is intended to provide general background information and does not necessarily constitute prior art. Summary of the Invention

[0004] The purpose of this application is to provide a path planning method, computer device, and computer-readable storage medium that can effectively plan the working paths of multiple robots, avoid local optima, quickly and accurately find the optimal picking path, and ensure the coordination between multiple robots.

[0005] To achieve the above objectives:

[0006] In a first aspect, embodiments of this application provide a path planning method, comprising the following steps: obtaining the location information and task information of a warehouse robot; outputting a predicted path set using a prediction model based on the location information and task information; determining an objective function based on the predicted path set; calculating a planned path based on the objective function; and outputting the planned path to the warehouse robot.

[0007] In an optional embodiment of this application, the warehouse robot is equipped with an RFID sensor, and the shelf is equipped with an RFID tag that can be identified by the RFID sensor. The shelf is the working object of the warehouse robot. Obtaining the location information of the warehouse robot includes: obtaining RFID tag information collected by the warehouse robot, the RFID tag information being obtained by reading the RFID tag through the RFID sensor; obtaining warehouse map data corresponding to the working area where the warehouse robot is located, the warehouse map data including the location of the RFID tag; and determining the location information of the warehouse robot based on the warehouse map data and the RFID tag information.

[0008] In an optional embodiment of this application, the location information includes historical locations, and the task information includes historical tasks. Based on the location information and task information, a prediction model is used to output a predicted path set, including: determining a historical location set and a historical task set based on multiple historical locations and multiple historical tasks of the warehouse robot obtained according to sampling periods, wherein the historical location set includes historical locations corresponding to each sampling period; determining a historical path set of the warehouse robot within a preset time period based on the historical location set and the historical task set, wherein the preset time period includes multiple sampling periods, and the historical path set consists of at least one historical path, with each historical path corresponding to one warehouse robot and one historical task; and outputting the predicted path set using the prediction model based on the historical path set.

[0009] In an optional embodiment of this application, the prediction path set is output using a prediction model based on the historical path set, including: using the historical path set as input to the prediction model; the prediction model determines whether there are preset situations during the execution of historical tasks by the warehouse robot based on the historical paths and the historical task set; if there are, an uncertain path is generated based on the historical paths and the preset situations; if there are no preset situations, a definite path is generated based on the historical paths; and all uncertain paths and all definite paths are summarized to obtain the prediction path set.

[0010] In an optional embodiment of this application, the method further includes: determining, based on the historical task set and the historical path set, that there are differences between multiple historical paths generated when the warehouse robot executes the same historical task multiple times, and the differences exceed a preset threshold, then determining that a preset situation exists; and / or, based on the historical task set, determining that there are preset uncertainties when the warehouse robot executes any historical task, and the number of uncertainties is greater than a preset threshold, then determining that a preset situation exists; and / or, based on the historical path set, determining that there is uncertainty in the path selection strategy of the warehouse robot when executing historical paths, and the uncertainty exceeds a preset threshold, then determining that a preset situation exists.

[0011] In an optional embodiment of this application, the predicted path set consists of at least one predicted path, which indicates the path trajectory that the corresponding warehouse robot may execute in the future. Determining an objective function based on the predicted path set includes: determining the total path length for each predicted path; obtaining the predicted task information corresponding to each predicted path and determining the priority weight based on the predicted task information; determining the number of turns and acceleration / deceleration times for each predicted path and determining the energy consumption cost based on the number of turns and acceleration / deceleration times; calculating individual collision values ​​for each predicted path and summing the individual collision values ​​to obtain a collision penalty coefficient; and weighted summing the total path length, priority weight, energy consumption cost, and collision penalty coefficient to obtain the objective function, which can be used to calculate and determine the planned path.

[0012] In an optional embodiment of this application, the predicted path includes a determined path and an uncertain path; calculating individual collision values ​​based on each predicted path and summing the individual collision values ​​to obtain a collision penalty coefficient includes: obtaining scene information of the warehouse robot, determining an optimization method based on the scene information, the optimization method including smooth optimization and non-smooth optimization; for each warehouse robot, calculating the first individual collision value between the predicted path of the warehouse robot and all determined paths, and the second individual collision value between the predicted path of the warehouse robot and all uncertain paths respectively through the optimization method; and weighted summing of all first individual collision values ​​and all second individual collision values ​​to obtain the collision penalty coefficient.

[0013] In an optional embodiment of this application, the planned path is calculated based on the objective function, including: obtaining scene information of the warehouse robot; using a multi-population genetic algorithm to divide the scene information into at least one region; setting at least one population based on the warehouse robot in each region; each population including at least one chromosome represented by an iterative path; the iterative path being a possible solution of the objective function; during each iteration, within each population, calculating the fitness value of each iterative path based on the chromosome; pairing the N chromosomes with the highest fitness values ​​to update the iterative paths within the population, where N is an integer greater than 1; after each preset number of iterations, pairing the M chromosomes with the highest fitness values ​​within each population to update the iterative paths between populations, where M is an integer greater than 1; after each iteration, determining whether the chromosome with the highest fitness value in the current round satisfies the iteration termination condition; if not, proceeding to the next round of iteration; if satisfied, marking the iterative path obtained by parsing the chromosome with the highest fitness value as the planned path.

[0014] Secondly, embodiments of this application provide a computer device, including: a processor and a memory storing a computer program, wherein when the processor runs the computer program, the steps of the above-described method are implemented.

[0015] Thirdly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the above-described method.

[0016] The embodiments of this application have the following beneficial effects:

[0017] The method provided in this application includes the following steps: acquiring the location and task information of a warehouse robot; outputting a predicted path set using a prediction model based on the location and task information; determining an objective function based on the predicted path set; calculating the planned path based on the objective function; and outputting the planned path to the warehouse robot. Therefore, this application can acquire the location and task information of the warehouse robot in real time. The location information is determined based on the interaction between the robot and the shelves in its work area. Determining the location information through interaction not only ensures real-time performance but also improves the accuracy of positioning. Furthermore, the prediction model is used to predict future paths, enabling dynamic path adjustment and proactive optimization of operations. Finally, the objective function is constructed and iteratively solved to achieve path planning. This avoids local optima and quickly and accurately finds the optimal picking path. Simultaneously, a scientific scheduling strategy ensures collaboration among multiple robots, meeting the needs of efficient and accurate picking in the manufacturing industry, reducing logistics costs, and accelerating delivery speed.

[0018] The above description is merely an overview of the technical solution of this application. In order to better understand the technical means of this application and to implement it according to the contents of the specification, and to make the above and other objects, features and advantages of this application more apparent and understandable, preferred embodiments are described below in detail with reference to the accompanying drawings. It should be understood that the above general description and the following detailed description are merely exemplary and explanatory, and do not limit this application. Attached Figure Description

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

[0020] Figure 1 This is a flowchart illustrating a path planning method provided in one embodiment.

[0021] Figure 2 This is a timing diagram of a path planning method provided in one embodiment.

[0022] Figure 3 This is a schematic block diagram of the structure of a computer device provided in one embodiment. Detailed Implementation

[0023] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. In the following description relating to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements.

[0024] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such 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. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. Furthermore, components, features, and elements with the same names in different embodiments of this application may have the same meaning or different meanings, the specific meaning of which must be determined by its interpretation in that specific embodiment or further in conjunction with the context of that specific embodiment.

[0025] It should be understood that although the terms first, second, third, etc., may be used herein to describe various information, such information should not be limited to these terms. These terms are used only to distinguish information of the same type from one another. For example, without departing from the scope of this document, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Depending on the context, the word "if," as used herein, can be interpreted as "when," "when," or "in response to determination." Furthermore, as used herein, the singular forms "a," "an," and "the" are intended to also include the plural forms unless the context indicates otherwise. It should be further understood that the terms "comprising," "including," indicate the presence of the stated feature, step, operation, element, component, item, kind, and / or group, but do not exclude the presence, occurrence, or addition of one or more other features, steps, operations, elements, components, items, kinds, and / or groups. The terms "or" and "and / or" as used herein are to be interpreted as inclusive, or mean any one or any combination thereof. Therefore, "A, B, or C" or "A, B, and / or C" means "any one of the following: A; B; C; A and B; A and C; B and C; A, B, and C". Exceptions to this definition will only occur if the combination of elements, functions, steps, or operations is inherently mutually exclusive in some way.

[0026] It should be understood that although the steps in the flowcharts of this application's embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some of the steps in the figures may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times, and their execution order is not necessarily sequential, but can be performed alternately or in turn with other steps or at least a portion of the sub-steps or stages of other steps.

[0027] It should be noted that step designations such as S110 and S120 are used in this document for the purpose of more clearly and concisely describing the corresponding content, and do not constitute a substantial limitation on the order. In specific implementation, those skilled in the art may execute S120 first and then S110, etc., but these should all be within the protection scope of this application.

[0028] It should be understood that the specific embodiments described herein are merely illustrative of this application and are not intended to limit this application.

[0029] In the following description, the use of suffixes such as "module," "part," or "unit" to denote elements is solely for the purpose of illustrative purposes and has no specific meaning in itself. Therefore, "module," "part," or "unit" may be used interchangeably.

[0030] To facilitate understanding of this application, the following explanations are provided for the terms and technical objects that may be used in this application:

[0031] Multi-Population Genetic Algorithm (MPGA) is an optimization algorithm based on the principles of biological evolution. It solves complex optimization problems by simulating biological evolutionary mechanisms such as natural selection, crossover, and mutation.

[0032] AGV (Automated Guided Vehicle): A transport robot equipped with electromagnetic or optical automatic guidance devices. It is a mobile robot capable of autonomously driving and completing material handling tasks without driver intervention, relying on an automatic navigation system. It is commonly used in factories, warehousing and logistics facilities, ports, hospitals, and other similar settings to perform tasks such as handling, delivery, picking, and loading / unloading.

[0033] RFID (Radio Frequency Identification) is a contactless technology that uses radio waves to automatically identify and read information stored in tags.

[0034] In the manufacturing industry, especially the automotive and construction machinery industries, in order to improve the efficiency of warehousing and logistics, the traditional manufacturing parts and materials warehousing has the characteristics of many types, various specifications, frequent inbound and outbound, and random demand. Efficient picking path is crucial to ensuring production continuity. The existing technology has the following defects: (1) Low efficiency: manual RFID is only used for goods tracking and is not linked to path planning, resulting in high replanning delay when urgently inserting orders. In addition, the traditional algorithm is inefficient and difficult to adapt to dynamic environments. (2) Multi-objective conflict: the existing method cannot balance the multi-objective optimization requirements such as shortest path, lowest energy consumption, and equipment wear. (3) Insufficient real-time performance: static path planning cannot adapt to dynamic order changes, resulting in frequent empty runs or congestion of AGVs. (4) Poor coordination: path conflicts are prone to occur when multiple devices (AGV, forklift, manual) work together, reducing overall efficiency. In order to solve the above technical defects, this application proposes a path planning method. For a clear description of the method provided in this embodiment, please refer to Figures 1-2 This includes steps S110 to S140.

[0035] The method provided in this application embodiment can be executed by a computer device provided in this application embodiment. The device can be implemented in software and / or hardware. In this embodiment, the execution subject of the method is a server as an example. The method provided in this embodiment includes the following steps.

[0036] Step S110: Obtain the location and task information of the warehouse robot.

[0037] In one embodiment, the warehouse robot is equipped with an RFID sensor, and the shelves are equipped with RFID tags that can be identified by the RFID sensor. The shelves are the working objects of the warehouse robot. Step S110: Obtain the location information of the warehouse robot, including: obtaining RFID tag information collected by the warehouse robot, the RFID tag information is obtained by reading the RFID tags through the RFID sensor; obtaining warehouse map data corresponding to the working area where the warehouse robot is located, the warehouse map data includes the location of the RFID tags; determining the location information of the warehouse robot based on the warehouse map data and the RFID tag information.

[0038] In one embodiment, the location information of a warehouse robot (hereinafter referred to as AGV) can be obtained by deploying an RFID three-dimensional positioning network within the AGV's working area. The AGV is equipped with RFID sensors capable of identifying surrounding RFID tags and acquiring RFID tag information. Furthermore, dual-polarized RFID antennas can be deployed to optimize the read rate (>99.9%) in densely labeled environments. RFID tags that can be identified by RFID sensors are installed on the shelves within the AGV's working area; these shelves are the objects the warehouse robot works on. For example, each pallet within the shelf is equipped with an anti-metal RFID tag (UHF 920MHz), supporting phase difference of arrival (PDOA) ranging to achieve a positioning accuracy of ±5cm. In addition, an active RFID transmitter can be installed at the bottom of the AGV, and an RFID reader / writer can be installed on the ceiling of the AGV's working area. By networking the active RFID transmitter and the RFID reader / writer, Z-axis height compensation can be achieved, thereby acquiring the AGV's Z-axis data.

[0039] In one embodiment, the AGV's RFID sensor acquires RFID tag information through interaction with RFID tags on the shelves. Further, it acquires warehouse map data corresponding to the work area where the AGV is located, including the positions of the RFID tags. Because the RFID tags are pre-installed on the shelves, the RFID tag information can determine which shelf the AGV interacted with. Since shelves are generally fixed in position, matching the warehouse map data with the RFID tag information allows for precise determination of the AGV's position, thus obtaining location information. This location information can be the AGV's three-dimensional coordinates, including position parameters in the X, Y, and Z axes. The X and Y axis position parameters are determined by the shelf's planar coordinates, which are recorded in the warehouse map data; while the Z axis position parameter is obtained through signal interaction between an active RFID transmitter installed at the bottom of the AGV and an RFID reader on the ceiling, thereby achieving precise vertical positioning.

[0040] Furthermore, AGVs not only include RFID sensors but can also integrate Inertial Measurement Units (IMUs) and Light Laser Detection and Ranging (LiDAR). The IMU measures the AGV's acceleration and angular velocity, providing high-precision motion state estimation over short periods, thus compensating for position and attitude deviations during movement. The LiDAR is used to perceive the surrounding environment, enabling SLAM (Simultaneous Localization and Mapping) mapping and dynamic obstacle avoidance, while also assisting in localization and improving navigation accuracy. Finally, through data fusion algorithms, such as Extended Kalman Filter (EKF), the data from RFID, LiDAR, and IMU are fused to output high-precision position information.

[0041] In one embodiment, task information is directly obtainable data that records the type of operation the AGV is currently performing, including past and present operations, target shelf number, cargo information, and priority. This task information guides the AGV's path planning and action execution. For example, when task information instructs the AGV to retrieve or place goods on a specific shelf, the system dynamically generates an optimal path and adjusts it in real time, combining the AGV's current location information, the target shelf's location information, and the task priority, ensuring efficient task completion. Therefore, through task and location information, the future trajectory of the AGV can be predicted or planned, and its path can be adjusted in real time to cope with environmental changes or task adjustments. This application uses the AGV's location and task information as a basis to achieve path planning. In practice, other information that may interfere with the AGV's path planning can also be obtained and input into subsequent prediction models to intervene in path prediction. This may include, but is not limited to, environmental dynamic obstacle information obtained from the AGV, network communication latency, load status, battery level, and fault codes (such as motor overheating 0xFE).

[0042] Step S120: Based on the location information and task information, output the predicted path set using the prediction model.

[0043] In one embodiment, the prediction model can be configured in a digital twin environment, which serves as a virtual mapping space for AGV operation. A simulation scenario highly consistent with the real warehouse environment is constructed using a grid map, dynamically updated obstacles (such as temporary stacked goods), a high-frequency picking area (5cm accuracy), and an aisle area (20cm accuracy). In this digital twin environment, inputs include, but are not limited to, AGV operation information such as location and task information. The prediction model simulates AGV path conflicts, equipment failures, and incremental updates, only locally re-rendering areas where RFID detects changes, reducing computational load. Optimization strategies are predicted for scenarios such as order insertion. For the simulation scenario, incremental updates can be maintained, meaning only locally re-rendering areas where RFID detects changes, further reducing computational load. During the prediction process, Kalman filtering can be used to optimize RFID data. Specifically, this includes noise suppression: using adaptive Q-matrix adjustment to dynamically adjust filtering parameters based on RFID signal strength; and multi-tag anti-collision: using the time-slotted ALOHA protocol to optimize the RFID reading order and reduce the collision rate to <3%. Specific prediction methods will be described in detail later.

[0044] In one embodiment, the location information includes historical locations, and the task information includes historical tasks; based on the location information and task information, step S120: outputting a predicted path set using a prediction model, including: determining a historical location set and a historical task set based on multiple historical locations and multiple historical tasks of the warehouse robot obtained according to the sampling period, wherein the historical location set includes the historical locations corresponding to each sampling period; determining a historical path set of the warehouse robot within a preset time period based on the historical location set and the historical task set, wherein the preset time period includes multiple sampling periods, and the historical path set consists of at least one historical path, each historical path corresponding to one warehouse robot and one historical task; and outputting a predicted path set using a prediction model based on the historical path set.

[0045] In one implementation, the prediction model can employ an LSTM network architecture and incorporate an attention mechanism, which effectively enhances the model's ability to extract key path features and improves prediction accuracy. Location information includes historical locations, and task information includes historical tasks. Based on multiple historical locations and tasks of the warehouse robot continuously acquired according to a sampling period, a historical location set and a historical task set are determined respectively. The sampling period is set according to actual needs, such as summarizing data every 5 minutes or every 10 minutes. The length of the sampling period affects the size of the historical location set and the historical task set, i.e., the size of the input data for the prediction model, thus affecting the accuracy and real-time performance of the prediction results. Therefore, a balance between accuracy and real-time performance can be achieved by setting the required sampling period. Multiple historical locations and historical tasks are acquired within the preset sampling period. Historical tasks include information such as task type, task priority, and task execution time. Specifically, this means controlling the AGV to travel to a specific location at a specific time, perform a specific operation, and then travel to a specific location at another time. Therefore, historical tasks guide the movement of AGVs. Based on these historical tasks, the start and end times of the tasks are determined. Then, all historical positions of the AGVs within that time period are identified from the historical position set. Each historical position is a sequence of position points, and each sequence corresponds to a specific position of an AGV at a specific time. Arranging all the historical position point sequences of all AGVs in chronological order yields a trajectory, which is the trajectory of an AGV, and can be called a historical path. The historical path of individual i can be defined as follows:

[0046] (1)

[0047] In the above formula, and The x and y coordinates of individual i at time t represent the x and y coordinates, respectively, where t represents the time variable determined by the current time and the sampling period. All historical paths of all AGVs are aggregated to form a historical path set, with each historical path corresponding to a warehouse robot and a historical task. This historical path set is then input into a trained LSTM network model, i.e., the prediction model. The LSTM network model extracts and learns features from the historical path set, and incorporates an attention mechanism to weight the key path features, thereby outputting a predicted path set for the AGVs over a future period. .

[0048] However, it's understandable that the path is not only controlled by the corresponding historical tasks and represented by historical positions, but it may also be related to other parameters. For example, during the execution of a specific trajectory, special situations may arise, including but not limited to the insertion of high-priority tasks, path conflicts with other AGVs, the appearance of dynamic obstacles or sudden malfunctions on the original path. These will all affect the trajectory. Therefore, introducing an attention mechanism into the prediction model can effectively capture the complex relationship between historical tasks and the trajectory, thereby more accurately identifying which task features have a key impact on path prediction.

[0049] In one embodiment, the prediction path set is output using a prediction model based on a historical path set, including: using the historical path set as input to the prediction model; the prediction model determines whether there are preset situations during the execution of historical tasks by the warehouse robot based on the historical paths and historical task sets; if there are, an uncertain path is generated based on the historical paths and preset situations; if there are no preset situations, a definite path is generated based on the historical paths; and all uncertain paths and all definite paths are summarized to obtain the prediction path set.

[0050] In one implementation, it is understood that the predicted path set output by the prediction model is subject to future uncertainty, and the predicted paths may not be accurate. Furthermore, accuracy can be determined from historical paths. For example, in some complex scenarios, path uncertainty is higher, and the corresponding prediction results may be biased. Conversely, if the historical path set indicates that all paths of the AGV over a period of time are relatively stable and regular, the accuracy of the predicted path set will be correspondingly improved. Therefore, the output predicted paths can be divided into two types: deterministic paths and uncertain paths. Deterministic paths are those that exhibit high consistency and predictability in historical paths, and their future direction is relatively easy to accurately predict. Uncertain paths are those that are greatly affected by sudden factors or complex environments, and their prediction results exhibit greater volatility and uncertainty. Both can be determined based on historical paths and historical task sets to ascertain whether there are pre-set conditions during the execution of historical tasks by the warehouse robot. Pre-set conditions refer to specific events that may interfere with path stability, which will be described in detail later.

[0051] In cases where the AGV does not exist—that is, when the AGV is within its historical path and has not encountered any dynamic obstacles or additional tasks during the execution of historical tasks, consistently following the pre-planned path—its path can be considered highly deterministic. Therefore, a deterministic path can be directly generated based on its historical path. Such AGVs are marked as AGVs. α-j The path is marked as .

[0052] In situations where AGVs encounter pre-defined scenarios during historical task execution, such as path conflicts, sudden obstacles, or task changes, significant uncertainty arises in path execution. In such cases, the predictive model needs to analyze historical paths and specific event types to extrapolate potential path changes, thereby generating uncertain paths and corresponding confidence levels. AGVs of this type are then labeled as AGVs. β-k Uncertain paths are marked as The corresponding confidence level is . represent That is, the corresponding AGV β-k One possible scenario for all trajectory points of this indeterminate trajectory over a period of time. It is the current time. The upper limit of the preset prediction time is related to the prediction model and can be obtained directly. It should be clarified that this applies to uncertain paths. It is for AGVs β-k The path is predicted using a predictive model. Typically, the predictive model is designed for the same AGV. β-k At a specific time point, multiple predicted paths may be output, each with a corresponding confidence level. To ensure accurate path planning, uncertain paths are subsequently marked as... Sex will select confidence level The predicted path with the highest numerical value is considered the uncertain path. Participate in subsequent calculations.

[0053] In one embodiment, the method further includes: determining, based on the historical task set and the historical path set, that there are differences between multiple historical paths generated when the warehouse robot executes the same historical task multiple times, and the differences exceed a preset threshold, then determining that a preset situation exists; and / or, based on the historical task set, determining that there are preset uncertainties when the warehouse robot executes any historical task, and the number of uncertainties exceeds a preset threshold, then determining that a preset situation exists; and / or, based on the historical path set, determining that there is uncertainty in the path selection strategy of the warehouse robot when executing historical paths, and the uncertainty exceeds a preset threshold, then determining that a preset situation exists.

[0054] In one embodiment, for a preset situation, that is, when there is uncertainty in the execution of the AGV along a historical path, it can be determined based on at least one of the historical task set and the historical path set.

[0055] For the predetermined conditions for determining the historical task set and historical path set, it can be determined that when a warehouse robot performs the same historical task multiple times, there are differences between the multiple historical paths generated, and these differences exceed a predetermined threshold. For example, if the historical task set determines that an AGV is assigned to perform the same task multiple times, the historical paths taken by the AGV when performing this series of tasks are obtained from the historical path set, and the average path deviation value between all historical paths is calculated, if the deviation value exceeds the system's predetermined threshold, it is determined that the AGV has high path uncertainty when performing this task, and the predetermined condition is identified.

[0056] Alternatively, based on the historical task set, it can be determined that during the execution of any historical task, the warehousing robot experiences pre-defined uncertainties, and the number of such uncertainties exceeds a pre-defined threshold. These pre-defined uncertainties are task-related and include, but are not limited to, situations where additional task information covers the currently executing task, the current task is canceled, or the current task is reassigned. If the number of such occurrences exceeds the pre-defined threshold, it can also be concluded that the task executed by the AGV has a high degree of uncertainty, and thus, a pre-defined situation exists.

[0057] Alternatively, based on the historical path set, it can be determined that the path selection strategy of the warehouse robot when executing historical paths has uncertainty. For example, when the AGV exhibits behaviors such as, but not limited to, frequent route adjustments, obstacle avoidance, hardware failures, software failures, and frequent resource competition with other AGVs in multiple historical paths, and the frequency of these behaviors exceeds the threshold set by the system, it is considered that the AGV has high uncertainty in its path selection strategy, thus determining that a preset situation exists.

[0058] It is understandable that the aforementioned presuppositions are merely simple examples to illustrate presuppositions, and further refinement and exemplification do not represent an exhaustive list of presuppositions. Whether an assumption actually applies can be determined based on at least one of the historical path set and historical task set. Furthermore, as mentioned earlier, for AGVs with presuppositions, a prediction model will be used to predict uncertain paths and corresponding confidence levels to facilitate the subsequent construction of the objective function.

[0059] Step S130: Determine the objective function based on the predicted path set.

[0060] In one embodiment, the predicted path set consists of at least one predicted path, which indicates the path trajectory that the corresponding warehouse robot may execute in the future. Step S130: Determine the objective function based on the predicted path set, including: determining the total path length based on each predicted path; obtaining the predicted task information corresponding to each predicted path, and determining the priority weight based on the predicted task information; determining the number of turns and acceleration / deceleration times based on each predicted path, and determining the energy consumption cost based on the number of turns and acceleration / deceleration times; calculating the individual collision value based on each predicted path, and summing the individual collision values ​​to obtain the collision penalty coefficient; and weighted summing the total path length, priority weight, energy consumption cost, and collision penalty coefficient to obtain the objective function, which can be used to calculate and determine the planned path.

[0061] In one implementation, the predicted path set consists of at least one predicted path, which indicates the path trajectory that the corresponding warehouse robot may execute in the future. An objective function is designed based on the path trajectory to calculate the total cost of that trajectory. Path planning is optimized by minimizing the total cost of each path in subsequent processes and avoiding conflicts and congestion between paths. The parameters used in calculating the total cost of the objective function include path length, task priority weight, energy cost, and collision penalty coefficient. The calculation method for the objective function can be found in the following formula.

[0062] (2)

[0063] In the above formula, For the total cost, For path length, As task priority weight, For energy consumption costs, This is the collision penalty coefficient; ~ These are the preset weighting coefficients.

[0064] The path length refers to the total distance the AGV travels along the predicted path, which is determined by the corresponding predicted path. The calculation method is shown in the following formula.

[0065] (3)

[0066] In the above formula, For the predicted future time, To determine the location coordinates of the AGV at time t based on the predicted path. The objective function is based on path length. The optimization objective is to minimize the total driving distance.

[0067] Obtain the prediction task information corresponding to the prediction path, and determine the priority weights based on the prediction task information. The calculation process is shown in the following formula.

[0068] (4)

[0069] In the above formula, The moment the task is completed. Set the priority of the current task (e.g., urgent orders = 2, regular orders = 1). This is an indicator function that takes the value 1 when the task is completed, and 0 otherwise.

[0070] The number of turns is determined for each predicted path. and number of accelerations and decelerations The number of turns It can be set to count when the AGV's heading angle changes beyond a threshold (e.g., 15°) in adjacent time intervals, based on the predicted path. This applies to acceleration and deceleration counts. The counting method can be based on the predicted path, determining that a count occurs when the AGV's speed change exceeds a set threshold (e.g., 0.5 m / s) between adjacent time points. This is achieved by counting the number of turns. With the number of accelerations and decelerations Calculate energy consumption cost The calculation method can be found in the following formula.

[0071] (5)

[0072] In the above formula, and The preset energy consumption coefficient is set to a specific value based on the energy consumption situation in the actual scenario, for example... =0.3, =0.2.

[0073] For collision penalty coefficient Based on the predicted path for each AGV, the probability of collision between that AGV and other AGVs needs to be calculated to obtain individual collision values, which are then finally aggregated into an overall collision penalty coefficient. .

[0074] In one embodiment, the predicted path includes a determined path and an uncertain path; calculating individual collision values ​​for each predicted path and summing the individual collision values ​​to obtain a collision penalty coefficient includes: obtaining scene information of the warehouse robot, determining an optimization method based on the scene information, the optimization method including smooth optimization and non-smooth optimization; for each warehouse robot, calculating the first individual collision value between the predicted path of the warehouse robot and all determined paths, and the second individual collision value between the predicted path of the warehouse robot and all uncertain paths, respectively, using the optimization method; and weighted summing of all first individual collision values ​​and all second individual collision values ​​to obtain the collision penalty coefficient.

[0075] In one embodiment, the predicted path, as described above, includes AGVs. α-j Corresponding definite path and AGV β-k Corresponding uncertain path and uncertain paths Corresponding confidence level First, obtain the scene information of the warehouse robot. Based on the scene information, determine the optimization method, which includes smooth optimization and non-smooth optimization. Smooth optimization is suitable for more complex scenes, such as path determination. and uncertain path More complex scenarios are possible with a smaller planar map area; while non-smooth optimization is suitable for simpler scenarios, such as determining a path. and uncertain path In cases where the planned map area is relatively large, the path is determined based on the currently selected optimization method. and uncertain path Calculate the individual collision value. The individual collision value is divided into the first body collision value. Second individual collision value First volume collision value Used to measure the current AGV and AGV α-j Corresponding definite path Collision probability; second body collision value Used to measure the current AGV and AGV β-k Corresponding uncertain path Collision probability scenarios. These will be explained separately later using two optimization methods.

[0076] When the optimization method is determined to be smooth optimization based on the scene information, for the first volume collision value The calculation method is shown in the following formula.

[0077] (6)

[0078] In the above formula, Let t be the position of the predicted path corresponding to individual i's AGV at time t. To avoid division by zero for a preset minimum value (such as 0.001).

[0079] Second individual collision value The calculation method is shown in the following formula.

[0080] (7)

[0081] When the optimization method is determined to be non-smooth optimization based on scene information, for the first volume collision value The calculation method is shown in the following formula.

[0082] (8)

[0083] In the above formula, The predicted path for individual i's AGV at time t is related to the AGV... α-j Corresponding definite path The relative distance is calculated using the formula below.

[0084] (9)

[0085] In equation (8), This is a preset penalty indicator function that outputs a fixed value based on the input distance. The calculation method is shown in the following formula.

[0086] (10)

[0087] In the above formula, This is a preset safe distance threshold (e.g., 0.5 meters). Therefore, the penalty indication function... Used when the distance between two AGVs is less than the safe distance threshold. If a penalty is triggered, the corresponding individual collision value will be calculated and output; otherwise, the individual collision value will not be calculated.

[0088] In the non-smooth optimization case, for the second volume collision value The calculation method is shown in the following formula.

[0089] = (11)

[0090] In the above formula, The predicted path for individual i's AGV at time t is related to the AGV's path at time t. β-k Corresponding uncertain path The relative distance is calculated using the formula below.

[0091] (12)

[0092] For equation (11) The same is a preset penalty indicator function. The specific calculation method can be referred to formula (10), which will not be repeated here.

[0093] Furthermore, regarding the first volume collision value You can also set a numerical upper limit to prevent numerical explosion. The specific restriction methods are as follows.

[0094] (13)

[0095] In the above formula, This is the preset upper limit for the first body collision value, for example, it can be set to 1000. That is to say, at the first body collision value upper limit... Within the range, Take its original calculated value; if Exceed Then subsequent calculations Pick The specified value.

[0096] After completing the first volume collision value Second individual collision value After the calculation, all first body collision values ​​are then... and all second-body collision values Weighted summation yields the collision penalty coefficient. The calculation method is shown in the following formula.

[0097] (14)

[0098] In the above formula, To determine the path The corresponding preset fixed trajectory weight, for example, can be 0.8. Second individual collision value. For an AGV with individual i and one of the uncertain paths Calculations are used to indicate the probability of a collision, and therefore For this uncertain path Corresponding confidence level That is, it follows the formula below.

[0099] (15)

[0100] In the above formula, For confidence level The maximum value in the value, that is, the value used to calculate the collision penalty coefficient. Uncertain path , which is the maximum confidence level of the numerical output in the prediction model. The path corresponding to the maximum value. Therefore, for each individual AGV, its own predicted path can be predicted, and the total cost can be calculated using the objective function. Finally, all individuals are aggregated for multi-objective optimization, generating new individuals. This process is repeated until a termination condition (such as maximum number of iterations or convergence threshold) is met, thus selecting the optimal individual as the final planned path. The iterative solution process will be described in detail later and will not be elaborated here.

[0101] Step S140: Calculate the planned path based on the objective function and output the planned path to the warehouse robot.

[0102] In one embodiment, the planned path is calculated based on the objective function, including: acquiring scene information of the warehouse robot; dividing the scene information into at least one region using a multi-population genetic algorithm; setting at least one population based on the warehouse robot in each region; each population including at least one chromosome represented by an iterative path; the iterative path being a possible solution of the objective function; calculating the fitness value of each iterative path based on the chromosome within each population during each iteration; pairing the N chromosomes with the highest fitness values ​​to update the iterative paths within the population, where N is an integer greater than 1; after each preset number of iterations, pairing the M chromosomes with the highest fitness values ​​within each population to update the iterative paths between populations, where M is an integer greater than 1; determining whether the chromosome with the highest fitness value in the current round satisfies the iteration termination condition after each iteration; if not, proceeding to the next round of iteration; if satisfied, marking the iterative path obtained by parsing the chromosome with the highest fitness value as the planned path.

[0103] In one embodiment, for the iterative solution of the objective function, this application selects a path optimization mechanism based on a Multi-Population Genetic Algorithm (MPGA). First, the scene information of the warehouse robot is obtained; this scene information can be a grid map of the AGV's location. Based on the scene information and MPGA, the physical layout of the site is divided into K sub-regions, where K is a preset natural number. Within each sub-region, at least one population is established based on the number of AGVs. Each population includes at least one chromosome represented by an iterative path. The chromosomes within a population are referred to externally as individuals. The iterative path is a possible solution to the objective function, and each sub-population is responsible for optimizing the path scheme for its corresponding region. A chromosome is represented by a sequence of path nodes corresponding to the predicted path (e.g., [A1, B2, C3, ...], where each node corresponds to a position, and connecting all nodes in sequence determines a predicted path).

[0104] Population segmentation can be limited to the spatial partitioning method described above. It can also involve dividing the population into multiple groups based on the task characteristics of the predicted path, such as establishing differentiated evolutionary strategies based on order urgency (expedited / regular / batch). Alternatively, it can be based on the characteristics of the AGV, for example, setting independent gene coding rules for different types of AGVs (e.g., forklifts, stealth AGVs). It is understood that the above population segmentation methods do not conflict with each other; therefore, the actual population segmentation method can be a combination of these methods.

[0105] After population division, multiple populations are obtained, each containing chromosomes corresponding to several AGVs. Iteration begins within each population, with independent evolution occurring primarily within that population in each iteration. Having determined the objective function, a fitness function can be defined. This fitness function calculates the fitness value of individuals after each iteration, selecting the individual with the highest fitness value for subsequent selection operations. This fitness value comprehensively reflects the path's costs in terms of length, priority satisfaction, energy consumption, and safety. The fitness function can be referenced in the following formula.

[0106] (16)

[0107] In the above formula, For time; For energy consumption, The equipment loss rate can be calculated and determined based on the corresponding prediction path. , and The fitness coefficients are preset, and each of the three values ​​is [0,1], and the sum of the three is 1. This setting achieves multi-objective dynamic equilibrium.

[0108] The evolutionary process begins with encoding genes, which correspond to chromosomes (as mentioned earlier) and represent predicted paths—sequences of multiple nodes. Encoding can be achieved by representing the node sequences within the predicted path using RFID coordinate hash values. Subsequent independent evolution involves selection, crossover, mutation, preservation of elite individuals, and the formation of a new generation of offspring. The selection process can involve calculating the fitness of each individual and using methods such as roulette or tournament selection to choose the top N individuals from the current population as parents, where N is an integer greater than 1, and individuals with higher fitness have a higher probability of being selected. Crossover then occurs, specifically by pairing the selected parent individuals with a pre-defined crossover probability. (For example, it can be set to [0.6, 0.9] to maintain population diversity.) Exchanging partial genes specifically involves altering certain path segments between two parent individuals to generate new offspring. The crossover operation in path planning must ensure the validity of the generated path, verified by checking factors such as node non-duplication and connection feasibility. Mutation can then be performed, i.e., at a preset mutation probability. (The set values ​​are usually small, such as [0.01, 0.15], to promote innovative paths during evolution.) Randomly altering some genes of offspring individuals, specifically targeting new offspring individuals, involves actions including but not limited to swapping two node positions, inserting / deleting nodes, fine-tuning control point coordinates, and changing movement direction, thereby introducing new diversity through mutation. Elite preservation means that after each generation iteration, the most fit individuals in the current population are directly copied to the next generation to prevent the loss of excellent solutions. Ultimately, after each round of iteration, new offspring and potential elite individuals will be obtained.

[0109] After each iteration, a preset number of iterations can be selected within the range of [3, 10]. For example, after 7 iterations, migration can be performed between populations to balance exploration and development. Specifically, this can be divided into three steps: selecting emigrant individuals, selecting immigrant populations, and replacing immigrant individuals. Selecting emigrant individuals means selecting the M individuals with the highest fitness in each subpopulation, where M is an integer greater than 1. Next, a target subpopulation is selected randomly or according to a specific topology (such as a ring) as the population to which the selected individuals need to migrate. Then, the emigrant individuals replace the individuals with the lowest fitness in the target subpopulation, or they are randomly replaced. In addition, a global path fragment library can be established through a digital twin system to achieve knowledge sharing, thereby spreading the excellent genes (specifically, path fragments of predicted paths) explored by different subpopulations to other populations, accelerating global convergence, and avoiding groupthink and premature convergence.

[0110] Furthermore, MPGA can be continuously updated by inputting parameters such as the environment complexity index, device state vector, and historical fitness sequence, and updating the network parameters based on the calculation of the loss function, where the loss function can be referred to as the following formula.

[0111] (17)

[0112] In the above formula, and These are the preset loss weighting coefficients; The optimal fitness value for each round is determined according to equation (16); The energy consumption penalty coefficient is determined by the predicted path corresponding to the optimal fitness value in each round. By setting the loss function, the network parameters can be updated periodically (e.g., after every 100 planned paths are completed), thus ensuring network learning. The logic for parameter adjustment is that when conflicts occur between planned paths, the mutation probability can be increased. The probability of increasing the fitness coefficient. The weighting. And / or, when the battery level is below a threshold, increase the fitness coefficient. The weighting. And / or, when overheating of the AGV equipment is detected, the fitness coefficient can be increased. The weight.

[0113] The process of fitness calculation, independent evolution within the population, and periodic migration between populations is repeated iteratively. Each round, when all subpopulations complete one evolutionary cycle, is called an iteration or generation. After each iteration, it is determined whether the chromosome with the highest fitness value in the current round meets the iteration termination condition. If not, the next round of iteration begins; if so, the iterative path obtained by parsing the chromosome with the highest fitness value is marked as the planned path. The iteration termination condition can specifically include at least one of the following: reaching the maximum number of iterations, the rate of change of the global optimal solution improvement rate being less than a preset threshold over multiple consecutive generations, or finding a globally optimal solution that meets the requirements. In all generations of all subpopulations, the individual with the highest fitness is selected, and the chromosome of that individual is decoded to obtain the final optimized planned path.

[0114] Furthermore, before outputting the planned path, simulation verification and fine-tuning can be performed in a digital twin environment. Simulation verification can utilize digital twin technology to build a virtual model, simulating a real environment to verify the feasibility and potential problems of the planned path in actual operation. Simultaneously, by combining real-time status data of the AGV, such as battery level and load weight, dynamic fine-tuning can be performed to optimize path planning and efficiency, ensuring the stability and responsiveness of system operation.

[0115] As can be seen from the above, the method of this application actually achieves path planning through the cooperation of three data models: the optimizer, the prediction model, and the simulation model. All three data models are configured within the execution entity of this application, i.e., a computer device represented by a server. For the timing diagram of the path planning method implemented using the cooperation of these three data models, please refer to... Figure 2 As shown, it includes steps S210 to S240.

[0116] Step S210: The optimizer submits the acquired location information and task information to the prediction model and requests the prediction model to process it; the prediction model returns the predicted path set to the optimizer.

[0117] In one implementation, location and task information are provided by the AGV. The AGV is equipped with RFID sensors, and the shelves are fitted with RFID tags that can be identified by the RFID sensors. Through their interaction, the location coordinates of the AGV can be directly determined, i.e., its location information. Task information records the type of operation to be performed currently and in the past, or ongoing, the target shelf number, cargo information, and priority. This task information guides the AGV's path planning and action execution.

[0118] The prediction model can employ an LSTM network architecture and incorporate an attention mechanism, effectively enhancing the model's ability to extract key path features. This allows for the effective capture of the complex relationships between historical tasks and trajectories, thereby more accurately identifying which task features have a critical impact on path prediction and improving prediction accuracy. Furthermore, the output predicted path set consists of at least one predicted path. A predicted path is a path that the prediction model infers by learning location and task information, suggesting the AGV might execute within a certain future timeframe. Understandably, in some complex scenarios, path uncertainty is higher, potentially leading to biased prediction results; conversely, if the historical path set indicates that all AGV paths over a past period are relatively stable and exhibit strong regularity, the accuracy of the predicted path set will improve accordingly. Therefore, the output predicted paths can be categorized into two types: AGV... α-j Corresponding definite path and AGV β-k Corresponding uncertain path Determine the path and uncertain path This is determined by judging whether there are preset situations during the execution of historical tasks by the warehouse robot. Preset situations refer to specific events that may interfere with the stability of the path. The specific situations have been described in detail above and will not be elaborated here.

[0119] Step S220: The optimizer submits a set of predicted paths to the simulator and requests the simulator to calculate individual collision values; the simulator returns the calculated individual collision values ​​to the optimizer.

[0120] In one implementation, the simulator is configured with a digital twin environment, which serves as a virtual mapping space for AGV operation. This environment is constructed using a grid map of the warehouse, dynamically updated obstacles (such as temporarily stacked goods), a high-frequency picking area (5cm accuracy), and an aisle area (20cm accuracy) to create a simulation scenario highly consistent with the real warehouse environment. In this digital twin environment, inputs include, but are not limited to, AGV operation information such as location and task information. A predictive model is used to simulate AGV path conflicts, equipment failures, and incremental updates, only locally re-rendering areas where RFID has detected changes, reducing computational load. Optimization strategies are predicted for scenarios such as order insertion. For the simulation scenario, incremental updates can be maintained, meaning only locally re-rendering areas where RFID has detected changes, further reducing computational load.

[0121] In a digital twin environment, the simulator calculates the probability of collision between the predicted path of each AGV and the predicted paths of other AGVs, based on the predicted path. This value is called the individual collision value. The individual collision value is divided into the first volume collision value. Second individual collision value First volume collision value Used to measure the current AGV and AGV α-j Corresponding definite path Collision probability; second body collision value Used to measure the current AGV and AGV β-k Corresponding uncertain path Collision probability scenarios. Furthermore, based on the scene information of the AGV's location, the optimization method is determined, including smooth optimization and non-smooth optimization. Smooth optimization is suitable for more complex scenarios, such as path determination. and uncertain path More complex scenarios are possible with a smaller planar map area; while non-smooth optimization is suitable for simpler scenarios, such as determining a path. and uncertain path It is less common in situations where the planned map area is large.

[0122] For the first volume collision value Second individual collision value The calculation methods for smooth optimization and non-smooth optimization have been described in detail above, and will not be repeated here.

[0123] Step S230: The optimizer iteratively solves the planned path based on the individual collision values ​​and the predicted path set.

[0124] In one implementation, the optimizer obtains the first volume collision value calculated by the simulator. Second individual collision value Then, the collision penalty coefficient can be calculated and the objective function constructed. The objective function is used to calculate the total cost of the predicted path, and the optimization objective is to minimize the total cost. For the iterative solution of the objective function, this application selects the path optimization mechanism of Multi-Population Genetic Algorithm (MPGA). The solution method is as follows: first, the predicted path is encoded as chromosomes, and each chromosome is referred to as an individual. Then, based on a preset population partitioning method, the individuals are divided into multiple populations, and each population includes at least one individual. Subsequent iterative calculations are performed, including independent evolution within the population and migration between populations. For the specific iterative method, please refer to the description in step S140, which will not be repeated here.

[0125] The iterative process of fitness calculation, independent evolution within the population, and periodic migration between populations is repeated. Each round in which all subpopulations complete one evolution is called an iteration or generation. After each iteration, it is determined whether the chromosome with the largest fitness value in the current round meets the iteration termination condition. If it does not meet the condition, the next round of iteration is performed. If it does meet the condition, the iterative path obtained by parsing the chromosome with the largest fitness value is marked as the planned path.

[0126] Step S240: The optimizer sends the planned path to the simulator for verification, obtains the verified planned path, and sends it to the corresponding warehouse robot.

[0127] In one implementation, simulator verification involves configuring the planned path into a virtual AGV within the digital twin environment simulated by the simulator. The AGV will dynamically execute according to the planned path, including real-time obstacle avoidance: combining improved AI algorithms with the Dynamic Window Approach (DWA) to achieve dynamic detours for the AGV; and emergency order insertion response: when a priority order tag is displayed, task rescheduling is triggered to ensure a response within 500ms.

[0128] For AI algorithms in real-time dynamic obstacle avoidance systems, an adaptive decision-making system based on deep reinforcement learning continuously learns the patterns of environmental changes to form the optimal obstacle avoidance strategy. Obstacle avoidance is achieved through two spatial parameters as inputs: a state space and an action space. The state space can include parameters such as AGV pose, obstacle distribution, and task urgency; the action space is related to the AGV's working state and can include speed adjustments, turning commands, and replanning requests. A dual-stream network can be configured in the AGV to achieve faster data processing. This network can adopt a LiDAR point cloud CNN + RFID temporal LSTM configuration, or other network modes; the specific configuration can be arbitrarily set according to actual needs without restriction.

[0129] For the dynamic window method execution layer, the real-time trajectory planning method based on kinematic models, like the "emergency braking system" of an autopilot, performs millimeter-level precise control based on AI decision-making. It adheres to the following three constraints, which can be expressed as follows:

[0130] (18)

[0131] (19)

[0132] (20)

[0133] Equation (18) is the velocity window. The linear velocity of the AGV. Set a preset speed limit for the AGV. The remaining battery power of the AGV; The angular velocity of the AGV. Set a preset upper limit for the angular velocity of the AGV.

[0134] Equation (19) is the evaluation function. , , These are the preset evaluation weight coefficients; This represents the distance between the AGV and the nearest obstacle on its path. The angle between the orientation of the AGV at the end of the trajectory and the direction of the target point; For reference speed.

[0135] Equation (20) represents the safety distance constraint. The preset reference distance, As a preset safety factor, This refers to the load capacity of the AGV.

[0136] The real-time dynamic obstacle avoidance system and the dynamic window method execution layer work together to achieve real-time dynamic obstacle avoidance for the virtual AGV. The dynamic window method execution layer handles sudden obstacles (response time <100ms), while the real-time dynamic obstacle avoidance system is used to monitor long-term path quality.

[0137] If, during the execution of the planned path, both verifications fail to resolve the issues encountered by the virtual AGV, it indicates an unforeseen problem has arisen. In this case, the planned path verification is deemed unsuccessful, and the path can be sent back to the optimizer for regeneration. Conversely, if the virtual AGV successfully executes the planned path, the verification is considered successful, and the path can be deployed to the real AGV for execution.

[0138] Therefore, the method provided in this application includes the following steps: acquiring the location and task information of the warehouse robot; outputting a predicted path set using a prediction model based on the location and task information; determining an objective function based on the predicted path set; calculating the planned path based on the objective function, and outputting the planned path to the warehouse robot. Thus, this application can collect and acquire the location and task information of the warehouse robot in real time. The location information is determined based on the interaction between the robot and the shelves in its work area. Determining the location information through interaction not only ensures real-time performance but also improves the accuracy of positioning. Furthermore, the prediction model is used to predict future paths, enabling dynamic path adjustment and proactive optimization of operations. Finally, the objective function is constructed and iteratively solved to achieve path planning. This avoids local optima and quickly and accurately finds the optimal picking path. Simultaneously, a scientific scheduling strategy ensures collaboration among multiple robots, meeting the needs of efficient and accurate picking in the manufacturing industry, reducing logistics costs, and accelerating delivery speed.

[0139] Figure 3 An internal structural diagram of a computer device in one embodiment is shown. This computer device can specifically be a terminal or a server. Figure 3 As shown, the device includes: a processor 310 and a memory 311 storing a computer program; wherein, Figure 3 The processor 310 shown in the diagram does not indicate that there is only one processor 310, but only indicates the positional relationship of the processor 310 relative to other devices. In practical applications, there can be one or more processors 310; similarly, Figure 3 The memory 311 illustrated herein has the same meaning, that is, it is only used to indicate the positional relationship of memory 311 relative to other devices. In practical applications, there can be one or more memories 311. When the processor 310 runs the computer program, the method applied to the above-mentioned device is implemented.

[0140] The device may also include at least one network interface 312. The various components of the device are coupled together via a bus system 313. It is understood that the bus system 313 is used to implement communication between these components. In addition to a data bus, the bus system 313 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 3 The general designated all buses as Bus System 313.

[0141] The memory 311 can be volatile memory or non-volatile memory, or both. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), ferromagnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); magnetic surface memory can be disk storage or magnetic tape storage. Volatile memory can be random access memory (RAM), used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memory 311 described in the embodiments of the present invention is intended to include, but is not limited to, these and any other suitable types of memory.

[0142] The memory 311 in this embodiment of the invention is used to store various types of data to support the operation of the device. Examples of this data include: any computer programs used to operate on the device, such as operating systems and applications; contact data; phonebook data; messages; pictures; videos, etc. The operating system includes various system programs, such as the framework layer, core library layer, driver layer, etc., used to implement various basic services and handle hardware-based tasks. Applications can include various applications, such as media players, browsers, etc., used to implement various application services. Here, the program implementing the method of this embodiment of the invention can be included in the application.

[0143] Based on the same inventive concept as the foregoing embodiments, this embodiment also provides a computer-readable storage medium storing a computer program. The computer-readable storage medium can be a magnetic random access memory (FRAM), a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory, a magnetic surface memory, an optical disc, or a compact disc read-only memory (CD-ROM), etc.; it can also be various devices including one or any combination of the above-mentioned memories, such as mobile phones, computers, tablet devices, personal digital assistants, etc. When the computer program stored in the computer-readable storage medium is run by a processor, it implements the above method. For the specific steps implemented when the computer program is executed by the processor, please refer to [link to relevant documentation]. Figure 1 The description of the illustrated embodiments will not be repeated here.

[0144] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0145] In this document, the terms “comprising,” “including,” or any other variations thereof are intended to cover non-exclusive inclusion, which includes not only the elements listed but also other elements not expressly listed.

[0146] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

Claims

1. A path planning method, characterized in that, Includes the following steps: Obtain the location and task information of the warehouse robot; Based on the location information and the task information, a prediction path set is output using a prediction model. The location information includes historical locations, and the task information includes historical tasks. The step of outputting a predicted path set using a prediction model based on the location information and the task information includes: determining a historical location set and a historical task set based on multiple historical locations and multiple historical tasks of the warehouse robot obtained according to sampling periods, wherein the historical location set includes historical locations corresponding to each sampling period; determining a historical path set of the warehouse robot within a preset time period based on the historical location set and the historical task set, wherein the preset time period includes multiple sampling periods, and the historical path set consists of at least one historical path, each historical path corresponding to one warehouse robot and one historical task; and outputting a predicted path set using the prediction model based on the historical path set. The step of outputting a predicted path set using the prediction model based on the historical path set includes: using the historical path set as input to the prediction model; the prediction model determining whether there is a preset situation during the execution of historical tasks by the warehouse robot based on the historical paths and the historical task set; if there is, generating an uncertain path based on the historical paths and the preset situation; if there is no preset situation, generating a definite path based on the historical paths; and summarizing all the uncertain paths and all the definite paths to obtain the predicted path set. Determine the objective function based on the predicted path set; The planned path is calculated based on the objective function, and the planned path is output to the warehouse robot.

2. The path planning method as described in claim 1, characterized in that, The warehouse robot is equipped with RFID sensors, and the shelves are equipped with RFID tags that can be identified by the RFID sensors. The shelves are the working objects of the warehouse robot. Obtain the location information of the warehouse robot, including: The RFID tag information collected by the warehouse robot is obtained by reading the RFID tag through the RFID sensor; Obtain warehouse map data corresponding to the working area where the warehouse robot is located, the warehouse map data including the location of the RFID tag; The location information of the warehouse robot is determined based on the warehouse map data and the RFID tag information.

3. The path planning method as described in claim 1, characterized in that, The method further includes: Based on the historical task set and the historical path set, if it is determined that there are differences between the multiple historical paths generated when the warehouse robot executes the same historical task multiple times, and the differences exceed a preset threshold, then it is determined that the preset situation exists; and / or, Based on the historical task set, if the warehouse robot encounters a preset uncertainty during the execution of any historical task, and the number of such uncertainties exceeds a preset threshold, then the preset uncertainty is determined to exist; and / or, Based on the historical path set, if the warehouse robot has uncertainty in its path selection strategy for the historical path when executing the historical path, and the uncertainty exceeds a preset threshold, then it is determined that the preset situation exists.

4. The path planning method as described in claim 1, characterized in that, The predicted path set consists of at least one predicted path, which is used to indicate the path trajectory that the corresponding warehouse robot may execute in the future; Determining the objective function based on the predicted path set includes: The total path length is determined based on each predicted path; Obtain prediction task information corresponding to each prediction path, and determine priority weights based on the prediction task information; The number of turns and acceleration / deceleration times are determined for each predicted path, and the energy consumption cost is determined based on the number of turns and acceleration / deceleration times. Calculate an individual collision value for each predicted path, and then aggregate the individual collision values ​​to obtain a collision penalty coefficient. The objective function is obtained by weighted summing of the total path length, the priority weight, the energy cost, and the collision penalty coefficient. The objective function can be used to calculate and determine the planned path.

5. The path planning method as described in claim 4, characterized in that, The predicted path includes deterministic paths and uncertain paths; The step of calculating an individual collision value based on each predicted path and summing the individual collision values ​​to obtain a collision penalty coefficient includes: Obtain the scene information where the warehouse robot is located, and determine the optimization method based on the scene information. The optimization method includes smooth optimization and non-smooth optimization. For each of the aforementioned warehouse robots, the first volume collision value between the predicted path of the warehouse robot and all the determined paths, and the second volume collision value between the predicted path of the warehouse robot and all the uncertain paths are calculated using the optimization method. The collision penalty coefficient is obtained by weighted summing of all the first individual collision values ​​and all the second individual collision values.

6. The path planning method as described in claim 1, characterized in that, The step of calculating the planned path based on the objective function includes: The scene information where the warehouse robot is located is obtained, and the scene information is divided into at least one region using a multi-population genetic algorithm. In each region, at least one population is set based on the warehouse robot. Each population includes at least one chromosome represented by an iterative path, and the iterative path is a possible solution of the objective function. During each iteration, within each population, the fitness value of each iteration path is calculated based on the chromosome; the N chromosomes with the highest fitness values ​​are paired to update the iteration paths within the population, where N is an integer greater than 1; After each preset number of iterations, the M chromosomes with the highest fitness values ​​in each population are paired up to update the iteration path between the populations, where M is an integer greater than 1. After each iteration, determine whether the chromosome with the largest fitness value in the current round satisfies the iteration termination condition; If the conditions are not met, proceed to the next iteration. If the conditions are met, the iterative path obtained by parsing the chromosome with the largest fitness value will be marked as the planned path.

7. A computer device, characterized in that, Including processor and memory; The processor is used to execute a computer program stored in the memory to implement the method as described in any one of claims 1 to 6.

8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the method as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Navigation method and system based on smart bracelet

    CN117647250A

  • Deep reinforcement learning multi-AGV conflict-free path planning method for storage environment

    CN119879967A