Path planning method and device, storage medium and electronic device

By dividing the global environment into local environments and calculating the number of matching sampling points, generating waypoints and a global path, the problem of long calculation time of existing path planning algorithms in complex environments is solved, and more efficient and flexible path planning is achieved.

CN119245671BActive Publication Date: 2025-09-09BEIJING YINWO AUTOMOBILE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411280684.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-12
Publication Date
2025-09-09
Estimated Expiration
2044-09-12

AI Technical Summary

Technical Problem

Existing path planning algorithms have long computation time and high performance overhead under different environmental complexities, making it difficult to efficiently generate optimized paths.

Method used

The global environment is divided into multiple local environments, the number of sampling points that match the local environment characteristics is calculated, waypoints are generated, and a global path is generated based on these points, and finally the optimal driving path is selected.

Benefits of technology

By reducing the redundant settings of waypoints, reducing dependence on the global environment, shortening the algorithm running time, improving the efficiency and flexibility of path planning, and generating a better path.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119245671B_ABST
    Figure CN119245671B_ABST
Patent Text Reader

Abstract

The present application provides a path planning method and device, a storage medium, and an electronic device, relating to the field of autonomous driving. The path planning method includes: obtaining a global environment corresponding to a target vehicle's driving task, and dividing the global environment into multiple local environments, wherein the global environment includes obstacles; for each local environment, calculating the number of sampling points that match the environmental characteristics of the local environment, and generating a corresponding number of waypoints in the local environment based on the number of sampling points; generating multiple global paths based on the waypoints corresponding to each of the multiple local environments; and determining the target driving path of the driving task from the multiple global paths. The present application reduces the number of sampling points and computational complexity, achieving more efficient path planning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of autonomous driving, and specifically to a path planning method and device, a storage medium, and an electronic device. Background Art

[0002] Path planning is the key to designing the route for autonomous vehicles. It ensures that the autonomous driving system can efficiently reach the target point from the starting point and perform the task while meeting certain constraints.

[0003] In the research of path planning, some mature algorithms (such as the A* algorithm, heuristic algorithms, and traditional random roadmap methods) face the problems of long computation time and high performance overhead when applied to different environmental complexities. Therefore, measures need to be taken to optimize the path planning algorithm and improve the efficiency and performance of path planning. Summary of the Invention

[0004] In view of this, embodiments of the present application provide a path planning method and device, a storage medium, and an electronic device.

[0005] In a first aspect, an embodiment of the present application provides a path planning method, including: obtaining a global environment corresponding to a driving task of a target vehicle, and dividing the global environment into multiple local environments, wherein the global environment includes obstacles; for each local environment, calculating the number of sampling points that match the environmental characteristics of the local environment, and generating a corresponding number of waypoints in the local environment based on the number of sampling points; generating multiple global paths based on the waypoints corresponding to each of the multiple local environments; and determining the target driving path of the driving task from the multiple global paths.

[0006] In combination with the first aspect, in certain implementations of the first aspect, calculating the number of sampling points that match the environmental characteristics of the local environment includes: determining a line segment between a starting point and an end point in the local environment; determining the length of the line segment and the length of an obstacle on the line segment; determining the spatial area corresponding to the local environment and the area of ​​the obstacle in the local environment; and calculating the number of sampling points based on the length of the line segment and the length of the obstacle, the spatial area, and the area of ​​the obstacle.

[0007] In combination with the first aspect, in certain implementations of the first aspect, calculating the number of sampling points based on the length of the line segment and the length of the obstacle, the area of ​​the space, and the area of ​​the obstacle includes: determining the maximum number of sampling points; determining a first ratio of the length of the obstacle to the length of the line segment, and a first weight value corresponding to the first ratio; determining a second ratio of the area of ​​the obstacle to the area of ​​the space, and a second weight value corresponding to the second ratio; and calculating the number of sampling points based on the maximum number of sampling points, the first ratio and the first weight value, and the second ratio and the second weight value.

[0008] In combination with the first aspect, in some implementations of the first aspect, the first weight value is positively correlated with the length of the obstacle; and the second weight value is positively correlated with the area of ​​the obstacle in the local environment.

[0009] In combination with the first aspect, in certain implementations of the first aspect, the method further includes: in the process of generating a waypoint, if the waypoint falls into a prohibited area in the local environment, determining the moving direction of the waypoint based on the positional relationship between the waypoint and the prohibited area; and moving the waypoint to a drivable area in the local environment according to the moving direction.

[0010] In combination with the first aspect, in certain implementations of the first aspect, determining the target driving path of the driving task from multiple global paths includes: calculating the actual cost and estimated cost from the starting point to the end point corresponding to each of the multiple global paths; determining the total cost corresponding to each of the multiple global paths based on the actual cost and estimated cost from the starting point to the end point corresponding to each of the multiple global paths; and selecting the path with the smallest total cost from the multiple global paths as the target driving path of the driving task.

[0011] In combination with the first aspect, in certain implementations of the first aspect, the global environment is divided into multiple local environments, including: determining multiple target points in the global environment based on the task requirements of the driving task, the environmental characteristics of the global environment, and the vehicle characteristics of the target vehicle; demarcating a rectangular area between two adjacent target points among the multiple target points, and determining the rectangular area as a local environment, and then determining multiple local environments corresponding to the global environment.

[0012] In the second aspect, an embodiment of the present application provides a path planning device, including: a division module, used to obtain the global environment corresponding to the driving task of the target vehicle, and divide the global environment into multiple local environments; a first generation module, used to calculate the number of sampling points that match the environmental characteristics of the local environment for each local environment, and generate waypoints in the local environment based on the number of sampling points; a second generation module, used to generate multiple global paths based on the waypoints corresponding to each of the multiple local environments; a determination module, used to determine the target driving path of the driving task from the multiple global paths.

[0013] In a third aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program for executing the path planning method described in the first aspect.

[0014] In a fourth aspect, an embodiment of the present application provides an electronic device, comprising: a processor; a memory for storing processor-executable instructions; and the processor is used to execute the path planning method described in the first aspect.

[0015] In this application, the global environment is divided into multiple local environments, and waypoints are added to the local environments. This can reduce the redundant settings of waypoints, improve the quality of waypoints, and reduce dependence on the global environment. Forming a global path corresponding to the global environment, on the one hand, reduces map planning, and on the other hand, reduces the number of sampling points and computational complexity, shortens the algorithm runtime, and achieves more efficient path planning. In addition, by calculating the number of sampling points that match the environmental characteristics for each local environment, the key path nodes in the local environment can be captured more accurately, allowing the path planning algorithm to adapt more flexibly to the complexity of different environments, thereby generating a better path. Finally, when determining the target driving path of a driving task from multiple global paths, a variety of factors will be taken into consideration to select the optimal path. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] The above and other purposes, features, and advantages of the present application will become more apparent through a more detailed description of the embodiments of the present application in conjunction with the accompanying drawings. The accompanying drawings are intended to provide a further understanding of the embodiments of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the present application and do not constitute a limitation of the present application. In the drawings, the same reference numerals generally represent the same components or steps.

[0017] Figure 1 The figure is a flow chart of a path planning method provided in one embodiment of the present application.

[0018] Figure 2 Shown is a schematic diagram of the calculation results of the path planning method of this application.

[0019] Figure 3 FIG2 is a flow chart of calculating the number of sampling points provided by an embodiment of the present application.

[0020] Figure 4 FIG2 is a flow chart of calculating the number of sampling points provided by another embodiment of the present application.

[0021] Figure 5 Shown is a flow chart of a path planning method provided in another embodiment of the present application.

[0022] Figure 6 The figure shows a flow chart of determining a target driving path provided by an embodiment of the present application.

[0023] Figure 7 The figure shows a flow chart of dividing a global environment into multiple local environments provided by an embodiment of the present application.

[0024] Figure 8 Shown is a structural schematic diagram of a path planning device provided in one embodiment of the present application.

[0025] Figure 9 Shown is a structural schematic diagram of an electronic device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0026] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0027] Figure 1 FIG. 1 is a flow chart of a path planning method according to an embodiment of the present application. Figure 1 As shown, the method includes the following steps.

[0028] Step S110 , obtaining a global environment corresponding to the driving task of the target vehicle, and dividing the global environment into multiple local environments.

[0029] A driving mission refers to a specific moving target or purpose that the target vehicle needs to complete. This mission may be planned in advance or added temporarily. For example, a driving mission is moving from a starting point to an end point, avoiding obstacles, following traffic rules, reaching a specific destination, etc. In some embodiments, the driving mission also includes information such as the path that the target vehicle needs to follow, speed limits, time requirements, etc. The global environment refers to the entire operating space in which the target vehicle is located, including all factors that affect vehicle movement, such as roads, traffic signals, surrounding vehicles and pedestrians, and terrain features. In this embodiment, the global environment provides the comprehensive information required for the target vehicle to plan its path. Furthermore, the global environment corresponding to the driving mission refers to the entire range of environments that need to be considered in order to complete a specific driving mission. For example, if the driving mission is to navigate safely from point A to point B, then the global environment includes all elements between points A and B that affect driving, such as road conditions, traffic flow, obstacles, etc.

[0030] For example, in some embodiments, high-precision maps and geographic information systems are used to acquire static environmental information, such as road networks and terrain features. Next, onboard sensors such as radar, lidar, and cameras collect real-time dynamic data about the target vehicle's surroundings, including traffic flow, pedestrians, and the location and speed of other vehicles. Simultaneously, the target vehicle's internal system provides status information, such as its own position, speed, and acceleration. This static and dynamic data is then fused and processed to construct a comprehensive global environmental model, providing the necessary environmental information and constraints for the target vehicle's driving mission.

[0031] For example, in other embodiments, the global environment corresponding to the target vehicle's driving mission can also be obtained from relevant databases. For example, relevant databases include geographic information system databases, traffic information databases, etc. Specifically, the required data types and scopes are first determined, and then these databases are accessed through an API (Application Programming Interface) or other data interface. The acquired data is then processed and integrated to construct a comprehensive global environment model.

[0032] In this embodiment, the global environment is divided into multiple local environments based on one or more considerations. For example, the considerations include geographical features, environmental dynamics, etc. Specifically, some driving areas have winding roads and complex terrain changes. Therefore, geographical features become an important criterion for dividing local environments. Some driving areas (for example, commercial centers) are highly dynamic environments. Traffic flow, pedestrian activities, and temporary events all affect road usage. In this case, the global environment can be divided into multiple local environments based on environmental dynamics.

[0033] Step S120 , for each local environment, calculating the number of sampling points that match the environmental characteristics of the local environment, and generating a corresponding number of waypoints in the local environment based on the number of sampling points.

[0034] Environmental features are factors in the local environment that affect path planning, including but not limited to terrain, obstacles, traffic flow, road conditions, regulatory restrictions, etc. These features determine the target vehicle's driving mode and possible path choices in the environment. The number of sampling points determines the sophistication of the path search. It is understandable that the more sampling points there are, the more detailed the path search will be, but it will also increase the complexity of the calculation. Waypoints are key nodes in path planning, usually specific locations that the target vehicle needs to pass through during driving. For example, these points can be intersections of roads, turns, specific target locations, etc.

[0035] In this embodiment, calculating the number of sampling points that matches the local environmental characteristics is a process that comprehensively considers the complexity of the local environment, task requirements, and computing resources. Specifically, the key characteristics of the local environment are first evaluated, such as terrain undulations, obstacle distribution, traffic flow, etc. Next, the density of the sampling points is determined based on the complexity of the environmental characteristics. For example, in areas with dense obstacles or drastic terrain changes, a larger number of sampling points will be set to capture detailed environmental information. In addition, the specific requirements of the driving task can also be considered, such as driving speed, safety distance, path accuracy, etc. These requirements determine the lower limit of the number of sampling points. By comprehensively balancing these factors, an appropriate number of sampling points is ultimately determined that can meet the accuracy requirements of path planning without exceeding the computing and storage capabilities. Furthermore, based on the number of sampling points, a corresponding number of waypoints are generated to guide the target vehicle from one location to another until it reaches the destination.

[0036] In some embodiments, generating a corresponding number of waypoints in the local environment based on the number of sampling points includes: distributing a corresponding number of waypoints in the local environment based on the number of sampling points.

[0037] For example, the process of distributing waypoints can employ various algorithms, such as genetic algorithms or particle swarm optimization, to ensure that the distribution of waypoints is both uniform and covers key areas of the local environment. In some embodiments, the process of distributing waypoints can also take into account the local environment's topography, traffic regulations, and other dynamic factors to improve the practicality and safety of the waypoints.

[0038] In step S130 , a plurality of global paths are generated based on the waypoints corresponding to the plurality of local environments.

[0039] Specifically, the waypoints generated in each local environment based on the number of sampling points define the target vehicle's trajectory within that area. Then, by analyzing the relationships between these waypoints, their relative positions and connection order in the global environment are determined. For example, the waypoints in each local environment are connected in a non-directional manner to form a local path. Each local path is then connected according to the constraints of the local space to form a global path. It should also be noted that when connecting the local paths to the global path, consistency and continuity must be maintained, including checking whether the transitions between paths are smooth and whether traffic rules and regulations in the global environment are complied with.

[0040] In this embodiment, to improve the robustness of path planning, multiple alternative global paths are generated simultaneously to accommodate varying environmental conditions and emergencies. Each generated global path is then validated through actual driving and iteratively optimized based on feedback to improve the accuracy and reliability of path planning.

[0041] Step S140 : determining a target driving path of the driving task from a plurality of global paths.

[0042] In one example, the autonomous driving system determines three global paths: Path A, Path B, and Path C. Path A is the most direct route, but it passes through a congested area; Path B is slightly longer, but avoids the congested area and has an estimated travel time of less than 10 minutes; Path C requires paying a certain toll, but the road is in good condition and the driving speed is faster.

[0043] In this scenario, the autonomous driving system evaluates each route, calculating its distance, estimated travel time, and cost. It then prioritizes them based on user preferences or default priorities. If the user prioritizes the shortest travel time, Path B is selected as the target route. If the user prioritizes cost, Path A is selected. If the user prefers a quick trip, Path C is selected.

[0044] In another example, the autonomous driving system monitors traffic conditions in real time. If it finds that the congestion on path A is more serious than expected, or the road conditions on path C suddenly improve, it will dynamically adjust the recommendations to determine the optimal target driving path.

[0045] Figure 2 The figure shows the result of the path planning method of the present application. Specifically, the algorithm of the present application divides the global environment into multiple local environments, and generates multiple global paths based on the waypoints corresponding to the multiple local environments. Finally, the target driving path is determined from the multiple global paths. At the same time, the number of waypoints in the local environment is adapted to the environmental characteristics of the local environment, which reduces the number of sampling points in the global environment. Figure 2 It can be seen that the running time has been reduced to a lower level.

[0046] In addition, the algorithm in this application can find a shorter and more direct path in some scenarios (for example, narrow road passage after successful planning) by performing more detailed planning in the local environment, thereby reducing the path length and improving the efficiency of the path. Figure 2 It can also be seen that the path length has also been reduced to a lower level.

[0047] In this application, the global environment is divided into multiple local environments, and waypoints are added to the local environments. This can reduce the redundant settings of waypoints, improve the quality of waypoints, and reduce dependence on the global environment. Forming a global path corresponding to the global environment, on the one hand, reduces map planning, and on the other hand, reduces the number of sampling points and computational complexity, shortens the algorithm runtime, and achieves more efficient path planning. In addition, by calculating the number of sampling points that match the environmental characteristics for each local environment, the key path nodes in the local environment can be captured more accurately, allowing the path planning algorithm to adapt more flexibly to the complexity of different environments, thereby generating a better path. Finally, when determining the target driving path of a driving task from multiple global paths, a variety of factors will be taken into consideration to select the optimal path.

[0048] Figure 3 The figure shows a flow chart of calculating the number of sampling points provided by an embodiment of the present application. Figure 1 Based on the embodiment shown, Figure 3 The embodiment shown is described below in detail. Figure 3 The embodiment shown is Figure 1 The differences and similarities between the illustrated embodiments are not described in detail.

[0049] like Figure 3 As shown, in this embodiment, calculating the number of sampling points that match the environmental characteristics of the local environment includes the following steps.

[0050] Step S310: Determine a line segment between a starting point and an end point in a local environment.

[0051] In some embodiments, the starting point is the location where the driving task begins or a user-specified starting point, while the end point is the location where the driving task ends or the target location. For example, data is first collected about the local environment to identify key features within the local environment. Next, based on these key features and the specific requirements and goals of the driving task, a suitable starting point is selected. The end point of the local environment is then determined based on the ultimate goal of the driving task.

[0052] For example, after determining the starting and ending points, an A* or Dijkstra algorithm is used to determine the line segment between the starting and ending points in the local environment. This line segment represents the straight-line distance the target vehicle needs to travel in the local environment. This serves as the basis for path planning and provides a geographic reference for subsequent path optimization and the determination of the number of sampling points. By determining this line segment, driving conditions in the local environment can also be assessed, including possible obstacles and areas that need to be avoided.

[0053] Step S320: Determine the length of the line segment and the length of the obstacle on the line segment.

[0054] For example, the length of the line segment is determined by measuring the straight-line distance between the starting point and the end point using map data or a sensor system in the target vehicle. For example, if the coordinates of the starting point and the end point are known, the length of the line segment can be obtained by calculating the Euclidean distance between the two points.

[0055] In some embodiments, the length of an obstacle on a line segment refers to the length of the obstacle on the line segment. For example, a geometric algorithm is used to detect whether the line segment passes through any side of the obstacle. If so, the intersection of the line segment and the obstacle's edge defines the projection of the obstacle on the line segment. The distance between these two intersection points is then calculated; this distance is the length of the obstacle on the line segment.

[0056] Step S330: Determine the spatial area corresponding to the local environment and the area of ​​obstacles in the local environment.

[0057] In one example, the spatial area of ​​the local environment is determined based on map data or through a sensor system onboard the target vehicle. In another example, if the boundaries of the local environment are known, the spatial area of ​​the local environment can be directly calculated using geographic information system data or a pre-drawn map. Furthermore, for irregularly shaped local environments, polygonal area calculation formulas can be used, such as by dividing the irregular shape into multiple small triangles or rectangles, and then calculating the areas of each of these separately and summing them.

[0058] For determining the area of ​​an obstacle, for example, if the obstacle is static, the area can be calculated by measuring its projected area on the ground. If the obstacle's height and base area are known, its volume can be obtained by multiplication, and the projected area can be estimated. If the obstacle is dynamic, the area can be estimated by tracking its motion trajectory and dimensions. For example, if the length, width, and height of the vehicle in the dynamic obstacle are known, the area can be estimated by calculating its projected area on the ground.

[0059] Step S340 : Calculate the number of sampling points based on the length of the line segment and the length of the obstacle, the area of ​​the space and the area of ​​the obstacle.

[0060] It can be understood that the length of the line segment provides the most direct reference for driving distance, the length of the obstacle helps determine the range that the target vehicle needs to bypass or avoid, and the spatial area provides a macro spatial scope for path planning, which helps to evaluate the capacity and complexity of the entire local environment. The area of ​​the obstacle reflects the overall impact of the obstacle on the drivable space.

[0061] For example, in this embodiment, the distribution and spatial layout of obstacles in the local environment, as well as their density, are assessed based on the length of line segments, obstacle length, spatial area, and obstacle area. The distribution of sampling points is then adjusted based on the target vehicle's obstacle avoidance requirements. Specifically, if obstacles are determined to be relatively dispersed, a larger sampling interval can be used to reduce computational complexity. In areas with a high concentration of obstacles, the density of sampling points should be increased to ensure accurate path planning.

[0062] In this embodiment, by measuring the length of line segments and obstacles, the specific obstacles that the target vehicle needs to avoid during driving can be accurately identified, improving the accuracy and safety of path planning. Furthermore, by determining the spatial area and obstacle area of ​​the local environment, the complexity and congestion level of the local environment can be assessed, helping to consider spatial constraints and obstacle distribution when planning the path, thereby optimizing the efficiency and feasibility of the path. Finally, by calculating the number of sampling points based on the above parameters, an appropriate density of waypoints can be generated to adapt to environments of varying complexity and different driving mission requirements.

[0063] Figure 4 The figure shows a flow chart of calculating the number of sampling points provided by another embodiment of the present application. Figure 3 Based on the embodiment shown, Figure 4 The embodiment shown is described below in detail. Figure 4 The embodiment shown is Figure 3 The differences and similarities between the illustrated embodiments are not described in detail.

[0064] like Figure 4 As shown, in this embodiment, the number of sampling points is calculated based on the length of the line segment and the length of the obstacle, the area of ​​the space and the area of ​​the obstacle, including the following steps.

[0065] Step S410: Determine the maximum number of sampling points.

[0066] In this embodiment, the maximum number of sampling points is a preset upper limit value, which is determined based on the requirements for algorithm performance, computing resources, and path planning accuracy.

[0067] Step S420: Determine a first ratio of the length of the obstacle to the length of the line segment, and a first weight value corresponding to the first ratio.

[0068] The first ratio refers to the ratio of the length of the obstacle to the length of the line segment, which reflects the degree of influence of the obstacle on the drivable path. The first ratio corresponds to the first weight value. For example, the first weight value can be adjusted according to the mobility of the obstacle, the characteristics of the path, or the traffic flow of the environment. Specifically, for dynamic obstacles, such as pedestrians, bicycles or other vehicles, the first weight value can be adjusted according to their moving speed and predicted path. If the obstacle moves fast or the path is difficult to predict, increasing the first weight value can ensure that the path planning algorithm can update the path more frequently to adapt to the movement of the obstacle. In addition, in areas with high traffic flow, the length of the obstacle is not enough to reflect the actual traffic complexity. In this case, increasing the first weight value can help the algorithm pay more attention to the impact of traffic flow on path planning, thereby optimizing the vehicle's driving strategy and avoiding congestion and potential collision risks.

[0069] Step S430: Determine a second ratio of the area of ​​the obstacle to the area of ​​the space, and a second weight value corresponding to the second ratio.

[0070] The second ratio refers to the ratio of the obstacle area to the space area, which reflects the degree to which the obstacle occupies the local environment space. The second ratio corresponds to the second weight value. For example, the second weight value can be adjusted according to the dynamic changes of the environment and the uniformity of the distribution of obstacles. Specifically, in some cases, the local environment will undergo rapid dynamic changes, such as temporary construction areas or an increase in obstacles caused by emergencies. In this case, increasing the second weight value can adapt to environmental changes more flexibly, and these changes can be captured by increasing the number of sampling points to ensure the timeliness and adaptability of path planning. In addition, if the obstacles are unevenly distributed in the local environment, for example, obstacles are very dense in some areas and relatively open in other areas, the second weight value can be adjusted according to the density of the obstacle distribution. Increase the second weight value in the local environment where obstacles are dense, so as to set a larger number of sampling points in the local environment to better avoid obstacles.

[0071] Step S440 : Calculate the number of sampling points based on the maximum number of sampling points, the first ratio and the first weight value, the second ratio and the second weight value.

[0072] Exemplarily, the first ratio is multiplied by the first weight value to obtain a first addend, the second ratio is multiplied by the second weight value to obtain a second addend, and the sum of the second addend and the second addend is multiplied by the maximum number of sampling points to obtain the number of sampling points.

[0073] For example, the maximum number of sampling points N max =100, line segment length L line = 100 meters, obstacle length L obstacte =20 meters, space area A space=1000 square meters, obstacle area A obstacte =50 square meters. Then, the first ratio is L obstacte / L line =20 / 100=0.2. Assume that the first weight value is adjusted according to the mobility of the obstacle and is set to W1=1.2.

[0074] Next, the second ratio A obstacte / A space =50 / 1000=0.05. Assume that the second weight value is adjusted according to the density of obstacle distribution and is set to W2=1.5.

[0075] Finally, the number of sampling points is (0.2×W1+0.05×W2)×N max = 31.5. Since the number of sampling points must be an integer, the result can be rounded to the nearest integer, so the number of sampling points is 32.

[0076] The maximum number of sampling points determined in this embodiment ensures that the planning algorithm can run efficiently under limited computing resources while meeting the accuracy requirements of path planning. By calculating a first ratio of the length of the obstacle to the length of the line segment and combining it with a first weight value, dynamic adjustments can be made based on the degree of impact of the obstacle on the path, thereby improving the safety and adaptability of path planning. Furthermore, by calculating a second ratio of the area of ​​the obstacle to the area of ​​the space and combining it with a second weight value, the degree to which the obstacle occupies the local environment space is reflected, allowing adjustments to be made based on dynamic changes in the environment and the uniformity of the obstacle distribution, thereby optimizing the timeliness of path planning and the ability to avoid obstacles.

[0077] Combine Figure 4 In the embodiment shown, in other embodiments of the present application, the first weight value is positively correlated with the length of the obstacle; and the second weight value is positively correlated with the area of ​​the obstacle in the local environment.

[0078] Specifically, the positive correlation between the first weight value and the obstacle's length indicates that as the obstacle's length increases, the first weight value also increases accordingly. It is understandable that in path planning, the length of an obstacle directly impacts the available space in the drivable path. The longer the obstacle, the greater its impact on the path, necessitating more sampling points to ensure the accuracy and safety of path planning. Therefore, by increasing the first weight value, longer obstacles are given greater weight, resulting in more frequent path updates during path planning to accommodate these obstacles. This method is particularly important for dynamic obstacles, which change position or movement speed over time.

[0079] The positive correlation between the second weight value and the area of ​​the obstacles in the local environment indicates that as the area of ​​the obstacles in the local environment increases, the second weight value will also increase. It is understandable that the area of ​​obstacles reflects the degree of their occupation in space. The larger the area, the greater the impact on the local environment. Increasing the second weight value can set more sampling points in local environments with dense obstacles, which helps to capture changes in the local environment more carefully, especially in local environments where obstacles are unevenly distributed. For example, some local environments have very dense obstacles while other local environments are relatively open. Then, by increasing the number of sampling points in local environments with dense obstacles, obstacles can be better avoided and path planning can be optimized.

[0080] In this embodiment, this positive correlation enables the path planning algorithm to more flexibly adapt to the characteristics of different environments and obstacles. By dynamically adjusting the weights, it can more accurately reflect the impact of obstacles on path planning, thereby improving the accuracy and adaptability of path planning, facilitating safer and more efficient navigation in complex and changing environments.

[0081] Figure 5 The figure shows a flow chart of a path planning method provided by another embodiment of the present application. Figure 1 Based on the embodiment shown, Figure 5 The embodiment shown is described below in detail. Figure 5 The embodiment shown is Figure 1 The differences and similarities between the illustrated embodiments are not described in detail.

[0082] like Figure 5 As shown, in this embodiment, the method further includes the following steps.

[0083] Step S510: During the process of generating a waypoint, if the waypoint falls into a prohibited area in the local environment, the moving direction of the waypoint is determined based on the positional relationship between the waypoint and the prohibited area.

[0084] In one embodiment, after a corresponding number of waypoints are scattered in the local environment based on the number of sampling points, if the waypoint falls into a prohibited area in the local environment, the moving direction of the waypoint is determined based on the positional relationship between the waypoint and the prohibited area.

[0085] Specifically, restricted zones are areas where vehicles or robots are prohibited from entering. For example, in this embodiment, the waypoint is first identified as being within the restricted zone. Once the waypoint is determined to be within the restricted zone, its position relative to the restricted zone boundary is further evaluated to determine the degree and direction of its deviation. Next, the shortest distance and direction from the waypoint to the restricted zone boundary are calculated. This direction is used to guide the waypoint's movement, ensuring that it moves perpendicular to or away from the restricted zone boundary.

[0086] Furthermore, when determining the direction of movement for a waypoint, other factors, such as the surrounding terrain, road network, and traffic flow, need to be considered to select the optimal path. For example, if the east side of a waypoint is a restricted area and the west side is an open road with less traffic, the west side will be determined as the direction of movement for the waypoint.

[0087] It is understood that in some embodiments, the positions of waypoints that conflict with obstacles in the local environment are adjusted, while other waypoints that do not conflict with obstacles in the local environment maintain their original positions. For example, the position adjustment can be achieved through a variety of obstacle avoidance algorithms, such as artificial potential field method, rapid exploration random tree or A* search algorithm. These algorithms evaluate the distance between each waypoint and the obstacle and adjust the position of the waypoints as needed to ensure that they do not conflict with obstacles while maintaining the continuity and smoothness of the path. Such a strategy not only ensures the flexibility of path planning, but also improves the efficiency and safety of path planning.

[0088] Step S520: moving the waypoint to a drivable area in the local environment according to the moving direction.

[0089] For example, after determining the direction of movement, the distance of movement is further calculated. It is understood that the distance of movement should be large enough to ensure that the waypoint completely leaves the restricted area while avoiding other potential obstacles or restricted areas. Finally, based on the direction of movement and the distance of movement, the waypoint is moved to a drivable area in the local environment.

[0090] In this embodiment, when waypoints fall into a restricted area within a local environment, these points are not simply discarded. Instead, the relative positional relationship between the waypoint and the restricted area is analyzed to determine a reasonable movement direction. This solution maintains the validity of the waypoint while preventing the target vehicle from directly entering a non-drivable area, thereby increasing the usability of the waypoint in complex environments. Next, the waypoint is moved to a drivable area within the local environment. This not only ensures the legitimacy of the waypoint, but also, through small movements, increases the probability of the waypoint falling into a narrow area, thereby improving the narrow road's traversability. It is understood that in a narrow area, even a small movement can move a waypoint from a non-drivable area to a feasible area, thus providing vehicles with more path options.

[0091] Figure 6 The figure shows a flow chart of determining a target driving path according to an embodiment of the present application. Figure 1 Based on the embodiment shown, Figure 6 The embodiment shown is described below in detail. Figure 6 The embodiment shown is Figure 1 The differences and similarities between the illustrated embodiments are not described in detail.

[0092] like Figure 6 As shown, in this embodiment, determining a target driving path of a driving task from multiple global paths includes the following steps.

[0093] Step S610 , calculating the actual cost and the estimated cost from the starting point to the end point corresponding to each of the plurality of global paths.

[0094] Specifically, the actual cost refers to the actual cost of traveling from the starting point to the destination, including factors such as the length of the route, the time required, the energy consumed, and the number of obstacles encountered. It reflects the actual cost incurred by the target vehicle when traveling along a specific route. The estimated cost is a prediction or estimate of the cost from the starting point to the destination. This estimate is based on environmental knowledge and historical data, including predictions for unknown areas, predicted paths for dynamic obstacles, and predictions of traffic flow changes.

[0095] For example, each global route is evaluated for various cost factors encountered during travel. The actual cost is based on directly measurable or deterministic factors, derived through specific metrics and calculations, such as route length, required time, and fuel consumption. The cost estimate relies on historical data, which is then used to estimate the potential additional time and cost. For example, if traffic congestion is expected in a particular area, the corresponding waiting time can be added to the cost estimate.

[0096] Step S620 : determining a total cost value corresponding to each of the multiple global paths based on the actual cost and the estimated cost from the starting point to the end point corresponding to each of the multiple global paths.

[0097] For example, for each global path, a weight is assigned to the corresponding actual cost and estimated cost to reflect their importance. Then, the actual cost and estimated cost are combined according to the determined weights to calculate the total cost of each global path.

[0098] Step S630 : Selecting a path with the minimum total cost from the multiple global paths as the target driving path of the driving task.

[0099] For example, the total cost values ​​corresponding to the multiple global paths are sorted to determine which path has the lowest cost. After the target driving path is determined, the path is further output as a reference for the target vehicle to perform the driving task.

[0100] This embodiment comprehensively considers the direct and potential costs of each global path, helping to more accurately predict the total cost of each global path. By comparing the costs of all global paths and selecting the path with the lowest total cost, the target driving path for the driving task is ensured to be the optimal solution based on the current information and conditions, thereby improving the accuracy and reliability of path planning. Furthermore, this solution exhibits excellent adaptability and flexibility, enabling rapid response to unknown or dynamically changing environments by updating path costs in real time, ensuring efficient and safe driving of the target vehicle in complex and dynamic environments.

[0101] Figure 7 The figure shows a flow chart of dividing a global environment into multiple local environments according to an embodiment of the present application. Figure 1 Based on the embodiment shown, Figure 7 The embodiment shown is described below in detail. Figure 7 The embodiment shown is Figure 1 The differences and similarities between the illustrated embodiments are not described in detail.

[0102] like Figure 7 As shown, in this embodiment, the global environment is divided into multiple local environments, including the following steps.

[0103] Step S710 : determining a plurality of target points in the global environment based on the task requirements of the driving task, the environmental characteristics of the global environment, and the vehicle characteristics of the target vehicle.

[0104] For example, mission requirements include reaching a specific location, completing a specific task, or following a specific route. Environmental characteristics of the global environment include terrain, obstacle distribution, traffic flow, and road conditions. Vehicle characteristics of the target vehicle include its size, speed, maneuverability, and sensor range.

[0105] For example, in this embodiment, key locations within the mission requirements are first identified and used as target points that must be reached. Next, environmental characteristics are analyzed to determine possible paths and obstacles, as well as their impact on path planning. Next, vehicle characteristics are considered to assess its capabilities and limitations in different environments. Finally, this information is combined to identify and determine a set of target points within the global environment that not only meet the mission requirements but also adapt to the environmental characteristics and vehicle capabilities. For example, target points can be locations that the vehicle must pass through when performing the driving mission.

[0106] In step S720 , a rectangular area is defined between two adjacent target points among the multiple target points, and the rectangular area is determined as a local environment, thereby determining multiple local environments corresponding to the global environment.

[0107] When delineating rectangular regions, the geographic relationships between target points and the target vehicle's travel range need to be considered. Furthermore, these rectangular regions should be large enough to encompass the entire area the target vehicle will traverse from its current target point to the next, while also accounting for the target vehicle's turning radius and maneuverability limitations. Furthermore, the boundaries of the rectangular regions should be adjusted based on environmental characteristics to avoid obstacles or unfavorable terrain, ensuring the target vehicle can safely navigate the local environment.

[0108] In some embodiments, two target points in the rectangular area are determined as the starting point and end point corresponding to the local environment. Exemplarily, the global environment is divided into 5 local environments, which are marked as local environment 1, local environment 2, local environment 3, local environment 4 and local environment 5 according to their positional relationship. There is a continuous relationship between the starting point and the end point between these local environments, that is, the end point of each local environment automatically becomes the starting point of the next adjacent local environment. For example, the end point of local environment 2 is the starting point of local environment 3, and the end point of local environment 3 is the starting point of local environment 4, and so on. This continuous starting point and end point setting ensures the smoothness and consistency of the entire path planning process, thereby allowing the target vehicle to smoothly continue its driving mission when transitioning from one local environment to another.

[0109] In this embodiment, the global environment is divided into local environments, allowing for centralized processing of smaller areas. This reduces computing resource requirements, speeds up path planning, and enhances its scalability. Furthermore, as mission requirements change or the environment expands, local environments can be added or adjusted to accommodate new situations without requiring large-scale modifications to the entire path planning strategy, thereby improving overall planning efficiency and the target vehicle's driving performance.

[0110] Combined with the above Figures 1 to 7 , describes in detail the path planning method embodiment of the present application, and the following is combined with Figure 8 , describes in detail the path planning device embodiment of the present application. It should be understood that the description of the path planning method embodiment corresponds to the description of the path planning device embodiment, so that parts not described in detail can be referred to the previous method embodiment.

[0111] Figure 8 The figure shows a schematic diagram of the structure of a path planning device provided by an embodiment of the present application. Figure 8 As shown, the path planning device 80 provided in the embodiment of the present application includes:

[0112] A division module 810 is used to obtain a global environment corresponding to the driving task of the target vehicle and divide the global environment into multiple local environments;

[0113] A first generating module 820 is configured to calculate, for each local environment, the number of sampling points that match the environmental characteristics of the local environment, and generate waypoints in the local environment based on the number of sampling points;

[0114] A second generating module 830 is configured to generate a plurality of global paths based on waypoints corresponding to the plurality of local environments;

[0115] The determination module 840 is configured to determine a target driving path of the driving task from a plurality of global paths.

[0116] In one embodiment of the present application, the first generation module 820 is also used to determine a line segment between a starting point and an end point in a local environment; determine the length of the line segment and the length of an obstacle on the line segment; determine the spatial area corresponding to the local environment and the area of ​​the obstacle in the local environment; and calculate the number of sampling points based on the length of the line segment and the length of the obstacle, the spatial area and the area of ​​the obstacle.

[0117] In one embodiment of the present application, the first generation module 820 is further used to determine the maximum number of sampling points; determine a first ratio of the length of the obstacle to the length of the line segment, and a first weight value corresponding to the first ratio; determine a second ratio of the area of ​​the obstacle to the area of ​​the space, and a second weight value corresponding to the second ratio; and calculate the number of sampling points based on the maximum number of sampling points, the first ratio and the first weight value, the second ratio and the second weight value.

[0118] In one embodiment of the present application, the first weight value is positively correlated with the length of the obstacle; and the second weight value is positively correlated with the area of ​​the obstacle in the local environment.

[0119] In one embodiment of the present application, the first generation module 820 is further used to, during the process of generating a waypoint, if the waypoint falls into a prohibited area in the local environment, determine the moving direction of the waypoint based on the positional relationship between the waypoint and the prohibited area; and move the waypoint to a drivable area in the local environment according to the moving direction.

[0120] In one embodiment of the present application, the determination module 840 is also used to calculate the actual cost and estimated cost from the starting point to the end point corresponding to each of the multiple global paths; based on the actual cost and estimated cost from the starting point to the end point corresponding to each of the multiple global paths, determine the total cost corresponding to each of the multiple global paths; and select the path with the smallest total cost from the multiple global paths as the target driving path of the driving task.

[0121] In one embodiment of the present application, the division module 810 is also used to determine multiple target points in the global environment based on the task requirements of the driving task, the environmental characteristics of the global environment and the vehicle characteristics of the target vehicle; to delineate a rectangular area between two adjacent target points among the multiple target points, and to determine the rectangular area as a local environment, thereby determining multiple local environments corresponding to the global environment.

[0122] Below, reference Figure 9 To describe the electronic device according to the embodiment of the present application. Figure 9 Shown is a schematic structural diagram of an electronic device provided by an exemplary embodiment of the present application.

[0123] like Figure 9 As shown, the electronic device 90 includes one or more processors 901 and a memory 902 .

[0124] The processor 901 may be a central processing unit (CPU) or other forms of processing units having data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device 90 to perform desired functions.

[0125] The memory 902 may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may, for example, include random access memory (RAM) and / or cache memory (cache), etc. The non-volatile memory may, for example, include read-only memory (ROM), a hard disk, a flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor 901 may execute the program instructions to implement the path planning method of each embodiment of the present application described above and / or other desired functions. Various contents such as driving tasks, global environment, number of sampling points, waypoints, global paths, etc. may also be stored in the computer-readable storage medium.

[0126] In one example, the electronic device 90 may further include an input device 903 and an output device 904 , and these components are interconnected via a bus system and / or other forms of connection mechanisms (not shown).

[0127] The input device 903 may include, for example, a keyboard, a mouse, and the like.

[0128] The output device 904 can output various information to the outside, including driving tasks, global environment, number of sampling points, waypoints, global path, etc. The output device 904 can include, for example, a display, a speaker, a printer, a communication network and its connected remote output devices, etc.

[0129] Of course, to simplify, Figure 9 Only some of the components related to the present application in the electronic device 90 are shown, and components such as a bus, an input / output interface, etc. are omitted. In addition, the electronic device 90 may further include any other appropriate components according to specific application scenarios.

[0130] In addition to the above-mentioned methods and devices, an embodiment of the present application may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to execute the steps of the path planning method according to various embodiments of the present application described above in this specification.

[0131] The computer program product may be written in any combination of one or more programming languages ​​to implement the program code for performing the operations of the embodiments of the present application, including object-oriented programming languages ​​such as Java, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0132] In addition, an embodiment of the present application may also be a computer-readable storage medium having computer program instructions stored thereon, which, when executed by a processor, enable the processor to execute the steps of the path planning method according to various embodiments of the present application described above in this specification.

[0133] The computer-readable storage medium can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can, for example, include but is not limited to a system, device or component of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination thereof. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.

[0134] The basic principles of the present application have been described above in conjunction with specific embodiments. However, it should be noted that the advantages, strengths, and effects mentioned in this application are merely illustrative and not restrictive, and it should not be assumed that these advantages, strengths, and effects are required of each embodiment of this application. In addition, the specific details disclosed above are merely illustrative and facilitating understanding, and are not restrictive. The above details do not limit this application to necessarily being implemented using the above specific details.

[0135] The block diagrams of the devices, devices, equipment, and systems involved in this application are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As will be appreciated by those skilled in the art, these devices, devices, equipment, and systems can be connected, arranged, or configured in any manner. Words such as "include," "comprise," "have," and the like are open-ended words, meaning "including but not limited to," and can be used interchangeably therewith. The words "or" and "and" used herein refer to the words "and / or" and can be used interchangeably therewith, unless the context clearly indicates otherwise. The word "such as" used herein refers to the phrase "such as but not limited to," and can be used interchangeably therewith.

[0136] It should also be noted that in the apparatus, device, and method of the present application, each component or each step can be decomposed and / or recombined, and such decomposition and / or recombination should be regarded as equivalent solutions of the present application.

[0137] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present application. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects without departing from the scope of the present application. Therefore, the present application is not intended to be limited to the aspects shown herein, but rather to be accorded the widest scope consistent with the principles and novel features disclosed herein.

[0138] The above description has been provided for the purpose of illustration and description. In addition, this description is not intended to limit the embodiments of the present application to the forms disclosed herein. Although a number of example aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.

Claims

1. A path planning method, characterized in that: include: Obtaining a global environment corresponding to a driving task of a target vehicle, and dividing the global environment into a plurality of local environments, wherein the global environment includes obstacles; For each of the local environments, calculating the number of sampling points that match the environmental characteristics of the local environment, and generating a corresponding number of waypoints in the local environment based on the number of sampling points; generating a plurality of global paths based on waypoints corresponding to the plurality of local environments; determining a target driving path for the driving task from the plurality of global paths; The calculating the number of sampling points that match the environmental characteristics of the local environment includes: determining a line segment between a start point and an end point in the local environment; determining the length of the line segment and the length of the obstacle on the line segment; Determining the spatial area corresponding to the local environment and the area of ​​obstacles in the local environment; The number of sampling points is calculated based on the length of the line segment and the length of the obstacle, the area of ​​the space and the area of ​​the obstacle.

2. The path planning method according to claim 1, characterized in that: The calculating the number of sampling points based on the length of the line segment and the length of the obstacle, the area of ​​the space and the area of ​​the obstacle includes: Determine the maximum number of sampling points; Determining a first ratio of the length of the obstacle to the length of the line segment, and a first weight value corresponding to the first ratio; Determining a second ratio of the area of ​​the obstacle to the area of ​​the space, and a second weight value corresponding to the second ratio; The number of sampling points is calculated based on the maximum number of sampling points, the first ratio and the first weight value, the second ratio and the second weight value.

3. The path planning method according to claim 2, characterized in that: The first weight value is positively correlated with the length of the obstacle; The second weight value is positively correlated with the area of ​​the obstacle in the local environment.

4. The path planning method according to claim 1, wherein: Also includes: In the process of generating the waypoint, if the waypoint falls into a prohibited area in the local environment, determining a moving direction of the waypoint based on a positional relationship between the waypoint and the prohibited area; The waypoint is moved to a drivable area in the local environment according to the moving direction.

5. The path planning method according to any one of claims 1 to 4, characterized in that: Determining the target driving path of the driving task from the multiple global paths includes: Calculating actual costs and estimated costs from a starting point to an end point corresponding to each of the plurality of global paths; Determining a total cost value corresponding to each of the multiple global paths based on actual costs and estimated costs from a starting point to an end point corresponding to each of the multiple global paths; A path with the smallest total cost is selected from the multiple global paths as the target driving path of the driving task.

6. The path planning method according to any one of claims 1 to 4, characterized in that: The dividing the global environment into multiple local environments includes: Determining a plurality of target points in the global environment based on task requirements of the driving task, environmental characteristics of the global environment, and vehicle characteristics of the target vehicle; A rectangular area is defined between two adjacent target points among the multiple target points, and the rectangular area is determined as the local environment, thereby determining the multiple local environments corresponding to the global environment.

7. A path planning device, characterized in that: include: A division module is used to obtain a global environment corresponding to the driving task of the target vehicle and divide the global environment into multiple local environments; A first generating module is configured to calculate, for each of the local environments, the number of sampling points that match the environmental characteristics of the local environment, and generate waypoints in the local environment based on the number of sampling points; A second generating module is configured to generate a plurality of global paths based on waypoints corresponding to the plurality of local environments; a determination module, configured to determine a target driving path of the driving task from the multiple global paths; The first generating module is further configured to determine a line segment between a starting point and an end point in the local environment; Determine the length of the line segment and the length of the obstacle on the line segment; determine the spatial area corresponding to the local environment and the area of ​​the obstacle in the local environment; and calculate the number of sampling points based on the length of the line segment and the length of the obstacle, the spatial area, and the area of ​​the obstacle.

8. A computer-readable storage medium, characterized in that The storage medium stores a computer program, and the computer program is used to execute the path planning method according to any one of claims 1 to 6.

9. An electronic device, characterized in that: include: processor; a memory for storing instructions executable by the processor; The processor is used to execute the path planning method described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • System and method for navigating indoor cloud robot

    CN108801269A

  • Map construction method and device, storage medium and computer equipment

    CN112000754A