Reference planning path optimization method and device
By identifying the extreme curvature points of discrete road points in global path planning and optimizing them in segments, the problem of unstable driving caused by continuous changes in curvature is solved, achieving smooth driving and improved safety of the vehicle.
Patent Information
- Application Number
- CN202211436338.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-16
- Publication Date
- 2025-09-30
- Estimated Expiration
- 2042-11-16
AI Technical Summary
In global path planning, existing technologies have difficulty achieving good optimization results for discrete points on roads with continuously changing curvature, resulting in unstable vehicle driving, affecting driving safety and user experience.
By identifying the extreme curvature points of the road discrete point sequence, the road discrete point sequence is segmented into subsequences, and each subsequence is smoothly optimized to form an optimized planning path.
It improves the vehicle's driving stability along the planned path, enhancing driving safety and user experience.
Smart Images

Figure CN115817508B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of vehicles, and in particular to a reference planning path optimization method, apparatus, computer equipment, a vehicle including the apparatus or computer equipment, a storage medium, and a computer program product. Background Art
[0002] Planning is a crucial component of autonomous driving products, and well-executed planning can become a key product highlight. Global path planning is a key module in intelligent driving, responsible for providing a well-planned and smooth reference path. The global path planning module generates a reference path that the vehicle can follow smoothly. The quality of this path significantly impacts autonomous driving functionality, performance, and safety. Therefore, further optimizing the reference path is a crucial task in improving autonomous driving products.
[0003] The approaches described in this section are not necessarily approaches that have been previously conceived or employed. Unless otherwise indicated, it should not be assumed that any approach described in this section is prior art simply by virtue of its inclusion in this section. Similarly, unless otherwise indicated, the issues raised in this section should not be considered as having been recognized in any prior art. Summary of the Invention
[0004] Embodiments of the present disclosure provide a reference planning path optimization method, apparatus, computer device, a vehicle including the apparatus or computer device, a storage medium, and a computer program product.
[0005] According to one aspect of the present disclosure, a method for optimizing a reference planned path of a vehicle is provided, wherein the reference planned path is defined by a road discrete point sequence and includes at least one curved road segment. The method comprises: calculating a corresponding discrete point curvature sequence from the road discrete point sequence, the discrete point curvature sequence indicating the curvature at each road discrete point in the road discrete point sequence; identifying at least one curvature extreme point from the discrete point curvature sequence, the at least one curvature extreme point indicating that the corresponding curvature at the corresponding at least one road discrete point is an extreme value; segmenting the road discrete point sequence into one or more road discrete point subsequences, wherein at least one road discrete point with an extreme curvature value is respectively located within the corresponding at least one road discrete point subsequence in the one or more road discrete point subsequences; and smoothing the one or more road discrete point subsequences respectively to obtain optimized one or more road discrete point subsequences, wherein the optimized one or more road discrete point subsequences define the optimized planned path.
[0006] According to another aspect of the present disclosure, a reference planning path optimization device is provided, comprising: a first module for calculating a corresponding discrete point curvature sequence from a road discrete point sequence defining a reference planning path, the discrete point curvature sequence indicating the curvature at each road discrete point in the road discrete point sequence; a second module for identifying at least one curvature extreme point from the discrete point curvature sequence, the at least one curvature extreme point indicating that the corresponding curvature at the corresponding at least one road discrete point is an extreme value; a third module for segmenting the road discrete point sequence into one or more road discrete point subsequences, wherein the at least one road discrete point having an extreme curvature is respectively located within the corresponding at least one road discrete point subsequence in the one or more road discrete point subsequences; and a fourth module for smoothing the one or more road discrete point subsequences respectively to obtain one or more optimized road discrete point subsequences, the optimized one or more road discrete point subsequences defining the optimized planning path.
[0007] According to another aspect of the present disclosure, a computer device is provided, comprising: at least one processor; and at least one memory storing a computer program, which, when executed by the at least one processor, causes the at least one processor to implement the above method.
[0008] According to yet another aspect of the present disclosure, a vehicle is provided, comprising the above-mentioned apparatus or computer device.
[0009] According to yet another aspect of the present disclosure, a non-transitory computer-readable storage medium storing a computer program is provided. The computer program includes instructions that, when executed by a processor, cause the processor to perform the above method.
[0010] According to yet another aspect of the present disclosure, a computer program product is provided. The computer program product includes instructions. When the instructions are executed by a processor, the processor is caused to perform the above method.
[0011] According to an embodiment of the present disclosure, the road discrete point sequence can be adaptively segmented based on the distribution of the curvature of each road discrete point in the reference planned path along with the value of the road discrete point sequence, so as to segmentally optimize the entire reference planned path, so that the vehicle can travel smoothly along the optimized reference planned path, thereby improving driving safety and user experience.
[0012] These and other aspects of the disclosure will be apparent from and elucidated with reference to the embodiments described hereinafter. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] In the following description of exemplary embodiments in conjunction with the accompanying drawings, further details, features, and advantages of the present disclosure are disclosed. The accompanying drawings exemplarily illustrate the embodiments and constitute a part of the specification. Together with the text of the specification, they are used to explain the exemplary implementation of the embodiments. The embodiments shown are for illustrative purposes only and do not limit the scope of the claims. In all figures, the same reference numerals refer to similar, but not necessarily identical, elements. In the drawings:
[0014] Figure 1 is a schematic diagram illustrating an example system in which the various methods described herein may be implemented, according to an exemplary embodiment;
[0015] Figure 2 is a flow chart illustrating a reference planning path optimization method according to an exemplary embodiment;
[0016] Figure 3A and 3B are diagrams illustrating example reference planned paths and corresponding example curvature curves, respectively, according to exemplary embodiments;
[0017] Figures 4A to 4C are diagrams illustrating various cost functions according to exemplary embodiments;
[0018] Figure 5 is a block diagram illustrating a reference planning path optimization apparatus according to an exemplary embodiment; and
[0019] Figure 6 is a block diagram illustrating an exemplary computer device that can be used with the exemplary embodiments. DETAILED DESCRIPTION
[0020] In this disclosure, unless otherwise specified, the use of terms such as "first" and "second" to describe various elements is not intended to limit the positional relationship, temporal relationship, or importance relationship of these elements. Such terms are only used to distinguish one element from another. In some examples, the first element and the second element may refer to the same instance of the element, while in some cases, based on the context of the description, they may also refer to different instances.
[0021] The terms used in the description of the various examples described in this disclosure are for the purpose of describing specific examples only and are not intended to be limiting. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the element can be one or more. As used herein, the term "plurality" means two or more, and the term "based on" should be interpreted as "based at least in part on". In addition, the terms "and / or" and "at least one of..." cover any one of the listed items and all possible combinations.
[0022] Global path planning is a key module in intelligent driving, responsible for providing a well-planned and smooth reference path. The global path planning module generates a reference path along which the vehicle can smoothly navigate. The quality of this path significantly impacts autonomous driving functionality, performance, and safety.
[0023] In related technologies, global path planning employs methods such as global optimization of discrete road points or segmentation of discrete road points according to fixed distances. In the global optimization approach, good optimization results are often not achieved for discrete road points with continuously varying curvature. For example, assume that an S-bend exists in a reference planning path defined by discrete road points with continuously varying curvature, and the curvature radii of the convex and concave curves of the S-bend differ significantly (e.g., the convex curve has a larger curvature radius and the concave curve has a smaller curvature radius). This may result in over-optimization of the discrete road points corresponding to the convex curve and under-optimization of the discrete road points corresponding to the concave curve, making it impossible to obtain the optimal global optimization result for all discrete road points (i.e., the entire reference planning path). In the fixed-distance segmentation approach, the discrete road points encompassed by a continuous curve are inevitably segmented (i.e., these discrete road points are split into two or more path segments), resulting in unavoidable jitter at the splicing locations when the optimized path segments are spliced together. These defects are undesirable for the smooth running of the vehicle and thus for driving safety and user experience.
[0024] In order to solve the above technical problems, according to one or more embodiments of the present disclosure, a new reference planning path optimization method is proposed. The method is based on identifying curvature extreme points from a discrete point curvature sequence corresponding to a road discrete point sequence, and segmenting the road discrete point sequence into subsequences based on the identified curvature extreme points, thereby smoothing each subsequence to obtain a planned path after the reference planning path is optimized. Through the above method, the road discrete point sequence can be adaptively segmented based on the distribution of the curvature of each road discrete point in the reference planning path along with the value of the road discrete point sequence, so as to optimize the entire reference planning path in sections, so that the vehicle can travel smoothly along the optimized reference planning path, thereby improving driving safety and user experience. The exemplary embodiments of the present disclosure are described in detail below with reference to the accompanying drawings.
[0025] Figure 1 is a schematic diagram illustrating an example system 100 in which the various methods described herein may be implemented, according to an exemplary embodiment.
[0026] refer to Figure 1 The system 100 includes an in-vehicle system 110, a server 120, and a network 130 that communicatively couples the in-vehicle system 110 and the server 120.
[0027] The in-vehicle system 110 includes a display 114 and an application (APP) 112 that can be displayed via the display 114. The application 112 can be an application installed by default on the in-vehicle system 110 or downloaded and installed by the user 102, or a mini-program that is a lightweight application. If the application 112 is a mini-program, the user 102 can directly run the application 112 on the in-vehicle system 110 by searching for the application 112 in the host application (e.g., by the name of the application 112, etc.) or scanning a graphical code (e.g., a barcode, a QR code, etc.) of the application 112, without having to install the application 112. In some embodiments, the in-vehicle system 110 may include one or more processors and one or more memories (not shown), and the in-vehicle system 110 is implemented as an in-vehicle computer. In some embodiments, the in-vehicle system 110 may include more or fewer display screens 114 (e.g., no display screen 114), and / or one or more speakers or other human-computer interaction devices. In some embodiments, the in-vehicle system 110 may not communicate with the server 120.
[0028] Server 120 may represent a single server, a cluster of multiple servers, a distributed system, or a cloud server that provides basic cloud services (such as cloud database, cloud computing, cloud storage, cloud communication). Figure 1 1 , the server 120 is shown communicating with only one in-vehicle system 110 , but the server 120 can provide background services for multiple in-vehicle systems at the same time.
[0029] Network 130 allows for wireless communication and information exchange between vehicles and X (where "X" refers to a vehicle, road, pedestrian, or the Internet, etc.) according to agreed-upon communication protocols and data exchange standards. Examples of network 130 include a local area network (LAN), a wide area network (WAN), a personal area network (PAN), and / or a combination of communication networks such as the Internet. Network 130 can be a wired or wireless network. In one example, network 130 can be an in-vehicle network, an inter-vehicle network, and / or an in-vehicle mobile Internet.
[0030] For the purpose of the embodiments of this disclosure, Figure 1In the example of , the application 112 may be an electronic map application that can provide various functions based on electronic maps, such as navigation, route query, location search, parking location search, reference planned path display, etc. Accordingly, the server 120 may be a server used in conjunction with the electronic map application. The server 120 may provide online map services, such as online navigation, online route query, and online location search, to the application 112 running in the vehicle system 110 based on the road network data. Alternatively, the server 120 may provide the road network data to the vehicle system 110, and the application 112 running in the vehicle system 110 may provide local map services based on the road network data.
[0031] Figure 2 2 is a flow chart illustrating a reference planning path optimization method 200 according to an exemplary embodiment. The method 200 may be implemented in a vehicle-mounted system (e.g., Figure 1 , that is, the execution body of each step of the method 200 may be Figure 1 In some embodiments, the method 200 may be performed on a server (e.g., Figure 1 In some embodiments, the method 200 may be performed in combination by an in-vehicle system (e.g., the in-vehicle system 110) and a server (e.g., the server 120). In the following, the various steps of the method 200 are described by taking the in-vehicle system 110 as an example. According to an embodiment of the present disclosure, the reference planned path is defined by a sequence of discrete road points and includes at least one curved road segment. Of course, it is not excluded that the described method may also be applied to a reference planned path that only includes straight road segments. Figure 2 As shown, the method 200 includes:
[0032] Step S210, calculating a corresponding discrete point curvature sequence from the road discrete point sequence, where the discrete point curvature sequence indicates the curvature at each road discrete point in the road discrete point sequence;
[0033] Step S220: identifying at least one curvature extreme point from the discrete point curvature sequence, wherein the at least one curvature extreme point indicates that the corresponding curvature at the corresponding at least one road discrete point is an extreme value;
[0034] Step S230, segmenting the road discrete point sequence into one or more road discrete point subsequences, wherein at least one road discrete point having an extreme curvature is located within a corresponding at least one road discrete point subsequence in the one or more road discrete point subsequences; and
[0035] Step S240 : smoothing the one or more road discrete point subsequences respectively to obtain one or more optimized road discrete point subsequences, wherein the one or more optimized road discrete point subsequences define an optimized planned path.
[0036] The various steps of method 200 are described in detail below.
[0037] In step S210, a corresponding discrete point curvature sequence may be calculated from the road discrete point sequence. As described above, the reference planned path may be defined by the road discrete point sequence. In some cases, the reference planned path may include at least one curved road segment.
[0038] As used herein, a reference planned path may refer to a rough driving trajectory determined based on the vehicle's current location and destination location, for example, for display on an in-vehicle screen and / or smart terminal to show the driver and / or passengers the driving trajectory the vehicle will follow from the current location to the destination location. However, for actual vehicle driving, since the reference planned path is typically obtained based on road information in a map, the granularity of such a reference planned path is too coarse to allow the vehicle to travel smoothly throughout the entire journey, especially in the presence of non-straight road sections (e.g., curved ramps, intersections, etc.).
[0039] In an example, the road discrete points may be located on a reference planned path, and the spacing between adjacent road discrete points may be pre-set, for example, based on the granularity of the map data, the algorithms of the onboard system, the requirements of the vehicle PID control, etc. In some cases, the spacing between adjacent road discrete points may be the same. In other cases, the spacing between adjacent road discrete points may vary. For example, adjacent road discrete points on a straight road segment may be spaced farther apart than adjacent road discrete points on a curved road segment.
[0040] In this example, all road discrete points on the reference planned path are arranged in an ordered manner along the reference planned path (i.e., from the current position to the destination position along the reference planned path) to form a road discrete point sequence. In this example, each road discrete point in the road discrete point sequence includes its coordinate representation relative to a reference coordinate system, wherein the endpoint positions of the reference planned path (i.e., the current vehicle position and the destination position) are located in the reference coordinate system, and in some cases, one of the endpoint positions can be set as the origin of the reference coordinate system. Of course, any other suitable position can be considered as the origin of the reference coordinate system.
[0041] In this example, methods for calculating the corresponding discrete point curvature sequence from a road discrete point sequence may include the circumscribed circle method, the definition method, the interpolation method, and so on. In the circumscribed circle method, for a given point in the road discrete point sequence, the curvature of the point can be calculated as the reciprocal of the radius of the circle defined by the point, its preceding point, and its following point. In the definition method, the curvature calculation formula for a continuous curve can be discretized, and the curvature of the corresponding road discrete point can be calculated based on the first-order and second-order differences of each point in the sequence. In the interpolation method, each discrete point in the road discrete point sequence can be interpolated using B-splines or any other suitable interpolation function to obtain a fitted curve. The first-order and second-order derivatives of the fitted curve at the corresponding road discrete point are then obtained, and the obtained results are used to calculate the curvature of the corresponding road discrete point. It should be understood that the above method is described merely as an example of how to calculate the curvature of a discrete point. In other embodiments, other suitable discrete point curvature calculation methods may be used, and this disclosure does not impose any limitations on this.
[0042] In this example, the calculated curvatures can be arranged in the order of corresponding road discrete points (i.e., along the reference planned path from the current position to the destination position) to form a discrete point curvature sequence. According to an embodiment of the present disclosure, each road discrete point in the road discrete point sequence uniquely corresponds to a discrete point curvature in the discrete point curvature sequence.
[0043] In step S220, at least one curvature extreme point may be identified from the discrete point curvature sequence. According to an embodiment of the present disclosure, the at least one curvature extreme point indicates that the corresponding curvature at the corresponding at least one road discrete point is an extreme value.
[0044] As used herein, a curvature extreme value may refer to the maximum or minimum curvature among corresponding discrete point curvatures across several sequence indices in a discrete point curvature sequence. In one example, the discrete point curvature sequence may be plotted as a value distribution along the road discrete point sequence, and a peak or valley in the resulting value distribution may be identified as a curvature extreme value. In another example, the discrete point curvature sequence may be plotted as a value distribution along the road discrete point sequence, a curve fit may be performed on the resulting value distribution, and then the discrete point curvature corresponding to (or closest to) a peak or valley in the fitted curve may be identified as a curvature extreme value.
[0045] Figure 3A and 3B are diagrams illustrating example reference planned paths and corresponding example curvature curves, respectively, according to exemplary embodiments.
[0046] like Figure 3AAs shown, the graph 300 includes a curve 310. The curve 310 is an example reference planning path obtained by interpolating the input anchor points 315 represented by "x" (the number of input anchor points 302 in Figure A is 7). Both the horizontal and vertical axes of the graph 300 have length units [meters (m)]. Figure 3A It can be seen that the displacement span of the example reference planning path in the y-axis direction is slightly greater than 12 meters, and the displacement span in the x-axis direction is about 10 meters. Figure 3A The actual reference planning path does not have to be like Figure 3A The example reference planning path shown in is as smooth as the one in the example. It is also important to note that Figure 3A The input anchor points 315 shown in FIG. 3 are only used to depict the example reference planned path and identify the curves of the example reference planned path. The input anchor points 315 are not equivalent to the road discrete points described above; on the contrary, the actual road discrete points may be denser than the input anchor points shown.
[0047] refer to Figure 3B , diagram 302 depicts the Figure 3A The example curvature curve 320 corresponding to the example reference planned path is shown. Figure 3A The example reference planning path is a continuous curve obtained by interpolating the input anchor points. Figure 3B The example curvature curve 320 is also continuous, and each point thereon represents the curvature of the corresponding path point on the example reference planned path. Figure 3B Overall, the changing trend of the curvature of each path point from the starting point to the end point on the example reference planning path is shown.
[0048] Back to Figure 3A Assuming that the anchor point with a horizontal coordinate of -2.5m at the two end points of the example reference planned path is the starting point of the path, then after traveling an approximately straight section from the starting point, you will first encounter a sharp bend (for example, a sharp left turn from the perspective of the vehicle's travel direction), after passing the first sharp bend and traveling another approximately straight section, you will encounter a relatively slow right turn, followed by another sharp bend (for example, a sharp right turn from the perspective of the vehicle's travel direction), after passing the second sharp bend, you will continue traveling a straight section again and encounter a relatively slow left turn. Figure 3B The four curved road sections described above (i.e., a sharp left turn, a gentle right turn, a sharp right turn, and a gentle left turn) are observed on the illustrated example curvature curve 320. The magnitudes of the peak values (e.g., p1) or valley values (e.g., v2) of the curvature of the two sharp curved road sections are significantly larger than the magnitudes of the peak values (e.g., p2) or valley values (e.g., v1) of the curvature of the two gentle curved road sections. Figure 3BAs can be seen in FIG, there are four extreme points on the example curvature curve 320, which is consistent with the actual curve distribution of the example reference planned path. Therefore, the curvature curve (or more generally, the extreme values of the curvature sequence) can reflect the curve distribution of the actual path.
[0049] Easy to understand, although Figure 3A and 3B While the continuous curve in FIG is described as an example, the principles of the embodiments of the present disclosure are equally applicable to discrete sequences. In other words, the curvature extremes contained in the discrete point curvature sequence can also reflect the distribution of curves in the reference planned path (e.g., a continuous path) defined by the road discrete point sequence.
[0050] Return Reference Figure 2 In step S230, the road discrete point sequence may be segmented into one or more road discrete point sub-sequences, so that at least one road discrete point with an extreme curvature is located inside a corresponding at least one road discrete point sub-sequence in the one or more road discrete point sub-sequences.
[0051] Looking back at the example of the S-bend mentioned above, the S-bend may include at least one convex arc and one concave arc. The convex arc section and the concave arc section each have a corresponding curvature extreme value, and taking into account the convexity and concavity of the curve, the positive and negative signs of the two curvature extreme values are different. When the curvature of the convex arc is small (i.e., the curvature radius is large) and the curvature of the concave arc is significantly large (i.e., the curvature radius is very small), if the S-bend including both the convex arc section and the concave arc section is optimized as a whole, it is impossible to obtain the optimal global optimization result for all road discrete points in the S-bend (i.e., the entire S-bend). For example, it may result in excessive optimization of the road discrete points of the convex arc section and insufficient optimization of the road discrete points of the concave arc section. Therefore, in a global optimization scheme in which the road discrete point sequence is not segmented, it is often impossible to obtain a good global optimization result for road discrete points with continuously changing curvature. To this end, by segmenting the road discrete point sequence into one or more road discrete point subsequences and causing at least one road discrete point with an extreme curvature to be located within at least one of these subsequences, it is possible to avoid undesirable optimization results in which certain road sections are over-optimized but the entire path is under-optimized.
[0052] In step S240, the one or more road discrete point subsequences may be smoothed to obtain one or more optimized road discrete point subsequences. According to an embodiment of the present disclosure, the one or more optimized road discrete point subsequences define an optimized planned path, thereby enabling the vehicle to travel smoothly along the optimized planned path.
[0053] According to an embodiment of the present disclosure, the aforementioned method 200 overcomes the drawback of related art that a set of discrete road points representing a reference planned path with continuously varying curvature, particularly those with several extreme curvature values, often cannot achieve good global optimization results. Method 200 identifies extreme curvature points from a discrete point curvature sequence corresponding to the road discrete point sequence, and segments the road discrete point sequence into subsequences based on the identified extreme curvature points. Each subsequence is then smoothed to obtain a planned path that is optimized for the reference planned path.
[0054] With the aid of the above-mentioned method 200, the road discrete point sequence can be adaptively segmented based on the distribution of the curvature of each road discrete point in the reference planning path along with the value of the road discrete point sequence, so as to segmentally optimize the entire reference planning path, so that the vehicle can travel smoothly along the optimized reference planning path, thereby improving driving safety and user experience.
[0055] According to an embodiment of the present disclosure, segmenting the road discrete point sequence into one or more road discrete point subsequences may include: identifying multiple curvature dividing points from the discrete point curvature sequence, where there is only one curvature extreme point between every two adjacent curvature dividing points in the multiple curvature dividing points; and demarcating boundaries between different segments of the road discrete point sequence by using corresponding multiple road discrete points corresponding to the multiple curvature dividing points to obtain the one or more road discrete point subsequences.
[0056] In related art, when segmenting the road discrete points of a reference planned path using fixed intervals, it is inevitable that the road discrete points encompassing a continuous curve (e.g., with consistent convexity) will be split into two or more path segments. This can lead to unavoidable jitter at the splicing locations when the optimized path segments are spliced together. To address this issue, by defining boundaries for the road discrete point sequence based on curvature demarcation points, such that for each resulting road discrete point subsequence, there is only one curvature extreme point in the corresponding curvature discrete point (also referred to as a curvature discrete point subsequence), it is possible to avoid splitting different road discrete points within a curve for separate optimizations. This can eliminate the undesirable jitter caused by two different optimization methods for the same curve during the subsequent splicing phase.
[0057] According to an embodiment of the present disclosure, smoothing the one or more road discrete point subsequences may include: for each of the one or more road discrete point subsequences, searching for candidate locations within the neighborhood of each road discrete point in the road discrete point subsequence to minimize the value of a total cost function; and using the candidate location at which the total cost function minimizes as the optimized road discrete point, to obtain the optimized road discrete point subsequence. In an example, the total cost function may be a function of the coordinates of the road discrete point and the coordinates of the corresponding candidate location point. It should be noted that the total cost function may be designed to reflect the sum of various costs required to change the coordinates of the original road discrete point to the coordinates of the candidate location point. Generally, the total cost function may be designed so that the value of the total cost function increases as the various costs required to change the original road discrete point increase. It will be readily appreciated that the specific design of the total cost function may be varied according to actual needs (e.g., the total cost function may be designed so that its value decreases as the various costs required to change the original road discrete point increase, etc.), as long as it reflects the various costs required to change the coordinates of the original road discrete point to the coordinates of the candidate location point, and the present disclosure does not impose any limitations on this.
[0058] According to embodiments of the present disclosure, several optimization objectives can be designed for each discrete road point subsequence obtained after segmentation. In one example, the optimization objectives may include minimizing the offset between the candidate location point and the corresponding original discrete road point, minimizing the distance between the optimized points, minimizing the smoothness between the optimized points, or any combination thereof.
[0059] Figures 4A to 4C are diagrams illustrating various cost functions according to exemplary embodiments, respectively.
[0060] like Figure 4A As shown, the coordinates of the original road discrete points are (x raw_i ,y raw_i ), the coordinates of the corresponding candidate position point are (x candidate_i ,y candidate_i ), d i is the Euclidean distance between a pair of original road discrete points and the corresponding candidate location points. Cost function 1, that is
[0061] cost1=k1*∑ i d i
[0062] Among them, k1 is the weight coefficient, which is used to represent the proportion of cost function 1 when constructing the total cost function, and For global optimization, the maximum value of i can be equal to the total number N of road discrete points in the road discrete point sequence. For segmented optimization, the maximum value of i can be equal to the number n of road discrete points in each road discrete point subsequence, where the number n of road discrete points in different road discrete point subsequences varies. In this example, one optimization objective can be to minimize the offset between a candidate location point and the corresponding original road discrete point.
[0063] like Figure 4B As shown in the figure, the coordinates of the candidate position points corresponding to the adjacent original road discrete points are (x candidate_i ,y candidate_i ) and (x candidate_i+1 ,y candidate_i+1 ). D i is the Euclidean distance between the two candidate locations. Cost function 2, that is
[0064] cost2=k2*∑ i D i
[0065] Among them, k2 is the weight coefficient, which is used to characterize the proportion of cost function 2 when constructing the total cost function, and For global optimization, the maximum value of i can be equal to the total number of road discrete points N in the road discrete point sequence minus one. For segmented optimization, the maximum value of i can be equal to the number of road discrete points n in each road discrete point subsequence minus one, where the number of road discrete points n in different road discrete point subsequences varies. In this example, one optimization objective can be to minimize the distance between candidate locations of the original road discrete points after optimization.
[0066] like Figure 4C As shown, the candidate position points corresponding to the three consecutive original road discrete points are marked as p i 、p i+1 and p i+2 .vec i_i+1 From point p i Point to point p i+1 vector, and vec i+1_i+2 Represents point p i+1 Point to point p i+2 The cost function 3 is
[0067] cost3=k3*∑ i cosθ i
[0068] Among them, k3 is the weight coefficient, which is used to represent the proportion of cost function 3 when constructing the total cost function, and
[0069]
[0070] Among them, vec i_i+1 =p i+1 -p i , and vec i+1_i+2 =p i+2 -p i+1 For global optimization, the maximum value of i can be equal to the total number of road discrete points N in the road discrete point sequence minus two. For segmented optimization, the maximum value of i can be equal to the number of road discrete points n in each road discrete point subsequence minus two, where the number of road discrete points n in different road discrete point subsequences is different. In this example, one of the optimization goals can be to make the candidate position points after optimization of the original road discrete points as smooth as possible. For example, the larger the angle formed by the line connecting three consecutive candidate position points, the smoother the three candidate position points.
[0071] The inventors have discovered that, in related fields, when optimization operations (e.g., smoothing) are performed on each segmented set of sequence points and the optimized sets of sequence points are spliced together, burrs are likely to appear at the splicing locations. In the field of vehicle technology, this burr phenomenon will manifest as a lack of connection or matching between adjacent road discrete points on the planned path, causing jitter when the vehicle control unit controls the vehicle to drive along the planned path (e.g., instantaneous small-angle deflection of the steering wheel, etc.), which is undesirable for vehicle driving safety and the user's driving experience. Therefore, for each segmented road discrete point subsequence, a splicing constraint method can be used at the splicing location to eliminate such undesirable jitter.
[0072] According to an embodiment of the present disclosure, smoothing the one or more road discrete point subsequences separately includes: starting from the starting point of the reference planned path, sequentially smoothing the one or more road discrete point subsequences. Furthermore, sequentially smoothing the one or more road discrete point subsequences includes: for a first road discrete point subsequence among the one or more road discrete point subsequences, searching for candidate position points within the neighborhood of each road discrete point in the road discrete point subsequence to minimize the value of a total cost function, wherein the total cost function is a function of the coordinates of each road discrete point in the road discrete point subsequence and the coordinates of the corresponding candidate position points; and taking the candidate position point when the total cost function takes the minimum value as the optimized road discrete point to obtain the optimized first road discrete point subsequence. Furthermore, sequentially smoothing the one or more road discrete point subsequences further includes: for the nth road discrete point subsequence in the one or more road discrete point subsequences, selecting a predetermined number of optimized road discrete points at the end of the (n-1)th optimized road discrete point subsequence preceding the nth road discrete point subsequence as anchor points, and adding them to the beginning of the nth road discrete point subsequence; under the constraint that the coordinates of the anchor points remain unchanged, searching for candidate location points within the neighborhood of each road discrete point in the nth road discrete point subsequence to which the anchor point is added, excluding the anchor point, to minimize the value of the total cost function; and selecting the candidate location points at which the total cost function minimizes as the optimized road discrete points to obtain the optimized nth road discrete point subsequence, wherein 2≤n≤N, N is the number of the one or more road discrete point subsequences, and n is an integer. It should be noted that the predetermined number of anchor points can be selected based on actual needs. It should also be noted that the number of anchor points at the beginning of each road discrete point subsequence starting from the second road discrete point subsequence can be different. The present disclosure does not impose any restrictions on the specific setting of the anchor point.
[0073] According to an embodiment of the present disclosure, the total cost function includes an offset cost, wherein, for each road discrete point subsequence, the offset cost is defined as the product of the sum of the Euclidean distances between each road discrete point in the road discrete point subsequence and the corresponding candidate position point and the offset cost weight.
[0074] According to an embodiment of the present disclosure, the total cost function includes a length cost, wherein, for each road discrete point subsequence, the length cost is defined as the product of the sum of the Euclidean distances between the corresponding candidate position points of each pair of adjacent road discrete points in the road discrete point subsequence and a length cost weight.
[0075] According to an embodiment of the present disclosure, the total cost function includes a smoothness cost, wherein, for each road discrete point subsequence, the smoothness cost is defined as the product of the sum of the cosine values of the angles formed by the lines connecting the corresponding candidate position points of any three consecutive road discrete points in the road discrete point subsequence and the smoothness cost weight.
[0076] Figure 5 is a schematic block diagram illustrating a reference planned path optimization apparatus 500 according to an exemplary embodiment. Apparatus 500 includes: a first module 510 for calculating a corresponding discrete point curvature sequence from a road discrete point sequence defining the reference planned path, the discrete point curvature sequence indicating the curvature at each road discrete point in the road discrete point sequence; a second module 520 for identifying at least one curvature extreme point from the discrete point curvature sequence, the at least one curvature extreme point indicating that the curvature at the corresponding at least one road discrete point is an extreme value; a third module 530 for segmenting the road discrete point sequence into one or more road discrete point subsequences, wherein the at least one road discrete point having an extreme curvature value is located within a corresponding at least one road discrete point subsequence of the one or more road discrete point subsequences; and a fourth module 540 for smoothing each of the one or more road discrete point subsequences to obtain one or more optimized road discrete point subsequences, the optimized one or more road discrete point subsequences defining the optimized planned path.
[0077] It should be understood that Figure 5 The modules of the apparatus 500 shown in FIG. 5 can be used in conjunction with the reference Figure 2 The various steps in the method 200 described above correspond to each other. Therefore, the operations, features and advantages described above for the method 200 are also applicable to the apparatus 500 and the modules included therein.
[0078] According to embodiments of the present disclosure, the apparatus 500 overcomes the drawback of related art techniques that a set of discrete road points representing a reference planned path with continuously varying curvature, particularly those with several extreme curvature values, often cannot achieve good global optimization results. Apparatus 500 identifies extreme curvature points from a discrete point curvature sequence corresponding to the road discrete point sequence, and segments the road discrete point sequence into subsequences based on the identified extreme curvature points. The apparatus then smoothes each subsequence to obtain a planned path optimized from the reference planned path.
[0079] With the aid of the above-mentioned device 500, the road discrete point sequence can be adaptively segmented based on the distribution of the curvature of each road discrete point in the reference planning path along with the value of the road discrete point sequence, so as to segmentally optimize the entire reference planning path, so that the vehicle can travel smoothly along the optimized reference planning path, thereby improving driving safety and user experience.
[0080] While specific functionality has been discussed above with reference to specific modules, it should be noted that the functionality of the various modules discussed herein may be separated into multiple modules, and / or at least some functionality of multiple modules may be combined into a single module. A specific module as discussed herein performing an action includes the specific module itself performing the action, or alternatively, the specific module calling or otherwise accessing another component or module that performs the action (or performs the action in conjunction with the specific module). Thus, a specific module that performs an action may include the specific module itself that performs the action and / or another module that the specific module calls or otherwise accesses to perform the action.
[0081] As used herein, the phrase “based on A, B, and C, perform action Z” may mean performing action Z based only on A, only on B, only on C, based on A and B, based on A and C, based on B and C, or based on A, B, and C.
[0082] It should also be understood that various techniques may be described herein in the general context of software hardware elements or program modules. Figure 5 The various modules described can be implemented in hardware or in hardware in combination with software and / or firmware. For example, these modules can be implemented as computer program code / instructions, which are configured to be executed in one or more processors and stored in a computer-readable storage medium. Alternatively, these modules can be implemented as hardware logic / circuits. For example, in some embodiments, one or more of the first module 510 to the fourth module 540 can be implemented together in a system on chip (SoC). The SoC can include an integrated circuit chip (which includes a processor (e.g., a central processing unit (CPU), a microcontroller, a microprocessor, a digital signal processor (DSP), etc.), a memory, one or more communication interfaces, and / or one or more components in other circuits), and can optionally execute the received program code and / or include embedded firmware to perform functions.
[0083] According to one aspect of the present disclosure, a computing device is provided. The computing device includes at least one memory, at least one processor, and a computer program stored on the at least one memory. The at least one processor is configured to execute the computer program to implement the steps of any of the method embodiments described above.
[0084] According to one aspect of the present disclosure, a vehicle is provided, which includes the apparatus or computer device as described above.
[0085] According to one aspect of the present disclosure, a non-transitory computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of any method embodiment described above are implemented.
[0086] According to one aspect of the present disclosure, a computer program product is provided, which includes a computer program. When the computer program is executed by a processor, the steps of any one of the method embodiments described above are implemented.
[0087] In the following, combined Figure 6 Illustrative examples of such a computer device, non-transitory computer-readable storage medium, and computer program product are described.
[0088] Figure 6 6 shows an example configuration of a computer device 600 that can be used to implement the methods described herein. Figure 1 The server 120 and / or the in-vehicle system 110 shown in FIG may include an architecture similar to the computer device 600. The above-mentioned apparatus 500 or computer device may also be fully or at least partially implemented by the computer device 600 or a similar device or system.
[0089] The computer device 600 may include at least one processor 602, memory 604, communication interface(s) 606, a display device 608, other input / output (I / O) devices 610, and one or more mass storage devices 612, all capable of communicating with one another, such as via a system bus 614 or other appropriate connections.
[0090] The processor 602 may be a single processing unit or multiple processing units, all of which may include a single or multiple computing units or multiple cores. The processor 602 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuits, and / or any device that manipulates signals based on operational instructions. Among other capabilities, the processor 602 may be configured to retrieve and execute computer-readable instructions stored in the memory 604, mass storage device 612, or other computer-readable media, such as program code for an operating system 616, program code for application programs 618, program code for other programs 620, and the like.
[0091] The memory 604 and the mass storage device 612 are examples of computer-readable storage media for storing instructions that are executed by the processor 602 to implement the various functions described above. For example, the memory 604 may generally include both volatile memory and non-volatile memory (e.g., RAM, ROM, etc.). In addition, the mass storage device 612 may generally include a hard drive, a solid-state drive, removable media, including external and removable drives, memory cards, flash memory, floppy disks, optical disks (e.g., CDs, DVDs), storage arrays, network attached storage, storage area networks, etc. The memory 604 and the mass storage device 612 may all be collectively referred to herein as memory or computer-readable storage media, and may be non-transitory media capable of storing computer-readable, processor-executable program instructions as computer program code that can be executed by the processor 602 as a specific machine configured to implement the operations and functions described in the examples herein.
[0092] A plurality of programs may be stored on the mass storage device 612. These programs include an operating system 616, one or more application programs 618, other programs 620, and program data 622, and they may be loaded into the memory 604 for execution. Examples of such applications or program modules may include, for example, computer program logic (e.g., computer program code or instructions) for implementing the following method steps / component functions: method 200, method 300 and optional additional steps thereof, apparatus 500, and / or other embodiments described herein.
[0093] Although Figure 6 6 as being stored in the memory 604 of the computer device 600, but the modules 616, 618, 620, and 622, or portions thereof, may be implemented using any form of computer-readable media accessible by the computer device 600. As used herein, "computer-readable media" includes at least two types of computer-readable media, namely, computer-readable storage media and communication media.
[0094] Computer-readable storage media include volatile and non-volatile, removable and non-removable media implemented by any method or technology for storing information, such as computer-readable instructions, data structures, program modules or other data. Computer-readable storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD), or other optical storage devices, magnetic cassettes, magnetic tape, magnetic disk storage devices or other magnetic storage devices, or any other non-transmission media that can be used to store information for access by a computer device. In contrast, communication media can embody computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transmission mechanism. Computer-readable storage media as defined herein does not include communication media.
[0095] One or more communication interfaces 606 are used to exchange data with other devices, such as through a network, a direct connection, etc. Such communication interfaces can be one or more of the following: any type of network interface (e.g., a network interface card (NIC)), a wired or wireless (such as IEEE 802.11 wireless LAN (WLAN)) wireless interface, a Worldwide Interoperability for Microwave Access (Wi-MAX) interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth TM The communication interface 606 may include a wireless network interface, a near field communication (NFC) interface, and the like. The communication interface 606 may facilitate communication within a variety of network and protocol types, including wired networks (e.g., LAN, cable, etc.) and wireless networks (e.g., WLAN, cellular, satellite, etc.), the Internet, and the like. The communication interface 606 may also provide for communication with external storage devices (not shown) such as storage arrays, network attached storage, storage area networks, and the like.
[0096] In some examples, a display device 608 such as a monitor may be included for displaying information and images to the user. Other I / O devices 610 may be devices that receive various inputs from the user and provide various outputs to the user, and may include a touch input device, a gesture input device, a camera, a keyboard, a remote control, a mouse, a printer, an audio input / output device, and the like.
[0097] The technology described herein can be supported by these various configurations of the computer device 600 and is not limited to the specific examples of the technology described herein. For example, the functionality can also be implemented in whole or in part on a "cloud" by using a distributed system. The cloud includes and / or represents a platform for resources. The platform abstracts the underlying functionality of the hardware (e.g., servers) and software resources of the cloud. Resources can include applications and / or data that can be used when performing computing processing on a server away from the computer device 600. Resources can also include services provided over the Internet and / or through a subscriber network such as a cellular or Wi-Fi network. The platform can abstract resources and functionality to connect the computer device 600 to other computer devices. Therefore, the implementation of the functionality described herein can be distributed throughout the cloud. For example, functionality can be implemented partially on the computer device 600 and partially through a platform that abstracts the functionality of the cloud.
[0098] Although the present disclosure has been illustrated and described in detail in the drawings and the foregoing description, such illustration and description are to be considered illustrative and exemplary and not restrictive; the present disclosure is not limited to the disclosed embodiments. Variations to the disclosed embodiments will be understood and effected by those skilled in the art in practicing the claimed subject matter by studying the drawings, the disclosure and the appended claims. In the claims, the word "comprising" does not exclude other elements or steps that are not listed, the indefinite article "a" or "an" does not exclude a plurality, the term "plurality" means two or more, and the term "based on" should be interpreted as "based at least in part on". The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage.
[0099] Some exemplary aspects of the disclosure will be described below.
[0100] Aspect 1 is a method for optimizing a reference planned path of a vehicle, where the reference planned path is defined by a sequence of discrete road points and includes at least one curved road segment. The method comprises:
[0101] Calculating a corresponding discrete point curvature sequence from the road discrete point sequence, where the discrete point curvature sequence indicates the curvature at each road discrete point in the road discrete point sequence;
[0102] Identifying at least one curvature extreme point from the discrete point curvature sequence, wherein the at least one curvature extreme point indicates that the corresponding curvature at the corresponding at least one road discrete point is an extreme value;
[0103] Segmenting the road discrete point sequence into one or more road discrete point subsequences, wherein at least one road discrete point having an extreme curvature is located inside a corresponding at least one road discrete point subsequence in the one or more road discrete point subsequences; and
[0104] The one or more road discrete point subsequences are smoothed respectively to obtain one or more optimized road discrete point subsequences, and the one or more optimized road discrete point subsequences define an optimized planned path.
[0105] Aspect 2 is the method of aspect 1, wherein segmenting the road discrete point sequence into one or more road discrete point subsequences comprises:
[0106] Identifying a plurality of curvature dividing points from the discrete point curvature sequence, wherein there is only one curvature extreme point between every two adjacent curvature dividing points in the plurality of curvature dividing points; and
[0107] One or more road discrete point subsequences are obtained by demarcating boundaries of different segments of a road discrete point sequence using corresponding road discrete points corresponding to a plurality of curvature dividing points.
[0108] Aspect 3 is the method of aspect 1 or 2, wherein smoothing the one or more road discrete point subsequences comprises:
[0109] For each road discrete point subsequence in one or more road discrete point subsequences,
[0110] Searching for candidate location points within the neighborhood of each road discrete point in the road discrete point subsequence to minimize a total cost function, wherein the total cost function is a function of the coordinates of each road discrete point in the road discrete point subsequence and the coordinates of the corresponding candidate location points; and
[0111] The candidate position points when the total cost function takes the minimum value are used as optimized road discrete points to obtain an optimized road discrete point subsequence.
[0112] Aspect 4 is the method of any one of aspects 1-3, wherein smoothing the one or more road discrete point subsequences comprises:
[0113] Starting from the starting point of the reference planned path, one or more road discrete point subsequences are sequentially smoothed, including:
[0114] For the first road discrete point subsequence in one or more road discrete point subsequences,
[0115] Searching for candidate location points within the neighborhood of each road discrete point in the road discrete point subsequence to minimize a total cost function, wherein the total cost function is a function of the coordinates of each road discrete point in the road discrete point subsequence and the coordinates of the corresponding candidate location points; and
[0116] The candidate position point when the total cost function takes the minimum value is used as the optimized road discrete point to obtain the first optimized road discrete point subsequence.
[0117] For the nth road discrete point subsequence in one or more road discrete point subsequences,
[0118] Selecting a predetermined number of optimized road discrete points at the end of the (n-1)th optimized road discrete point subsequence before the nth road discrete point subsequence as anchor points, and adding them to the beginning of the nth road discrete point subsequence;
[0119] Under the constraint that the coordinates of the anchor point remain unchanged, searching for candidate location points in the neighborhood of each road discrete point other than the anchor point in the nth road discrete point subsequence to which the anchor point is added, so as to minimize the value of the total cost function; and
[0120] The candidate position point when the total cost function takes the minimum value is used as the optimized road discrete point to obtain the optimized n-th road discrete point subsequence, where 2≤n≤N, N is the number of one or more road discrete point subsequences, and n is an integer.
[0121] Aspect 5 is the method of any one of aspects 1-4, wherein the total cost function includes an offset cost,
[0122] For each road discrete point subsequence, the offset cost is defined as the product of the sum of the Euclidean distances between each road discrete point in the road discrete point subsequence and the corresponding candidate position point and the offset cost weight.
[0123] Aspect 6 is the method of any one of aspects 1-5, wherein the total cost function includes a length cost,
[0124] For each road discrete point subsequence, the length cost is defined as the product of the sum of the Euclidean distances between the corresponding candidate position points of each pair of adjacent road discrete points in the road discrete point subsequence and the length cost weight.
[0125] Aspect 7 is the method of any one of aspects 1-6, wherein the total cost function includes a smoothness cost,
[0126] Among them, for each road discrete point subsequence, the smoothness cost is defined as the product of the sum of the cosine values of the angles formed by the lines connecting the corresponding candidate position points of any three consecutive road discrete points in the road discrete point subsequence and the smoothness cost weight.
[0127] Aspect 8 is a reference planning path optimization device, comprising:
[0128] The first module is configured to calculate a corresponding discrete point curvature sequence from a road discrete point sequence defining a reference planned path, wherein the discrete point curvature sequence indicates the curvature at each road discrete point in the road discrete point sequence;
[0129] A second module is configured to identify at least one curvature extreme value point from the discrete point curvature sequence, wherein the at least one curvature extreme value point indicates that the corresponding curvature at the corresponding at least one discrete point of the road is an extreme value;
[0130] A third module is configured to segment the road discrete point sequence into one or more road discrete point subsequences, wherein at least one road discrete point having an extreme curvature is located within a corresponding at least one road discrete point subsequence in the one or more road discrete point subsequences; and
[0131] The fourth module is used to smooth the one or more road discrete point subsequences respectively to obtain one or more optimized road discrete point subsequences, and the one or more optimized road discrete point subsequences define the optimized planning path.
[0132] Aspect 9 is a computer device, comprising:
[0133] at least one processor; and
[0134] at least one memory having a computer program stored thereon,
[0135] When the computer program is executed by at least one processor, the computer program causes the at least one processor to perform the method of any one of aspects 1-7.
[0136] Aspect 10 is a vehicle comprising the apparatus of aspect 8 or the computer device of aspect 9.
[0137] Aspect 11 is a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the processor is caused to perform the method of any one of aspects 1-7.
[0138] Aspect 12 is a computer program product comprising a computer program, which, when executed by a processor, causes the processor to perform the method of any one of aspects 1-7.
Claims
1. A method for optimizing a reference planned path of a vehicle, wherein the reference planned path is defined by a sequence of discrete road points and includes at least one curved road segment, the method comprising: Calculating a corresponding discrete point curvature sequence from the road discrete point sequence, wherein the discrete point curvature sequence indicates the curvature at each road discrete point in the road discrete point sequence; Identifying at least one curvature extreme point from the discrete point curvature sequence, wherein the at least one curvature extreme point indicates that the corresponding curvature at the corresponding at least one road discrete point is an extreme value; Segmenting the road discrete point sequence into one or more road discrete point subsequences, wherein the at least one road discrete point having an extreme curvature is located inside a corresponding at least one road discrete point subsequence of the one or more road discrete point subsequences; and smoothing the one or more road discrete point subsequences respectively to obtain one or more optimized road discrete point subsequences, wherein the one or more optimized road discrete point subsequences define an optimized planned path, The step of segmenting the road discrete point sequence into one or more road discrete point subsequences comprises: Identifying a plurality of curvature dividing points from the discrete point curvature sequence, wherein there is only one curvature extreme point between every two adjacent curvature dividing points in the plurality of curvature dividing points; and The one or more road discrete point subsequences are obtained by demarcating boundaries of different segments of the road discrete point sequence using corresponding road discrete points corresponding to the multiple curvature demarcation points. The step of smoothing the one or more road discrete point subsequences comprises: For each road discrete point subsequence in the one or more road discrete point subsequences, Searching for candidate location points within the neighborhood of each road discrete point in the road discrete point subsequence to minimize a value of a total cost function, wherein the total cost function is a function of the coordinates of each road discrete point in the road discrete point subsequence and the coordinates of the corresponding candidate location points; and The candidate position points when the total cost function takes a minimum value are used as optimized road discrete points to obtain an optimized road discrete point subsequence.
2. The method according to claim 1, wherein Smoothing the one or more road discrete point subsequences separately includes: Starting from a starting point of the reference planned path, sequentially smoothing the one or more road discrete point subsequences includes: For the first road discrete point subsequence among the one or more road discrete point subsequences, Searching for candidate location points within the neighborhood of each road discrete point in the road discrete point subsequence to minimize a value of a total cost function, wherein the total cost function is a function of the coordinates of each road discrete point in the road discrete point subsequence and the coordinates of the corresponding candidate location points; and The candidate position point when the total cost function takes the minimum value is used as the optimized road discrete point to obtain the optimized first road discrete point subsequence, For the nth road discrete point subsequence in the one or more road discrete point subsequences, Selecting a predetermined number of optimized road discrete points at the end of the (n-1)th optimized road discrete point subsequence before the nth road discrete point subsequence as anchor points, and adding them to the beginning of the nth road discrete point subsequence; Under the constraint that the coordinates of the anchor point remain unchanged, searching for candidate position points in the neighborhood of each road discrete point other than the anchor point in the nth road discrete point subsequence to which the anchor point is added, so as to minimize the value of the total cost function; and The candidate position point when the total cost function takes a minimum value is used as the optimized road discrete point to obtain the optimized n-th road discrete point subsequence, where 2≤n≤N, N is the number of the one or more road discrete point subsequences, and n is an integer.
3. The method according to claim 1 or 2, wherein The total cost function includes the offset cost, For each road discrete point subsequence, the offset cost is defined as the product of the sum of the Euclidean distances between each road discrete point in the road discrete point subsequence and the corresponding candidate position point and the offset cost weight.
4. The method according to claim 1 or 2, wherein: The total cost function includes length cost, For each road discrete point subsequence, the length cost is defined as the product of the sum of the Euclidean distances between the corresponding candidate position points of each pair of adjacent road discrete points in the road discrete point subsequence and the length cost weight.
5. The method according to claim 1 or 2, wherein: The total cost function includes the smoothness cost, Among them, for each road discrete point subsequence, the smoothness cost is defined as the product of the sum of the cosine values of the angles formed by the lines connecting the corresponding candidate position points of any three consecutive road discrete points in the road discrete point subsequence and the smoothness cost weight.
6. A reference planning path optimization device, comprising: A first module is configured to calculate a corresponding discrete point curvature sequence from a road discrete point sequence defining the reference planned path, wherein the discrete point curvature sequence indicates the curvature at each road discrete point in the road discrete point sequence; A second module is configured to identify at least one curvature extreme point from the discrete point curvature sequence, wherein the at least one curvature extreme point indicates that the corresponding curvature at the corresponding at least one discrete point of the road is an extreme value; a third module, configured to segment the road discrete point sequence into one or more road discrete point subsequences, wherein the at least one road discrete point having an extreme curvature is located within a corresponding at least one road discrete point subsequence of the one or more road discrete point subsequences; and a fourth module for smoothing the one or more road discrete point subsequences respectively to obtain one or more optimized road discrete point subsequences, wherein the one or more optimized road discrete point subsequences define an optimized planned path; The step of segmenting the road discrete point sequence into one or more road discrete point subsequences comprises: Identifying a plurality of curvature dividing points from the discrete point curvature sequence, wherein there is only one curvature extreme point between every two adjacent curvature dividing points in the plurality of curvature dividing points; and The one or more road discrete point subsequences are obtained by demarcating boundaries of different segments of the road discrete point sequence using corresponding road discrete points corresponding to the multiple curvature demarcation points. The step of smoothing the one or more road discrete point subsequences comprises: For each road discrete point subsequence in the one or more road discrete point subsequences, Searching for candidate location points within the neighborhood of each road discrete point in the road discrete point subsequence to minimize a value of a total cost function, wherein the total cost function is a function of the coordinates of each road discrete point in the road discrete point subsequence and the coordinates of the corresponding candidate location points; and The candidate position points when the total cost function takes a minimum value are used as optimized road discrete points to obtain an optimized road discrete point subsequence.
7. A computer device, comprising: at least one processor; as well as at least one memory having a computer program stored thereon, When the computer program is executed by the at least one processor, the at least one processor is caused to perform the method according to any one of claims 1 to 5.
8. A vehicle comprising the apparatus according to claim 6 or the computer device according to claim 7.
9. A computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the processor is caused to perform the method according to any one of claims 1 to 5.
10. A computer program product comprising a computer program, wherein when the computer program is executed by a processor, the processor is caused to perform the method according to any one of claims 1 to 5.
Citation Information
Patent Citations
Intelligent public transport vehicle path planning method based on multi-objective dynamic particle swarm optimization
CN110928297A
Global path planning algorithm for unmanned driving equation
CN113467480A