Obstacle avoidance path optimization method and device for intelligent guide vehicle, and controller
By combining the kinematic characteristics of intelligent guided vehicles with the differential flatness theorem, a parameterized path curve is constructed, solving the problem of high-precision real-time obstacle avoidance for IGVs in complex scenarios and achieving efficient and safe path planning.
Patent Information
- Application Number
- CN202511152418.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-15
- Publication Date
- 2025-11-11
AI Technical Summary
Existing technologies struggle to provide high-precision and real-time obstacle avoidance path optimization for intelligent guided vehicles (IGVs) in complex scenarios, and traditional methods struggle to achieve high-quality path planning when obstacle constraints are simplified.
The nonlinear system is transformed into a parametric curve problem by using the differential flatness theorem. Combined with the kinematic characteristics of the intelligent guided vehicle, a parametric path curve is constructed. The optimal solution path is determined within the quadratic optimization framework of linear constraints by using a preset loss function and constraints, thus ensuring obstacle avoidance accuracy and real-time performance.
It achieves high-precision, real-time obstacle avoidance path optimization, improves the efficiency and safety of path planning, reduces the probability of collision accidents, and ensures the smooth driving of intelligent guided vehicles.
Smart Images

Figure CN120927017A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of navigation technology, and in particular to a method, device and controller for optimizing obstacle avoidance paths for intelligent guided vehicles. Background Technology
[0002] With advancements in vehicle technology, autonomous driving technology has emerged, significantly boosting the transportation industry. Building upon Automated Guided Vehicles (AGVs), the integration of autonomous driving technology with the demands of heavy-duty port vehicles has driven the application of more intelligent guided vehicles (IGVs). IGVs combine autonomous driving technology with the high flexibility of AGV chassis, offering highly flexible operational capabilities. However, the multi-axle chassis of IGVs exhibits different driving characteristics compared to traditional vehicles, making the accurate and efficient determination of obstacle avoidance paths a significant technical challenge.
[0003] Traditional obstacle avoidance path optimization methods for autonomous vehicles mainly include search algorithms, sampling algorithms, and online optimization algorithms. However, these methods suffer from a high degree of correlation between computational accuracy and complexity. Furthermore, there is a lack of obstacle avoidance path optimization solutions specifically for IGV (Independent Utility Vehicle) models, and obstacle constraints are generally oversimplified, making it difficult to obtain high-quality path planning in complex scenarios.
[0004] Therefore, there is an urgent need for a path optimization scheme that balances the obstacle avoidance accuracy requirements of IGV with the real-time computing requirements. Summary of the Invention
[0005] This application provides a method, device, and controller for optimizing obstacle avoidance paths for intelligent guided vehicles, so as to achieve high obstacle avoidance accuracy and high real-time performance.
[0006] Firstly, this application provides a method for optimizing obstacle avoidance paths for intelligent guided vehicles, including:
[0007] Obtain driving information of intelligent guided vehicles;
[0008] Based on the driving information, determine the starting point and traffic corridor constraints of the next frame's driving path for the intelligent guided vehicle;
[0009] Determine the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
[0010] Based on the differential flatness theorem, a parameterized path curve is constructed according to the initial solution path and the kinematic model of the intelligent guided vehicle;
[0011] Based on the preset loss function and constraints, the optimal solution path of the parameterized path curve is determined according to the initial solution path.
[0012] Based on the traffic corridor constraint, if it is determined that there is no collision in the optimal solution path, the optimal solution path is used as the driving path of the intelligent guided vehicle in the next frame.
[0013] In one possible implementation, based on the differential flatness theorem, a parameterized path curve is constructed according to the initial solution path and the kinematic model of the intelligent guided vehicle, including:
[0014] Based on the principle of path smoothing, the key points of the parameterized path curve are sampled along the path direction of the initial solution path within a preset length range using a preset sampling algorithm.
[0015] Based on the differential flatness theorem, a curve equation indexed by key points is constructed to obtain a parameterized path curve.
[0016] In one possible implementation, the number of key points is K, each key point includes a starting point, and each pair of adjacent key points forms K-1 curve segments. Based on a preset loss function and constraints, the optimal solution path of the parameterized path curve is determined according to the initial solution path, including:
[0017] Based on the loss function and constraints, and according to the initial solution path, the alternating direction multiplier algorithm is applied to determine the optimal parameters corresponding to K-1 curve segments respectively;
[0018] The optimal solution path of the parameterized path curve is determined based on the optimal parameters corresponding to the K-1 curve segments.
[0019] In one possible implementation, the constraints include: steering angle constraint, lane center distance constraint, and collision constraint. The steering angle constraint is used to ensure that the steering angle of the steering wheel of each axis of the intelligent guided vehicle does not exceed the vehicle kinematic limit. The lane center distance constraint is used to ensure that the distance between the sampling path point and the electronic map reference line does not exceed the distance limit. The collision constraint is used to ensure that the geometric boundary of the intelligent guided vehicle and the geometric boundary of the obstacle do not collide.
[0020] The loss functions include the smoothness loss function and the lane center distance loss function.
[0021] In one possible implementation, the driving information includes an initial pose and electronic map reference lines. Based on the driving information, the starting point of the next frame's driving path for the intelligent guided vehicle is determined, including:
[0022] If the driving information does not contain the driving path of the previous frame, the initial pose is determined as the starting point of the driving path of the next frame.
[0023] If the driving information contains the driving path of the previous frame, then determine the projection point of the initial pose on the driving path of the previous frame.
[0024] Extend the target distance from the projection point in the direction of vehicle travel, and use the position corresponding to the target distance as the starting point of the driving path in the next frame.
[0025] In one possible implementation, the driving information includes electronic map reference lines and obstacle information. Based on the driving information, the corridor constraints for the next frame's driving path of the intelligent guided vehicle are determined, including:
[0026] The passageway for intelligent guided vehicles is obtained by setting a lateral distance extension based on the reference line of the electronic map.
[0027] Traverse the obstacles contained in the obstacle information to determine whether they are located within the passageway;
[0028] For obstacles located in the passageway, the boundaries of the obstacles are sampled counterclockwise to obtain the set of boundary points corresponding to the obstacles;
[0029] Determine the travel corridor constraints based on the boundary point set.
[0030] In one possible implementation, the driving information includes electronic map reference lines, determining the initial solution path of the parameterized path curve corresponding to the next frame's driving path of the intelligent guided vehicle, including:
[0031] If the driving information does not contain the driving path of the previous frame, then the target point that the intelligent guidance vehicle is closest to the electronic map reference line is determined.
[0032] Along the reference line on the electronic map, extend the target point to the direction of travel of the intelligent guided vehicle by a set length to obtain the first extended path;
[0033] The first path is determined as the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
[0034] In one possible implementation, determining the initial solution path of the parameterized path curve corresponding to the next frame's driving path of the intelligent guided vehicle further includes:
[0035] If the driving information contains the driving path of the previous frame, then the driving path of the previous frame is extended by a set length in the direction of travel of the intelligent guided vehicle to obtain the extended second path.
[0036] The second path is determined as the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
[0037] Secondly, this application provides an obstacle avoidance path optimization device for intelligent guided vehicles, comprising:
[0038] The acquisition module is used to acquire the driving information of the intelligent guided vehicle;
[0039] The first processing module is used to determine the starting point and traffic corridor constraints of the next frame driving path of the intelligent guided vehicle based on the driving information; and to determine the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
[0040] The module is used to construct parameterized path curves based on the differential flatness theorem, the initial solution path, and the kinematic model of the intelligent guided vehicle.
[0041] The second processing module is used to determine the optimal solution path of the parameterized path curve based on the preset loss function and constraints and the initial solution path; and, when it is determined that there is no collision in the optimal solution path based on the traffic corridor constraints, the optimal solution path is used as the next frame driving path of the intelligent guided vehicle.
[0042] In one possible implementation, the construction module is specifically used to: based on the path smoothing principle, use a preset sampling algorithm to sample key points of the parameterized path curve along the path direction of the initial solution path within a preset length range; and based on the differential flatness theorem, construct a curve equation indexed by the key points to obtain the parameterized path curve.
[0043] In one possible implementation, the number of key points is K, and each key point includes a starting point. Each pair of adjacent key points forms K-1 curve segments. The second processing module is specifically used to: determine the optimal parameters corresponding to each of the K-1 curve segments based on the loss function and constraints, according to the initial solution path, by applying the alternating direction multiplier algorithm; and determine the optimal solution path of the parameterized path curve based on the optimal parameters corresponding to each of the K-1 curve segments.
[0044] In one possible implementation, the constraints include: steering angle constraints, lane center distance constraints, and collision constraints. The steering angle constraints are used to ensure that the steering angle of the steering wheel of each axis of the intelligent guided vehicle does not exceed the vehicle's kinematic limits. The lane center distance constraints are used to ensure that the distance between the sampled path point and the electronic map reference line does not exceed the distance limit. The collision constraints are used to ensure that the geometric boundaries of the intelligent guided vehicle and the geometric boundaries of the obstacle do not collide. The loss function includes a smoothness loss function and a lane center distance loss function.
[0045] In one possible implementation, the driving information includes an initial pose and an electronic map reference line. The first processing module is specifically used to: if the driving information does not contain the driving path of the previous frame, determine the initial pose as the starting point of the driving path of the next frame; if the driving information contains the driving path of the previous frame, determine the projection point of the initial pose on the driving path of the previous frame; extend the target distance from the projection point to the vehicle driving direction, and take the position corresponding to the target distance as the starting point of the driving path of the next frame.
[0046] In one possible implementation, the driving information includes electronic map reference lines and obstacle information. The first processing module is further configured to: expand the lateral distance based on the electronic map reference lines to obtain the passageway of the intelligent guided vehicle; traverse the obstacles contained in the obstacle information to determine whether they are located within the passageway; for obstacles located within the passageway, sample the boundaries of the obstacles counterclockwise to obtain the boundary point set corresponding to the obstacles; and determine the passageway constraints based on the boundary point set.
[0047] In one possible implementation, the driving information includes an electronic map reference line, and the first processing module is further configured to: if the driving information does not contain the driving path of the previous frame, determine the target point that is closest to the electronic map reference line to the intelligent guided vehicle; extend the electronic map reference line from the target point to the driving direction of the intelligent guided vehicle by a set length to obtain the extended first path; and determine the first path as the initial solution path of the parameterized path curve corresponding to the driving path of the intelligent guided vehicle in the next frame.
[0048] In one possible implementation, the first processing module is further configured to: if the driving information contains the driving path of the previous frame, extend the driving path of the previous frame by a set length in the driving direction of the intelligent guided vehicle to obtain the extended second path; and determine the second path as the initial solution path of the parameterized path curve corresponding to the driving path of the next frame of the intelligent guided vehicle.
[0049] Thirdly, this application provides a controller, including: a memory and a processor;
[0050] The memory stores the instructions that the computer executes;
[0051] The processor executes computer execution instructions stored in memory, causing the processor to perform the first aspect and / or various possible implementations of the first aspect as described above.
[0052] Fourthly, this application provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the first aspect and / or various possible embodiments of the first aspect.
[0053] Fifthly, this application provides a computer program product, including a computer program that, when executed by a processor, implements the first aspect and / or various possible implementations of the first aspect.
[0054] This application provides a method, device, and controller for optimizing obstacle avoidance paths for intelligent guided vehicles. The method acquires the driving information of the intelligent guided vehicle; based on the driving information, it determines the starting point and traffic corridor constraints of the next frame's driving path, providing a clear foundation and boundary conditions for subsequent path planning; it determines the initial solution path of the parameterized path curve corresponding to the next frame's driving path; and based on the differential flatness theorem, it constructs the parameterized path curve according to the initial solution path and the kinematic model of the intelligent guided vehicle. The differential flatness theorem can transform complex nonlinear system problems into relatively simple parameterized curve problems, reducing algorithm complexity and fully considering the kinematic characteristics of the intelligent guided vehicle, making the path curve... The construction of the path is more scientific and reasonable; based on the preset loss function and constraints, the optimal solution path of the parameterized path curve is determined according to the initial solution path, realizing the definition of the path optimization problem within the framework of the quadratic optimization problem with linear constraints. The optimal path solution can be found quickly, ensuring high-quality solution results in real time, and improving the accuracy, efficiency and real-time performance of path optimization; based on the traffic corridor constraint, if it is determined that there is no collision in the optimal solution path, the optimal solution path is used as the driving path of the intelligent guided vehicle in the next frame, further ensuring the obstacle avoidance accuracy of the path, improving driving safety, reducing the probability of collision accidents, and realizing a collision-free and smooth intelligent guided vehicle driving path. Attached Figure Description
[0055] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0056] Figure 1 A flowchart illustrating the obstacle avoidance path optimization method for intelligent guided vehicles provided in this application embodiment;
[0057] Figure 2 This is a schematic diagram of sampling points on the vehicle body contour provided in an embodiment of this application;
[0058] Figure 3 A schematic diagram illustrating the effect of obstacle avoidance based on obstacles in adjacent lanes before and after an intersection during a left turn, as provided in an embodiment of this application.
[0059] Figure 4 A schematic diagram illustrating the effect of obstacle avoidance based on obstacles in adjacent lanes after an intersection during a left turn, as provided in an embodiment of this application.
[0060] Figure 5 A schematic diagram illustrating the effect of obstacle avoidance based on obstacles in adjacent lanes before an intersection during a left turn, as provided in an embodiment of this application.
[0061] Figure 6A schematic diagram illustrating the effect of obstacle avoidance based on obstacles in the middle of an intersection during a left turn, as provided in an embodiment of this application.
[0062] Figure 7 A schematic diagram illustrating the effect of obstacle avoidance based on obstacles on the left side of the road during a right lane change, as provided in an embodiment of this application.
[0063] Figure 8 A schematic diagram illustrating the effect of obstacle avoidance based on obstacles on the right side of the road during a right lane change, as provided in an embodiment of this application.
[0064] Figure 9 A schematic diagram of the obstacle avoidance path optimization device for intelligent guided vehicles provided in this application embodiment;
[0065] Figure 10 This is a schematic diagram of the controller provided in an embodiment of this application.
[0066] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0067] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0068] The terms “first,” “second,” etc., used in the specification and claims of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented, for example, in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, products, or apparatus.
[0069] Traditional motion planning techniques for autonomous vehicles (IGVs) mainly fall into three categories: search algorithms, sampling algorithms, and online optimization algorithms. Search algorithms are complex, time-consuming, and lack smoothness, making it difficult to output high-quality obstacle avoidance paths. Sampling algorithms struggle to fully explore the feasible space, have poor obstacle avoidance capabilities, and waste computational resources. Online optimization algorithms, on the other hand, are suitable for dynamically generating real-time obstacle avoidance paths. They describe the motion planning problem using cost functions, vehicle kinematic constraints, and collision constraints. Their core idea is to analytically represent vehicle motion smoothness and driving safety using convex functions, describing the cost function and constraint equations as a convex programming problem, and solving for the optimal solution using numerical methods, resulting in high solution quality. However, they oversimplify obstacle constraints. Currently, there is a lack of modeling and optimization schemes for IGV models, and traditional optimization methods generally oversimplify obstacle constraints, making it difficult to obtain high-quality feasible solutions when the scenario is complex. Furthermore, the problem construction accuracy and solution complexity of traditional path optimization algorithms are highly correlated, failing to simultaneously meet the obstacle avoidance, operational, and real-time computational requirements of IGVs.
[0070] To address the aforementioned technical issues, this application provides an obstacle avoidance path optimization method for intelligent guided vehicles. This method utilizes the differential flatness theorem to transform complex nonlinear system problems into relatively simple parametric curve problems. Furthermore, it combines the kinematic characteristics of intelligent guided vehicles to construct parametric path curves. Within the framework of a linearly constrained quadratic optimization problem, the path optimization problem is defined, ensuring the acquisition of high-quality solution results in real time.
[0071] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0072] Figure 1 This is a flowchart illustrating the obstacle avoidance path optimization method for intelligent guided vehicles provided in this application embodiment. It should be noted that the executing entity in this application embodiment can be an intelligent driving unit within the intelligent guided vehicle, such as a controller. This application embodiment does not limit the specific form of the executing entity.
[0073] like Figure 1 As shown, the obstacle avoidance path optimization method includes:
[0074] S101. Obtain the driving information of the intelligent guided vehicle.
[0075] The driving information includes, but is not limited to, basic vehicle parameters (such as vehicle speed and braking acceleration), initial vehicle pose (the initial state of the vehicle on each frame's driving path, such as horizontal coordinate, vertical coordinate, orientation angle, curvature, and multi-axis steering wheel angle), driving distance from the current position (usually a set constant representing the distance length of each frame's driving path), electronic map reference lines, a list of obstacles to avoid, the vehicle's driving path in the previous frame, and optimization problem configuration parameters (such as the maximum number of iterations and optimization bias weights).
[0076] For example, the controller of an intelligent guided vehicle can obtain the aforementioned driving information in real time from vehicle storage, sensors, map positioning systems, and upstream calculation results of the autonomous driving system.
[0077] S202. Based on the driving information, determine the starting point and traffic corridor constraints of the next frame's driving path for the intelligent guided vehicle.
[0078] The next frame of the driving path can be understood as the driving trajectory planned for the intelligent guided vehicle in a very short time frame, based on the real-time driving information of the intelligent guided vehicle at the current moment.
[0079] A traffic corridor constraint can be understood as a safe and feasible spatial range defined for intelligent guided vehicles during operation, within which the vehicle can avoid collisions with obstacles in the surrounding environment. The traffic corridor constraint characterizes the obstacle points that may lead to collisions within the traffic corridor and the boundaries of potential collisions.
[0080] For example, the starting point of the next frame's driving path can be determined by analyzing the intelligent guided vehicle's trajectory over a past period, considering the smoothness and continuity of the trajectory, thus ensuring a natural connection between the starting point of the next frame's path and the current trajectory. Alternatively, the current location can be used as the starting point of the next frame's driving path. For instance, in a logistics warehouse, the intelligent guided vehicle uses a laser positioning system to determine its specific location on the warehouse map, using this as the starting point of the next frame's path. For traffic corridor constraints, such as the distribution of obstacles around the vehicle and road boundaries, areas where the vehicle can safely travel can be determined.
[0081] S203. Determine the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
[0082] In the computation of optimization problems, it is usually necessary to determine a suitable initial solution to improve the solution quality and convergence speed. In the embodiments of this application, when optimizing the obstacle avoidance path, an initial solution path needs to be determined for each frame of the driving path. Based on the initial solution path, iterative optimization is performed to finally obtain the optimal solution path for that frame.
[0083] For example, in some embodiments, the driving information includes electronic map reference lines, determining the initial solution path of the parameterized path curve corresponding to the next frame's driving path of the intelligent guided vehicle, including:
[0084] S2031. If the driving information does not contain the driving path of the previous frame, then determine the target point that the intelligent guided vehicle is closest to the electronic map reference line.
[0085] Among these, electronic map reference lines, such as high-precision map reference lines, are typically represented by a series of discrete points or continuous curves (such as spline curves). When the driving information does not contain the driving path from the previous frame, it indicates that the current optimization target is the driving path from the first frame.
[0086] Select the point closest to the electronic map reference line from the current position of the intelligent guided vehicle as the target point. For example, calculate the distance from the vehicle's position (the center point of the rear axle of the intelligent guided vehicle) to all points on the electronic map reference line, and find the closest point (called the "projection point" or "closest point").
[0087] Alternatively, geometric methods (such as the distance formula from a point to a line segment) or optimization algorithms (such as gradient descent) can be used to accelerate the search.
[0088] S2032. Extend the reference line on the electronic map from the target point to the direction of travel of the intelligent guided vehicle by a set length to obtain the extended first path.
[0089] The length is set to meet the desired path length requirement, such as 20 cm or 30 cm. The orientation angle of the extended part (first path) converges in the first order from the orientation angle of the current position of the intelligent guide vehicle to the tangent direction of the electronic map reference line.
[0090] S2033. The first path is determined as the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
[0091] For example, in some embodiments, determining the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle further includes: if the driving information contains the driving path of the previous frame, extending the end position of the driving path of the previous frame towards the driving direction of the intelligent guided vehicle by a set length to obtain the extended second path; and determining the second path as the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
[0092] The driving information includes the driving path of the previous frame, indicating that the current optimization target is not the driving path of the first frame. At this time, the path of the previous frame is truncated from the starting point of the path, and the path in the direction of vehicle movement is taken. The path is extended from the last point (end position) of the path in the direction of vehicle movement along the electronic map reference line until the desired path length requirement is met. The orientation angle of the extended part (second path) converges in the first order from the orientation angle of the last point (end position) of the previous frame path to the tangent direction of the electronic map reference line. The extended path is stored as the initial solution.
[0093] By continuing the ending state (position, direction) of the previous frame's path and extending it by a set length along the current driving direction, an initial path that conforms to the vehicle's motion trend can be quickly generated. This initial path can serve as the starting point for subsequent optimizations (such as curvature constraints and obstacle avoidance), improving the efficiency and stability of path planning.
[0094] S204. Based on the differential flatness theorem, a parameterized path curve is constructed according to the initial solution path and the kinematic model of the intelligent guided vehicle.
[0095] For a nonlinear system, if there exists a set of output variables (called flat outputs) such that all state variables and input variables of the system can be uniquely represented by this set of outputs and their finite-order derivatives, then the system can be called a differentially flat system.
[0096] The kinematic model of the intelligent guided vehicle is transformed into a parameterized path curve using the concept of differential flatness. That is, according to the differential flatness theorem, the vehicle motion parameters can be uniformly represented by a set of higher-order differential terms. In other words, the vehicle kinematic path optimization problem is described as a parameter design problem for a parametric curve.
[0097] Based on the differential flatness theorem, and combining the initial solution path and the kinematic model of the intelligent guided vehicle, a parameterized path curve that satisfies the vehicle dynamics constraints can be constructed. For the intelligent guided vehicle, the flatness output is the (x, y) coordinates of the path and the heading angle (which can be labeled as yaw). The heading angle is the angle between the vehicle's current velocity direction and the positive x-axis direction of the global coordinate system, also known as the heading angle.
[0098] S205. Based on the preset loss function and constraints, determine the optimal solution path of the parameterized path curve according to the initial solution path.
[0099] The optimal solution can be understood as a set of optimal parameters for the parameter path curve. The specific curve shape can be determined by these optimal parameters, thereby obtaining the optimal solution path.
[0100] The loss function can be constructed based on multiple objectives such as smoothness, safety, and efficiency. Constraints ensure that the path meets kinematic, dynamic, and environmental limitations. Starting from the initial solution path, the parameters of the parameterized path curve are gradually adjusted. Under the constraints, the cost of the path (such as smoothness, safety, and efficiency) is minimized to obtain the optimal solution.
[0101] For example, the loss function can be composed of a weighted combination of multiple sub-objectives, with constraints such as kinematic constraints (constraining the maximum curvature and maximum steering angle), dynamic constraints (constraining the maximum speed and maximum acceleration), and environmental constraints (constraining the minimum distance between the path and obstacles, road boundaries, etc.).
[0102] It should be noted that when determining the optimal solution path of the parameterized path curve, there may be a situation where the solution fails, that is, there is no feasible solution, indicating that the current space does not meet the conditions for vehicle driving. In this case, for example, a warning notification such as "Please stop as soon as possible" is output.
[0103] S206. Based on the traffic corridor constraint, if it is determined that there is no collision in the optimal solution path for the intelligent guided vehicle, the optimal solution path shall be used as the driving path of the intelligent guided vehicle in the next frame.
[0104] Considering that in the process of solving the optimization problem, each part will make certain linear approximations in order to speed up the calculation, which may lead to approximation errors, the algorithm enters the post-processing judgment logic after obtaining the optimal solution path of the optimization problem.
[0105] For example, a range variable `s_nearby` is predefined. This range variable is related to the current vehicle speed and represents the range within which the vehicle can stop at a comfortable deceleration. When there is no collision within the `s_nearby` range, the optimal solution path (i.e., trajectory) is considered risk-free. Even if a collision exists at a distance, convergence can be achieved through cross-frame iterations, thus reducing computational time. For autonomous driving problems, near-field environmental information exhibits high determinism and detection accuracy, and its constraints tend to converge during iterations in historical frames. In contrast, distant obstacles have high uncertainty and large detection errors, but they can gradually converge, reducing reliance on a single solution.
[0106] s_nearby=vel 2 / (2*|safe_dec|)
[0107] In the formula, vel represents the current vehicle speed, safe_dec represents the safe distance, and safe_dec is a constant.
[0108] For example, within this range, a separation method is used to determine whether the intelligent guided vehicle is separated from the boundary of the passageway (i.e., no collision). If there is no collision, the optimal solution path is used as the driving path of the intelligent guided vehicle in the next frame. If a collision exists, it indicates that the residual in the path optimization process is large, and it is necessary to continue iterating until there is no risk of collision. If the current iteration number is less than the maximum iteration number, the current optimal solution path is used as the initial solution path, and the process returns to step S204 to continue iterating. Conversely, if the current iteration number is greater than or equal to the maximum iteration number, it indicates that the solution has failed and there is no feasible solution, meaning that the current space does not meet the conditions for vehicle driving. For example, a warning notification of "Please stop as soon as possible" is output.
[0109] In this embodiment, the starting point and traffic corridor constraints of the next frame's driving path for the intelligent guided vehicle are determined through driving information, providing a clear foundation and boundary conditions for subsequent path planning. The complex nonlinear system problem is transformed into a relatively simple parametric curve problem using the concept of differential flatness, reducing algorithm complexity. The kinematic characteristics of the intelligent guided vehicle are fully considered, making the construction of the path curve more scientific and reasonable. Defining the path optimization problem within the framework of a linearly constrained quadratic optimization problem allows for rapid finding of the optimal path solution, ensuring high-quality solution results in real time and improving the accuracy, efficiency, and real-time performance of path optimization. Furthermore, collision risk verification is performed on the optimal solution path to further ensure obstacle avoidance accuracy, improve driving safety, reduce the probability of collisions, and achieve a collision-free, smooth intelligent guided vehicle driving path.
[0110] In some embodiments, based on the differential flatness theorem, a parameterized path curve is constructed according to the initial solution path and the kinematic model of the intelligent guided vehicle, including:
[0111] S2041. Based on the principle of path smoothing, the key points of the parameterized path curve are sampled within a preset length range along the path direction of the initial solution path using a preset sampling algorithm.
[0112] The driving path in the next frame is represented by multiple segmented curves. During sampling, the principle of making the driving path as smooth as possible must be met. That is, in the spline curve segmentation, the more complex the segmented information, the denser the intervals of the key points on the spline curve, and the more complex the calculation.
[0113] For example, taking the turning angle of the initial solution path as a reference, spline complexity is evaluated by sliding a window within a fixed length (i.e., a preset length s). The larger the absolute value of the maximum turning angle within the window, the smaller the sampling interval within the window; that is, the sampling interval is dynamically adjusted based on the absolute value of the maximum turning angle within the window. A sampling function (i.e., a preset sampling algorithm) is defined as follows:
[0114]
[0115] In the formula, fake_steer i is the steering angle of the i-th axis. For a 4-axis intelligent guided vehicle, i is [1,4], and for a 2-axis intelligent guided vehicle, i is [1,2]. k_StepRatio is a preset proportional constant used to control the baseline value of the sampling interval. The outer max function finds the maximum value within the window [s-k_Window, s+k_Window]. The inner max function calculates the maximum absolute value of the multi-axis steering angle function for each position x within the window. The multi-axis steering angle function is expressed as:
[0116]
[0117] l i This represents the distance from the i-th axis of the intelligent guided vehicle to the vehicle's center point.
[0118] Multiple keypoints can be sampled using the above method to form a keypoint sequence. For example, the set of keypoints is recorded as key_point_list{key_point1,key_point2,...}, and the sequence of keypoints s is recorded as s_list{s1,s2,...}. The keypoint s sequence records the line length of each keypoint from the starting point. s1 represents the line length of the first keypoint from the starting point, s2 represents the line length of the second keypoint from the starting point, and so on.
[0119] It should be noted that when the keypoint sequence is empty, or when the distance between the line length of the tail element of the keypoint sequence and the line length between the current point and the starting point is less than sample_step(s), the current point will be added to the keypoint sequence.
[0120] S2042. Based on the differential flatness theorem, construct curve equations indexed by key points to obtain parameterized path curves.
[0121] For example, for intelligent guided vehicles where both the front and rear axles can steer independently, the path cannot be described as a single curve. For the three degrees of freedom of the vehicle's motion (x-coordinate, y-coordinate, and orientation angle), the output is a piecewise N-degree spline curve in analytical form reflecting its three independent parameters (x-coordinate, y-coordinate, and orientation angle). To reduce computational complexity, the three parameters correspond to three spline functions, and the parameterized path curve consists of multiple curve segments, each of which is an N-degree polynomial. For a single curve segment, it is a polynomial curve containing {s_start, s_end, matrix_x, matrix_y, matrix_yaw}, where matrix_x represents the parameter matrix of the polynomial of x relative to s, corresponding to matrix (1) in the following text when β=x. matrix_x is the spline function corresponding to the x-coordinate, matrix_y represents the parameter matrix of the polynomial of y with respect to s, corresponding to matrix (1) below when β = y, matrix_y is the spline function corresponding to the y-coordinate, and matrix_yaw represents the parameter matrix of the polynomial of yaw with respect to s, corresponding to matrix (1) below when β = yaw, matrix_yaw is the spline function corresponding to the orientation angle. The polynomial curve is represented by an Nth-degree polynomial curve, where the curve order N (N is a positive integer) is specified by the system. The larger N is, the higher the solution complexity, but the better the curve smoothness.
[0122] A parameterized path curve can be represented by decision variables, where the decision variable sequence is u{x0,d1x0,d2x0…,d(N-1)x0,y0,d1y0,d2y0…,d(N-1)y0,yaw0,
[0123] d1yaw0,…,d(N-1)yaw0,…dNx1,…dNy1,…dNyaw1,…
[0124] dNyaw2…,dNx (k-1) ,dNy (k-1) ,dNyaw (k-1)} where N is the order of the polynomial curve, k is the number of key points, k-1 is the number of curve segments, x0 represents the x-coordinate of the first key point (i.e., the starting point), d1x0 represents the first derivative of the x-coordinate of the first key point with respect to s, d(N-1)x0 represents the (N-1) derivative of the x-coordinate of the first key point with respect to s, d(N-1)y0 represents the (N-1) derivative of the y-coordinate of the first key point with respect to s, d(N-1)yaw0 represents the (N-1) derivative of the orientation angle yaw of the first key point with respect to s, and dNyaw (k-1) Let yaw represent the Nth derivative of the orientation angle yaw of the k-th keypoint with respect to s. This curve representation is naturally smooth and can be recursively extracted from the (a-1)-th curve segment using the following matrix recursive form:
[0125]
[0126] In the formula, h = s _a -s _a-1 , represents the line distance between the a-th key point and the previous key point.
[0127] In other words, any point on the parameterized path curve can be recursively transformed from the sequence of decision variables to the state variables at that point.
[0128] This linear transformation can be represented as State = Func(s), where State contains {x, d1x, d2x...dNx, y, dy, d2y...dNy, yaw, d1yaw, d2yaw...dNyaw}. Each item in State corresponds to a member of the set Func(s), and each item in State is a function of s, represented as x(s), y(s), yaw(s), etc.
[0129] The tangential direction of the State is represented as:
[0130]
[0131] The initial solution is denoted by InitGuess and recorded as State = InitGuess(s). State contains:
[0132] {x',d1x',d2x'…dNx',y',dy',d2y'...dNy',yaw',dyaw',d2yaw'...dNyaw'}, where each item in State corresponds to a member of the set InitGuess(s). Each item in State is a function of s, represented as x′(s), y′(s), yaw′(s), etc. It should be noted that both InitGuess(s) and Func(s) represent vector-valued functions, and each item in State represents its component functions.
[0133] Taylor expansion near the initial solution:
[0134]
[0135] That is, the orientation angle can be transformed into a linear representation of a set of decision variables.
[0136] The steering angle of the i-th axis can be locally linearized as follows:
[0137] fake_steer i =heading-yaw+dyaw*l i
[0138] Therefore, the state of an intelligent guided vehicle at any index s can be represented as a set of linear transformations of the decision variable sequence. Correspondingly, the construction of constraints and loss functions based on state variables can be regarded as the construction of constraints and loss functions of the same nature based on the decision variable sequence.
[0139] For the planar autonomous driving path planning problem, considering that the steering angle of the intelligent guided vehicle is a function of the first derivative of x and y, the orientation angle yaw, and the first derivative of yaw, for continuity considerations (i.e., the steering angle needs to be continuously differentiable with respect to s), the order N must not be less than 3. Adjacent curve segments have their s_start and s_end segments connected end-to-end. matrix_x, matrix_y, and matrix_yaw represent polynomial parameters, all of which can be represented by the aforementioned matrices. That is, when β = x, the matrix represents matrix_x; when β = y, the matrix represents matrix_y; and when β = yaw, the matrix represents matrix_yaw. The output trajectory can be obtained by using s as an index to retrieve the coordinates (x, y), orientation angle yaw, curvature kappa, and other information at any position.
[0140] In this embodiment, a preset sampling algorithm can reduce the sampling interval when the steering angle is large, thereby providing denser sampling points on complex path segments and improving the accuracy of path planning. When the steering angle is small, the sampling interval increases, reducing unnecessary computation and improving efficiency. This adaptive sampling method optimizes the sampling interval by considering changes in the steering angle, thus balancing accuracy and computational efficiency in path planning.
[0141] In some embodiments, the number of key points is K, each key point includes a starting point, and each pair of adjacent key points forms K-1 curve segments. Based on a preset loss function and constraints, the optimal solution path of the parameterized path curve is determined according to the initial solution path. This includes: based on the loss function and constraints, and according to the initial solution path, applying the alternating direction multiplier algorithm to determine the optimal parameters corresponding to each of the K-1 curve segments; and determining the optimal solution path of the parameterized path curve according to the optimal parameters corresponding to each of the K-1 curve segments.
[0142] It can be understood that this embodiment uses the alternating direction multiplier algorithm to solve the optimal decision variable sequence of the quadratic optimization problem. The optimal decision variable sequence is used as the optimal solution of the parameterized path curve. As described in step S2042, the parameterized path curve is represented by decision variables. The decision variable sequence contains parameters corresponding to K-1 curve segments. That is, the alternating direction multiplier algorithm can simultaneously determine the optimal parameters corresponding to K-1 curve segments. When the optimal parameters of K-1 curve segments are determined, the shape of the entire parameterized path curve is determined, and the optimal solution path is obtained.
[0143] The construction of the quadratic optimization problem includes the construction of the loss function and constraints. For example, in some embodiments, the constraints include: steering angle constraints, lane center departure constraints, and collision constraints. The steering angle constraints are used to ensure that the steering angle of the steering wheel of each axis of the intelligent guided vehicle does not exceed the vehicle's kinematic limit. The lane center departure constraints are used to ensure that the distance between the sampled path point and the electronic map reference line does not exceed the distance limit. The collision constraints are used to ensure that the geometric boundaries of the intelligent guided vehicle and the geometric boundaries of the obstacle do not collide. The loss function includes a smoothness loss function and a lane center departure loss function.
[0144] The loss function is composed of a smoothness loss function and a lane center distance loss function, and can be described as follows:
[0145]
[0146] u∈constraint_smooth
[0147] u∈constraint_collision
[0148] u∈constraint_ref
[0149] In the formula, J ref For loss functions far from the lane center, J smooth As a smoothness loss function, u must satisfy the steering angle constraint constraint_smooth, the collision constraint constraint_collision, and the distance from the lane center constraint constraint_ref.
[0150] For the smoothness loss function, a smoothness loss function term for the parameterized path curve is added by specifying weight coefficients, J smooth The sum of squares of the sampled steering angles is the sum of the sampled points. The sampling point sequence is obtained from step S2041. The smoothness loss function can be described as:
[0151]
[0152] In the formula, k_smooth is the smoothness weight coefficient, used to adjust the smoothness loss in the total loss function. The importance of ; fake_steer i (s) represents the steering angle of the i-th axis. For a 4-axle intelligent guided vehicle, i is [1,4], and for a 2-axle intelligent guided vehicle, i is [1,2].
[0153] Smoothness loss function J smooth The goal is to ensure path smoothness by minimizing the sum of squares of the steering angles (at all sampling points and at all steering angles).
[0154] For loss function J far from lane center ref J is used to measure the degree of deviation of the vehicle's current position from the lane centerline (electronic map reference line). ref The sum of squared distances between the sampled path points (points on the parameterized path curve) and the electronic map reference lines, and the loss function for distances from the lane center, can be described as follows:
[0155] lat_dist(s)=cos(yaw ref )*(y(s)-y ref )-sin(yaw ref )*(x(s)
[0156] -x ref )
[0157] lon_dist(s)=cos(yaw ref )*(x(s)-x ref )+sin(yaw ref )*(y(s)
[0158] -y ref )
[0159] yaw_error(s) = yaw(s) - yew ref
[0160] J ref =∑(k_lat*lat_dist(s) 2 +k_lon*lon_dist(s) 2 +k_yaw
[0161] *yaw_error(s) 2 )
[0162] In the formula, x ref Let x and y be the reference lines of the electronic map at the sampling points. ref Let yaw be the y-coordinate of the electronic map reference line at the sampling point. ref s represents the orientation angle of the electronic map reference line at the sampling point; x(s) and y(s) are the coordinates of the vehicle at the sampling point s; yaw(s) is the orientation angle of the vehicle at the sampling point; yaw_error(s) represents the deviation between the vehicle's current direction and the lane centerline direction; lat_dist(s) represents the projection of the distance between the vehicle's position and the centerline position onto the latitude direction; lon_dist(s) represents the projection of the distance between the vehicle's position and the centerline position onto the longitude direction; k_lat, k_lon, and k_yaw are all weighting coefficients used to adjust the importance of distance and orientation angle errors in different directions in the total loss function.
[0163] By minimizing J ref This allows the vehicle to get as close as possible to the center line of the lane and maintain a heading consistent with the center line.
[0164] The steering angle constraint in the constraints is used to ensure that the steering angle of the steering wheel on each axle of the intelligent guided vehicle does not exceed the vehicle's kinematic limits. The steering angle constraint can be described as follows:
[0165] |fake_steer i | <steer_max
[0166] The constraint "away from lane center" is used to ensure that the distance between the sampling path point and the electronic map reference line does not exceed the distance limit. The "away from lane center" constraint can be described as follows:
[0167] |lat_dist(s)| <lat_dist_max
[0168] |lon_dist(s)| <lon_dist_max
[0169] |yaw_error(s)| <yaw_error_max
[0170] The collision constraint in the constraints is used to prevent collisions between the geometric boundaries of the intelligent guided vehicle and the geometric boundaries of the obstacle. Specifically, a single avoidance direction is determined based on the obstacle's position on the intelligent guided vehicle (left or right) (left_pass for left, right_pass for right); the coordinates (box_x, box_y) of the intelligent guided vehicle's body contour are discretely sampled, and the horizontal and vertical axes of these coordinates relative to the rear axle center point of the intelligent guided vehicle are l_box and l_y, respectively. m and d_box m Sampling points such as Figure 2 As shown in the schematic diagram of sampling points on the vehicle body contour provided in the embodiments of this application, there are a number of sampling points on a vehicle body contour, where m represents the m-th sampling point, and the number of sampling points and the l_box corresponding to each sampling point are also shown. m and d_box m All parameters are preset.
[0171] Where box_x and box_y can be represented as:
[0172] box_x m (s)=x(s)+l_box m *cos(yaw(s))-d_box m *sin(yaw(s))
[0173] box_y m (s)=y(s)+l_box m *sin(yaw(s))+d_box m *cos(yaw(s))
[0174] Potential collision points collision_x and collision_y are represented as follows:
[0175] (box_x-boundary_x)*cos(boundary_yaw)+(box_y-boundary_y)
[0176] *sin(boundary_yaw)=0
[0177] In the formula, boundary_x, boundary_y, and boundary_yaw are the coordinates and orientation angles of a point on the boundary line in the passageway constraint determined in step S202, which are used to define the boundary of the area where an obstacle may collide.
[0178] Substituting the initial solution InitGuess into the following equation:
[0179] (box_x-boundary_x)*cos(boundary_yaw)+(box_y-boundary_y)
[0180] *sin(boundary_yaw)=0
[0181] box_x m (s)=x(s)+l_box m *cos(yaw(s))-d_box m *sin(yaw(s))
[0182] box_y m (s)=y(s)+l_box m *sin(yaw(s))+d_box m *cos(yaw(s))
[0183] Then, by numerical calculation using Newton's method, the potential collision position s can be obtained, where the initial solution is expressed as:
[0184] {x',d1x',d2x'...dNx',y',dy',d2y'...dNy',yaw',dyaw',d2yaw'...dNyaw'}
[0185] It is understandable that x(s), y(s), and yaw(s) are unknown functions, while x′(s), y′(s), and yaw′(s) are known functions of the initial solution. Let x(s) = x′(s), y(s) = y′(s), and yaw(s) = yaw′(s), and substitute them into the above equation to solve for the collision position s.
[0186] Construct collision constraints for parameterized path curves, where the collision constraints are expressed as:
[0187] pass_dir*((box_y-boundary_y)*cos(boundary_yaw)
[0188] -(box_x-boundary_x)*sin(boundary_yaw))>0
[0189] Here, pass_dir represents the avoidance direction parameter, which is 1.0 for right_pass and -1.0 for left_pass. The constraint can be described as a linear constraint on a set of decision variables by performing a Taylor expansion of the box coordinates on the vehicle body contour near InitGuess.
[0190] In practical optimization problems, some constraints may not be strictly satisfied due to environmental complexity or model limitations. By introducing slack variables, a certain degree of constraint violation can be allowed. Therefore, collision constraints can be defined as soft constraints, and by introducing the soft constraint slack variable, the collision constraint condition can be determined as follows:
[0191] pass_dir*((box_y-boundary_y)*cos(boundary_yaw)
[0192] -(box_x-boundary_x)*sin(boundary_yaw))+slack
[0193] >0
[0194] J_slack = k_slack * slack 2
[0195] In the formula, k_slack is a weighting coefficient used to adjust the importance of relaxation cost in the total loss function.
[0196] This application embodiment constructs loss functions and constraints from multiple dimensions, fully considering the kinematic characteristics of intelligent guided vehicles, and provides an approximate mathematical representation of the constraints for collision-free operation of the entire intelligent guided vehicle body. It is particularly suitable for planning scenarios of multi-axis cooperative obstacle avoidance optimal paths, thereby improving the obstacle avoidance accuracy of the optimal solution path.
[0197] In some embodiments, the driving information includes an initial pose and electronic map reference lines. Based on the driving information, determining the starting point of the next frame driving path for the intelligent guided vehicle includes: if the driving information does not contain the previous frame driving path, then determining the initial pose as the starting point of the next frame driving path; if the driving information contains the previous frame driving path, then determining the projection point of the initial pose on the previous frame driving path; extending a target distance from the projection point towards the vehicle's driving direction, and using the position corresponding to the target distance as the starting point of the next frame driving path.
[0198] For example, when the driving information includes the driving path of the previous frame, the starting point for planning the driving path of the next frame is determined from the driving path of the previous frame. The closest point on the driving path of the previous frame to the vehicle's initial pose is calculated, that is, the point on the driving path of the previous frame that is closest in both distance and direction to the vehicle's current position. The starting point for smooth path connection can be obtained by projecting the vehicle's initial pose onto the driving path of the previous frame. Assuming the position of the projected point is s0, a target distance stitch_s is extended from s0 towards the vehicle's driving direction to obtain the position point of the driving path of the previous frame at s0+stitch_s, which is used as the starting point of the driving path of the next frame. Here, stitch_s is determined by the vehicle's speed and the system's estimated delay time, and stitch_s = vel * delta_t, where vel represents the current vehicle speed and delta_t represents the system's estimated delay time.
[0199] In this embodiment, when there is no previous frame's driving path, the initial pose is directly used as the starting point for the next frame's driving path, avoiding path breaks caused by missing historical information and ensuring the continuity of path planning. When there is a previous frame's driving path, the starting point is determined by extending the target distance from the projection point, allowing the new path to naturally connect with the historical path, reducing path abrupt changes and improving overall smoothness. Furthermore, the dynamic starting point determination mechanism enhances the dynamic adaptability and computational efficiency of the obstacle avoidance path optimization algorithm, providing a more reliable and efficient path planning foundation for intelligent guided vehicles.
[0200] In some embodiments, the driving information includes electronic map reference lines and obstacle information. Based on the driving information, the corridor constraints for the next frame's driving path of the intelligent guided vehicle are determined, including:
[0201] Step 1.1: Based on the reference lines of the electronic map, set the lateral distance expansion to obtain the passage corridor for intelligent guided vehicles.
[0202] For example, construct a passageway along an electronic map reference line, with a defined horizontal expansion range on both the left and right sides. For instance, set the horizontal distance to 3 meters.
[0203] Step 1.2: Traverse the obstacles contained in the obstacle information to determine whether they are located in the passageway.
[0204] Based on the location information of the obstacle in the obstacle information, determine whether it is within the lateral expansion range (passage corridor). If not, ignore it; if it is, proceed to step 1.3.
[0205] Step 1.3: For obstacles located in the passageway, sample the boundaries of the obstacles counterclockwise to obtain the set of boundary points corresponding to the obstacles.
[0206] Step 1.4: Determine the passageway constraints based on the boundary point set.
[0207] For example, for the q-th sampling point p(q) and the (q+1)-th sampling point p(q+1) in the boundary point set, there exists a vector p(q) pointing to p(q+1). The dot product of this vector and the unit vector tangent to the path projection point along the electronic map reference line is determined. The path projection point is the projection point of the obstacle boundary point set onto the electronic map reference line. When the obstacle is to the left of the electronic map reference line, if the dot product is greater than 0, the sampling point p(q) is ignored; otherwise, the sampling point p(q) is projected onto the electronic map reference line. When the obstacle is to the right of the reference line, if the dot product is less than 0, the sampling point p(q) is ignored; otherwise, the sampling point p(q) is projected onto the electronic reference line and described as a discrete relative coordinate sequence, thus obtaining the boundary constraints for possible collisions.
[0208] Next, through multiple sets of simulation experiments, the accuracy and performance of the obstacle avoidance path optimization method for intelligent guided vehicles provided in the embodiments of this application are verified. Figure 3 This is a schematic diagram illustrating the effect of obstacle avoidance based on obstacles in adjacent lanes before and after an intersection during a left turn, as provided in an embodiment of this application. Figure 4 This is a schematic diagram illustrating the effect of obstacle avoidance based on obstacles in adjacent lanes after an intersection during a left turn, as provided in an embodiment of this application. Figure 5 This is a schematic diagram illustrating the effect of obstacle avoidance based on obstacles in adjacent lanes before an intersection during a left turn, as provided in an embodiment of this application. Figure 6 This is a schematic diagram illustrating the effect of obstacle avoidance based on a middle obstacle at an intersection during a left turn, as provided in an embodiment of this application. Figure 7 This is a schematic diagram illustrating the effect of obstacle avoidance based on obstacles on the left side of the road during a right lane change, as provided in an embodiment of this application. Figure 8 This is a schematic diagram illustrating the effect of obstacle avoidance based on obstacles on the right side of the road during a right lane change, as provided in an embodiment of this application. Figures 3-8 It demonstrates how the four axles work together to complete steering actions under different steering conditions.
[0209] In each figure (a), the horizontal axis represents the map's horizontal coordinate from a top-down view, and the vertical axis represents the map's vertical coordinate from a top-down view. Figure (a) shows that the optimal solution path avoids obstacles when approaching them, bypassing them and gradually returning to the normal driving path in subsequent sections. In each figure (b), the horizontal axis represents the driving distance, and the vertical axis represents the steering angle. The four curves represent the changes in the steering angle of the vehicle's four axles with the driving distance, ensuring the vehicle completes the steering avoidance maneuver smoothly and safely. Taking a four-axle intelligent guided vehicle as an example, the axles are numbered 1 to 4 sequentially from the rear to the front. Curve 1 represents the equivalent steering angle of axle 1, curve 2 represents the equivalent steering angle of axle 2, curve 3 represents the equivalent steering angle of axle 3, and curve 4 represents the equivalent steering angle of axle 4. Figure (b) shows that the steering angles of each axle work together to complete the obstacle avoidance steering maneuver, and the steering process is smooth.
[0210] In summary, this application implements a general path optimization solution framework, describing the differential flatness of the kinematic constraints of intelligent guided vehicles as a parametric curve problem. It fully considers the kinematic characteristics of multi-axle driving and designs an approximate mathematical representation of the collision-free constraints for the entire intelligent guided vehicle body, providing a planning method for optimal paths in multi-axle cooperative obstacle avoidance. The path optimization problem is defined within the framework of a linearly constrained quadratic optimization problem, ensuring high-quality real-time solution results and achieving fast and high-quality computation of collision-free, smooth intelligent guided vehicle driving paths.
[0211] Figure 9 This is a schematic diagram of the obstacle avoidance path optimization device for intelligent guided vehicles provided in the embodiments of this application, as shown below. Figure 9 As shown, the obstacle avoidance path optimization device 90 for intelligent guided vehicles includes: an acquisition module 91, a first processing module 92, a construction module 93, and a second processing module 94. Wherein:
[0212] The acquisition module 91 is used to acquire the driving information of the intelligent guided vehicle;
[0213] The first processing module 92 is used to determine the starting point and traffic corridor constraints of the next frame driving path of the intelligent guided vehicle based on the driving information; and to determine the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
[0214] Module 93 is used to construct parameterized path curves based on the differential flatness theorem, the initial solution path, and the kinematic model of the intelligent guided vehicle.
[0215] The second processing module 94 is used to determine the optimal solution path of the parameterized path curve based on the preset loss function and constraints and the initial solution path; and, when it is determined that there is no collision in the optimal solution path based on the traffic corridor constraints, the optimal solution path is used as the next frame driving path of the intelligent guided vehicle.
[0216] In one possible implementation, the construction module 93 is specifically used to: based on the path smoothing principle, using a preset sampling algorithm, sample key points of the parameterized path curve along the path direction of the initial solution path within a preset length range; and based on the differential flatness theorem, construct a curve equation indexed by the key points to obtain the parameterized path curve.
[0217] In one possible implementation, the number of key points is K, and each key point includes a starting point. Each pair of key points adjacent to each other forms K-1 curve segments. The second processing module 94 is specifically used to: determine the optimal parameters corresponding to each of the K-1 curve segments based on the loss function and constraints, according to the initial solution path, by applying the alternating direction multiplier algorithm; and determine the optimal solution path of the parameterized path curve based on the optimal parameters corresponding to each of the K-1 curve segments.
[0218] In one possible implementation, the constraints include: steering angle constraints, lane center distance constraints, and collision constraints. The steering angle constraints are used to ensure that the steering angle of the steering wheel of each axis of the intelligent guided vehicle does not exceed the vehicle's kinematic limits. The lane center distance constraints are used to ensure that the distance between the sampled path point and the electronic map reference line does not exceed the distance limit. The collision constraints are used to ensure that the geometric boundaries of the intelligent guided vehicle and the geometric boundaries of the obstacle do not collide. The loss function includes a smoothness loss function and a lane center distance loss function.
[0219] In one possible implementation, the driving information includes an initial pose and an electronic map reference line. The first processing module 92 is specifically used to: if the driving information does not contain the driving path of the previous frame, determine the initial pose as the starting point of the driving path of the next frame; if the driving information contains the driving path of the previous frame, determine the projection point of the initial pose on the driving path of the previous frame; extend the target distance from the projection point to the vehicle driving direction, and take the position corresponding to the target distance as the starting point of the driving path of the next frame.
[0220] In one possible implementation, the driving information includes electronic map reference lines and obstacle information. The first processing module 92 is further configured to: perform a lateral distance extension based on the electronic map reference lines to obtain the passageway of the intelligent guided vehicle; traverse the obstacles contained in the obstacle information to determine whether they are located within the passageway; for obstacles located within the passageway, perform counterclockwise sampling on the boundary of the obstacle to obtain the boundary point set corresponding to the obstacle; and determine the passageway constraints based on the boundary point set.
[0221] In one possible implementation, the driving information includes an electronic map reference line, and the first processing module 92 is further configured to: if the driving information does not contain the driving path of the previous frame, determine the target point that is closest to the electronic map reference line to the intelligent guided vehicle; extend the electronic map reference line from the target point to the driving direction of the intelligent guided vehicle by a set length to obtain the extended first path; and determine the first path as the initial solution path of the parameterized path curve corresponding to the driving path of the intelligent guided vehicle in the next frame.
[0222] In one possible implementation, the first processing module 92 is further configured to: if the driving information contains the driving path of the previous frame, extend the driving path of the previous frame by a set length in the driving direction of the intelligent guided vehicle to obtain the extended second path; and determine the second path as the initial solution path of the parameterized path curve corresponding to the driving path of the next frame of the intelligent guided vehicle.
[0223] The obstacle avoidance path optimization device for intelligent guided vehicles provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.
[0224] Figure 10 This is a schematic diagram of the controller provided in an embodiment of this application. Figure 10 As shown, the controller 10 provided in this embodiment includes at least one processor 11 and a memory 12. Optionally, the controller 10 also includes a communication component 13. The processor 11, memory 12, and communication component 13 are connected via a bus 14.
[0225] In a specific implementation, at least one processor 11 executes computer execution instructions stored in memory 12, causing at least one processor 11 to perform the above-described method.
[0226] The specific implementation process of processor 11 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0227] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0228] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0229] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0230] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0231] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0232] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0233] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0234] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0235] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0236] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0237] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0238] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0239] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.
Claims
1. A method for optimizing obstacle avoidance paths for intelligent guided vehicles, characterized in that, include: Obtain driving information of intelligent guided vehicles; Based on the driving information, determine the starting point and traffic corridor constraints of the next frame driving path of the intelligent guided vehicle; Determine the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle. Based on the differential flatness theorem, the parameterized path curve is constructed according to the initial solution path and the kinematic model of the intelligent guided vehicle; Based on the preset loss function and constraints, the optimal solution path of the parameterized path curve is determined according to the initial solution path. If, based on the traffic corridor constraints, it is determined that the intelligent guided vehicle will not encounter any collisions in the optimal solution path, the optimal solution path will be used as the next frame's driving path for the intelligent guided vehicle.
2. The obstacle avoidance path optimization method according to claim 1, characterized in that, The parameterized path curve is constructed based on the differential flatness theorem, according to the initial solution path and the kinematic model of the intelligent guided vehicle, including: Based on the path smoothing principle, a preset sampling algorithm is used to sample the key points of the parameterized path curve within a preset length range along the path direction of the initial solution path. Based on the differential flatness theorem, a curve equation is constructed with the key points as indices to obtain the parameterized path curve.
3. The obstacle avoidance path optimization method according to claim 2, characterized in that, The number of key points is K, each key point includes the starting point, and each pair of adjacent key points forms K-1 curve segments. The process of determining the optimal solution path of the parameterized path curve based on a preset loss function and constraints, according to the initial solution path, includes: Based on the loss function and the constraints, and according to the initial solution path, the optimal parameters corresponding to the K-1 curve segments are determined by applying the alternating direction multiplier algorithm. The optimal solution path of the parameterized path curve is determined based on the optimal parameters corresponding to the K-1 curve segments.
4. The obstacle avoidance path optimization method according to any one of claims 1 to 3, characterized in that, The constraints include: steering angle constraint, lane center distance constraint, and collision constraint. The steering angle constraint is used to ensure that the steering angle of each axis of the intelligent guided vehicle does not exceed the vehicle kinematic limit. The lane center distance constraint is used to ensure that the distance between the sampling path point and the electronic map reference line does not exceed the distance limit. The collision constraint is used to ensure that the geometric boundary of the intelligent guided vehicle and the geometric boundary of the obstacle do not collide. The loss function includes a smoothness loss function and a lane center distance loss function.
5. The obstacle avoidance path optimization method according to any one of claims 1 to 3, characterized in that, The driving information includes the initial pose and electronic map reference lines. Based on the driving information, the starting point of the next frame's driving path for the intelligent guided vehicle is determined, including: If the driving information does not contain the driving path of the previous frame, then the initial pose is determined as the starting point of the driving path of the next frame. If the driving information contains the driving path of the previous frame, then the projection point of the initial pose on the driving path of the previous frame is determined; Extend the target distance from the projection point in the direction of vehicle travel, and use the position corresponding to the target distance as the starting point of the next frame's travel path.
6. The obstacle avoidance path optimization method according to any one of claims 1 to 3, characterized in that, The driving information includes electronic map reference lines and obstacle information. Based on the driving information, the corridor constraints for the next frame's driving path of the intelligent guided vehicle are determined, including: Based on the reference line of the electronic map, the lateral distance is extended to obtain the passage corridor of the intelligent guided vehicle; Traverse the obstacles contained in the obstacle information to determine whether they are located within the passageway; For obstacles located in the passageway, the boundaries of the obstacles are sampled counterclockwise to obtain the set of boundary points corresponding to the obstacles; The travel corridor constraints are determined based on the set of boundary points.
7. The obstacle avoidance path optimization method according to any one of claims 1 to 3, characterized in that, The driving information includes electronic map reference lines, and the initial solution path for determining the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle includes: If the driving information does not contain the driving path of the previous frame, then the target point that the intelligent guided vehicle is closest to relative to the electronic map reference line is determined; Along the electronic map reference line, extend a predetermined length from the target point toward the direction of travel of the intelligent guided vehicle to obtain the extended first path; The first path is determined as the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
8. The obstacle avoidance path optimization method according to claim 7, characterized in that, The step of determining the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle further includes: If the driving information contains the driving path of the previous frame, then the driving path of the previous frame is extended by a set length in the driving direction of the intelligent guided vehicle from the end position of the driving path of the previous frame to obtain the extended second path. The second path is determined as the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle.
9. A path optimization device for intelligent guided vehicles, characterized in that, include: The acquisition module is used to acquire the driving information of the intelligent guided vehicle; The first processing module is used to determine the starting point and traffic corridor constraints of the next frame driving path of the intelligent guided vehicle based on the driving information. Determine the initial solution path of the parameterized path curve corresponding to the next frame driving path of the intelligent guided vehicle. A construction module is used to construct the parameterized path curve based on the differential flatness theorem, according to the initial solution path and the kinematic model of the intelligent guided vehicle; The second processing module is used to determine the optimal solution path of the parameterized path curve based on the preset loss function and constraints, according to the initial solution path. Furthermore, if, based on the traffic corridor constraints, it is determined that the intelligent guided vehicle will not encounter any collisions in the optimal solution path, the optimal solution path will be used as the next frame's driving path for the intelligent guided vehicle.
10. A controller, characterized in that, include: Memory, processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory, causing the processor to perform the method as described in any one of claims 1 to 8.
11. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed, are used to implement the method as described in any one of claims 1 to 8.