Track planning method and device, equipment and storage medium

By introducing a multi-section iterative framework for vehicle body expansion distance in the autonomous driving technology, the parking path is optimized, and the problem of difficulty in optimizing path length, shift times and obstacle distance in the existing technology is solved, and a more efficient and safe parking path planning is achieved.

CN120141519APending Publication Date: 2025-06-13BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510336365.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-20
Publication Date
2025-06-13

AI Technical Summary

Technical Problem

It is difficult for existing autonomous driving technology to optimize the path length, shift times and obstacle distance at the same time in parking path planning, resulting in insufficient parking efficiency and safety.

Method used

By introducing a multi-interval iterative framework for body expansion distance in the trajectory planning method, the initial path is gradually optimized, combined with front-end path search and rear-end trajectory optimization, the body expansion distance is adjusted to balance the path cost.

Benefits of technology

Improve the quality and solution efficiency of parking paths, ensuring the smoothness, safety and optimization of the paths.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120141519A_ABST
    Figure CN120141519A_ABST
Patent Text Reader

Abstract

The invention provides a trajectory planning method, device and equipment and a storage medium, and relates to the technical field of computers, in particular to the technical field of automatic driving, autonomous parking and path planning. According to the specific implementation scheme, first expansion distances in a first value interval of vehicle body expansion distances are used one by one, path searching is carried out in a target space, and an initial feasible path is obtained; trajectory optimization is conducted on the feasible path according to the second value interval of the vehicle body expansion distance; wherein any vehicle body expansion distance contained in the second value interval is not smaller than the first expansion distance; according to a trajectory optimization result, obtaining a target trajectory and updating the first value interval; and performing path search again by using the updated first value interval until a first iteration stop condition is met, so as to obtain an optimal target trajectory. According to the invention, the quality and solving efficiency of the obtained track can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular, to the fields of autonomous driving, autonomous parking, and path planning technology. Background Art

[0002] In the field of autonomous driving, a framework based on front-end path search + back-end trajectory optimization is commonly used to solve the vehicle path planning problem in an open scenario, such as parking path planning. The front-end path search is used to find an initial path close to the global optimum, but the front-end does not fully consider the vehicle dynamics characteristics. Therefore, it is necessary to optimize the front-end path at the back-end to obtain a smoother trajectory. Summary of the Invention

[0003] The present disclosure provides a trajectory planning method, apparatus, device, and storage medium.

[0004] According to an aspect of the present disclosure, there is provided a trajectory planning method, including:

[0005] Using, one by one, the first expansion distances in the first value range of the vehicle body expansion distance to perform path search in the target space to obtain an initial feasible path;

[0006] Performing trajectory optimization on the feasible path according to the second value range of the vehicle body expansion distance; wherein any vehicle body expansion distance included in the second value range is not less than the first expansion distance;

[0007] Obtaining a target trajectory according to the result of the trajectory optimization and updating the first value range;

[0008] Using the updated first value range to re-perform path search until the first iteration stop condition is satisfied to obtain an optimal target trajectory.

[0009] According to another aspect of the present disclosure, there is provided a trajectory planning apparatus, including:

[0010] A front-end search module, configured to use, one by one, the first expansion distances in the first value range of the vehicle body expansion distance to perform path search in the target space to obtain an initial feasible path;

[0011] A back-end optimization module, configured to perform trajectory optimization on the feasible path according to the second value range of the vehicle body expansion distance; wherein any vehicle body expansion distance included in the second value range is not less than the first expansion distance;

[0012] An update module, configured to obtain a target trajectory according to the result of the trajectory optimization and update the first value range;

[0013] An iterative module, configured to perform path search again using the updated first value range until a first iteration stop condition is met, so as to obtain an optimal target trajectory.

[0014] According to another aspect of the present disclosure, there is provided an electronic device, including:

[0015] At least one processor; and

[0016] A memory communicatively connected to the at least one processor; wherein,

[0017] The memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, the at least one processor is enabled to execute any method in the embodiments of the present disclosure.

[0018] According to another aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause the computer to execute any method in the embodiments of the present disclosure.

[0019] According to another aspect of the present disclosure, there is provided a computer program product, including a computer program, which when executed by a processor, implements any method in the embodiments of the present disclosure.

[0020] The present disclosure can improve the quality of the obtained trajectory and the solution efficiency.

[0021] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it used to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] The drawings are used to better understand the solution and do not constitute a limitation to the present disclosure. Among them:

[0023] Figure 1 is a flowchart of a trajectory planning method according to an embodiment of the present disclosure;

[0024] Figure 2 is a logical framework diagram of a trajectory planning method according to an embodiment of the present disclosure;

[0025] Figure 3 is a structural schematic diagram of a trajectory planning device according to an embodiment of the present disclosure;

[0026] Figure 4 is a block diagram of an electronic device for implementing the embodiments of the present disclosure. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0027] The exemplary embodiments of the present disclosure will be described below with reference to the accompanying drawings. Various details of the embodiments of the present disclosure are included to facilitate understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope of the present disclosure. Similarly, descriptions of well-known functions and structures are omitted in the following description for clarity and conciseness.

[0028] In the related art, when solving the trajectory planning problem, such as parking path planning, the parking time is not only related to the path length but also related to the number of gear shifts. Since the vehicle needs to go through a start-stop process every time it shifts gears, the parking time increases. Therefore, the shortest path cannot guarantee optimality for parking. The smaller the distance between the host vehicle and the obstacle used in the planning, although a shorter path with fewer gear shifts can be searched at the front end, it will lead to a worse sense of security for the passengers in the vehicle, and such a path also has weaker anti-interference ability against the jumping of the perceived obstacle position, resulting in unnecessary collision replanning, which in turn causes an increase in the path length and the number of maneuvers. On the contrary, if the distance to the obstacle is larger, although it can improve the sense of security and reduce the probability of collision replanning, the searched path is longer and the number of gear shifts is more, which will also lead to an increase in the parking time. The optimal parking route should not only consider a single index but also take into account a shorter path length, fewer gear shifts, and a larger distance to the obstacle as much as possible.

[0029] On the other hand, the distance to the obstacle is usually set in advance by humans according to different scenarios, and the path length and the number of gear shifts are only considered in the front-end search process. The same distance to the obstacle is used for trajectory smoothing in the back-end optimization. The distribution of obstacles in the parking scenario is complex and changeable, so the scenario recognition naturally does not have generalization. In the related art, only the path length and the number of gear shifts are considered in the internal iteration of the front-end search, and the distance to the obstacle, the path length, and the number of gear shifts are not added to the overall framework for joint iteration. Therefore, the optimality of the parking route cannot be guaranteed.

[0030] To at least partially solve one or more of the above problems and other potential problems, the embodiments of the present disclosure provide a trajectory planning method that incorporates the distance to the obstacle into the frameworks of the front-end search and the back-end optimization for joint iteration. The total cost (which can include the cost of the distance to the obstacle, the path length cost, the number of gear shifts cost, etc.) is used to guide the front-end search and the back-end optimization to iterate in the direction of lower cost, and finally, the planning route with the minimum cost is obtained. Using the technical solution of the embodiments of the present disclosure can accelerate the trajectory solving process and improve the quality of the obtained trajectory.

[0031] Figure 1 is a schematic flowchart of a trajectory planning method according to an embodiment of the present disclosure. As Figure 1 shown, the method at least includes the following steps:

[0032] S101. Use the first expansion distance in the first value range of the vehicle body expansion distance one by one to perform path search in the target space to obtain an initial feasible path.

[0033] In the embodiments of the present disclosure, in the parking scenario, the target space may be a grid representation of the parking area. In other path planning scenarios, the target space may be a grid representation of the corresponding area. The first value range of the vehicle body expansion distance is used for the front-end path search and may be a predefined range. For example, the preset value range of the vehicle body expansion distance is [d min , d max , corresponding to the minimum value (lower limit) and the maximum value (upper limit) of the vehicle body expansion distance respectively. The first value range may also be a subset of [d min , d max , and the first value range is denoted as [d begin , d end . Specifically, assuming that the first value range of the vehicle body expansion distance is [d begin , d end , then path search is performed within this range to find a relatively rough initial feasible path. The front-end path search can be implemented by means such as the A* algorithm, the Hybrid A* algorithm, the Dijkstra algorithm, and the rapidly-exploring random tree. The initial feasible path is the initial solution obtained each time the front-end search is successful.

[0034] The preset value range [d min , d max is usually obtained based on the safety range of the distance between the vehicle and obstacles in the parking scenario, the vehicle handling characteristics, and the path planning accuracy requirements. d min ensures a minimum safety buffer between the vehicle and obstacles to avoid collision risks; d max is the maximum safety buffer between the vehicle and obstacles to avoid too low a sense of security for the user. The two jointly delimit the initial search range of the vehicle body expansion distance and provide a reasonable starting point for subsequent iterations.

[0035] S102. Optimize the trajectory of the feasible path according to the second value range of the vehicle body expansion distance.

[0036] In the embodiments of the present disclosure, the back-end trajectory optimization will be based on the initial path searched by the front-end and use a larger vehicle body expansion distance (the second expansion distance, denoted as d smooth ) for optimization. By adjusting d smooth , the path can be smoothed and finely adjusted. On the premise of ensuring that the path conforms to the dynamic constraints of the vehicle, the larger d smooth is when the trajectory optimization is successful, the higher the safety of the trajectory.

[0037] S103. Obtain the target trajectory and update the first value range according to the result of trajectory optimization.

[0038] In the embodiments of the present disclosure, if the backend optimization is successful, the obtained trajectory will be used as the target trajectory. At this time, the obtained target trajectory may not necessarily be the global optimal solution. To obtain the optimal target trajectory, a depth-first search (DFS) strategy can be used to optimize and update the first value range of the vehicle body expansion distance. The updated first value range may be [d smooth +Δd, d max , where Δd is the step size.

[0039] S104. Use the updated first value range to perform path search again until the first iteration stop condition is met to obtain the optimal target trajectory.

[0040] In the embodiments of the present disclosure, when the first iteration stop condition is not met, return to step S101 to perform the next round of operations, that is, use the updated first value range to execute step S101 to perform path search again. After executing another round of S101 to S103, use the updated first value range to execute step S101 to perform path search again until the first iteration stop condition is met to achieve iterative processing. The first iteration stop condition may be that [d min , d max has been traversed or the number of iterations reaches the threshold. In this way, after each iteration, the first value range will be updated to a smaller sub-range. DFS will continue to search within the new first value range to find a better path and optimization solution until all possible combinations of expansion distances are traversed.

[0041] According to the solution of the embodiments of the present disclosure, the front end uses a smaller vehicle body expansion distance for aggressive search, and the back end uses a larger vehicle body expansion distance for conservative optimization. By adjusting the vehicle body expansion distance, the obstacle distance cost, path length cost, and shift number cost are coordinated to find the optimal trajectory with the minimum total cost; through the DFS strategy, all possible paths and optimization solutions can be efficiently explored, improving the efficiency of finding the optimal solution.

[0042] In a possible implementation manner, S103 obtaining the target trajectory and updating the first value range according to the result of trajectory optimization further includes the steps of:

[0043] S1031. Determine the second expansion distance used for successful trajectory optimization and the candidate trajectory obtained from successful trajectory optimization according to the result of trajectory optimization.

[0044] S1032. Obtain the target trajectory according to the candidate trajectory.

[0045] S1033. Update the first value range according to the second expansion distance.

[0046] In the embodiments of the present disclosure, the candidate trajectory obtained by each round of backend trajectory optimization is the current optimal solution, and the target trajectory can be determined according to this candidate trajectory. Specifically, when there is no candidate solution currently (i.e., there is no initial value for the target trajectory), this candidate trajectory is directly used as the target trajectory. When there is already a candidate solution (i.e., there already exists a target trajectory), this candidate trajectory is used as the new target trajectory to replace the old target trajectory. When the iteration stops, the current latest target trajectory is the optimal target trajectory, that is, the global optimal solution.

[0047] In a possible implementation, S1033 further includes the steps of updating the first value range according to the second expansion distance:

[0048] S1033-1. Use the second expansion distance as the boundary of the first value range to obtain a first sub-range and a second sub-range.

[0049] S1033-2. Update the first value range according to the first sub-range and the second sub-range.

[0050] Among them, the body expansion distance included in the second sub-range is greater than the body expansion distance included in the first sub-range.

[0051] In the embodiments of the present disclosure, the candidate trajectory obtained through backend optimization iteration is the current optimal solution. Therefore, this trajectory is used to update the candidate solution (candidate trajectory), and at the same time, the sub-ranges of the first value range can be determined according to the optimization result. For example, if the second expansion distance after backend optimization is d smooth , then using d smooth as the boundary, the DFS search range [d begin , d end is split into two. Specifically, it can be splitting [d begin , d end into two sub-ranges. Since [d begin , d search has been used in this round of operation and does not need to be added to the new first value range. Therefore, the two sub-ranges are the first sub-range s1 = [d search + Δd, d smooth and the second sub-range s2 = [d smooth + Δd, d end .

[0052] According to the solution of the embodiments of the present disclosure, by using the second expansion distance as the boundary, it provides clear guidance and direction for subsequent path search and trajectory optimization, and improves the efficiency of the search and optimization process.

[0053] In a possible implementation, S1033-2 updates the first value range according to the first sub-range and the second sub-range, including:

[0054] First, store the first sub-range into the stack for storing the value range of the vehicle body expansion distance.

[0055] Then, store the second sub-range into the stack.

[0056] Read the top element from the stack to use the second sub-range as the new first value range.

[0057] In the embodiments of the present disclosure, as shown in Figure 2 , a stack is used to store the value range of the vehicle body expansion distance. Before performing the path search operation, take the top element s of the stack to obtain the front vehicle body expansion d search in this round of path search operation. The iteration range of begin is [d end , d

[0058] The top element of the stack represents the expansion distance range that needs to be searched for the path currently. After obtaining the candidate solution according to S103, the candidate solution is jointly obtained by performing the front-end search according to the first vehicle body expansion distance d search and performing the rear-end trajectory optimization according to the second vehicle body expansion distance d smooth . Since d smooth is the maximum vehicle body expansion distance that enables the successful rear-end trajectory optimization (the rear-end trajectory optimization is attempted in a decreasing order in the second value range of the vehicle body expansion distance, and the specific process will be introduced later), it can be known that the redundancy of the front-end path in terms of the obstacle distance is d r = d smooth - d search . It can be known that if the vehicle body expansion d search used in the front-end search in the next front-end iteration ≤ d smooth , then there is a greater possibility of searching for a path similar to the current topological structure (similar redundancy). Therefore, the front-end iteration should preferably perform the iteration according to the vehicle body expansion d search > d smooth to find the optimal solution faster. First, push s1 onto the stack, and then push s2 onto the stack. In this way, s2 will be preferentially popped when running the DFS iteration next time, and the path redundancy of s2 will be higher than that of s1. In addition, doing so is beneficial to increasing the vehicle body expansion distance, which is equivalent to making a preference for the expansion distance. It is more desirable to reduce the total cost by increasing the expansion distance rather than by reducing the redundancy, so as to enhance the sense of security and reduce the probability of collision replanning.

[0059] The first iteration stop condition can be that the stack is empty. After completing the iteration, the finally remaining candidate trajectory is the optimal trajectory with the minimum total cost.

[0060] According to the solution of the embodiment of the present disclosure, the search and optimization range can be narrowed down to a sub-interval where it is more promising to find a better path, reducing the invalid search space and improving the efficiency of search and optimization.

[0061] In a possible implementation, S101 performs path search in the target space using the first inflation distance in the first value interval one by one, and further includes the steps of:

[0062] Iteratively perform the following path search operations until the second iteration stop condition is met:

[0063] In the first value interval, determine the first inflation distance in ascending order according to a preset step size.

[0064] According to the first inflation distance, perform path search in the target space using the front-end path search algorithm.

[0065] In the embodiment of the present disclosure, the second iteration stop condition may include one of search failure, the minimum body inflation distance expected by the backend exceeds the maximum body inflation distance, the first smoothing success, or traversing the first value interval.

[0066] In the first iteration stop condition, since d search The smaller it is, the more aggressive the front-end search is. If the front-end search fails, then using a body inflation larger than d search for path search will definitely also fail. Therefore, the front-end path search iteration can be terminated in advance to avoid subsequent invalid iterations, that is, implement the pruning strategy. During the DFS search process, if the search fails on a certain branch, that branch and all its sub-branches can be pruned because a larger inflation distance will only increase the difficulty of path search and will not bring better results. By terminating the front-end path search iteration in advance, it is possible to avoid unnecessary search and calculation within the invalid inflation distance range, reducing the computational amount. Through the pruning strategy, one can focus on searching within the search space where it is more promising to find a feasible path, improving the search efficiency.

[0067] In addition, if the front-end search fails, no new sub-interval value space will be generated because a larger inflation distance will not bring better results, avoiding the generation of invalid search space.

[0068] In the second iteration stop condition, the front-end search path search is successful, but the path length and the number of gear shifts searched are too many, resulting in the minimum body inflation distance expected by the backend exceeding the maximum body inflation distance. A new trajectory with a total cost smaller than the current candidate trajectory cannot be obtained through backend optimization. At the same time, continuing to increase d search will not result in a better candidate trajectory either, because d searchThe larger it is, the greater the path redundancy, resulting in a greater minimum body expansion distance expected by the backend. Therefore, the front-end path search iteration can be terminated.

[0069] In the third iteration stop condition, the front-end search path search is successful, and the minimum body expansion distance expected by the backend is not greater than the maximum body expansion distance. If the first trajectory smoothing of the feasible path is successful, it means that the redundancy of the feasible path meets the requirements, and it will directly enter the backend iteration (that is, according to the second value range, perform trajectory optimization on the feasible path), and use a larger body expansion distance (d smooth ) to perform trajectory optimization on the path searched by the front end. In this way, the system can improve the safety and feasibility of the trajectory while meeting the dynamic constraints of the vehicle.

[0070] In the fourth iteration stop condition, the front-end search path search is successful, and the minimum body expansion distance expected by the backend is not greater than the maximum body expansion distance. However, the first trajectory smoothing of the feasible path fails. At this time, d will still be increased according to the step size Δd search , and continue the next round of front-end path search until the first value range is traversed. The failure of the first trajectory smoothing is because the redundancy of the path does not meet the requirements. For example, if the first trajectory smoothing of the feasible path fails, it means that the d used for the current first trajectory smoothing smooth exceeds the redundancy of the path. Therefore, it is necessary to increase the redundancy of the path by increasing d search to improve the success rate of the first trajectory smoothing. In summary, only when a feasible path with sufficient redundancy is searched at the front end will it enter the backend iteration.

[0071] According to the solution of the embodiment of the present disclosure, the path search can be systematically performed within the first value range to find a feasible path that meets the vehicle kinematic constraints. During the search process, by adjusting the body expansion distance, a path with lower redundancy can be found.

[0072] In a possible implementation, S102 performs trajectory optimization on the feasible path according to the second value range of the body expansion distance, including:

[0073] S1021. Perform trajectory smoothing on the feasible path using the second expansion distance.

[0074] S1022. When the trajectory smoothing is successful, determine the second value range of the body expansion distance according to the second expansion distance.

[0075] S1023. Perform incremental trajectory smoothing on the feasible path according to the second value range.

[0076] In the embodiments of the present disclosure, the redundancy of a path reflects the optimizable space of the path. If the redundancy of a path is too small, it is difficult to find a better path even with backend optimization because the path is already very close to the optimal solution and the further optimization space is limited. Only when the redundancy of the path meets certain requirements does it make sense to perform backend optimization.

[0077] For the feasible path successfully obtained by the frontend path search, the feasible path can be subjected to a trajectory smoothing process once, and it is determined whether the redundancy meets the requirements according to the smoothing result. This is because if the smoothing fails, it means that the body expansion distance used in the current smoothing exceeds the redundancy of the path. This trajectory smoothing process occurs before the smoothing process of the backend trajectory optimization, so it can be called the first trajectory smoothing process.

[0078] In the field of autonomous driving trajectory optimization, those skilled in the art can adopt any known typical method to implement the trajectory smoothing process, including but not limited to:

[0079] Spline curve fitting: Using polynomial splines, B-splines or Bezier curves to interpolate the initial path, and optimizing the curvature continuity through the adjustment of control points to meet the vehicle kinematic constraints.

[0080] Convex optimization method: Constructing a convex optimization problem including constraints such as position, velocity, and acceleration, and using quadratic programming or sequential quadratic programming to solve for a smooth trajectory that meets the dynamic feasibility.

[0081] Path velocity decoupling optimization: Adopting a path parameterization method, first optimizing the curvature of the geometric path, and then performing time allocation along the path, and optimizing the velocity profile to meet the dynamic constraints.

[0082] The above methods can be implemented through conventional numerical calculation tools, and their specific parameter settings (such as optimization weights, constraint boundaries, etc.) can be determined by calibration according to the vehicle dynamics characteristics. Those skilled in the art can reasonably select and combine applicable methods to complete the trajectory smoothing optimization based on the vehicle kinematic model, obstacle perception data, and optimization objective function design.

[0083] It should be noted that successful smoothing can be understood as optimizing the feasible path into a better trajectory, and better can mean that the trajectory has better smoothness or a smaller total cost. Failure of the smoothing process can be understood as being unable to generate an effective trajectory or the generated trajectory having a collision risk. The failure of the smoothing process may be caused by the following reasons:

[0084] Breaking of dynamic constraints: When the expansion distance is insufficient, the space around the path cannot meet the kinematic constraints such as the vehicle turning radius and maximum curvature, resulting in the trajectory optimizer being unable to find a feasible solution that satisfies all differential constraints mathematically.

[0085] Numerical calculation divergence: During the incremental smoothing process, if the path curvature changes too violently, it may cause the numerical solver of the optimal control problem to fail to converge, manifested as the optimization process being unable to output an effective trajectory within a limited number of iterations.

[0086] Obstacle intrusion: Setting the inflation distance too small will cause the vehicle contour to overlap with the inflated safety area of the obstacle. Even if there is a feasible solution mathematically, there is still a risk of physical collision in the actual trajectory.

[0087] Boundary condition conflict: When the initial path is close to the obstacle, there is insufficient geometric deformation space required for path smoothing. Forcing optimization may cause the trajectory points to break through the inflation boundary.

[0088] It should also be noted that for the front-end path search algorithm, such as Hybrid A*, spatial discretization is required, which may lead to redundancy in the search results. For the front-end path, the redundancy is related to the spatial resolution, search step size, and the number of search directions. The manifestations of this redundancy are longer path length and more gear shifting times. One way to obtain a path with less redundancy is to let the front-end search use a smaller vehicle body inflation distance (aggressive search). The redundancy in the front-end path is beneficial for the rear-end trajectory optimization. The higher the redundancy of the path searched by the front-end, the larger the solution space for the rear-end trajectory and the higher the solution success rate. The redundancy in the front-end path will also cause redundancy in the trajectory after rear-end optimization. Therefore, the rear-end can use a larger obstacle inflation distance to smooth the front-end path (conservative optimization) to reduce the redundancy of the trajectory.

[0089] In a possible implementation, S1021 uses the second inflation distance to perform trajectory smoothing on the feasible path, which further includes the steps of:

[0090] In the absence of candidate trajectories, determine the second inflation distance according to the first inflation distance.

[0091] Use the second inflation distance to perform trajectory smoothing on the feasible path.

[0092] In the embodiments of the present disclosure, according to d search Determine a minimum inflation distance d for the first smoothing of the feasible path smooth . If no candidate solution has been generated yet, use the d used for successful path search search As d smooth . By using the inflation distance d successfully used in the front-end search search As the starting point of the rear-end optimization interval, ensure that the rear-end optimization does not use a value smaller than d searchOptimize the path with a smaller inflation distance to ensure the safety and feasibility of the path; meanwhile, in the case of no candidate trajectory, since there is redundancy in the front-end path but the redundancy degree is unknown (the maximum inflation distance d that can successfully smooth the front-end path smooth unknown), so directly use d search as the second inflation distance.

[0093] By performing the first smoothing on the feasible path obtained from the front end, it can be determined whether the redundancy of the feasible path can meet the minimum requirement of the vehicle body inflation distance for the rear-end trajectory smoothing. If the first smoothing fails, then using an inflation distance larger than d smooth to smooth will definitely also fail. Therefore, it is not necessary to enter the rear-end iteration, but instead continue with the front-end iteration, by increasing d search to increase the redundancy of the path to improve the success rate of the first smoothing.

[0094] It should be noted that for the rear-end trajectory, the trajectory redundancy comes from the front-end path. Since the path length and the number of gear shifts have been determined, the redundancy can only be reduced by increasing the inflation distance. The relative redundancy of the rear-end trajectory to the front-end path can be understood as the difference between the maximum inflation distance that can successfully smooth the front-end path and the inflation distance used by the front end to search for this path, that is, d r = d smooth - d search .

[0095] Determine the redundancy of the path by performing the first smoothing process on the feasible path using the minimum inflation distance. If the redundancy of the path is too small, do not enter the rear-end iteration, but continue to increase d search , and it only makes sense to perform the rear-end iteration when the redundancy of the path meets certain requirements.

[0096] If the first smoothing is successful, then enter the rear-end iteration step to optimize the feasible path to further optimize the quality of the path and reduce the redundancy of the path. During the rear-end iteration, a larger vehicle body inflation distance needs to be used for conservative optimization, and find the maximum vehicle body inflation distance that can make the rear-end optimization successful. The search interval of the rear-end iteration, that is, the vehicle body inflation distances included in the second value range should all be greater than the second vehicle body inflation distance.

[0097] According to the solution of the embodiment of the present disclosure, evaluate the redundancy of the feasible path through the first smoothing process. If the first smoothing process fails, the optimization process can be terminated in advance to avoid subsequent ineffective iterations, improve the efficiency of the optimization process, and reduce the amount of calculation.

[0098] In a possible implementation manner, S1021 uses the second inflation distance to perform trajectory smoothing on the feasible path, which further includes the steps:

[0099] S1021-1. In the case where there are candidate trajectories, based on multiple metric parameters of the feasible path obtained by path search, predict the estimated cost after trajectory optimization of the feasible path.

[0100] S1021-2. In the case where the estimated cost is less than the total cost of the candidate trajectory, determine the desired minimum body expansion distance according to the difference between the candidate trajectory and the feasible path.

[0101] S1021-3. In the case where the discrete value of the minimum body expansion distance is not greater than the upper limit of the body expansion distance, determine the discrete value as the second expansion distance.

[0102] S1021-4. Use the second expansion distance to perform trajectory smoothing on the feasible path.

[0103] In the embodiments of the present disclosure, if there is already a candidate solution, the trajectory length of the candidate solution is denoted as l o , the number of gear shifts is denoted as s o , the obstacle distance is denoted as d o , w s is the cost of the number of gear shifts, w d is the obstacle distance cost, and the total cost is denoted as c o :

[0104] c o = l o + w s · s o - w d · d o

[0105] In order to guide the backend to perform trajectory smoothing in a more optimal direction and avoid unnecessary backend iterations, it is required that the backend select the body expansion distance d smooth to smooth the trajectory, and the total cost (estimated cost) c smooth , should be lower than the total cost of the current candidate solution, that is, c smooth < c o . Through calculation, if the estimated cost c smooth is less than the total cost c o of the current candidate trajectory, it means that a more optimal path can be found by adjusting the expansion distance. In this case, it is necessary to determine a desired minimum body expansion distance d exp as:

[0106]

[0107] where the path length of the feasible path is denoted as l i , and the number of gear shifts is denoted as s i .

[0108] Next, according to the step size Δd for dexp Perform discretization:

[0109]

[0110] where ceil is the ceiling operation.

[0111] If d exp ≤ d max , d exp can be used to perform the first trajectory smoothing process of S1021 above.

[0112] If d exp > d max , it means that even if the backend smooths the trajectory according to the maximum inflation distance d max , the total cost of the obtained trajectory will be greater than the current candidate solution. Therefore, the front-end iteration can be terminated in advance to avoid subsequent ineffective iterations, that is, the second iteration stop condition above. When d exp ≤ d max , d exp is used as the second inflation distance.

[0113] According to the solution of the embodiment of the present disclosure, by predicting and comparing the estimated cost, unnecessary backend optimization can be avoided, and the efficiency of the entire optimization process is improved; by determining the desired minimum vehicle body inflation distance, it can be clear that the backend optimization should be carried out in a better direction, reducing the ineffective search space.

[0114] In a possible implementation manner, S1021-1 predicts the estimated cost after trajectory optimization of the feasible path according to multiple metric parameters of the feasible path obtained by path search, including:

[0115] Determine the original cost of the feasible path according to at least one of the path length cost, shift count cost, and obstacle distance cost of the feasible path. Among them, the path length cost is obtained according to the path length and the length weight, the shift count cost is obtained according to the shift count and the count weight, and the obstacle distance cost is obtained according to the obstacle distance and the distance cost.

[0116] Predict the estimated cost after trajectory optimization of the feasible path according to the original cost.

[0117] In the embodiment of the present disclosure, the path length of the feasible path obtained by the front end is denoted as l i , the shift count is denoted as s i , the obstacle distance is denoted as d i = d search , so the total cost c i of the front-end path is:

[0118] c i = wl l i + w s s i - w d d i = l i + w s s i - w d d i

[0119] Wherein, w l is the path length cost, and w l can be set to 1, w s is the shifting times cost, and w d is the obstacle distance cost.

[0120] Since the backend optimization makes fine-tuning based on the path searched by the frontend, the shifting times in the frontend path will not be changed by the backend, and the length of the backend trajectory can be approximated by the length of the frontend path. If the body expansion distance used by the backend is d smooth , then the total cost c smooth of the backend trajectory can be predicted as approximately:

[0121] c smooth = l i + w s s i - w d d smooth

[0122] According to the solution of the embodiment of the present disclosure, by determining the original cost of the feasible path, the estimated cost after trajectory optimization of the path can be predicted, thereby providing a clear goal and direction for the backend iteration and improving the efficiency of finding a better path.

[0123] In a possible implementation manner, when the smoothing process is successful, according to the second expansion distance, determine the second value range of the body expansion distance, including:

[0124] When the smoothing process is successful, according to the second expansion distance and the preset step size, obtain the minimum value of the second value range of the body expansion distance.

[0125] Obtain the maximum value of the second value range according to the preset upper limit of the body expansion distance.

[0126] In the embodiment of the present disclosure, since d smooth is already the minimum expansion distance, iteration can start from the next optional value of d smooth , that is, d smooth plus the preset step size Δd, and set d smooth + Δd as the minimum value of the second value range, while the maximum value can be dmax It should be understood that when a path is searched by the front end, the path length and the number of gear shifts are fixed. The larger the vehicle body expansion distance when the back-end optimization is successful, the smaller the total cost of the candidate solution's trajectory, and the higher the DFS pruning efficiency. Therefore, the maximum value of the second value range is d max .

[0127] According to the solution of the embodiment of the present disclosure, by setting a suitable second value range, the iteration efficiency of the back-end iteration can be improved, and the optimal trajectory can be obtained as soon as possible.

[0128] In a possible implementation manner, S102 performs trajectory optimization on the feasible path according to the second value range, and further includes the steps of:

[0129] Using the maximum value of the second value range to perform trajectory optimization on the feasible path obtained by path search;

[0130] In the case where the trajectory optimization fails, iteratively perform the following trajectory optimization operations until the trajectory optimization is successful or the second value range is traversed:

[0131] In the second value range, determine the third expansion distance in a decreasing order according to a preset step size.

[0132] Smooth the feasible path according to the third expansion distance.

[0133] In the embodiment of the present disclosure, if the first smoothing process executed in S1021 is successful, the back-end iteration is entered next. The back-end iteration can also be understood as smoothing the trajectory. During the back-end iteration, the maximum value of the second value range, that is, d max , can be used to perform trajectory optimization on the feasible path. If d max is not successful, the back-end iteration is performed in a decreasing order according to the preset step size.

[0134] The reason for making the back-end iteration optimize in a decreasing order from d max is that the hit probability is higher in this way, and the iteration efficiency can be improved. For example, most scenarios during parking are conventional scenarios, and only the maximum vehicle body expansion distance is required to optimize successfully. Only in a few scenarios, such as extremely narrow channel parking spaces, it is necessary to decrease d smooth multiple times to optimize successfully. The more times of decrease, the more complex the parking scenario is. Correspondingly, the proportion of this scenario in reality is less and the probability is lower. In addition, the decreasing optimization can ensure that the expansion distance is the largest when the first incremental optimization is successful, and the corresponding total cost of the trajectory is the smallest, so that the total cost of the candidate solution drops faster, and further more non-optimal branches will be pruned, improving the DFS iteration efficiency.

[0135] During the back-end iteration, multiple smoothing processes can be performed on the feasible path. When the back-end iterates according to the vehicle body expansion distance dsmooth The feasible path searched by the front end has been smoothed once. If d smooth has changed, then there is no need to re - smooth the front - end path according to the new d smooth Instead, incremental optimization can be performed based on the trajectory after the previous smoothing. The speed of incremental optimization is much faster than re - optimization, so as to accelerate the conservative optimization.

[0136] Reference Figure 2 As shown, the initial value of the third inflation distance d inc used for incremental smoothing is d max . If the smoothing fails, continue to iterate in the second value range in decreasing order with a step size of Δd for the next round of optimization. For example, if d max = 0.5m, d smooth = 0.3m, and Δd = 0.1m, then the third inflation distance will be 0.5m, 0.4m, 0.3m in sequence until the smoothing is successful or the second value range is traversed.

[0137] If the smoothing is successful, it means that the maximum inflation distance that can make the current feasible path pass the back - end optimization successfully has been found. At this time, the trajectory redundancy is the smallest and the total cost also reaches the minimum. Therefore, the optimization process can be terminated in advance. The trajectory obtained through the back - end optimization iteration is the current optimal solution. Therefore, use this trajectory to update the candidate solution, and record the relevant information of the candidate solution, such as path length, number of gear shifts, obstacle distance, etc., and update the second inflation distance to the third inflation distance, and prepare to use the second inflation distance for sub - interval division.

[0138] If the smoothing fails, then use the trajectory obtained from the first smoothing as the current optimal solution. Therefore, use this trajectory to update the candidate solution, and record the relevant information of the candidate solution, such as path length, number of gear shifts, obstacle distance, etc. The second inflation distance remains unchanged, and prepare to use the second inflation distance for sub - interval division.

[0139] If the above number of iterations is too large, binary search can be used to further accelerate.

[0140] According to the solution of the embodiment of the present disclosure, by performing smoothing and trajectory optimization in the second value range, the quality of the path can be further optimized, the redundancy of the path can be reduced, and the safety of the trajectory can be improved; by determining the second inflation distance in a decreasing order, unnecessary searches in the entire second value range can be avoided, and the amount of calculation can be reduced; if the smoothing is successful, it means that the maximum inflation distance that can make the current feasible path pass the back - end optimization successfully has been found. At this time, the trajectory redundancy is the smallest and the total cost also reaches the minimum. Therefore, the optimization process can be terminated in advance.

[0141] In a possible implementation, the trajectory planning method further includes the steps:

[0142] S201. Smooth the target trajectory based on the third value range of the obstacle inflation distance to obtain the final trajectory.

[0143] In the embodiment of the present disclosure, after traversing all the elements in the stack through the vehicle body inflation DFS, it is assumed that the optimal solution (optimal trajectory) with the minimum total cost has been found through the vehicle body inflation DFS iteration, and the corresponding rear-end vehicle body inflation distance is d. smooth . To further enhance the safety of the path, use d obs as the obstacle inflation distance to smooth the optimal trajectory. The obstacle can be inflated, and the inflation distance is denoted as d. obs, Perform incremental trajectory smoothing iteration, and the range of the obstacle inflation distance used for incremental smoothing is [d obs _ min , d obs _ max . d obs _ min is the minimum value of the preset obstacle inflation distance, and d obs _ max is the maximum value of the preset obstacle inflation distance. The smoothing process can ensure that the path is further away from the obstacle and further reduce the redundancy of the path.

[0144] It should be noted that there are two ways to ensure the distance between the vehicle body and the obstacle in path planning. The first is vehicle body inflation. Vehicle body inflation is divided into longitudinal inflation (the front and rear of the vehicle) and lateral inflation (the left and right sides of the vehicle body). The transverse and longitudinal inflations can be configured separately. For the convenience of description, the vehicle body inflation in the embodiment of the present disclosure does not distinguish between transverse and longitudinal. The second is obstacle inflation. Obstacle inflation is equivalent to applying the same inflation to the transverse and longitudinal directions of the vehicle body, and its flexibility is not as good as that of vehicle body inflation. However, vehicle body inflation generally takes effect in the whole scene, while obstacle inflation can set different inflation distances according to different regions / different obstacle attributes, etc. Therefore, obstacle inflation is more targeted. After completing the vehicle body inflation DFS, the present disclosure performs obstacle inflation iteration, and can further improve the safety and quality of the path through incremental smoothing processing of the obstacle inflation distance on the basis of the optimal trajectory.

[0145] According to the solution of the embodiment of the present disclosure, it can be ensured that the path is further away from the obstacle and the safety of the path is improved.

[0146] In a possible implementation manner, S201 further includes the steps of smoothing the target trajectory based on the third value range of the obstacle inflation distance to obtain the final trajectory:

[0147] When the second inflation distance corresponding to the target trajectory is less than the upper limit of the vehicle body inflation distance, iteratively perform the following smoothing operation until the smoothing fails or the third value range is traversed to obtain the final trajectory:

[0148] In the third value range, determine the fourth inflation distance in ascending order according to a preset step size.

[0149] Smooth the target trajectory according to the fourth inflation distance.

[0150] In the embodiments of the present disclosure, if d smooth <d max , it indicates that the remaining redundancy of the target trajectory in terms of the obstacle distance is very small. Therefore, starting from the minimum obstacle inflation distance d obs _ min , increment it to improve the hit rate of iterative success. The initial value of d obs iteration is set to d obs _ min , and increment it according to the step size Δd. If smoothing fails according to d obs , then using an obstacle inflation distance larger than d obs for smoothing will definitely also fail. Therefore, the obstacle inflation iteration can be terminated in advance to avoid subsequent ineffective iterations.

[0151] According to the solution of the embodiments of the present disclosure, by incrementing from the minimum value, a suitable obstacle inflation distance can be found more quickly, reducing unnecessary searches and calculations within the entire third value range.

[0152] In a possible implementation, S201 performs smoothing on the target trajectory based on the third value range of the obstacle inflation distance to obtain the final trajectory, including:

[0153] When the second inflation distance corresponding to the target trajectory is equal to the upper limit of the vehicle body inflation distance, iteratively perform the following smoothing operation until the smoothing succeeds or the third value range is traversed to obtain the final trajectory:

[0154] In the third value range, determine the fourth inflation distance in descending order according to a preset step size.

[0155] Smooth the target trajectory according to the fourth inflation distance.

[0156] In the embodiments of the present disclosure, if d smooth ==d max , it indicates that there is probably still redundancy in the target trajectory in terms of the obstacle distance. Therefore, the initial value of d obs iteration is set to d obs _ max , to improve the hit rate of iterative success, and decrement it according to the step size Δd until the smoothing succeeds.

[0157] According to the solution of the embodiment of the present disclosure, by decreasing from the maximum value, an appropriate obstacle expansion distance can be found more quickly, reducing unnecessary searches and calculations within the entire third value range.

[0158] The present disclosure proposes an improved solution framework based on search + optimization, which supports the adaptive adjustment of the obstacle distance, improves the parking efficiency and success rate, and thus can cope with various high-difficulty complex parking scenarios, such as extremely narrow road parking spaces, extremely narrow space parking spaces, dead-end road parking spaces, and superimposed difficulty scenarios, etc.

[0159] Figure 3 It is a schematic structural diagram of a trajectory planning device provided by an embodiment of the present disclosure. As Figure 3 shown, it includes:

[0160] A front-end search module 301, configured to use the first expansion distance in the first value range of the vehicle body expansion distance one by one to perform path search in the target space to obtain an initial feasible path.

[0161] A back-end optimization module 302, configured to perform trajectory optimization on the feasible path according to the second value range of the vehicle body expansion distance. Any vehicle body expansion distance included in the second value range is not less than the first expansion distance.

[0162] An update module 303, configured to obtain a target trajectory and update the first value range according to the result of the trajectory optimization.

[0163] An iteration module 304, configured to use the updated first value range to perform path search again until the first iteration stop condition is met to obtain an optimal target trajectory.

[0164] In a possible implementation manner, the update module 303 is configured to:

[0165] According to the result of the trajectory optimization, determine the second expansion distance used for successful trajectory optimization and the candidate trajectory obtained from the successful trajectory optimization.

[0166] Obtain a target trajectory according to the candidate trajectory;

[0167] Update the first value range according to the second expansion distance.

[0168] In a possible implementation manner, the update module 303 is configured to:

[0169] Use the second expansion distance as the dividing line of the first value range to obtain a first sub-range and a second sub-range. The vehicle body expansion distances included in the second sub-range are greater than those included in the first sub-range.

[0170] Update the first value range according to the first sub-range and the second sub-range.

[0171] In a possible implementation, the update module 303 is configured to:

[0172] First, store the first sub-range into a stack for storing the value range of the vehicle body expansion distance.

[0173] Then, store the second sub-range into the stack.

[0174] Read the top element from the stack to use the second sub-range as the new first value range.

[0175] In a possible implementation, the front-end search module 301 is configured to:

[0176] Iteratively perform the following path search operation until the second iteration stop condition is met:

[0177] In the first value range, determine the first expansion distance in ascending order according to a preset step size.

[0178] According to the first expansion distance, perform path search in the target space using the front-end path search algorithm.

[0179] In a possible implementation, the back-end optimization module 302 is configured to:

[0180] Use the second expansion distance to perform trajectory smoothing on the feasible path.

[0181] In the case where the trajectory smoothing is successful, according to the second expansion distance, determine the second value range of the vehicle body expansion distance.

[0182] According to the second value range, perform incremental trajectory smoothing on the feasible path.

[0183] In a possible implementation, the back-end optimization module 302 is configured to:

[0184] In the case where there is no candidate trajectory, determine the second expansion distance according to the first expansion distance.

[0185] Use the second expansion distance to perform trajectory smoothing on the feasible path.

[0186] In a possible implementation, the back-end optimization module 302 is configured to:

[0187] In the case where there is a candidate trajectory, predict the estimated cost after trajectory optimization of the feasible path according to multiple metric parameters of the feasible path obtained by path search.

[0188] When the estimated cost is less than the total cost of the candidate trajectory, determine the desired minimum vehicle body expansion distance according to the difference between the candidate trajectory and the feasible path.

[0189] When the discrete value of the minimum vehicle body expansion distance is not greater than the upper limit of the vehicle body expansion distance, determine the discrete value as the second expansion distance.

[0190] Use the second expansion distance to perform trajectory smoothing on the feasible path.

[0191] In a possible implementation, the back-end optimization module 302 is used for:

[0192] Determine the original cost of the feasible path according to at least one of the path length cost, the number of gear shifts cost, and the obstacle distance cost of the feasible path. Among them, the path length cost is obtained according to the path length and the length weight, the number of gear shifts cost is obtained according to the number of gear shifts and the number weight, and the obstacle distance cost is obtained according to the obstacle distance and the distance cost.

[0193] Predict the estimated cost after trajectory optimization of the feasible path according to the original cost.

[0194] In a possible implementation, the back-end optimization module 302 is used for:

[0195] When the smoothing process is successful, obtain the minimum value of the second value range of the vehicle body expansion distance according to the second expansion distance and the preset step size.

[0196] Obtain the maximum value of the second value range according to the preset upper limit of the vehicle body expansion distance.

[0197] In a possible implementation, the back-end optimization module 302 is used for:

[0198] Use the maximum value of the second value range to perform trajectory optimization on the feasible path obtained by path search.

[0199] When the trajectory optimization fails, iteratively perform the following trajectory optimization operations until the trajectory optimization is successful or the second value range is traversed:

[0200] In the second value range, determine the third expansion distance in a decreasing order according to the preset step size.

[0201] According to the third expansion distance, perform smoothing on the feasible path.

[0202] In a possible implementation, the device further includes:

[0203] An obstacle expansion module, configured to perform smoothing on the target trajectory based on a third value range of the obstacle expansion distance to obtain a final trajectory.

[0204] In a possible implementation, the obstacle dilation module is configured to:

[0205] When the second dilation distance corresponding to the target trajectory is less than the upper limit of the vehicle body dilation distance, iteratively perform the following smoothing operation until the smoothing fails or the third value range is traversed to obtain the final trajectory:

[0206] In the third value range, determine the fourth dilation distance in ascending order according to a preset step size.

[0207] Smooth the target trajectory according to the fourth dilation distance.

[0208] In a possible implementation, the obstacle dilation module is configured to:

[0209] When the second dilation distance corresponding to the target trajectory is equal to the upper limit of the vehicle body dilation distance, iteratively perform the following smoothing operation until the smoothing succeeds or the third value range is traversed to obtain the final trajectory:

[0210] In the third value range, determine the fourth dilation distance in descending order according to a preset step size.

[0211] Smooth the target trajectory according to the fourth dilation distance.

[0212] For the specific functions and examples of the modules and sub - modules of the device according to the embodiments of the present disclosure, reference may be made to the relevant descriptions of the corresponding steps in the above - mentioned method embodiments, which will not be elaborated herein.

[0213] In the technical solution of the present disclosure, the acquisition, storage, and application of the user's personal information involved all comply with the provisions of relevant laws and regulations and do not violate public order and good customs.

[0214] According to the embodiments of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0215] Figure 4 FIG. shows a schematic block diagram of an exemplary electronic device 400 that can be used to implement the embodiments of the present disclosure. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0216] AsFigure 4 As shown, device 400 includes a computing unit 401, which can perform various appropriate actions and processes according to computer programs stored in a read-only memory (ROM) 402 or computer programs loaded from a storage unit 408 into a random access memory (RAM) 403. In the RAM 403, various programs and data required for the operation of device 400 can also be stored. The computing unit 401, the ROM 402, and the RAM 403 are connected to each other via a bus 404. An input / output (I / O) interface 405 is also connected to the bus 404.

[0217] Multiple components in device 400 are connected to the I / O interface 405, including: an input unit 406, such as a keyboard, a mouse, etc.; an output unit 407, such as various types of displays, speakers, etc.; a storage unit 408, such as a magnetic disk, an optical disc, etc.; and a communication unit 409, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 409 allows device 400 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0218] The computing unit 401 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 401 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The computing unit 401 executes the various methods and processes described above, such as the trajectory planning method. For example, in some embodiments, the trajectory planning method can be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as the storage unit 408. In some embodiments, part or all of the computer program can be loaded and / or installed onto device 400 via the ROM 402 and / or the communication unit 409. When the computer program is loaded into the RAM 403 and executed by the computing unit 401, one or more steps of the trajectory planning method described above can be executed. Alternatively, in other embodiments, the computing unit 401 can be configured to execute the trajectory planning method in any other appropriate way (e.g., by means of firmware).

[0219] The various embodiments of the systems and techniques described above in this document can be implemented in digital electronic circuitry, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems-on-chip (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include: being implemented in one or more computer programs that are executable and / or interpretable on a programmable system including at least one programmable processor, which can be a special-purpose or general-purpose programmable processor that receives data and instructions from a storage system, at least one input device, and at least one output device, and transmits the data and instructions to the storage system, the at least one input device, and the at least one output device.

[0220] The program code for implementing the methods of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the program codes are executed by the processor or controller, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The program code can be executed entirely on the machine, partially on the machine, as an independent software package partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0221] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0222] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0223] The systems and techniques described herein can be implemented in a computing system including backend components (e.g., as a data server), or a computing system including middleware components (e.g., an application server), or a computing system including frontend components (e.g., a user computer having a graphical user interface or a web browser through which the user can interact with an implementation of the systems and techniques described herein), or a computing system including any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local area network (LAN), wide area network (WAN), and the Internet.

[0224] A computer system can include a client and a server. The client and the server are generally far from each other and typically interact through a communication network. The relationship between the client and the server is generated by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, or a server of a distributed system, or a server incorporating a blockchain.

[0225] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps recited in this disclosure can be executed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and no limitation is imposed herein.

[0226] The above specific embodiments do not constitute a limitation on the protection scope of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the principles of this disclosure shall be included within the protection scope of this disclosure.

Claims

1. A trajectory planning method, comprising: Using the first expansion distances in the first value interval of the vehicle body expansion distance one by one, a path search is performed in the target space to obtain an initial feasible path; According to a second value interval of the vehicle body expansion distance, trajectory optimization is performed on the feasible path; wherein any vehicle body expansion distance included in the second value interval is not less than the first expansion distance; According to the result of the trajectory optimization, a target trajectory is obtained and the first value interval is updated; The path search is performed again using the updated first value interval until the first iteration stop condition is met to obtain the optimal target trajectory.

2. The method according to claim 1, wherein: The step of obtaining a target trajectory and updating the first value interval according to a result of the trajectory optimization includes: Determine, according to the result of the trajectory optimization, a second expansion distance used for successful trajectory optimization and a candidate trajectory obtained by successful trajectory optimization; According to the candidate trajectories, the target trajectory is obtained; The first value interval is updated according to the second expansion distance.

3. The method according to claim 2, wherein: The updating of the first value interval according to the second expansion distance includes: The second expansion distance is used as the boundary of the first value interval to obtain a first sub-interval and a second sub-interval; wherein the body expansion distance included in the second sub-interval is greater than the body expansion distance included in the first sub-interval; The first value interval is updated according to the first sub-interval and the second sub-interval.

4. The method according to claim 3, wherein: The updating the first value interval according to the first sub-interval and the second sub-interval includes: Firstly, the first sub-interval is stored in a stack for storing the value interval of the vehicle body expansion distance; Then storing the second sub-interval into the stack; The top element of the stack is read from the stack to use the second sub-interval as a new first value interval.

5. The method according to claim 1, wherein: The step of searching a path in the target space using the first expansion distances in the first value interval of the vehicle body expansion distance one by one includes: The following path search operations are performed iteratively until the second iteration stop condition is met: In the first value interval, determining a first expansion distance in ascending order according to a preset step size; According to the first expansion distance, a front-end path search algorithm is used to perform a path search in the target space.

6. The method according to claim 1, wherein: The performing trajectory optimization on the feasible path according to the second value interval of the vehicle body expansion distance includes: Using a second expansion distance to perform trajectory smoothing on the feasible path; In the case where the trajectory smoothing process is successful, determining a second value interval of the vehicle body expansion distance according to the second expansion distance; According to the second value interval, incremental trajectory smoothing is performed on the feasible path.

7. The method according to claim 6, wherein: The using the second expansion distance to perform trajectory smoothing processing on the feasible path includes: In the case where there is no candidate trajectory, determining the second expansion distance according to the first expansion distance; The feasible path is subjected to trajectory smoothing processing using the second expansion distance.

8. The method according to claim 6, wherein: The using the second expansion distance to perform trajectory smoothing processing on the feasible path includes: In the case where there are candidate trajectories, predicting an estimated cost after trajectory optimization of the feasible path according to multiple indicator parameters of the feasible path obtained by the path search; When the estimated cost is less than the total cost of the candidate trajectory, determining a desired minimum vehicle body expansion distance according to a difference between the candidate trajectory and the feasible path; In a case where the discrete value of the minimum vehicle body expansion distance is not greater than the upper limit of the vehicle body expansion distance, determining the discrete value as the second expansion distance; The feasible path is subjected to trajectory smoothing processing using the second expansion distance.

9. The method according to claim 8, wherein: The step of predicting the estimated cost of trajectory optimization for the feasible path based on the multiple indicator parameters of the feasible path obtained by the path search includes: Determine the original cost of the feasible path according to at least one of the path length cost, the gear shift number cost and the obstacle distance cost of the feasible path; wherein the path length cost is obtained according to the path length and the length weight, the gear shift number cost is obtained according to the gear shift number and the number weight, and the obstacle distance cost is obtained according to the obstacle distance and the distance cost; According to the original cost, an estimated cost after trajectory optimization of the feasible path is predicted.

10. The method according to claim 6, wherein: When the trajectory smoothing process is successful, determining a second value range of the vehicle body expansion distance according to the second expansion distance includes: When the trajectory smoothing process is successful, obtaining a minimum value of a second value range of the vehicle body expansion distance according to the second expansion distance and a preset step size; The maximum value of the second value range is obtained according to the preset upper limit of the vehicle body expansion distance.

11. The method according to claim 1 or 6, wherein: The step of optimizing the trajectory of the feasible path according to the second value interval includes: Using the maximum value of the second value interval, optimizing the trajectory of the feasible path obtained by the path search; In the case where the trajectory optimization fails, the following trajectory optimization operations are iteratively performed until the trajectory optimization succeeds or the second value interval is traversed: In the second value interval, determining the third expansion distance in descending order according to a preset step size; The feasible path is smoothed according to the third expansion distance.

12. The method according to claim 1, further comprising: Based on a third value interval of the obstacle expansion distance, a smoothing process is performed on the target trajectory to obtain a final trajectory.

13. The method according to claim 12, wherein: The step of performing a smoothing process on the target trajectory based on the third value interval of the obstacle expansion distance to obtain a final trajectory includes: When the second expansion distance corresponding to the target trajectory is less than the upper limit of the vehicle body expansion distance, the following smoothing operation is iteratively performed until the smoothing operation fails or the third value interval is traversed to obtain the final trajectory: In the third value interval, determining the fourth expansion distance in ascending order according to a preset step size; The target trajectory is smoothed according to the fourth expansion distance.

14. The method according to claim 12, wherein: The step of performing a smoothing process on the target trajectory based on the third value interval of the obstacle expansion distance to obtain a final trajectory includes: When the second expansion distance corresponding to the target trajectory is equal to the upper limit of the vehicle body expansion distance, the following smoothing operation is iteratively performed until the smoothing operation is successful or the third value interval is traversed to obtain the final trajectory: In the third value interval, determining the fourth expansion distance in descending order according to a preset step size; The target trajectory is smoothed according to the fourth expansion distance.

15. A trajectory planning device, comprising: A front-end search module, used to search for a path in the target space using the first expansion distances in the first value interval of the vehicle body expansion distance one by one, so as to obtain an initial feasible path; a back-end optimization module, configured to perform trajectory optimization on the feasible path according to a second value interval of the vehicle body expansion distance; wherein any vehicle body expansion distance included in the second value interval is not less than the first expansion distance; An updating module, used for obtaining a target trajectory and updating the first value interval according to a result of the trajectory optimization; The iterative module is used to use the updated first value interval to re-perform the path search until the first iteration stop condition is met to obtain the optimal target trajectory.

16. An electronic device, comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 14.

17. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-14.

18. A computer program product comprising a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 14.