Robot local path optimization method, computer device and computer readable storage medium
By detecting dynamic obstacles and predicting their trajectories using environmental point cloud data collected by warehousing and logistics robots, and combining this with operational information to calculate hybrid optimization values, an iterative optimization method is used to adjust local paths. This solves the problem of insufficient prediction and avoidance capabilities of TEB and DWA algorithms in complex environments, and achieves efficient, smooth, and safe path planning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ZHONGKE YUNGU TECH
- Filing Date
- 2026-03-31
- Publication Date
- 2026-07-10
AI Technical Summary
In warehousing and logistics systems, where there are dense personnel and frequent forklift movements, the existing autonomous navigation systems, such as TEB and DWA algorithms, are not capable of predicting and avoiding high-speed dynamic obstacles. This leads to sudden changes in angular velocity, speed fluctuations, and getting stuck in local optima during path planning, which affects cargo stability and task execution efficiency.
By collecting environmental point cloud data with a robot to detect dynamic obstacles and predict their trajectories, and combining this with working condition information to calculate hybrid optimization values, an iterative optimization method is used to adjust the local path. Dynamic obstacle prediction constraints and an adaptive weighting mechanism are introduced to construct a comprehensive optimization objective function, thereby achieving smooth, safe, and efficient path planning.
It significantly improves the movement efficiency and trajectory smoothness of logistics picking robots in complex warehousing environments, reduces the risk of goods shaking, achieves multi-objective collaborative optimization, and ensures task continuity and safety.
Smart Images

Figure CN122360459A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of robot navigation technology, and in particular relates to a robot local path optimization method, computer equipment, and computer-readable storage medium. Background Technology
[0002] In modern warehousing and logistics systems, mobile picking robots need to complete tasks such as material picking, transportation, obstacle avoidance, and path optimization in complex and dynamic environments. Most existing autonomous navigation systems are based on the ROS1 navigation framework, and their core local path planning algorithms usually adopt TEB (Timed Elastic Band) or DWA (Dynamic Window Approach).
[0003] However, for mobile picking robots within warehousing and logistics systems, TEB and DWA lack sufficient ability to predict and avoid high-speed dynamic obstacles in scenarios with dense personnel and frequent forklift movement. Furthermore, existing path planning is prone to sudden changes in angular velocity and speed fluctuations, affecting cargo stability; or it often gets stuck in local optima, leading to repeated planning or stagnation. Therefore, how to optimize the local paths of mobile picking robots and improve the robustness and business adaptability of path planning is a technical problem that urgently needs to be solved by those skilled in the art.
[0004] The preceding description is intended to provide general background information and does not necessarily constitute prior art. Summary of the Invention
[0005] The purpose of this application is to provide a robot local path optimization method, computer device, and computer-readable storage medium, which can effectively optimize the local path of a warehouse robot, achieve efficient and dynamic obstacle avoidance, and save energy.
[0006] To achieve the above objectives: In a first aspect, embodiments of this application provide a robot local path optimization method, comprising the following steps: when a dynamic obstacle is detected based on environmental point cloud data collected by the robot, the predicted trajectory of the dynamic obstacle is determined; the robot's working condition information is obtained, and a hybrid optimization value is calculated based on the working condition information and the predicted trajectory; the hybrid optimization value is iteratively optimized to determine the robot's local path adjustment strategy.
[0007] In an optional embodiment of this application, detecting dynamic obstacles based on environmental point cloud data collected by the robot includes: determining obstacles based on the acquired environmental point cloud data; determining whether the obstacle belongs to the type of dynamic obstacle; if not, updating the static map based on the environmental point cloud data and maintaining the original path; if it does belong, determining whether the obstacle is located within the working area; if not located within the working area, ignoring the obstacle and continuing to execute the original path planning; if located within the working area, marking the obstacle as a dynamic obstacle.
[0008] In an optional embodiment of this application, determining the predicted trajectory of a dynamic obstacle includes: establishing a corresponding state vector for each dynamic obstacle and continuously acquiring the corresponding movement data of the dynamic obstacle; determining the historical trajectory sequence of the dynamic obstacle based on the state vector and movement data; inputting the historical trajectory sequence into a motion trend prediction model; the motion trend prediction model is a pre-built and trained model; and generating the predicted trajectory of the dynamic obstacle based on the output of the motion trend prediction model.
[0009] In an optional embodiment of this application, obtaining the robot's working condition information and calculating a hybrid optimization value based on the working condition information and the predicted trajectory includes: obtaining the working area and task type from the working condition information; determining a dynamic weight set based on the working area and task type; calculating and determining a work cost set based on the predicted trajectory and the working condition information; and weighting and fusing the work cost set according to the dynamic weight set to obtain a hybrid optimization value.
[0010] In an optional embodiment of this application, determining a dynamic weight set based on the work area and task type includes: obtaining a preset initial weight set, which includes time weight, smoothing weight, obstacle avoidance weight, energy consumption weight, and acceleration weight; determining a first coefficient corresponding to the work area, and adjusting the initial weight set based on the first coefficient to obtain a first weight set; the work area includes one of the main aisle area, shelf area, and loading / unloading area; determining a second coefficient corresponding to the task type, and adjusting the initial weight set based on the second coefficient to obtain a second weight set; the task type includes one of picking, transportation, and return; and weighted summing the first weight set and the second weight set to obtain a dynamic weight set.
[0011] In an optional embodiment of this application, the calculation and determination of the work cost set based on the predicted trajectory and working condition information includes: obtaining the task execution time from the working condition information and calculating and determining the time cost based on the task execution time; obtaining the location information from the working condition information and calculating and determining the smoothing cost based on the location information; calculating and determining the obstacle avoidance cost based on the location information and the predicted trajectory; obtaining the acceleration information and load information from the working condition information and calculating and determining the energy consumption cost based on the acceleration information and load information; calculating and determining the jerk cost based on the acceleration information; and summing the time cost, smoothing cost, obstacle avoidance cost, energy consumption cost, and jerk cost to obtain the work cost set.
[0012] In an optional embodiment of this application, iterative optimization of the hybrid optimization value to determine the robot's local path adjustment strategy includes: obtaining preset optimization parameters, iteratively calculating the hybrid optimization value using a preset hybrid gradient descent method, determining the difference value, where the difference value represents the degree of deviation between the predicted path and the robot's planned path; and determining the local path adjustment strategy based on the difference value.
[0013] In an optional embodiment of this application, determining a local path adjustment strategy based on the difference value includes: when the difference value is greater than a first threshold, regenerating the local path based on the predicted path; when the difference value is less than or equal to the first threshold and greater than or equal to a second threshold, fine-tuning the planned path based on the predicted path; and when the difference value is less than the second threshold, maintaining the planned path unchanged.
[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: The method provided in this application includes the following steps: when a dynamic obstacle is detected based on environmental point cloud data collected by the robot, the predicted trajectory of the dynamic obstacle is determined; the robot's working condition information is obtained, and a hybrid optimization value is calculated based on the working condition information and the predicted trajectory; the hybrid optimization value is iteratively optimized to determine the robot's local path adjustment strategy. Therefore, this application can, during the execution of a predetermined planned path by a warehouse logistics robot, detect and track surrounding dynamic obstacles in real time by fusing environmental point cloud data collected by LiDAR or visual sensors, and predict the future trajectory of the dynamic obstacles, providing forward-looking information for local path planning and achieving effective avoidance of high-speed or unpredictable moving obstacles. The local path adjustment strategy relies on the iterative solution of the hybrid optimization value. Specifically, the hybrid optimization value is dynamically calculated based on the semantic partitioning of the warehouse environment, the robot's task type, and its real-time status (speed, acceleration, cargo weight), including time cost, smoothing cost, obstacle avoidance cost, energy consumption cost, and jerk cost, thereby achieving a balance between efficiency, safety, and stability in different scenarios. This significantly improves the motion efficiency and trajectory smoothness of logistics picking robots in complex warehouse environments, while reducing the risk of cargo swaying and achieving multi-objective collaborative optimization. This paper introduces dynamic obstacle prediction constraints and adaptive weighting mechanisms on the basis of the traditional TEB algorithm to construct a comprehensive optimization objective function, achieving efficient solution and real-time update of trajectory nodes. Path smoothness is controlled by velocity and acceleration constraints, and cargo weight is combined to protect goods, ensuring safe and efficient picking operations. Obstacle prediction trajectories are embedded in local optimization constraints, enabling the robot to avoid dynamic obstacles in advance. When encountering obstacle conflicts or optimization anomalies, local replanning can be triggered in real time, ensuring task continuity and operational safety. The proactive obstacle avoidance and real-time replanning mechanisms achieve safer robot path planning execution. Through the integration of prediction, adaptive weighting, and improved optimization algorithms, the efficient, smooth, and safe local path planning solution provided in this application significantly improves the motion efficiency and trajectory smoothness of logistics picking robots in complex warehousing environments, while reducing the risk of cargo swaying and achieving multi-objective collaborative optimization.
[0017] 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
[0018] 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.
[0019] Figure 1 This is a flowchart illustrating a robot local path optimization method provided in one embodiment.
[0020] Figure 2 This is a schematic block diagram of the structure of a computer device provided in one embodiment. Detailed Implementation
[0021] 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.
[0022] 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.
[0023] 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.
[0024] 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.
[0025] 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.
[0026] It should be understood that the specific embodiments described herein are merely illustrative of this application and are not intended to limit this application.
[0027] 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.
[0028] In existing warehousing systems, mobile picking robots are a crucial component. The system assigns target storage locations and travel paths to the robot based on the task, driving it to autonomously move to the designated area to complete the picking. However, the planned path is only under ideal conditions. In reality, various unexpected situations often arise, such as dynamic obstacle avoidance, path congestion, or the insertion of temporary tasks. Therefore, even during the robot's movement, continuous optimization of the local path is necessary. Existing algorithms suffer from the following problems in local path planning: 1. Slow response to dynamic obstacles: In scenarios with dense personnel and frequent forklift movement, TEB and DWA lack sufficient ability to predict and avoid high-speed dynamic obstacles. 2. DWA's trajectory is obtained from velocity sampling, and trajectory continuity depends on sampling resolution; sudden changes in angular velocity and velocity fluctuations are prone to occur, affecting the stability of goods. 3. In complex aisle structures, TEB often gets trapped in local optima, leading to repeated planning or stagnation. Therefore, existing local planning algorithms still lack robustness and business adaptability in complex warehousing environments, urgently requiring an improved algorithm that integrates task scenario information, dynamic optimization constraints, and multi-objective decision-making. Therefore, this application proposes a robot local path optimization method. For a clear description of the method provided in this embodiment, please refer to... Figure 1 This includes steps S110 to S130.
[0029] Step S110: When a dynamic obstacle is detected based on the environmental point cloud data collected by the robot, the predicted trajectory of the dynamic obstacle is determined.
[0030] In one embodiment, step S110: detecting dynamic obstacles based on environmental point cloud data collected by the robot includes: determining obstacles based on the acquired environmental point cloud data; determining whether the obstacle belongs to the type of dynamic obstacle; if not, updating the static map based on the environmental point cloud data and maintaining the original path; if it does belong, determining whether the obstacle is located within the working area; if not located within the working area, ignoring the obstacle and continuing to execute the original path planning; if located within the working area, marking the obstacle as a dynamic obstacle.
[0031] In one embodiment, the term "robot" as used herein generally refers to a picking robot in a warehousing system, but can also refer to other intelligent work units with autonomous movement and environmental awareness capabilities. Any robot involved in path planning and autonomous movement is included within the scope of the robot mentioned in this application and will not be explained separately thereafter. Specifically, the robot may be equipped with multi-line LiDAR and depth vision sensors to collect real-time 3D point cloud data of the surrounding environment, which is then labeled as environmental point cloud data.
[0032] Obstacles are identified based on environmental point cloud data. Specifically, clustering algorithms can be used to separate the obstacle point cloud. Alternatively, the robot may have built-in map data; comparing the environmental point cloud data with the built-in map data identifies new obstacles. Another approach is to perform ground segmentation and Euclidean point cloud clustering on the LiDAR point cloud to obtain obstacle features, thereby identifying the obstacle. The specific method for identifying obstacles based on environmental point cloud data is not limited; the point cloud data corresponding to the obstacle is marked for continuous monitoring.
[0033] To determine whether an obstacle is a dynamic obstacle, its dynamic attributes can be determined by analyzing the displacement characteristics and motion trends of the obstacle's point cloud across consecutive time frames, combined with a velocity estimation model. If the displacement is significant and exhibits continuous motion, it is classified as a dynamic obstacle; otherwise, it is considered a static obstacle. When an obstacle is classified as static, the static map can be updated based on the point cloud data of the static obstacle in the environmental point cloud, and the obstacle information can be stored in the long-term environmental model while maintaining the current path unchanged.
[0034] Conversely, if the obstacle is determined to be a dynamic obstacle, it is further determined whether it is located within the working area of the robot's current planned path. The working area is the global path between the current point and the target point, plus a rectangular area obtained by superimposing the robot's safety radius. If the obstacle does not fall within this working area, it is considered not to affect the current travel path and can be ignored, continuing with the original planned path. If the obstacle is located within the working area, it is marked as a dynamic obstacle to be processed for subsequent handling. Tracking only dynamic obstacles within the working area can reduce resource consumption and improve system response efficiency.
[0035] In one embodiment, step S110: determining the predicted trajectory of a dynamic obstacle includes: establishing a corresponding state vector for each dynamic obstacle and continuously acquiring the corresponding movement data of the dynamic obstacle; determining the historical trajectory sequence of the dynamic obstacle based on the state vector and movement data; inputting the historical trajectory sequence into a motion trend prediction model; the motion trend prediction model is a pre-built and trained model; and generating the predicted trajectory of the dynamic obstacle based on the output of the motion trend prediction model.
[0036] In one implementation, a corresponding state vector is established for each dynamic obstacle, and the establishment method can be referred to the following formula.
[0037] (1) In the above formula, for t Dynamic obstacles at any time j The state vector. , for t Dynamic obstacles j Two-dimensional coordinates, for t Dynamic obstacles j The speed of movement, for t Dynamic obstacles j The direction of movement.
[0038] Continuously acquire the movement data corresponding to the dynamic obstacles, for example, continuously collect point cloud data for N frames, where N is a preset integer. Determine the historical trajectory sequence of the dynamic obstacles based on the state vector and movement data. The mathematical expression of the historical trajectory sequence can be found in the following formula.
[0039] (2) The historical trajectory sequence is input into the motion trend prediction model for processing. The motion trend prediction model is a pre-built and trained prediction model, which can be constructed using a Long Short-Term Memory (LSTM) network architecture, or other neural network models such as Gated Recurrent Units (GRUs) or Transformers; there are no restrictions on which method is used. For ease of processing, the historical trajectory sequence can be normalized before being input into the model. The normalization process is shown in the following formula.
[0040] (3) (4) In the above formula, and These are the normalized coordinate values. , Original coordinates , The mean of the trajectory sequence, , The standard deviation is used as the reference. The normalized historical trajectory sequence is input into the motion trend prediction model. Spatiotemporal features are extracted through the network structure, and the predicted trajectory points for the next M time points are output. Each predicted trajectory point contains two-dimensional coordinates, and the result can be expressed as the following formula.
[0041] (5) Specifically, the weighted mean squared error loss function can be used to optimize the motion trend prediction model. The calculation process of the loss function can be referred to the following formula.
[0042] (6) In the above formula, for Dynamic obstacles at any time j The predicted state value can be the predicted two-dimensional coordinates; This is the corresponding true value of the state. For the first The weights for the frame prediction step size are calculated as shown in the following formula.
[0043] (7) In the above formula, This is a preset weight correction coefficient. Therefore, The results of the motion trend prediction model, which is used to decay the future time step and ensure short-term prediction accuracy, are shown in formula (5). The results are then summarized to generate the predicted trajectory of the dynamic obstacle. By introducing a sequence production model based on LSTM for dynamic obstacle trajectory prediction, the future position of moving obstacles can be perceived and predicted in real time, enabling proactive obstacle avoidance and effectively reducing the risk of sudden collisions.
[0044] Step S120: Obtain the robot's working condition information and calculate the hybrid optimization value based on the working condition information and the predicted trajectory.
[0045] In one embodiment, acquiring robot working condition information and calculating a hybrid optimization value based on the working condition information and the predicted trajectory includes: acquiring the working area and task type from the working condition information; determining a dynamic weight set based on the working area and task type; calculating and determining a work cost set based on the predicted trajectory and working condition information; and weighting and fusing the work cost set according to the dynamic weight set to obtain a hybrid optimization value.
[0046] In one embodiment, the hybrid optimization value consists of two parameters: a dynamic weight and a work cost. The dynamic weight is determined based on the work area and task type in the work condition information; the work cost is calculated based on the predicted trajectory and work condition information. The specific calculation process for both will be described in detail later.
[0047] In one embodiment, determining a dynamic weight set based on the work area and task type includes: obtaining a preset initial weight set, which includes time weight, smoothing weight, obstacle avoidance weight, energy consumption weight, and acceleration weight; determining a first coefficient corresponding to the work area, and adjusting the initial weight set based on the first coefficient to obtain a first weight set; the work area includes one of the main aisle area, shelf area, and loading / unloading area; determining a second coefficient corresponding to the task type, and adjusting the initial weight set based on the second coefficient to obtain a second weight set; the task type includes one of picking, transportation, and return; and weighted summing the first weight set and the second weight set to obtain a dynamic weight set.
[0048] In one embodiment, the dynamic weight set is specifically a collection of multiple adaptive cost weights, which include five categories: time weight, smoothing weight, obstacle avoidance weight, energy consumption weight, and acceleration weight. These weights are dynamically adjusted according to the robot's location and the task it is performing. First, a preset initial weight set is obtained, which can be expressed as follows.
[0049] (8) In the above formula, This represents the initial weight set for the i-th robot, specifically including time weights. Smoothing weights Obstacle avoidance weights Energy consumption weight and acceleration weights .
[0050] Obtain the first coefficient corresponding to the defined working area, and perform weight correction on the initial weight set based on the first coefficient to obtain the first weight set. The correction process can be referred to the following formula.
[0051] (9) In the above formula, This is the first weight set. The first coefficient is determined by the robot's work area, which can be divided into main aisle areas, shelf areas, loading and unloading areas, etc. Each area has a pre-set corresponding first coefficient. Based on the first coefficient For the initial weight set After weight adjustment, the first weight set is obtained. .
[0052] Next, determine the second coefficient corresponding to the task type, and adjust the weights of the initial weight set based on the second coefficient to obtain the second weight set. The adjustment process can be referred to the following formula.
[0053] (10) In the above formula, This is the second weight set. This is the second coefficient, determined by the type of task the robot performs. Task types include picking, transporting, and returning. Each task type has a pre-defined second coefficient. Based on the second coefficient For the initial weight set After weight adjustment, a second weight set is obtained. .
[0054] The dynamic weight set is obtained by weighted summation of the first and second weight sets, and the calculation method is shown in the following formula.
[0055] (11) In the above formula, and The preset weighting coefficients can be dynamically adjusted according to the environment and task requirements to ensure a balance between safety, efficiency, and cargo stability. It is worth noting that the first weight set... Second weight set Each set contains five specific adaptive cost weights, and the weighted solution for the two sets is also performed by weighting the sets with the same type of adaptive cost weights. The final dynamic weight set also includes five adaptive cost weights, i.e., time weights. Smoothing weights Obstacle avoidance weights Energy consumption weight and acceleration weights .
[0056] The adaptive cost weights are dynamically set, i.e., a dynamic adjustment mechanism. Therefore, the fused weights are updated in real time according to the robot's position, task status, and obstacle density; for example, in high-density obstacle areas, the obstacle avoidance weights are automatically increased. In open areas where high efficiency is required, the time cost weight is automatically increased. The weights will be dynamically adjusted based on the task type and work area, which is difficult to list here; only a simple example is provided. By analyzing the warehousing semantic region, task type, and robot state, the cost weights are adaptively adjusted to achieve a dynamic balance between path efficiency, safety, and cargo stability.
[0057] In one embodiment, the calculation and determination of the work cost set based on the predicted trajectory and working condition information includes: acquiring the task execution time from the working condition information and calculating and determining the time cost based on the task execution time; acquiring the location information from the working condition information and calculating and determining the smoothing cost based on the location information; calculating and determining the obstacle avoidance cost based on the location information and the predicted trajectory; acquiring the acceleration information and load information from the working condition information and calculating and determining the energy consumption cost based on the acceleration information and load information; calculating and determining the jerk cost based on the acceleration information; and summing the time cost, smoothing cost, obstacle avoidance cost, energy consumption cost, and jerk cost to obtain the work cost set.
[0058] In one embodiment, the set of work costs includes time cost, smoothing cost, obstacle avoidance cost, energy consumption cost, and jerk cost, which need to be calculated and determined based on the predicted trajectory and working condition information.
[0059] The time cost is used to encourage robots to complete tasks quickly while maintaining safe operation. It requires obtaining the task execution time from the working condition information and calculating the time cost based on the task execution time. The calculation method can be referred to in the following formula.
[0060] (12) In the above formula, For the cost of time; The total number of steps executed by the robot along a local path; This represents the current number of steps being executed. For the first The time taken to execute each step.
[0061] Obtain the location information from the working condition information, and calculate the smoothing cost based on the location information. The smoothing cost is used to ensure trajectory continuity and reduce sharp turns; the calculation method can be found in the following formula.
[0062] (13) In the above formula, To smooth out costs; For the first The robot's position coordinates during the step.
[0063] Based on location information and the predicted trajectory, the obstacle avoidance cost is calculated. Before calculation, the predicted path needs to be merged with the original planned path. The predicted trajectory is injected as a dynamic obstacle constraint into the TEB optimization function, and the calculation method is shown in the following formula.
[0064] (14) In the above formula, for At any given time, the predicted path of the dynamic obstacle is the result of the calculation shown in formula (5). The dynamic safety radius is adjusted according to the speed of the dynamic obstacle. The calculation method is as follows.
[0065] (15) In the above formula, The safe radius for the robot; For time correction factor, through The time taken for each moment is determined; The moving speed of the dynamic obstacle is determined by the predicted trajectory. The predicted trajectory is embedded with constraints to avoid obstacles in advance, and the obstacle avoidance cost is calculated. The calculation method can be found in the following formula.
[0066] (16) In the above formula, The cost of obstacle avoidance; This is the preset constraint sensitivity coefficient.
[0067] Obtain acceleration and load information from the operating condition data, and calculate the energy consumption cost based on the acceleration and load information to account for the impact of robot speed and load on energy consumption. The energy consumption cost calculation method can be found in the following formula.
[0068] (17) In the above formula, For the cost of energy consumption; , This is the preset adjustment coefficient; and These are the robot's velocity and acceleration at time k, respectively, which are included in the acceleration information. This refers to load information, specifically the robot's cargo capacity.
[0069] The acceleration cost is calculated based on the acceleration information to avoid sudden increases or decreases in robot speed and to ensure cargo stability. The calculation method can be referred to in the following formula.
[0070] (18) Time cost Smoothing Costs Obstacle avoidance costs Energy consumption cost And the cost of accelerator The total cost of the work is then calculated.
[0071] The dynamic weight set is weighted and fused with the working cost set to obtain the hybrid optimization value. The calculation method can be referred to in the following formula.
[0072] (19) The weighted summation of the dynamic weight set and the working cost set can be viewed as the optimization function of TEB, and the hybrid optimization value is the numerical value of the original planned path. The specific optimization method will be described in detail later. By incorporating velocity, acceleration, and cargo mass factors into the optimization objective function, the generated trajectory becomes smoother, cargo swaying is reduced, and the overall stability and energy efficiency of path planning are improved.
[0073] Step S130: Iteratively optimize the hybrid optimization value to determine the robot's local path adjustment strategy.
[0074] In one embodiment, step S130: iteratively optimizing the hybrid optimization value to determine the robot's local path adjustment strategy includes: obtaining preset optimization parameters, iteratively calculating the hybrid optimization value using a preset hybrid gradient descent method, determining the difference value, which is used to represent the degree of deviation between the predicted path and the robot's planned path; and determining the local path adjustment strategy based on the difference value.
[0075] In one embodiment, the difference value can be calculated using the following formula.
[0076] (20) In the above formula, It is a Jacobian matrix; For adaptive damping factor, To pre-set a fixed identity matrix, and They work together to control the update step size and prevent oscillations in high curvature environments; The preset residual vector is included in the optimization parameters. For the difference value, the difference value Used to represent the degree of deviation between the predicted path and the robot's planned path. Difference value The calculation can be performed using the Levenberg-Marquardt (LM) hybrid gradient descent method for real-time optimization, updating and determining the difference in real time with each optimization iteration. It is worth noting that the difference value... The predicted path referred to here is not the predicted path for the dynamic obstacles mentioned earlier, but rather the robot's predicted path. In other words, it can be understood as the difference value. It can also represent the probability that a robot will collide with a dynamic obstacle.
[0077] In one embodiment, determining a local path adjustment strategy based on the difference value includes: when the difference value is greater than a first threshold, regenerating a local path based on the predicted path; when the difference value is less than or equal to the first threshold and greater than or equal to a second threshold, fine-tuning the planned path based on the predicted path; and when the difference value is less than the second threshold, maintaining the planned path unchanged.
[0078] In one implementation, the difference value as described above This difference is used to represent the degree of deviation between the predicted path and the robot's planned path, thus determining whether adjustments or optimizations to the local path are needed. When the difference value... When the value exceeds a preset first threshold, it indicates a high probability of the robot colliding with dynamic obstacles. This can manifest as the real-time distance to the obstacle being less than the safe radius, abnormal optimization convergence (residuals not decreasing or iteration failing), or the overlap between the predicted dynamic obstacle and the current trajectory exceeding a threshold (e.g., 60%). In such cases, it is necessary to regenerate a local path based on the predicted path and optimize it. Replanning strategies can include, but are not limited to, rerunning the improved TEB optimization to generate a new local path. Furthermore, if the difference value... If the value is less than or equal to the first threshold and greater than or equal to the second threshold, it indicates a potential collision between the robot and a dynamic obstacle. Fine-tuning of the planned path based on the predicted path is necessary, such as reducing the robot's speed or pausing to ensure safety; retaining the previously feasible path to avoid global path reset, etc. Conversely, if the difference value... When the value is below the second threshold, it means that the robot is highly unlikely to collide with dynamic obstacles and can maintain the planned path unchanged. Therefore, when the environment changes or new obstacles appear, the system can automatically trigger replanning to regenerate a feasible path with minimal delay, ensuring that the picking task is not interrupted and continues to execute stably.
[0079] Furthermore, for local path adjustment strategies, different strategies can be adopted in different tasks, such as utilizing jerk costs. Constraints control the robot's acceleration and deceleration; during picking and transport, the focus is on reducing acceleration to maintain cargo stability; when empty or returning, acceleration is appropriately increased to improve efficiency. Specific adjustment strategies need to be determined based on the robot's location, the task it is performing, and the magnitude of the difference in acceleration values. It is difficult to exhaustively list all these strategies in the manual; therefore, only the above examples are provided and are not intended to limit the methods used.
[0080] Therefore, the overall operation flow of the method provided in this application can be as follows. After debugging the dynamic obstacle prediction model and adaptive weight algorithm, the improved method of this application is integrated into the logistics picking robot system. When the robot receives a new picking task and prepares to move from the current shelf to the next picking point, the system first collects surrounding environmental data in real time through sensors, detects and tracks dynamic obstacles, and then predicts the future movement trend of obstacles based on historical trajectories through motion trend prediction. The prediction results, together with the robot's current position and target point information, are used to perform adaptive cost weight calculation, dynamically generating optimized weights that adapt to the current task and environmental state. Then, using these as constraints, trajectory optimization and solution are performed, outputting a smooth, safe, and efficient local path. When the robot moves along the planned path, if a new obstacle or environmental change is detected, the system will trigger a replanning mechanism in real time to quickly update the path, ensuring that the robot maintains stable operation and cargo safety throughout the picking process, thereby significantly improving the efficiency and reliability of logistics picking. Based on the traditional TEB algorithm, dynamic obstacle prediction constraints and adaptive weight mechanism are introduced to construct a comprehensive optimization objective function, realizing efficient solution and real-time update of trajectory nodes. By controlling path smoothness through velocity and acceleration constraints and combining this with cargo weight protection, the picking operation is ensured to be safe and efficient. Obstacle prediction trajectories are embedded into local optimization constraints, enabling the robot to avoid dynamic obstacles in advance. When encountering obstacle conflicts or optimization anomalies, real-time local replanning can be triggered to ensure task continuity and operational safety. The proactive obstacle avoidance and real-time replanning mechanism achieves safer robot path planning execution. Through the integration of prediction, weight adaptation, and improved optimization algorithms, the efficient, smooth, and safe local path planning solution provided in this application significantly improves the motion efficiency and trajectory smoothness of logistics picking robots in complex warehousing environments, while reducing the risk of cargo swaying and achieving multi-objective collaborative optimization.
[0081] The method provided in this application includes the following steps: when a dynamic obstacle is detected based on environmental point cloud data collected by the robot, the predicted trajectory of the dynamic obstacle is determined; the robot's working condition information is obtained, and a hybrid optimization value is calculated based on the working condition information and the predicted trajectory; the hybrid optimization value is iteratively optimized to determine the robot's local path adjustment strategy. Therefore, this application can, during the execution of a predetermined planned path by a warehouse logistics robot, detect and track surrounding dynamic obstacles in real time by fusing environmental point cloud data collected by LiDAR or visual sensors, and predict the future trajectory of the dynamic obstacles, providing forward-looking information for local path planning and achieving effective avoidance of high-speed or unpredictable moving obstacles. The local path adjustment strategy relies on the iterative solution of the hybrid optimization value. Specifically, the hybrid optimization value is dynamically calculated based on the semantic partitioning of the warehouse environment, the robot's task type, and its real-time status (speed, acceleration, cargo weight), including time cost, smoothing cost, obstacle avoidance cost, energy consumption cost, and jerk cost, thereby achieving a balance between efficiency, safety, and stability in different scenarios. This significantly improves the motion efficiency and trajectory smoothness of logistics picking robots in complex warehouse environments, while reducing the risk of cargo swaying and achieving multi-objective collaborative optimization.
[0082] Figure 2 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 2 As shown, the device includes: a processor 310 and a memory 311 storing a computer program; wherein, Figure 2 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 2 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.
[0083] 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 2 The general designated all buses as Bus System 313.
[0084] 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.
[0085] 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.
[0086] 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.
[0087] 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.
[0088] 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.
[0089] 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 method for optimizing a robot's local path, characterized in that, Includes the following steps: When a dynamic obstacle is detected based on the environmental point cloud data collected by the robot, the predicted trajectory of the dynamic obstacle is determined. Obtain the robot's operating condition information, and calculate a hybrid optimization value based on the operating condition information and the predicted trajectory; The hybrid optimization value is iteratively optimized to determine the robot's local path adjustment strategy.
2. The robot local path optimization method as described in claim 1, characterized in that, The detection of dynamic obstacles based on environmental point cloud data collected by the robot includes: Obstacles are determined based on the acquired environmental point cloud data; Determine whether the obstacle belongs to the dynamic obstacle type; If it does not belong to the category, the static map is updated based on the environmental point cloud data while maintaining the original path; If so, determine whether the obstacle is located within the work area; If the obstacle is not located within the work area, ignore it and continue with the original path planning. If the obstacle is located within the work area, it is marked as a dynamic obstacle.
3. The robot local path optimization method as described in claim 1, characterized in that, Determining the predicted trajectory of the dynamic obstacle includes: Establish a corresponding state vector for each dynamic obstacle, and continuously acquire the corresponding movement data of the dynamic obstacle; The historical trajectory sequence of the dynamic obstacle is determined based on the state vector and the movement data; The historical trajectory sequence is input into the motion trend prediction model; the motion trend prediction model is a pre-built and trained model; The predicted trajectory of the dynamic obstacle is generated based on the output of the motion trend prediction model.
4. The robot local path optimization method as described in claim 1, characterized in that, The step of acquiring the robot's operating condition information and calculating a hybrid optimization value based on the operating condition information and the predicted trajectory includes: Obtain the work area and task type from the work condition information, and determine a dynamic weight set based on the work area and task type; The work cost set is calculated and determined based on the predicted trajectory and the working condition information; The working cost set is weighted and fused according to the dynamic weight set to obtain the hybrid optimization value.
5. The robot local path optimization method as described in claim 4, characterized in that, The determination of the dynamic weight set based on the work area and the task type includes: Obtain a preset initial weight set, which includes time weight, smoothing weight, obstacle avoidance weight, energy consumption weight, and acceleration weight; A first coefficient corresponding to the work area is determined, and the initial weight set is adjusted based on the first coefficient to obtain a first weight set; the work area includes one of the main aisle area, shelf area, and loading and unloading area; A second coefficient corresponding to the task type is determined, and the initial weight set is adjusted based on the second coefficient to obtain a second weight set; the task type includes one of picking, transportation, and return. The first weight set and the second weight set are weighted and summed to obtain the dynamic weight set.
6. The robot local path optimization method as described in claim 4, characterized in that, The calculation and determination of the work cost set based on the predicted trajectory and the working condition information includes: Obtain the task execution time from the working condition information, and calculate and determine the time cost based on the task execution time; Obtain the location information from the working condition information, and calculate and determine the smoothing cost based on the location information; Based on the location information and the predicted trajectory, the obstacle avoidance cost is calculated and determined; Obtain acceleration and load information from the operating condition information, and calculate and determine the energy consumption cost based on the acceleration and load information; The acceleration cost is calculated and determined based on the acceleration information. The time cost, smoothing cost, obstacle avoidance cost, energy consumption cost, and jerk cost are summed to obtain the working cost set.
7. The robot local path optimization method as described in claim 1, characterized in that, The iterative optimization of the hybrid optimization value to determine the robot's local path adjustment strategy includes: Obtain preset optimization parameters, and iteratively calculate the hybrid optimization value using a preset hybrid gradient descent method to determine the difference value, which is used to represent the degree of deviation between the predicted path and the robot's planned path; The local path adjustment strategy is determined based on the difference value.
8. The robot local path optimization method as described in claim 7, characterized in that, The step of determining the local path adjustment strategy based on the difference value includes: When the difference value is greater than the first threshold, the local path is regenerated based on the predicted path. When the difference value is less than or equal to the first threshold and greater than or equal to the second threshold, the planned path is fine-tuned based on the predicted path; When the difference value is less than the second threshold, the planned path remains unchanged.
9. A computer device, characterized in that, Including processor and memory; The processor is configured to execute a computer program stored in the memory to implement the method as described in any one of claims 1 to 8.
10. 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 8.