Vehicle path planning method and system

By constructing a mesh graph and dynamically adjusting the mesh resolution, and combining obstacle costs and weights to determine the target path, the contradiction between computing resources and path accuracy in low-speed autonomous vehicles is resolved, thus improving the efficiency and accuracy of path planning.

CN123045387APending Publication Date: 2026-11-06元橡科技(北京)有限公司
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611571405.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-10-12
Publication Date
2026-11-06

AI Technical Summary

Technical Problem

Existing path planning methods struggle to balance computational resource utilization efficiency and path accuracy in low-speed autonomous vehicles, leading to increased computational resource consumption or decreased accuracy of path search results.

Method used

By acquiring vehicle location information and obstacle information, a grid map is constructed and a path planning mode is determined. The grid resolution is dynamically adjusted to adapt to changes in obstacle information, and the target path is determined by combining obstacle cost and weight.

Benefits of technology

It achieves a balance between computational resource utilization efficiency and path accuracy under different obstacle conditions, thereby improving the computational efficiency and accuracy of path planning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123045387A_ABST
    Figure CN123045387A_ABST
Patent Text Reader

Abstract

This application discloses a vehicle path planning method and system, relating to the field of intelligent driving. The method includes: acquiring the vehicle's positioning information on a reference line and obstacle information in the area surrounding the vehicle; constructing a mesh map based on the positioning information; determining a path planning mode based on the obstacle information and determining the mesh resolution of the mesh map based on the path planning mode; discretizing the mesh map according to the mesh resolution to obtain multiple mesh nodes, and determining the obstacle cost of each of the multiple mesh nodes, where each node corresponds to a candidate position of the vehicle, and the obstacle cost of each node is used to characterize the degree of conflict between the area covered by the vehicle contour and the obstacle when the vehicle is located at the candidate position corresponding to that node; and determining the vehicle's target path based on the obstacle cost of each node and the mesh map. This application solves the problem in the prior art that it is difficult to balance computational resource utilization efficiency and path accuracy in path planning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of intelligent driving, and more specifically, to a vehicle path planning method and system. Background Technology

[0002] In local path planning scenarios for low-speed autonomous vehicles such as park shuttle buses, scenic area mobility vehicles, and logistics delivery vehicles, the vehicles typically need to generate driving paths in real time based on the surrounding environment in order to avoid obstacles and travel along the predetermined route.

[0003] In related technologies, path planning methods typically need to run on vehicle platforms with limited computing resources. However, existing path planning methods struggle to balance computational resource utilization efficiency with path accuracy. For example, when the path search process is more refined, computational resource consumption increases accordingly; conversely, when the path search process is more coarse, the accuracy of the path search results may decrease. Therefore, there is a trade-off between computational resource utilization efficiency and path accuracy in related technologies, making it difficult to simultaneously meet both requirements.

[0004] There is currently no effective solution to the above problems. Summary of the Invention

[0005] This application provides a vehicle route planning method and system to at least solve the technical problem in the prior art that it is difficult to balance the efficiency of computing resource utilization and the accuracy of the route planning.

[0006] According to one aspect of the embodiments of this application, a vehicle path planning method is provided, comprising: acquiring the positioning information of a vehicle on a reference line and obstacle information of the area surrounding the vehicle; constructing a mesh map based on the positioning information, wherein the mesh map is used to represent the path search space formed by the directions based on the reference line; determining a path planning mode based on the obstacle information, and determining the mesh resolution of the mesh map based on the path planning mode, wherein the mesh resolution is used to represent the discretization accuracy of the mesh map; discretizing the mesh map according to the mesh resolution to obtain multiple mesh nodes, and determining the obstacle cost of each of the multiple mesh nodes, wherein each node corresponds to a candidate position of the vehicle, and the obstacle cost of each node is used to represent the degree of conflict between the area covered by the vehicle outline and the obstacle when the vehicle is located at the candidate position corresponding to the node; and determining the target path of the vehicle based on the obstacle cost of each node and the mesh map.

[0007] For example, determining the path planning mode based on obstacle information includes: determining whether there is an obstacle in front of the vehicle based on obstacle information; if it is determined that there is an obstacle in front of the vehicle and the vehicle's driving mode is configured to allow obstacle avoidance, determining the path planning mode as obstacle avoidance mode; if it is determined that there is no obstacle in front of the vehicle or the vehicle's driving mode is configured to not allow obstacle avoidance, determining the path planning mode as non-obstacle avoidance mode.

[0008] For example, the vehicle path planning method further includes: after determining that the path planning mode is obstacle avoidance mode, if no obstacle is detected in front of the vehicle within a first preset time period, then it is determined that the obstacle no longer exists, and the path planning mode is switched to non-obstacle avoidance mode; after determining that the path planning mode is non-obstacle avoidance mode, if no passable path for the vehicle is detected in non-obstacle avoidance mode, then it is determined that the vehicle is in a path blocking state, wherein the path blocking state is used to indicate that the vehicle cannot pass in non-obstacle avoidance mode and needs to stop and wait; after determining that the vehicle is in a path blocking state, if no obstacle is detected in front of the vehicle within a second preset time period, then it is determined that the vehicle recovers from the path blocking state to a normal passage state; wherein the first preset time period is longer than the second preset time period.

[0009] For example, determining the grid resolution of a mesh map based on a path planning mode includes: when the path planning mode is obstacle avoidance mode, determining the grid resolution of the mesh map along the reference line direction as a first resolution, and the grid resolution of the mesh map perpendicular to the reference line direction as a second resolution; when the path planning mode is non-obstacle avoidance mode, determining the grid resolution of the mesh map along the reference line direction as a third resolution, and the grid resolution of the mesh map perpendicular to the reference line direction as a fourth resolution; wherein the first resolution is greater than the third resolution, and the second resolution is greater than the fourth resolution.

[0010] For example, based on the obstacle cost and mesh map of each node, the target path of the vehicle is determined, including: determining the centerline deviation weight, lateral change smoothing weight, and reference line tracking weight corresponding to the mesh map according to the path planning mode; wherein, the centerline deviation weight is used to characterize the influence of the lateral offset of each node on the path planning cost, the lateral change smoothing weight is used to characterize the influence of the lateral offset change between each node and its adjacent nodes on the path planning cost, and the reference line tracking weight is used to characterize the influence of the deviation between each node and the reference lateral offset on the path planning cost, and the reference lateral offset is the target lateral offset value of the reference line at each node; the target path of the vehicle is determined based on the obstacle cost, centerline deviation weight, lateral change smoothing weight, reference line tracking weight, and mesh map of each node.

[0011] For example, when the path planning mode is obstacle avoidance mode, the centerline deviation weight is determined as the first weight, the lateral change smoothing weight as the second weight, and the reference line tracking weight as the third weight; when the path planning mode is non-obstacle avoidance mode, the centerline deviation weight is determined as the fourth weight, the lateral change smoothing weight as the fifth weight, and the reference line tracking weight as the sixth weight; the first weight is less than the fourth weight, the second weight is less than the fifth weight, and the third weight is less than the sixth weight.

[0012] For example, determining the obstacle cost of each node in a plurality of grid nodes includes: mapping each node in the plurality of grid nodes to an occupied grid map through coordinate transformation; wherein, the occupied grid map is used to characterize the environmental information of the area surrounding the vehicle, and each grid in the occupied grid map has an occupancy value and a cost value, wherein the occupancy value is used to characterize the degree to which the grid is occupied by an obstacle, and the cost value is used to characterize the degree of impact of the grid as an obstacle on vehicle passage; determining, based on the vehicle profile model, at least one occupied grid covered by the vehicle profile in the occupied grid map at the candidate position corresponding to the x-th node, and taking the maximum value of the cost values ​​corresponding to the at least one occupied grid as the obstacle cost of the x-th node; wherein, the x-th node is any one of the plurality of grid nodes; if there is a grid with an occupancy value greater than a preset threshold in the at least one occupied grid covered by the vehicle profile, the x-th node is marked as impassable.

[0013] For example, the target path of the vehicle is determined based on the obstacle cost, centerline deviation weight, lateral change smoothing weight, reference line tracking weight, and the grid diagram for each node. This includes: performing dynamic programming recursion row by row on the grid diagram, following the order from the starting row to the ending row. For the j-th node in the i-th row, the following steps are performed: obtaining the obstacle cost of the j-th node in the i-th row, where i is an integer greater than 1 and j is a positive integer; determining G candidate cumulative costs for the j-th node in the i-th row based on the obstacle cost, centerline deviation weight, lateral change smoothing weight, and reference line tracking weight, where G is the number of reachable nodes in the (i-1)-th row, and a reachable node is one whose lateral offset difference between the (i-1)-th node in the i-th row and the j-th node in the i-th row is less than 1. The node is equal to or equal to the preset lateral jump threshold; the smallest candidate cumulative cost among the G candidate cumulative costs is taken as the cumulative cost of the j-th node in the i-th row, and the reachable node corresponding to the smallest candidate cumulative cost is recorded as the optimal parent node of the j-th node in the i-th row; after the dynamic programming recursion is completed, if it is detected that there are nodes in the last valid row of the grid graph that are not marked as impassable, the node with the smallest cumulative cost in the last valid row is selected as the path endpoint, and based on the optimal parent node of each recorded node, backtracking upwards row by row along the path endpoint until the starting row is reached to form the initial path; if it is detected that all nodes in the last valid row are marked as impassable, it is determined that the vehicle is in a path blocking state; the target path of the vehicle is determined according to the initial path.

[0014] For example, based on the obstacle cost, centerline deviation weight, lateral change smoothing weight, and reference line tracking weight of the j-th node in the i-th row, G candidate cumulative costs are determined, including: for the k-th reachable node in the (i-1)-th row, the lateral transfer cost from the k-th reachable node to the j-th node is determined based on the lateral offset of the j-th node in the i-th row, the lateral offset of the k-th reachable node in the (i-1)-th row, the lateral offset of the optimal parent node of the k-th reachable node, the centerline deviation weight, the lateral change smoothing weight, and the reference line tracking weight; the k-th candidate cumulative cost of the j-th node in the i-th row is determined based on the obstacle cost, the cumulative cost of the k-th reachable node in the (i-1)-th row, and the lateral transfer cost, where k takes values ​​from 1 to G, resulting in G candidate cumulative costs.

[0015] For example, determining the vehicle's target path based on the initial path includes: traversing adjacent path points along the path direction in the initial path; for every two adjacent path points in the initial path, determining the longitudinal mileage difference and lateral offset change between the two adjacent path points, wherein the longitudinal mileage difference is the difference in longitudinal mileage corresponding to the two adjacent path points, the longitudinal mileage is the distance from the reference line starting point to the path point along the reference line direction, and the lateral offset change is the difference in lateral offset corresponding to the two adjacent path points, the lateral offset is the offset perpendicular to the reference line direction; if there are adjacent path points in the initial path with a longitudinal mileage difference less than a first threshold and a lateral offset change greater than a second threshold, the initial path is determined as a non-target path; wherein, if a target path was output in the previous path planning cycle, the vehicle continues to travel along the target path output in the previous path planning cycle; if no target path was output in the previous path planning cycle, or if there is no previous path planning cycle, an emergency stop is triggered; if there are no adjacent path points in the initial path with a longitudinal mileage difference less than the first threshold and a lateral offset change greater than the second threshold, the initial path is taken as the vehicle's target path.

[0016] According to another aspect of the embodiments of this application, a vehicle path planning system is also provided, comprising: an acquisition module for acquiring the positioning information of a vehicle on a reference line and obstacle information of the area surrounding the vehicle; a construction module for constructing a mesh map based on the positioning information, wherein the mesh map is used to represent the path search space formed by the directions based on the reference line; a pattern determination module for determining a path planning pattern based on the obstacle information and determining the mesh resolution of the mesh map based on the path planning pattern; wherein the mesh resolution is used to represent the discretization accuracy of the mesh map; a cost determination module for discretizing the mesh map according to the mesh resolution to obtain multiple mesh nodes and determining the obstacle cost of each of the multiple mesh nodes, wherein each node corresponds to a candidate position of the vehicle, and the obstacle cost of each node is used to represent the degree of conflict between the area covered by the vehicle outline and the obstacle when the vehicle is located at the candidate position corresponding to the node; and a path determination module for determining the target path of the vehicle based on the obstacle cost of each node and the mesh map.

[0017] In this embodiment, a path planning mode is determined based on obstacle information, and the grid resolution of the mesh graph is determined based on the path planning mode. Thus, a correlation is established between the grid resolution and obstacle information through the path planning mode, allowing the grid resolution to change with the obstacle information instead of remaining fixed. The grid resolution characterizes the discretization precision of the mesh graph. Higher discretization precision results in a relatively larger number of mesh nodes after discretization; conversely, lower discretization precision results in a relatively smaller number of mesh nodes. In determining the obstacle cost of each node among multiple mesh nodes and determining the vehicle's target path based on the obstacle cost of each node and the mesh graph, the number of mesh nodes affects the consumption of computational resources, and the discretization precision of the mesh nodes affects the accuracy of the target path. Therefore, when obstacle information indicates a need for higher path accuracy, a higher grid resolution can be determined based on the path planning mode, thereby improving the accuracy of the target path; conversely, when obstacle information indicates that lower path accuracy is acceptable, a lower grid resolution can be determined based on the path planning mode, thereby reducing the number of mesh nodes and thus reducing the consumption of computational resources. By determining the path planning mode based on obstacle information and then determining the grid resolution based on the path planning mode, the grid resolution can be adapted to the scene represented by the obstacle information. This helps to balance the efficiency of computing resource utilization and path accuracy, thus solving the technical problem in existing path planning that it is difficult to balance the efficiency of computing resource utilization and path accuracy. Attached Figure Description

[0018] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:

[0019] Figure 1 This is a schematic diagram of an optional vehicle routing method according to an embodiment of this application;

[0020] Figure 2 This is a flowchart illustrating an optional vehicle routing method according to an embodiment of this application.

[0021] Figure 3 This is a schematic diagram of an optional vehicle routing system according to an embodiment of this application;

[0022] Figure 4 This is a structural block diagram of an optional vehicle routing system according to an embodiment of this application. Detailed Implementation

[0023] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.

[0024] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings 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 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, method, 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, methods, products, or apparatus.

[0025] According to the embodiments of this application, a vehicle routing system (hereinafter referred to as "the system") can be used as the execution subject of the vehicle routing method of this application embodiment. The system can be a software system or an embedded system combining software and hardware. Of course, the execution subject of the method in the embodiments of this application can also be other forms of execution subject, such as devices, equipment, etc. It should be known by those skilled in the art that this application does not particularly limit the specific form of the execution subject of the method.

[0026] According to an embodiment of this application, a method embodiment for vehicle routing planning is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0027] Figure 1 This is a schematic diagram of a vehicle routing method according to an embodiment of this application, such as... Figure 1 As shown, the method includes the following steps:

[0028] Step S101: Obtain the vehicle's positioning information on the reference line and the obstacle information in the area surrounding the vehicle.

[0029] For example, a reference line can refer to a pre-recorded global path. For instance, a reference line may include multiple path points, each of which may include one or more of the following: position coordinates, heading angle, left width, and right width. Positioning information can represent the vehicle's position on the reference line, such as the vehicle's longitudinal distance and lateral offset on the reference line, or the position on the reference line obtained by projecting the vehicle's position in the global coordinate system. Obstacle information can represent the occupancy of obstacles in the area surrounding the vehicle, such as the location, size, and distance of obstacles. The surrounding area can represent an area a certain distance in front of the vehicle and a certain width to the left and right. Obtaining the vehicle's positioning information on the reference line and the obstacle information in the area surrounding the vehicle provides basic data on the vehicle's current state and the surrounding environment for subsequent path planning. This helps to match the planned target path with the vehicle's current state and helps the target path avoid obstacles.

[0030] In some embodiments, the vehicle's positioning information on the reference line can be obtained through a positioning device on the vehicle. For example, the vehicle's position and attitude in the global coordinate system can be obtained through a positioning system receiver and an odometer. The position in the global coordinate system is then projected onto the reference line to obtain the vehicle's longitudinal mileage and lateral offset on the reference line. Obstacle information in the area surrounding the vehicle can be obtained through a sensing device on the vehicle. For example, images of the area surrounding the vehicle can be captured by a camera, and obstacle information can be obtained by target detection on the images. Alternatively, point cloud data can be obtained by scanning the area surrounding the vehicle with a LiDAR scanner, and obstacle information can be obtained by processing the point cloud data. Obtaining positioning and obstacle information through positioning and sensing devices is beneficial for reflecting the vehicle's current status and surrounding environment in real time.

[0031] In some embodiments, the vehicle's positioning information on the reference line can be read from a pre-recorded global road network file, containing a sequence of path points. Each path point includes position coordinates, heading angle, left width, and right width. Based on the vehicle's current projected position on the reference line, a local window within the longitudinal mileage range is extracted. The vehicle's Cartesian position is mapped to the reference line coordinate system using Frenet coordinate transformation, yielding the vehicle's longitudinal mileage and lateral offset on the reference line. Frenet coordinate transformation refers to the process of converting the vehicle's position in the global Cartesian coordinate system into longitudinal mileage and lateral offset relative to the reference line. Longitudinal mileage represents the distance traveled along the reference line, and lateral offset represents the vehicle's offset perpendicular to the reference line. Frenet coordinate transformation allows the vehicle's position to be represented relative to the reference line, simplifying the description of the vehicle's position and facilitating subsequent mesh mapping.

[0032] Obstacle information around the vehicle can be obtained through an occupied grid map output by camera perception fusion. The occupied grid map consists of multiple grids, each with an occupancy value and a cost value. The occupancy value characterizes the degree to which the grid is occupied by an obstacle, while the cost value characterizes the impact of the grid as an obstacle on vehicle passage. Obtaining location and obstacle information through pre-recorded global road network files and the occupied grid map can help reduce real-time computation and facilitate subsequent processing of obstacle information in grid form.

[0033] Optionally, the nearest point tracking on the reference line can employ a multi-layered anti-jamming mechanism. For example, a stagnation recovery mechanism forces a forward search of 60 points for repositioning when the nearest point index remains unchanged for three consecutive frames and the actual vehicle movement distance exceeds 0.25m; the monotonicity protection of the High Water Mark (HWM) limits the index backtracking to no more than 5 points; the projection search range is limited to the interval between 20 and 60 points ahead of the current index; and the backtracking strategy is triggered when none of the above mechanisms can determine a valid projection point, extrapolating based on the projection result of the previous frame. This multi-layered anti-jamming mechanism helps prevent the nearest point on the reference line from getting stuck in the wrong position in boundary scenarios such as low vehicle speed, stopping, or reversing.

[0034] Step S102: Construct a grid map based on the positioning information, wherein the grid map is used to represent the path search space formed by the directions based on the reference lines.

[0035] For example, a mesh graph can refer to a discretized spatial representation used for path search, representing the path search space constructed based on different directions of a reference line. These different directions can include a longitudinal mileage direction along the reference line and a lateral offset direction perpendicular to the reference line. Constructing a mesh graph based on positioning information discretizes the continuous driving space around the vehicle into multiple mesh nodes, which helps transform the path search problem into finding the minimum-cost path among discrete mesh nodes, thereby reducing the computational complexity of the path search.

[0036] In some embodiments, constructing a mesh map based on positioning information can be achieved as follows: A sequence of path points is read from a pre-recorded global road network file; dense reference lines are generated by linear interpolation along the tangent direction of the path at preset intervals; a local window within the longitudinal mileage range is extracted based on the vehicle's current projection position on the reference line; the vehicle's Cartesian position is mapped to the reference line coordinate system using Frenet coordinate transformation to obtain the vehicle's longitudinal mileage and lateral offset on the reference line; and a mesh map is constructed using the longitudinal mileage along the reference line direction as the longitudinal mileage dimension and the lateral offset perpendicular to the reference line direction as the lateral offset dimension. The mesh map can cover a certain distance range in front of and behind the vehicle in the longitudinal mileage dimension, and a certain width range on both sides of the vehicle in the lateral offset dimension. Constructing the mesh map by extracting a local window helps reduce the number of mesh nodes participating in subsequent path searches, thereby reducing computational resource consumption.

[0037] In other embodiments, constructing a mesh map based on positioning information can also be achieved as follows: Based on the vehicle's longitudinal mileage and lateral offset along the reference line, determine the coverage area and number of nodes in the longitudinal mileage direction and the coverage area and number of nodes in the lateral offset direction of the mesh map. Discretize the longitudinal mileage direction and the lateral offset direction according to the longitudinal mileage resolution and the lateral offset resolution, respectively, to obtain multiple mesh nodes. Each mesh node corresponds to a candidate position of the vehicle, and the candidate position is jointly determined by the longitudinal mileage and the lateral offset. The coverage area of ​​the mesh map in the longitudinal mileage direction can be larger than the coverage area in the lateral offset direction to adapt to scenarios where the vehicle needs a longer forward look-ahead distance and has limited lateral driving width when traveling along the reference line. Discretizing the mesh map according to the longitudinal mileage resolution and the lateral offset resolution allows the mesh map to have different discretization accuracies in different directions, thus helping to balance path search accuracy with computational efficiency.

[0038] Optionally, the vehicle path planning system can mark the road boundary as occupied at the corresponding position in the occupied grid map based on the left and right width attributes attached to the reference line path points, forming a virtual boundary wall. This helps ensure that the planned path does not exceed the drivable area. The vehicle path planning system can also perform near-end emergency stop detection on a rectangular area 0 to 1.5m in front of the vehicle and ±0.81m on each side. If an occupied grid is detected within the rectangular area, it is determined to be impassable, triggering the emergency stop logic and preventing further planning.

[0039] Step S103: Determine the path planning mode based on the obstacle information, and determine the grid resolution of the grid map based on the path planning mode, wherein the grid resolution is used to characterize the discrete accuracy of the grid map.

[0040] For example, a path planning pattern is used to characterize the path planning behavior of a vehicle under different obstacle conditions. For instance, the path planning pattern may include, but is not limited to, obstacle avoidance and non-obstacle avoidance patterns. The grid resolution may include longitudinal mileage resolution along the reference line direction and lateral offset resolution perpendicular to the reference line direction. Higher resolution results in smaller intervals between adjacent grid nodes and higher path search accuracy, but also requires more grid nodes for computation. Determining the path planning pattern based on obstacle information and then determining the grid resolution based on the path planning pattern allows the grid resolution to be dynamically adjusted with obstacle information rather than remaining fixed, thus balancing computational resource consumption and path search accuracy in different scenarios.

[0041] In some embodiments, the vehicle path planning system can determine the grid resolution of the mesh map in the longitudinal mileage direction and the grid resolution in the lateral offset direction according to the path planning mode. The grid resolution in the longitudinal mileage direction characterizes the interval between adjacent grid nodes in the longitudinal mileage direction, and the grid resolution in the lateral offset direction characterizes the interval between adjacent grid nodes in the lateral offset direction. In obstacle avoidance mode, the values ​​of the longitudinal mileage resolution and the lateral offset resolution are lower than in non-obstacle avoidance mode, resulting in smaller grid intervals and higher discrete accuracy, which is beneficial for more refined searching of detour paths near obstacles. In non-obstacle avoidance mode, the values ​​of the longitudinal mileage resolution and the lateral offset resolution are higher than in obstacle avoidance mode, resulting in larger grid intervals and lower discrete accuracy, which helps reduce the number of grid nodes participating in subsequent path searches, thereby reducing the consumption of computational resources.

[0042] Step S104: Discretize the grid map according to the grid resolution to obtain multiple grid nodes, and determine the obstacle cost of each of the multiple grid nodes. Each node corresponds to a candidate position of the vehicle, and the obstacle cost of each node is used to characterize the degree of conflict between the area covered by the vehicle profile and the obstacle when the vehicle is located at the candidate position corresponding to the node.

[0043] For example, discretization can refer to the process of dividing a continuous path search space into multiple grid nodes according to a grid resolution. A grid node can refer to a location point in the grid graph determined by both longitudinal mileage and lateral offset. A candidate location can represent a possible position of the vehicle in the grid graph; for example, a candidate location can include, but is not limited to, the vehicle's longitudinal mileage along a reference line and its lateral offset perpendicular to the reference line. An obstacle cost is a numerical value used to characterize the degree of conflict between the vehicle and obstacles when the vehicle is at a candidate location. A vehicle profile is a geometric model representing the spatial extent occupied by the vehicle at the candidate location; for example, the vehicle profile can be a preset rectangular model or other geometric models capable of representing the space occupied by the vehicle. The vehicle profile coverage area can refer to the spatial area covered by the vehicle profile at the candidate location.

[0044] In some embodiments, determining the obstacle cost of each node among multiple grid nodes can be achieved through geometric calculation. Specifically, for each node, the vehicle outline coverage area is determined based on the candidate location corresponding to that node, the obstacle location is determined based on obstacle information, the overlap area or shortest distance between the vehicle outline coverage area and the obstacle location is calculated, and the obstacle cost of that node is determined based on the overlap area or shortest distance. Determining the obstacle cost through geometric calculation helps to match the obstacle cost with the actual spatial relationship between the vehicle outline and the obstacle, thereby facilitating the differentiation of candidate locations with different levels of conflict during path search.

[0045] In other embodiments, determining the obstacle cost of each node among multiple grid nodes can be achieved by querying a preset cost table. Specifically, a cost table corresponding to the area surrounding the vehicle is generated or pre-stored based on obstacle information, and the cost table records the obstacle costs at different locations within the area surrounding the vehicle. For each node among the multiple grid nodes, the cost table is queried based on the candidate location corresponding to that node to obtain the obstacle cost. Querying the preset cost table helps reduce the real-time computational load when determining obstacle costs, thereby reducing the computational resource consumption during path planning.

[0046] Step S105: Determine the target path for the vehicle based on the obstacle cost and mesh map of each node.

[0047] For example, the target path can refer to the route the vehicle plans to travel over a future period. The target path can include multiple waypoints, each of which can include a longitudinal mileage along a reference line and a lateral offset perpendicular to the reference line. Determining the vehicle's target path based on the obstacle cost of each node and the mesh map can refer to searching for a path from the starting node to the ending node in the mesh map. During the search, the obstacle cost of each node is considered, ensuring that the searched path meets preset conditions, such as minimizing the total cost of the path or avoiding nodes whose obstacle cost exceeds a preset cost threshold. By considering the obstacle cost of each node, it is beneficial to ensure that the determined target path avoids candidate positions with a high degree of conflict with obstacles, thereby helping the vehicle maintain a safe distance from obstacles while traveling along the target path.

[0048] In some embodiments, the target path of a vehicle can be determined based on the obstacle cost of each node and the mesh graph through a row-by-row search. This involves searching the mesh graph for a path from the starting node to the ending node. During the search, the total cost of the path is determined based on the obstacle cost of each node and the transition cost between adjacent nodes. The path whose total cost meets a preset condition is then selected as the target path. By considering the obstacle cost of each node, it is beneficial to determine the target path with the lower total cost within the mesh graph.

[0049] In some optional embodiments, determining the path planning mode based on obstacle information includes: determining whether there is an obstacle in front of the vehicle based on obstacle information; if it is determined that there is an obstacle in front of the vehicle and the vehicle's driving mode is configured to allow obstacle avoidance, determining the path planning mode as obstacle avoidance mode; if it is determined that there is no obstacle in front of the vehicle or the vehicle's driving mode is configured to not allow obstacle avoidance, determining the path planning mode as non-obstacle avoidance mode.

[0050] For example, the driving mode configuration is used to characterize whether the vehicle is currently allowed to perform obstacle avoidance behavior. For instance, the driving mode configuration may include, but is not limited to, allowing obstacle avoidance and disallowing obstacle avoidance. An obstacle avoidance mode can refer to a path planning mode that allows the vehicle to make lateral deviations during path planning to avoid obstacles, while a non-obstacle avoidance mode can refer to a path planning mode where the vehicle travels along a reference line and lateral deviations are restricted. Determining whether there is an obstacle in front of the vehicle based on obstacle information, and determining the path planning mode based on the determination result and the driving mode configuration, allows the path planning mode to match the actual obstacle situation in front of the vehicle and the vehicle's current driving mode configuration. This facilitates determining the obstacle avoidance mode to avoid obstacles when they exist and obstacle avoidance is allowed, and determining the non-obstacle avoidance mode to travel along the reference line when there are no obstacles or obstacle avoidance is not allowed.

[0051] In some embodiments, the vehicle path planning system can parse obstacle information to determine whether there are obstacles within a preset distance range in front of the vehicle. For example, if the obstacle information is an occupied grid map, it determines whether there are any grids marked as occupied within the preset distance range in front of the vehicle. If there are grids marked as occupied within the preset distance range in front of the vehicle, and the driving mode is configured to allow obstacle avoidance, the path planning mode is determined to be an obstacle avoidance mode. If there are no grids marked as occupied within the preset distance range in front of the vehicle, or the driving mode is configured to disallow obstacle avoidance, the path planning mode is determined to be a non-obstacle avoidance mode. By jointly determining whether there are obstacles in front of the vehicle and the driving mode configuration, it is beneficial to determine the obstacle avoidance mode when there are obstacles and obstacle avoidance is allowed, and to determine the non-obstacle avoidance mode when there are no obstacles or obstacle avoidance is not allowed, thereby helping to match the path planning mode with the current driving scenario of the vehicle.

[0052] In other embodiments, the vehicle path planning system can determine the distance between the vehicle and an obstacle ahead based on obstacle information. If the distance between the obstacle and the vehicle is less than a preset distance threshold and the driving mode is configured to allow obstacle avoidance, the path planning mode is determined to be obstacle avoidance mode. If the distance between the obstacle and the vehicle is greater than or equal to the preset distance threshold, or the driving mode is configured to disallow obstacle avoidance, the path planning mode is determined to be non-obstacle avoidance mode. The driving mode configuration can be updated remotely via the cloud or locally. By considering the distance between the obstacle and the vehicle, it is beneficial to promptly determine the obstacle avoidance mode when the obstacle is close to the vehicle and obstacle avoidance is allowed, and to determine the non-obstacle avoidance mode when the obstacle is far from the vehicle or obstacle avoidance is not allowed.

[0053] In some optional embodiments, the vehicle path planning method further includes: after determining that the path planning mode is obstacle avoidance mode, if no obstacle is detected in front of the vehicle within a first preset time period, then it is determined that the obstacle no longer exists, and the path planning mode is switched to non-obstacle avoidance mode; after determining that the path planning mode is non-obstacle avoidance mode, if no passable path for the vehicle is detected in non-obstacle avoidance mode, then it is determined that the vehicle is in a path blocking state, wherein the path blocking state is used to indicate that the vehicle cannot pass in non-obstacle avoidance mode and needs to stop and wait; after determining that the vehicle is in a path blocking state, if no obstacle is detected in front of the vehicle within a second preset time period, then it is determined that the vehicle recovers from the path blocking state to a normal passage state; wherein the first preset time period is longer than the second preset time period.

[0054] For example, the first preset duration is used to characterize the hysteresis time required to switch from obstacle avoidance mode to non-obstacle avoidance mode, and the second preset duration is used to characterize the hysteresis time required to recover from a path blockage state to a normal traffic state. Since the obstacle detection results output by the perception module may be intermittent, obstacles may appear and disappear intermittently within multiple consecutive path planning cycles. If the path planning mode is switched immediately when the obstacle briefly disappears, the vehicle may frequently switch between obstacle avoidance and straightening, resulting in lateral shaking. By setting the first preset duration when exiting obstacle avoidance mode and the second preset duration when the path blockage state is cleared, the change in path planning mode can be delayed relative to the change in obstacle detection results, thereby reducing frequent switching of path planning modes caused by intermittent obstacle detection. By making the first preset duration longer than the second preset duration, the exit from obstacle avoidance mode can be relatively smooth to accommodate situations where the intermittent perception duration is long, and the clearing of the path blockage state can be relatively rapid to meet the need for the vehicle to resume normal traffic when the obstacle no longer exists. The two durations serve different stability requirements.

[0055] In some embodiments, the first preset duration and the second preset duration can be implemented using a counter. The counter accumulates according to the path planning cycle. When the number of consecutive path planning cycles without detecting a valid obstacle reaches the count value corresponding to the first preset duration or the second preset duration, it is determined that the corresponding preset duration has been reached, and the corresponding switching operation is performed. For example, the path planning cycle can be 100ms, the operating frequency can be 10Hz, the first preset duration can correspond to 15 path planning cycles, i.e., 1.5s, and the second preset duration can correspond to 3 path planning cycles, i.e., 0.3s. Implementing the first and second preset durations using a counter helps to match the hysteresis time with the path planning cycle.

[0056] In other embodiments, the first and second preset durations can be implemented using timers. The timer records the duration for which no effective obstacle is detected consecutively. When the duration reaches either the first or second preset duration, the corresponding preset duration is determined, and a corresponding switching operation is performed. Implementing the first and second preset durations using timers helps decouple the lag time from the path planning cycle, thus facilitating adaptation to different path planning cycles. Furthermore, the vehicle path planning system can also support remote forced mode settings in the cloud. Remote commands can override the local mode decision-making logic for manual intervention in special scenarios.

[0057] In some optional embodiments, determining the grid resolution of the mesh map based on the path planning mode includes: when the path planning mode is obstacle avoidance mode, determining the grid resolution of the mesh map along the reference line direction as a first resolution, and the grid resolution of the mesh map perpendicular to the reference line direction as a second resolution; when the path planning mode is non-obstacle avoidance mode, determining the grid resolution of the mesh map along the reference line direction as a third resolution, and the grid resolution of the mesh map perpendicular to the reference line direction as a fourth resolution; wherein the first resolution is greater than the third resolution, and the second resolution is greater than the fourth resolution.

[0058] For example, the first resolution, second resolution, third resolution, and fourth resolution are all used to characterize the discretization accuracy of the mesh map. Using the first and second resolutions in obstacle avoidance mode, and the third and fourth resolutions in non-obstacle avoidance mode, with the first resolution being greater than the third and the second resolution greater than the fourth, allows the mesh map in obstacle avoidance mode to have higher discretization accuracy in both the longitudinal mileage and lateral offset directions than in non-obstacle avoidance mode. This facilitates searching for bypass paths near obstacles with a finer mesh, while in non-obstacle avoidance mode, a coarser mesh reduces the number of mesh nodes involved in path searching, thus balancing path search accuracy with computational resource consumption. In both path planning modes, the coverage along the reference line can be consistent, while the coverage perpendicular to the reference line can have slight differences due to rounding down the number of nodes, for example, a difference of 0.0375m, which can be considered equivalent in engineering.

[0059] In some embodiments, the first resolution can be exemplarily set to 0.25m, the second resolution can be exemplarily set to 0.075m, the third resolution can be exemplarily set to 0.5m, and the fourth resolution can be exemplarily set to 0.15m. In obstacle avoidance mode, the grid spacing is smaller than that in non-obstacle avoidance mode, resulting in higher discrete accuracy, which is beneficial for more precise searching of detour paths near obstacles. In non-obstacle avoidance mode, the grid spacing is larger than that in obstacle avoidance mode, resulting in lower discrete accuracy, which is beneficial for reducing the number of grid nodes participating in subsequent path searching.

[0060] In some optional embodiments, the target path of the vehicle is determined based on the obstacle cost and mesh map of each node, including: determining the centerline deviation weight, lateral change smoothing weight, and reference line tracking weight corresponding to the mesh map according to the path planning mode; wherein, the centerline deviation weight is used to characterize the influence of the lateral offset of each node on the path planning cost, the lateral change smoothing weight is used to characterize the influence of the lateral offset change between each node and its adjacent nodes on the path planning cost, and the reference line tracking weight is used to characterize the influence of the deviation between each node and the reference lateral offset on the path planning cost, and the reference lateral offset is the target lateral offset value of the reference line at each node. Based on the obstacle cost, centerline deviation weight, lateral change smoothing weight, reference line tracking weight, and grid map of each node, the vehicle's target path is determined. Specifically, in obstacle avoidance mode, the centerline deviation weight is determined as the first weight, the lateral change smoothing weight as the second weight, and the reference line tracking weight as the third weight. In non-obstacle avoidance mode, the centerline deviation weight is determined as the fourth weight, the lateral change smoothing weight as the fifth weight, and the reference line tracking weight as the sixth weight. The first weight is less than the fourth weight, the second weight is less than the fifth weight, and the third weight is less than the sixth weight.

[0061] For example, the centerline deviation weight, lateral change smoothing weight, and reference line tracking weight correspond to three different penalty terms in the path planning cost. By adjusting these three weights according to the path planning mode, the tendency of the path planning cost to affect different path behaviors can be changed. In obstacle avoidance mode, setting the three weights to smaller first, second, and third weights can reduce the penalty for lateral offset, lateral offset change, and deviation from the reference lateral offset, making the path search more inclined to choose lateral offset paths that can bypass obstacles. In non-obstacle avoidance mode, setting the three weights to larger fourth, fifth, and sixth weights can increase the penalty for lateral offset, lateral offset change, and deviation from the reference lateral offset, making the path search more inclined to choose paths that travel along the reference line and have gentle lateral changes. Through the above weight adjustments, the path planning behavior can be matched with the path planning mode, which is beneficial for completing obstacle avoidance actions in obstacle avoidance mode and reducing unnecessary lateral swaying in non-obstacle avoidance mode.

[0062] In some embodiments, the first weight can be exemplarily set to 50, the second weight can be exemplarily set to 60, the third weight can be exemplarily set to 80, the fourth weight can be exemplarily set to 100, the fifth weight can be exemplarily set to 100, and the sixth weight can be exemplarily set to 150. The three weights in obstacle avoidance mode are significantly lower than the corresponding weights in non-obstacle avoidance mode. This numerical setting allows for greater lateral offset of the path to avoid obstacles in obstacle avoidance mode and keeps the path close to the reference line in non-obstacle avoidance mode, thus facilitating a balance between obstacle avoidance capability and reference line tracking capability.

[0063] Optionally, the weight reduction ratio can be determined based on actual measurements. For example, if the reduction is too small, the obstacle avoidance path may not deviate far enough from the centerline to avoid the obstacle; if the reduction is too large, the path may be too loose and produce unnecessary lateral swaying.

[0064] In some optional embodiments, determining the obstacle cost of each node in a plurality of grid nodes includes: mapping each node in the plurality of grid nodes to an occupied grid map through coordinate transformation; wherein, the occupied grid map is used to characterize the environmental information of the area surrounding the vehicle, and each grid in the occupied grid map has an occupancy value and a cost value, the occupancy value is used to characterize the degree to which the grid is occupied by an obstacle, and the cost value is used to characterize the degree of impact of the grid as an obstacle on vehicle passage; determining, based on the vehicle profile model, at least one occupied grid covered by the vehicle profile in the occupied grid map at the candidate position corresponding to the x-th node, and taking the maximum value of the cost values ​​corresponding to the at least one occupied grid as the obstacle cost of the x-th node; wherein, the x-th node is any one of the plurality of grid nodes; if there is a grid with an occupancy value greater than a preset threshold in the at least one occupied grid covered by the vehicle profile, the x-th node is marked as impassable.

[0065] For example, by mapping grid nodes to occupied grid maps and taking the maximum cost within the vehicle outline coverage area as the obstacle cost of the xth node, the obstacle cost can reflect the most severe conflict situation at the candidate location; by marking the xth node with an occupation value greater than a preset threshold as impassable, candidate locations with a high degree of conflict with obstacles can be excluded in the subsequent path search process, thereby helping the target path to avoid areas with a high degree of conflict with obstacles.

[0066] In some embodiments, the preset threshold can be exemplarily set to 0.7, and the cost of occupying a grid map can be determined based on the distance between the grid and the obstacle, with greater value for closer grids. By setting the preset threshold, candidate locations with high conflict levels and candidate locations with low conflict levels can be distinguished, and candidate locations with high conflict levels can be marked as impassable, thereby facilitating the priority selection of nodes far from obstacles during path search.

[0067] In some optional embodiments, the target path of the vehicle is determined based on the obstacle cost, centerline deviation weight, lateral change smoothing weight, reference line tracking weight, and the grid diagram for each node. This includes: performing dynamic programming recursion row by row on the grid diagram, following the order from the starting row to the ending row. For the j-th node in the i-th row, the following steps are performed: obtaining the obstacle cost of the j-th node in the i-th row, where i is an integer greater than 1 and j is a positive integer; determining G candidate cumulative costs for the j-th node in the i-th row based on the obstacle cost, centerline deviation weight, lateral change smoothing weight, and reference line tracking weight, where G is the number of reachable nodes in the (i-1)-th row, and reachable nodes are the difference between the lateral offset of the (i-1)-th node and the j-th node in the i-th row. Nodes with values ​​less than or equal to a preset lateral jump threshold; the smallest candidate cumulative cost among G candidate cumulative costs is taken as the cumulative cost of the j-th node in the i-th row, and the reachable node corresponding to the smallest candidate cumulative cost is recorded as the optimal parent node of the j-th node in the i-th row; after the dynamic programming recursion is completed, if it is detected that there are nodes in the last valid row of the grid graph that are not marked as impassable, the node with the smallest cumulative cost in the last valid row is selected as the path endpoint, and based on the optimal parent node of each recorded node, backtracking upwards row by row along the path endpoint until the starting row is reached to form the initial path; if it is detected that all nodes in the last valid row are marked as impassable, it is determined that the vehicle is in a path blocking state; the target path of the vehicle is determined according to the initial path.

[0068] For example, dynamic programming recursion is used to characterize the process of calculating the cumulative cost of each node row by row in order from the starting row to the ending row.

[0069] Optionally, the vehicle routing system can perform dynamic programming recursion row by row on the grid graph, calculate the cumulative cost of each node from the starting row to the ending row, and record the optimal parent node of each node.

[0070] The cumulative cost of the current node satisfies:

[0071]

[0072] in, This can represent the cumulative cost of the j-th node in the i-th row. This can represent the obstacle cost of the j-th node in the i-th row. This can represent the cost of a lateral transfer from the k-th node in row i-1 to the j-th node in row i. This can represent the cumulative cost of the k-th node in the (i-1)-th row. It can represent the reachable range index offset determined by the maximum horizontal jump and horizontal offset resolution of adjacent rows, k can represent the index of the reachable node in the previous row, i is the row index, and j is the column index;

[0073] The cost of lateral transfer is satisfied:

[0074] ;

[0075] in, This can represent the lateral offset of the j-th node. This can represent the lateral offset of the k-th node. This can represent the lateral offset of the optimal parent node of the k-th node. This can represent a reference lateral offset. This can indicate the weight of the deviation from the center line. It can represent the weight for smoothing horizontal changes. This can represent the reference line tracking weight. This can represent a fixed coefficient used to penalize changes in lateral curvature, where the fixed coefficient can be, for example, taken as 100.

[0076] After the dynamic programming recursion is completed, if there are nodes in the last valid row of the grid graph that are not marked as impassable, select the node with the minimum cumulative cost from the last valid row as the path endpoint, and backtrack upwards row by row along the path endpoint based on the optimal parent node of each recorded node until the starting row is reached to form the initial path; if all nodes in the last valid row are marked as impassable, it is determined that the vehicle is in a path blocking state; the target path of the vehicle is determined according to the initial path.

[0077] Optionally, the reachable range index offset satisfies:

[0078]

[0079] in, It can represent the maximum horizontal jump between adjacent rows. It can represent the horizontal offset resolution. It can represent the rounding up operation.

[0080] In some optional embodiments, G candidate cumulative costs for the j-th node in the i-th row are determined based on the obstacle cost, centerline deviation weight, lateral change smoothing weight, and reference line tracking weight. This includes: for the k-th reachable node in the (i-1)-th row, determining the lateral transfer cost from the k-th reachable node to the j-th node based on the lateral offset of the j-th node in the i-th row, the lateral offset of the k-th reachable node in the (i-1)-th row, the lateral offset of the optimal parent node of the k-th reachable node, the centerline deviation weight, the lateral change smoothing weight, and the reference line tracking weight; and determining the k-th candidate cumulative cost for the j-th node in the i-th row based on the obstacle cost of the j-th node in the i-th row, the cumulative cost of the k-th reachable node in the (i-1)-th row, and the lateral transfer cost, where k takes values ​​from 1 to G, resulting in G candidate cumulative costs.

[0081] Optionally, the k-th reachable node is used to characterize a node in row i-1 whose lateral offset difference with the j-th node in row i is less than or equal to a preset lateral jump threshold. The lateral transfer cost is used to characterize the cost obtained by comprehensively considering lateral offset, lateral change, reference line tracking, and lateral curvature change when transferring from the k-th reachable node to the j-th node in row i. The k-th candidate cumulative cost is used to characterize the cost obtained by adding the obstacle cost of the j-th node in row i, the cumulative cost of the k-th reachable node in row i-1, and the lateral transfer cost. By determining the lateral transfer cost and further determining the candidate cumulative cost, multiple aspects of path cost can be comprehensively considered in the dynamic programming recursion. This facilitates the selection of a suitable candidate cumulative cost from G candidate cumulative costs as the cumulative cost of the j-th node in row i, and helps to keep the formed initial path smooth in the lateral direction.

[0082] Optionally, the cost of lateral transfer It contains four items, the first of which is the absolute value of the horizontal offset. Multiply by centerline deviation weight The first term is used to penalize deviations from the road center. The second term is the square of the lateral offset difference between adjacent nodes. Multiply by horizontal variation smoothing weights This is used to penalize abrupt changes in direction. The third term is the square of the deviation from the reference lateral offset. Multiply by reference line tracking weight This is used to guide the path regression reference line. The fourth term is the lateral curvature penalty term. Multiply by a fixed coefficient This term is the second-order difference between the lateral offset and the longitudinal mileage, which is discretized to approximate the path curvature and is used to penalize discontinuous changes in curvature.

[0083] In some optional embodiments, determining the vehicle's target path based on the initial path includes: traversing adjacent path points along the path direction in the initial path; for every two adjacent path points in the initial path, determining the longitudinal mileage difference and lateral offset change between the two adjacent path points, wherein the longitudinal mileage difference is the difference in longitudinal mileage corresponding to the two adjacent path points, the longitudinal mileage is the distance from the reference line starting point to the path point along the reference line direction, and the lateral offset change is the difference in lateral offset corresponding to the two adjacent path points, the lateral offset is the offset perpendicular to the reference line direction; if there are adjacent path points in the initial path with a longitudinal mileage difference less than a first threshold and a lateral offset change greater than a second threshold, the initial path is determined as a non-target path; wherein, if a target path was output in the previous path planning cycle, the vehicle continues to travel along the target path output in the previous path planning cycle; if no target path was output in the previous path planning cycle, or if there is no previous path planning cycle, an emergency stop is triggered; if there are no adjacent path points in the initial path with a longitudinal mileage difference less than the first threshold and a lateral offset change greater than the second threshold, the initial path is taken as the vehicle's target path.

[0084] Optionally, the first and second thresholds can be set according to the vehicle's kinematic constraints, such as the vehicle's current speed, steering ability, or maximum lateral acceleration. The first threshold can be exemplarily set to 2m, and the second threshold can be exemplarily set to 0.45m. By setting the first and second thresholds according to the vehicle's kinematic constraints, the determined target path can be matched with the vehicle's actual execution capability. By detecting the initial path when the first and second thresholds are exemplarily set to 2m and 0.45m respectively, the initial path can be rejected in a timely manner when the longitudinal distance is short and the lateral deviation is large, and the process can proceed according to the target path of the previous path planning cycle or an emergency stop.

[0085] Optionally, after using the initial path as the target path for the vehicle, a quadratic programming smoothing can be applied to the target path. The optimization objective is to minimize the weighted sum of the path point position deviation and the rate of curvature change. The constraints include monotonically increasing longitudinal mileage, lateral offset within a feasible range, and lateral change of adjacent points not exceeding a preset lateral change threshold. The output is a continuous trajectory point sequence containing curvature and heading angle.

[0086] The curvature speed limit is calculated based on the path curvature in a continuous sequence of trajectory points. The curvature speed limit satisfies:

[0087]

[0088] in, It can represent curvature speed limit. It can represent the maximum permissible lateral acceleration. It can represent the absolute value of path curvature. It can represent the maximum driving speed. Optionally, For example, 0.1 m / s² can be used. An example value of 1.6 m / s can be taken.

[0089] The target speed is tiered based on the current path planning mode and the distance to obstacles ahead. The maximum speed limit in obstacle avoidance mode is lower than that in non-obstacle avoidance mode. When the path is blocked, the target speed is reduced to zero, and a continuous speed curve is output.

[0090] Figure 2 This is a flowchart illustrating the vehicle routing method provided in an embodiment of this application. Figure 2 As shown, the vehicle path planning method includes the following process: First, the vehicle path planning system can preset the path planning period, for example, it can be set to 100ms. The vehicle path planning system can obtain the vehicle's positioning information on the reference line and extract a local window within the longitudinal mileage range based on the positioning information, for example, the longitudinal mileage range can be -10m to 20m. Obstacle information of the area surrounding the vehicle is obtained, and the occupation grid cost field is updated based on the obstacle information. Then, it is determined whether there is an obstacle in front of the vehicle based on the obstacle information. If there is no obstacle in front of the vehicle, the path planning mode is determined to be a non-obstacle avoidance mode, the longitudinal mileage resolution is the third resolution, the lateral offset resolution is the fourth resolution, the centerline deviation weight is the fourth weight, the lateral change smoothing weight is the fifth weight, and the reference line tracking weight is the sixth weight. When there is an obstacle in front of the vehicle, the path planning mode is determined to be obstacle avoidance mode, the longitudinal mileage resolution is the first resolution, the lateral offset resolution is the second resolution, the centerline deviation weight is the first weight, the lateral change smoothing weight is the second weight, the reference line tracking weight is the third weight, and obstacle hysteresis maintenance is activated. The first preset duration corresponds to multiple path planning cycles. For example, the first preset duration can correspond to 15 path planning cycles.

[0091] Subsequently, a mesh graph can be constructed and initialized, for example, a 21×81 mesh. Dynamic programming is performed row-by-row on the mesh graph to calculate the cumulative cost of each node, which equals the sum of the lateral transfer cost and the obstacle cost. It is then determined whether there are any nodes in the last valid row that are not marked as impassable. If there are no such nodes in the last valid row, the vehicle is determined to be in a path-blocked state, and zero speed is output. If there are such nodes in the last valid row, the node with the minimum cumulative cost is selected as the path endpoint, and the initial path is backtracked. Then, it is determined whether there are any adjacent path points in the initial path whose longitudinal mileage difference is less than a first threshold and whose lateral offset change is greater than a second threshold. If there are such adjacent path points in the initial path, the initial path is determined to be a non-target path. If there are no adjacent path points in the initial path with a longitudinal mileage difference less than the first threshold and a lateral offset change greater than the second threshold, the initial path is smoothed by secondary planning to obtain a smoothed path. The heading and curvature are determined based on the smoothed path, and speed planning and obstacle classification speed limits are performed based on the heading and curvature. The trajectory point sequence is output, and the controller generates control commands based on the trajectory point sequence and waits for the next path planning cycle.

[0092] For example, a low-speed autonomous vehicle travels along a park reference line at 1 m / s. A stationary obstacle appears 4 m ahead, partially blocking the path. In non-obstacle avoidance mode, the obstacle is detected by the grid, and the node occupied by the obstacle receives a high obstacle cost in the grid cost calculation. Dynamic programming search finds that all paths pass through the obstacle node, indicating the vehicle is in a path congestion state, forcibly reducing the speed to zero, and the vehicle stops and waits. In obstacle avoidance mode, the obstacle is detected by the grid, the grid resolution automatically switches to fine mode, with a longitudinal mileage resolution of 0.25 m and a lateral offset resolution of 0.075 m. The three sets of cost weights are reduced by 40% to 50% in a coordinated manner, and dynamic programming search finds a low-cost path outside the obstacle. During backtracking, it checks for adjacent path points with a longitudinal mileage difference of less than 2 m and a lateral offset change greater than 0.45 m. If none exist, the path passes the safety rejection check. The path is output after secondary programming smoothing, and a curvature speed limit is calculated based on the path curvature. Speed ​​planning, based on the obstacle avoidance mode, limits the maximum speed to 1 m / s. Obstacle hysteresis is maintained upon activation. For the next 15 frames, even if obstacles are briefly lost, the vehicle continues to maneuver around them. After 15 consecutive frames without detecting any obstacles, the hysteresis is cleared, the weights are restored to non-obstacle maneuvering mode, and the vehicle smoothly returns to the center of the reference line.

[0093] Thus, the reference line tracking (i.e., without obstacles) smoothly travels along the centerline, and the verification results meet expectations; the deviation path generated by the single-sided static obstacle is safely bypassed, and the verification results meet expectations; when obstacles intermittently disappear or appear, the path is maintained with 15 frames of hysteresis without oscillation, and the verification results meet expectations; the obstacle avoidance mode can be remotely switched in the cloud and take effect in real time without restarting the device; the path is rejected when the longitudinal mileage of a large deviation path at close range is less than 2m and the lateral deviation change is greater than 0.45m, and the verification results meet expectations; the road is safely stopped when the obstacle completely blocks the road, and the verification results meet expectations; the reference line nearest point tracking does not lag at low speeds or when stopped, and the position is accurate, and the verification results meet expectations.

[0094] Optionally, the vehicle path planning system can establish a 21×81 grid in the Frenet coordinate system, with 21 points covering 10.5m in the longitudinal mileage direction and 81 points covering ±3.0375m in the lateral offset direction. This can meet the perception, planning, and control closed-loop requirements of low-speed vehicles within a 100ms planning cycle and can also represent the lateral drivable area of ​​typical park roads. The obstacle avoidance weight reduction of 40%-50% has been determined through actual testing. If the reduction is too small (e.g., below 30%), the obstacle avoidance path will be difficult to deviate sufficiently from the centerline to avoid obstacles; if the reduction is too large (e.g., above 60%), the path will be too loose and prone to unnecessary lateral swaying. With a path planning cycle of 100ms (i.e., an operating frequency of 10Hz), the first preset duration can exemplarily correspond to 15 path planning cycles, with a duration of 1.5 seconds; the second preset duration can exemplarily correspond to 3 path planning cycles, with a duration of 0.3 seconds. The first preset duration is greater than the typical intermittent loss duration of the perception module and less than the maximum delay duration allowed by the safety response, which helps to reduce the frequent switching of path planning modes caused by intermittent obstacle detection; the second preset duration is less than the first preset duration, which helps to enable vehicles to quickly recover from the path blockage state to the normal traffic state when the obstacle no longer exists.

[0095] Optionally, during path backtracking, the minimum cost path can be extracted from the last valid row, and after smoothing by quadratic planning, a sequence of trajectory points with curvature and heading is output. The velocity planning layer can receive the smoothed path trajectory, calculate the curvature speed limit, apply graded target speed limits based on the distance to obstacles ahead and whether there are detour options, and output a continuous velocity curve.

[0096] See Figure 3According to another aspect of the embodiments of this application, a vehicle path planning system is also provided, including: an acquisition module, a construction module, a pattern determination module, a cost determination module, and a path determination module. The acquisition module is used to acquire the vehicle's positioning information on a reference line and obstacle information in the area surrounding the vehicle; the construction module is used to construct a mesh map based on the positioning information, wherein the mesh map represents the path search space formed by the directions based on the reference line; the pattern determination module is used to determine a path planning pattern based on the obstacle information and determine the mesh resolution of the mesh map based on the path planning pattern; wherein the mesh resolution represents the discretization accuracy of the mesh map; the cost determination module is used to discretize the mesh map according to the mesh resolution to obtain multiple mesh nodes and determine the obstacle cost of each of the multiple mesh nodes, wherein each node corresponds to a candidate position of the vehicle, and the obstacle cost of each node represents the degree of conflict between the area covered by the vehicle outline and the obstacle when the vehicle is located at the candidate position corresponding to that node; the path determination module is used to determine the target path of the vehicle based on the obstacle cost of each node and the mesh map.

[0097] For example, Figure 4 This is a structural block diagram of an optional vehicle path planning system provided in an embodiment of this application. The vehicle path planning system includes an input layer, a reference line management layer, an occupancy grid processing layer, a grid map path planning layer, a speed planning layer, and a control layer. The input layer provides global reference lines, obstacle information, vehicle positioning information, and driving mode configuration. The reference line management layer includes a reference line construction module, a local reference line extraction and coordinate transformation module, and a nearest point tracking module. The reference line construction module constructs reference lines based on global reference lines and vehicle positioning information. The local reference line extraction and coordinate transformation module extracts local reference lines from the reference lines and performs coordinate transformations. The nearest point tracking module tracks the nearest point of the vehicle on the reference lines. The occupancy grid processing layer includes a road boundary marking module, an occupancy grid management module, a near-end emergency stop detection module, and a cost field generation module. The road boundary marking module marks road boundaries in the occupancy grid map. The occupancy grid management module manages the occupancy grid map. The near-end emergency stop detection module detects the near-end area in front of the vehicle. The cost field generation module generates a continuous cost field.

[0098] The mesh graph path planning layer includes a mesh graph initialization module, a dynamic resolution adjustment module, a node cost calculation module, an obstacle hysteresis maintenance and path blockage clearing module, a path backtracking and safety rejection module, and a trajectory smoothing module. The mesh graph initialization module is used to construct the mesh graph. The dynamic resolution adjustment module is used to determine the mesh resolution of the mesh graph according to the path planning mode. The node cost calculation module is used to determine the obstacle cost of each node according to the output of the reference line management layer, the output of the occupied grid processing layer, and the driving mode configuration. The obstacle hysteresis maintenance and path blockage clearing module is used to maintain the obstacle state and path blockage state. The path backtracking and safety rejection module is used to form the initial path and perform safety rejection judgment. The trajectory smoothing module is used to perform smoothing processing on the initial path that passes the safety rejection judgment.

[0099] The speed planning layer includes a speed planner and an obstacle-level speed limiting module. The speed planner calculates the curvature speed limit based on the smoothed path, while the obstacle-level speed limiting module executes the graded target speed limit based on the distance to the obstacle ahead and the path planning mode. The control layer includes a controller and speed / angular velocity command outputs. The controller generates control commands based on the smoothed path and graded target speed limits, while the speed / angular velocity command outputs output speed and angular velocity commands.

[0100] It should be noted that, Figure 4 The system architecture of the vehicle path planning system shown can serve as an optional implementation of the system. For example, the acquisition module can be implemented by the input layer, reference line management layer, and occupancy grid processing layer. The input layer can provide vehicle positioning information and obstacle information, while the reference line management layer and occupancy grid processing layer process this information. The construction module can be implemented by the reference line management layer and the grid map initialization layer in the grid map path planning layer. For example, the reference line construction module constructs reference lines, and the grid map initialization layer constructs the grid map. The mode determination module can be implemented by the dynamic resolution adjustment module in the grid map path planning layer. For example, the dynamic resolution adjustment module determines the grid resolution based on the path planning mode. The cost determination module can be implemented by the cost field generation module in the occupancy grid processing layer and the node cost calculation module in the grid map path planning layer. For example, the cost field generation module generates a continuous cost field, and the node cost calculation module determines the obstacle cost for each node. The path determination module can be implemented by the obstacle hysteresis maintenance and path blockage clearing module, the path backtracking and safety rejection module, and the trajectory smoothing module in the grid map path planning layer. Furthermore, it can be combined with the speed planning layer and the control layer to output the final target path and control commands.

[0101] According to another aspect of the embodiments of this application, a computer-readable storage medium is also provided, which stores a computer program, wherein when the computer program is executed, the device where the computer-readable storage medium is located performs the above-described vehicle routing method.

[0102] According to another aspect of the embodiments of this application, an electronic device is also provided, including one or more processors and a memory, the memory being used to store one or more programs, wherein when the one or more programs are executed by one or more processors, the one or more processors cause the one or more processors to perform the vehicle routing method described above.

[0103] According to another aspect of the embodiments of this application, a computer program product is also provided, including a computer program or instructions that, when executed by a processor, implement the vehicle routing method described above.

[0104] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0105] In the above embodiments of this application, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0106] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and 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 displayed or discussed mutual couplings, direct couplings, or communication connections may be through some interfaces; indirect couplings or communication connections between units or modules may be electrical or other forms.

[0107] 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 units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0108] Furthermore, the functional units in the various embodiments of this application 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. The integrated unit can be implemented in hardware or as a software functional unit.

[0109] If the integrated unit 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 application, in essence, or the part that contributes to the prior art, or all or 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 application. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard drive, magnetic disk, or optical disk.

[0110] The above are merely preferred embodiments of this application. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principles of this application, and these improvements and modifications should also be considered within the scope of protection of this application.

Claims

1. A vehicle route planning method, characterized in that, include: Obtain the vehicle's positioning information on the reference line and the obstacle information in the area surrounding the vehicle; A grid map is constructed based on the positioning information, wherein the grid map is used to represent the path search space formed by the direction of the reference line; The path planning mode is determined based on the obstacle information, and the grid resolution of the grid map is determined based on the path planning mode, wherein the grid resolution is used to characterize the discrete accuracy of the grid map; The grid map is discretized according to the grid resolution to obtain multiple grid nodes, and the obstacle cost of each of the multiple grid nodes is determined. Each node corresponds to a candidate position of the vehicle, and the obstacle cost of each node is used to characterize the degree of conflict between the area covered by the vehicle outline and the obstacle when the vehicle is located at the candidate position corresponding to the node. The target path of the vehicle is determined based on the obstacle cost of each node and the mesh map.

2. The method according to claim 1, characterized in that, Determining the path planning mode based on the obstacle information includes: Determine whether there is an obstacle in front of the vehicle based on the obstacle information; If it is determined that there is an obstacle in front of the vehicle and the vehicle's driving mode is configured to allow obstacle avoidance, the path planning mode is determined to be obstacle avoidance mode. If it is determined that there is no obstacle in front of the vehicle, or the vehicle's driving mode is configured to not allow obstacle avoidance, the path planning mode is determined to be a non-obstacle avoidance mode.

3. The method according to claim 2, characterized in that, The method further includes: After determining that the path planning mode is obstacle avoidance mode, if no obstacle is detected in front of the vehicle within a first preset time period, it is determined that the obstacle no longer exists, and the path planning mode is switched to the non-obstacle avoidance mode. After determining that the path planning mode is the non-obstacle bypass mode, if no passable path for the vehicle is detected in the non-obstacle bypass mode, the vehicle is determined to be in a path blocking state, wherein the path blocking state is used to indicate that the vehicle cannot pass in the non-obstacle bypass mode and needs to stop and wait. After determining that the vehicle is in a path blockage state, if no obstacle is detected in front of the vehicle within a second preset time period, the vehicle is determined to have recovered from the path blockage state to a normal traffic state; wherein, the first preset time period is longer than the second preset time period.

4. The method according to claim 2, characterized in that, Determining the grid resolution of the grid map based on the path planning model includes: When the path planning mode is the obstacle avoidance mode, the grid resolution of the grid map along the reference line direction is determined as the first resolution, and the grid resolution of the grid map perpendicular to the reference line direction is determined as the second resolution; When the path planning mode is the non-obstacle-avoidance mode, the grid resolution of the grid map along the reference line direction is determined to be the third resolution, and the grid resolution of the grid map perpendicular to the reference line direction is determined to be the fourth resolution. Wherein, the first resolution is greater than the third resolution, and the second resolution is greater than the fourth resolution.

5. The method according to claim 2, characterized in that, Based on the obstacle cost of each node and the mesh graph, the target path of the vehicle is determined, including: The centerline deviation weight, lateral change smoothing weight, and reference line tracking weight corresponding to the grid diagram are determined based on the path planning mode. Wherein, the centerline deviation weight is used to characterize the influence of the lateral offset of each node on the path planning cost, the lateral change smoothing weight is used to characterize the influence of the lateral offset change between each node and its adjacent nodes on the path planning cost, the reference line tracking weight is used to characterize the influence of the deviation between each node and the reference lateral offset on the path planning cost, and the reference lateral offset is the target lateral offset value of the reference line at each node. The target path of the vehicle is determined based on the obstacle cost of each node, the centerline deviation weight, the lateral change smoothing weight, the reference line tracking weight, and the grid diagram.

6. The method according to claim 5, characterized in that, The method further includes: When the path planning mode is the obstacle avoidance mode, the centerline deviation weight is determined as the first weight, the lateral change smoothing weight is determined as the second weight, and the reference line tracking weight is determined as the third weight. When the path planning mode is the non-obstacle-avoidance mode, the centerline deviation weight is determined as the fourth weight, the lateral change smoothing weight as the fifth weight, and the reference line tracking weight as the sixth weight. Wherein, the first weight is less than the fourth weight, the second weight is less than the fifth weight, and the third weight is less than the sixth weight.

7. The method according to claim 5, characterized in that, Determining the obstacle cost for each of the plurality of grid nodes includes: Each of the plurality of grid nodes is mapped to an occupied grid map through coordinate transformation; wherein, the occupied grid map is used to characterize the environmental information of the area around the vehicle, and each grid in the occupied grid map has an occupation value and a cost value, the occupation value is used to characterize the degree to which the grid is occupied by an obstacle, and the cost value is used to characterize the degree of impact of the grid as an obstacle on vehicle passage. Based on the vehicle profile model, at the candidate position corresponding to the xth node, the vehicle profile covers at least one occupied grid in the occupied grid map, and the maximum value of the cost corresponding to each of the at least one occupied grid is taken as the obstacle cost of the xth node; wherein, the xth node is any one of the plurality of grid nodes; If there is a grid with an occupancy value greater than a preset threshold in at least one occupancy grid covered by the vehicle outline, the xth node is marked as impassable.

8. The method according to claim 7, characterized in that, Based on the obstacle cost of each node, the centerline deviation weight, the lateral change smoothing weight, the reference line tracking weight, and the mesh graph, the target path of the vehicle is determined, including: Perform dynamic programming recursion row by row on the mesh graph, following the order from the starting row to the ending row. For the j-th node in the i-th row, perform the following steps: Obtain the obstacle cost of the j-th node in the i-th row, where i is an integer greater than 1 and j is a positive integer; Based on the obstacle cost of the j-th node in the i-th row, the centerline deviation weight, the lateral change smoothing weight, and the reference line tracking weight, G candidate cumulative costs for the j-th node in the i-th row are determined, where G is the number of reachable nodes in the (i-1)-th row, and the reachable node is a node in the (i-1)-th row whose lateral offset difference from the j-th node in the i-th row is less than or equal to a preset lateral jump threshold. The smallest candidate cumulative cost among the G candidate cumulative costs is taken as the cumulative cost of the j-th node in the i-th row, and the reachable node corresponding to the smallest candidate cumulative cost is recorded as the optimal parent node of the j-th node in the i-th row. After the dynamic programming recursion is completed, if it is detected that there are nodes in the last valid row of the grid graph that are not marked as impassable, the node with the minimum cumulative cost in the last valid row is selected as the path endpoint, and based on the optimal parent node of each recorded node, backtracking upwards row by row along the path endpoint until the starting row is reached to form the initial path; if it is detected that all nodes in the last valid row are marked as impassable, it is determined that the vehicle is in a path blocking state. The target path of the vehicle is determined based on the initial path.

9. The method according to claim 8, characterized in that, Based on the obstacle cost of the j-th node in the i-th row, the centerline deviation weight, the lateral change smoothing weight, and the reference line tracking weight, determine G candidate cumulative costs for the j-th node in the i-th row, including: For the kth reachable node in the (i-1)th row, the lateral transfer cost from the kth reachable node to the jth node is determined based on the lateral offset of the jth node in the i-th row, the lateral offset of the kth reachable node in the (i-1)th row, the lateral offset of the optimal parent node of the kth reachable node, the centerline deviation weight, the lateral change smoothing weight, and the reference line tracking weight. Based on the obstacle cost of the j-th node in the i-th row, the cumulative cost of the k-th reachable node in the (i-1)-th row, and the lateral transfer cost, the k-th candidate cumulative cost of the j-th node in the i-th row is determined, where k takes values ​​from 1 to G, resulting in G candidate cumulative costs.

10. The method according to claim 8, characterized in that, Determining the target path of the vehicle based on the initial path includes: Traverse the path points adjacent to each other along the path direction in the initial path; For every two adjacent path points in the initial path, determine the longitudinal mileage difference and the lateral offset change between the two adjacent path points. The longitudinal mileage difference is the difference between the longitudinal mileages corresponding to the two adjacent path points, and the longitudinal mileage is the distance from the starting point of the reference line to the path point along the reference line direction. The lateral offset change is the difference between the lateral offsets corresponding to the two adjacent path points, and the lateral offset is the offset perpendicular to the reference line direction. If there are adjacent path points in the initial path where the longitudinal mileage difference is less than the first threshold and the lateral offset change is greater than the second threshold, the initial path is determined to be a non-target path; wherein, if a target path was output in the previous path planning cycle, the vehicle continues to travel along the target path output in the previous path planning cycle; if no target path was output in the previous path planning cycle, or if there is no previous path planning cycle, an emergency stop is triggered. If there are no adjacent path points in the initial path whose longitudinal mileage difference is less than the first threshold and whose lateral offset change is greater than the second threshold, the initial path shall be used as the target path of the vehicle.

11. A vehicle routing system, characterized in that, include: The acquisition module is used to acquire the vehicle's positioning information on the reference line and the obstacle information in the area surrounding the vehicle; A construction module is used to construct a grid map based on the positioning information, wherein the grid map is used to represent the path search space formed based on the direction of the reference line; A pattern determination module is used to determine a path planning pattern based on the obstacle information, and to determine the grid resolution of the grid map based on the path planning pattern; wherein the grid resolution is used to characterize the discrete accuracy of the grid map; The cost determination module is used to discretize the grid map according to the grid resolution to obtain multiple grid nodes, and determine the obstacle cost of each of the multiple grid nodes. Each node corresponds to a candidate position of the vehicle, and the obstacle cost of each node is used to characterize the degree of conflict between the area covered by the vehicle outline and the obstacle when the vehicle is located at the candidate position corresponding to the node. The path determination module is used to determine the target path of the vehicle based on the obstacle cost of each node and the mesh map.