A method and system for searching for an unmanned vehicle passage space
By generating an obstacle list and road boundary information, calculating topological nodes and costs, and determining the reasonable travel space for autonomous vehicles in complex road conditions, the path planning problem of autonomous vehicles in road conditions with many obstacles is solved, improving the accuracy of path planning and the efficiency of the algorithm.
Patent Information
- Application Number
- CN202510990807.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-18
- Publication Date
- 2025-12-05
- Estimated Expiration
- 2045-07-18
AI Technical Summary
In existing technologies, it is difficult to effectively determine the reasonable travel space for autonomous vehicles in complex road conditions with many obstacles.
By generating a list of obstructions, determining road boundary information, generating topological nodes of the proposed passage space, calculating the cost of alternative paths, and determining the final passage space of the autonomous vehicle based on cost filtering rules.
Generating a topological node connection graph that conforms to the traffic environment under complex road conditions improves vehicle traffic flow in path planning, enhances the accuracy of path planning, and enables the determination of reasonable traffic space in complex road conditions with many obstacles. It also adapts to search algorithms and avoids excessive computational power consumption.
Smart Images

Figure CN120506961B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of path planning, and more specifically, to a method and system for searching the passage space of unmanned vehicles. Background Technology
[0002] In autonomous vehicle path planning, the autonomous driving planning module is generally divided into lateral path planning and longitudinal velocity planning. Lateral path planning is responsible for generating a spatial path that does not contain time information, and can perform actions such as avoiding and detouring around static obstacles. However, for complex road conditions with many obstacles, the vehicle needs to select a reasonable passage space for subsequent path planning. Currently, there is a lack of effective methods for determining a reasonable passage space in complex road conditions with many obstacles. Summary of the Invention
[0003] To address the technical problem that there is a lack of effective methods for determining reasonable passage space in complex road conditions with many obstacles in the existing technology, the present invention provides a method and system for searching passage space for unmanned vehicles.
[0004] According to one aspect of the present invention, the present invention provides a method for searching the passage space of an unmanned vehicle, comprising:
[0005] Based on the current speed of the autonomous vehicle, the minimum scanning distance and scanning time are customized, and the running speed of the obstacles blocking the way in front of the autonomous vehicle is used to generate a list of obstacles and determine the road boundary information in front of the autonomous vehicle.
[0006] Based on the information of each blockage obstacle in the blockage obstacle list and the road boundary information, an N-level topology node of the proposed passage space is determined, wherein the topology node represents the space between blockage obstacles or between blockage obstacles and the road boundary that is intended for autonomous vehicle passage.
[0007] Based on the connection relationships between the N-level topological nodes in the proposed passage space, M alternative paths for the autonomous vehicle to travel are generated, as well as the minimum passage width between connected topological nodes.
[0008] The first cost of the N-level topological nodes in the proposed passage space and the second cost between the topological nodes with connections are calculated based on the custom cost function.
[0009] Based on the custom cost weight values, the costs of the M candidate paths are calculated using the first cost and the second cost of the topological nodes on each candidate path.
[0010] Based on custom space filtering rules, the final passage space of the autonomous vehicle is determined according to the custom minimum passage width of the autonomous vehicle, the cost of M alternative paths, and the minimum passage width of the vehicle.
[0011] According to another aspect of the present invention, the present invention provides a system for searching the passage space of an unmanned vehicle, the system comprising:
[0012] The preprocessing module is used to generate a list of obstacles based on the current speed of the autonomous vehicle, the minimum scanning distance and scanning time, and the running speed of the obstacles in front of the autonomous vehicle, and to determine the road boundary information in front of the autonomous vehicle.
[0013] The topology node module is used to determine the N-level topology nodes of the proposed passage space based on the information of each blockage obstacle in the blockage obstacle list and the road boundary information. The topology nodes represent the space between blockage obstacles or between blockage obstacles and the road boundary that is intended for autonomous vehicle passage.
[0014] The alternative path module is used to generate M alternative paths for the autonomous vehicle to travel based on the connection relationship between the N-level topological nodes of the proposed passage space, as well as the minimum passage width between connected topological nodes.
[0015] The first calculation module is used to calculate the first cost of the N-level topological nodes in the proposed passage space and the second cost between the topological nodes with connection relationships according to a custom cost function.
[0016] The second calculation module is used to calculate the cost of M candidate paths based on the first cost and the second cost of the topological nodes on each candidate path, according to the custom cost weight value.
[0017] The result output module is used to determine the final passage space of the unmanned vehicle based on the custom space filtering rules, the custom minimum passage width of the unmanned vehicle, the cost of M alternative paths, and the minimum passage width of the vehicle.
[0018] According to another aspect of the present invention, a computer-readable storage medium is provided, the storage medium storing a computer program that, when executed by a processor, implements the methods described in any of the above aspects of the present invention.
[0019] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising: a processor; a memory for storing executable instructions of the processor; the processor being configured to read the executable instructions from the memory and execute the instructions to implement the method described in any of the preceding aspects of the present invention.
[0020] The present invention discloses a method and system for searching the travel space of an unmanned vehicle. The method includes generating a list of obstructions and determining road boundary information in front of the unmanned vehicle; determining N-level topological nodes of the proposed travel space based on the information of each obstruction in the list of obstructions and the road boundary information; generating M alternative paths for the unmanned vehicle to travel on based on the connection relationships between the N-level topological nodes of the proposed travel space, and the minimum passage width between connected topological nodes; calculating a first cost of the N-level topological nodes of the proposed travel space and a second cost between connected topological nodes based on a custom cost function; calculating the cost of the M alternative paths based on the first cost and the second cost of the topological nodes on each alternative path according to a custom cost weight value; and determining the final travel space of the unmanned vehicle based on a custom space filtering rule, a custom minimum passage width of the unmanned vehicle, the costs of the M alternative paths, and the minimum passage width of the vehicle. The method and system can generate a topological node connection graph that conforms to the traffic environment under complex road conditions without consuming too much computing power. The highly adaptable search algorithm minimizes the loss of traffic space, thereby providing the optimal vehicle traffic space for downstream trajectory planning. Attached Figure Description
[0021] Exemplary embodiments of the present invention can be more fully understood by referring to the following figures:
[0022] Figure 1 A flowchart of a method for searching the passage space of an unmanned vehicle according to a preferred embodiment of the present invention;
[0023] Figure 2 This is a schematic diagram illustrating the road boundary confirmation of an unmanned vehicle under different driving scenarios according to a preferred embodiment of the present invention.
[0024] Figure 3 This is an example diagram of the second and third pre-selected segmentation points according to a preferred embodiment of the present invention;
[0025] Figure 4 This is an example diagram of the fourth pre-selected segmentation point according to a preferred embodiment of the present invention;
[0026] Figure 5 This is a schematic diagram representing the correspondence between the type information of the second pre-selected segmentation point and the parts to be deleted in its corresponding front and rear edge information, according to a preferred embodiment of the present invention.
[0027] Figure 6 This is a schematic diagram illustrating the generation and updating of the interest edge list according to a preferred embodiment of the present invention;
[0028] Figure 7 This is a schematic diagram illustrating the generation of the upper boundary dividing line and the lower boundary dividing line according to a preferred embodiment of the present invention.
[0029] Figure 8 This is a schematic diagram illustrating the generation of topology nodes according to a preferred embodiment of the present invention;
[0030] Figure 9 This is a schematic diagram of a system for searching the passage space of an unmanned vehicle according to a preferred embodiment of the present invention;
[0031] Figure 10 This is a schematic diagram of the structure of an electronic device according to a preferred embodiment of the present invention. Detailed Implementation
[0032] Exemplary embodiments of the invention will now be described with reference to the accompanying drawings. However, the invention may be embodied in many different forms and is not limited to the embodiments described herein. These embodiments are provided to fully and completely disclose the invention and to fully convey its scope to those skilled in the art. The terminology used in the exemplary embodiments illustrated in the drawings is not intended to limit the invention. In the drawings, the same units / elements are referred to by the same reference numerals.
[0033] Unless otherwise stated, the terms used herein (including technical terms) have their common meaning as understood by one of ordinary skill in the art. Furthermore, it is understood that terms defined in commonly used dictionaries should be understood to have a meaning consistent with the context of their relevant field, and not to be interpreted as having an idealized or overly formal meaning.
[0034] Exemplary methods
[0035] Figure 1 This is a flowchart of a method for searching the passage space of an unmanned vehicle according to a preferred embodiment of the present invention. Figure 1 As shown, the method for searching the passage space of unmanned vehicles according to this preferred embodiment begins from step 101.
[0036] In step 101, based on the current speed of the autonomous vehicle, the minimum scanning distance and scanning time are customized, and the running speed of the obstacles blocking the road in front of the autonomous vehicle is used to generate a list of obstacles blocking the road and determine the road boundary information in front of the autonomous vehicle.
[0037] Preferably, the step of generating a list of obstructions based on the current speed of the autonomous vehicle, customizing the minimum scanning distance and scanning time, and the running speed of the obstructions in front of the autonomous vehicle, and determining the road boundary information in front of the autonomous vehicle includes:
[0038] Based on the current speed of the autonomous vehicle, the minimum scanning distance and scanning time are customized to determine the scanning range for obstructions in front of the autonomous vehicle, including:
[0039] Based on the autonomous vehicle's current speed v and the custom scan time t y Calculate the current scan distance d y The calculation formula is as follows:
[0040] d y =v*t y
[0041] Based on the current scanning distance d y and custom minimum scan distance d min Determine the actual scanning distance d f Its expression is:
[0042] d f =max{d y d min}
[0043] In the Frenet coordinate system, the vertical axis starts from the current position of the autonomous vehicle and extends by the actual scanning distance d. f For the endpoint, the distance from the starting point to the endpoint is taken as the longitudinal length. In the horizontal direction, the longitudinal length is discretized, and for each discretized sampling point, the left and right boundaries of the lane are traversed, and the minimum distance from the left and right boundaries is taken as the horizontal width.
[0044] The scanning range of obstructions in front of the vehicle and the road boundary information in the Frenet coordinate system are determined based on the longitudinal length and the lateral width.
[0045] A list of obstructions is generated by numbering the obstructions within the scanning range whose operating speed is not greater than a user-defined speed threshold and obtaining the coordinate information of a discrete point sequence representing their position in the Frenet coordinate system.
[0046] In this preferred embodiment, in the Frenet coordinate system, starting from the current position of the unmanned vehicle and ending at the longitudinal pre-aiming position, the system acquires the blocking obstacles within this scanning range whose lateral position, longitudinal position, and speed all meet the requirements. Here, the speed requirement is that the blocking obstacles are static or slow-moving, and the longitudinal position requirement is determined based on the boundaries on both sides of the current scene. Figure 2 This is a schematic diagram illustrating road boundary confirmation for an unmanned vehicle under different driving scenarios according to a preferred embodiment of the present invention. Figure 2 As shown, starting from the current position of the autonomous vehicle, when it is in Figure 2When navigating around obstacles (bypassing from the left side of the obstacle) as shown below, a comparison with the obstacle-free cruising state above clearly shows that the left side of the road boundary, marked in black, expands. Furthermore, for larger obstructions, to ensure the safety of the autonomous vehicle, buffer distances can be set on all four sides to appropriately widen the obstruction, thus sacrificing a small amount of space for greater safety. The buffer distance can be set as a fixed value on each side, or it can be set as an overall buffer distance for both length and width, determined by the angle between the obstruction and a reference line parallel to the road boundary; no restriction is placed here.
[0047] In step 102, an N-level topology node of the proposed passage space is determined based on the information of each blockage obstacle in the blockage obstacle list and the road boundary information. The topology node represents the space in the proposed passage space that is intended for autonomous vehicle passage between blockage obstacles or between blockage obstacles and the road boundary.
[0048] Preferably, determining the N-level topological nodes of the proposed passage space based on the information of each obstacle in the list of obstacles and the road boundary information includes:
[0049] Based on the information of each obstacle in the list of obstacles and the road boundary information, an initial pre-selected segmentation point is determined, and an initial pre-selected segmentation point list is generated. The attribute information of each initial pre-selected segmentation point includes position coordinate information, front and back edge information, type information, segmentation line generation direction information, and obstacle information. The position coordinate information includes abscissa and ordinate, and the front and back edge information includes front edge information and back edge information. The front edge and back edge are determined by rotating counterclockwise around the pre-selected segmentation point.
[0050] Based on the coordinate information, the initial pre-selected segmentation points in the initial pre-selected segmentation point list are divided into N+1 groups of initial pre-selected segmentation points according to the ordinate from near to far. The ordinate of each group of initial pre-selected segmentation points is the same. The "from near to far" refers to the distance from the current position of the unmanned vehicle to the front of the unmanned vehicle.
[0051] For each group of initial pre-selected split points, sort them from left to right according to the horizontal coordinate, filter out duplicate pre-selected split points, generate the final pre-selected split points for the corresponding group, and generate a final pre-selected split point list based on N+1 groups of final pre-selected split points.
[0052] Based on the location coordinate information, road boundary information, and information of each blockage obstacle in the blockage obstacle list, the final pre-selected segmentation points in the final pre-selected segmentation point list that do not meet the custom segmentation point filtering rules are taken as important key points.
[0053] An N+1 level cyclic key point list is generated based on the N+1 groups of final pre-selected segmentation points in the final pre-selected segmentation point list, and an update attention edge list for the corresponding level is generated based on the type information and front and back edge information of the final pre-selected segmentation points in each level cyclic key point list.
[0054] For the list of key points in the nth level loop, direction information and position coordinate information are generated based on the dividing line of each important key point, as well as road boundary information and the list of attention edges in the nth level to determine the upper boundary dividing line and the lower boundary dividing line of the nth level. The upper boundary list and the lower boundary list of the nth level are generated according to the upper boundary dividing line and the lower boundary dividing line. The upper boundary dividing line is a line segment that represents the upper boundary of the topological node, and the lower boundary dividing line is a line segment that represents the lower boundary of the topological node, 1≤n≤N+1.
[0055] For each upper boundary dividing line in the j-th level upper boundary list, according to the lower boundary dividing lines in the (j-1)-th level lower boundary list that satisfy the topology node generation rules, generate the corresponding (j-1)-th level topology nodes. Here, 2≤j≤N+1. When j=2, the (j-1)-th level lower boundary list is the level 1 lower boundary list. When 2<j≤N+1, the (j-1)-th level lower boundary list is the set of the (j-1)-th level lower boundary list and the (j-2)-th level lower boundary list after filtering out the lower boundary dividing lines marked as adapted. The lower boundary dividing lines marked as adapted satisfy the custom topology node generation rules. The (j-1)-th level topology nodes of the proposed passage space are the set of (j-1)-th level topology nodes generated corresponding to all upper boundary dividing lines in the j-th level upper boundary list.
[0056] In this preferred embodiment, the step of generating the topological nodes of the proposed passage space for the unmanned vehicle is specifically broken down into the following steps: generating an initial pre-selected segmentation point list; filtering the initial pre-selected segmentation point list to generate a final pre-selected segmentation point list; determining the important key points in the final pre-selected segmentation point list; generating a cyclic key point list and a list of concerned edges based on the final pre-selected segmentation point list; generating an upper boundary list and a lower boundary list composed of upper boundary segmentation lines and lower boundary segmentation lines, respectively; and generating topological nodes based on the segmentation lines.
[0057] Preferably, the step of determining the pre-selected segmentation point based on the information of each blockage obstacle in the blockage obstacle list and the road boundary information, and generating an initial pre-selected segmentation point list, includes:
[0058] The start and end points of the scanning range are used as the first pre-selected segmentation points. The front and back edge information, type information and obstacle information of the attribute information of the first pre-selected segmentation points are default values, and the segmentation line generation direction information is generated towards both sides of the road.
[0059] The four vertices of each blockage obstacle in the blockage obstacle list are used as the second pre-selected segmentation points. The generation direction information of the segmentation line in the attribute information of the second pre-selected segmentation point is determined according to the assignment of the type information. The generation direction information of the segmentation line is at least one of generating to both sides of the road, generating to the left side of the road, and generating to the right side of the road. The assignment of the type information in the attribute information of the second pre-selected segmentation point is determined according to whether the rectangle has a side parallel to the road boundary when the blockage obstacle is regarded as a rectangle.
[0060] The intersection of the front and back edges of the four vertices of each obstacle in the list of obstacles with the left and right boundaries of the road, and the intersection point where a dividing line is generated into the road boundary, is taken as the third pre-selected dividing point. The front and back edge information and type information in the attribute information of the third pre-selected dividing point are default values. The dividing line generation direction information of the third pre-selected dividing point intersecting with the left boundary of the road is generated to the right of the road, and the dividing line generation direction information of the third pre-selected dividing point intersecting with the right boundary of the road is generated to the left of the road.
[0061] When the absolute value of the difference between the x-coordinates of any two adjacent road boundary sampling points is greater than a custom threshold, the road boundary sampling point that makes the autonomous vehicle's passage width smaller will be used as the fourth pre-selected segmentation point. The front and rear edge information, type information and the information of the obstacle to which the fourth pre-selected segmentation point belongs are default values. The segmentation line generation direction information of the fourth pre-selected segmentation point located on the left side of the road is generated towards the right side of the road, and the segmentation line generation direction information of the fourth pre-selected segmentation point located on the right side of the road is generated towards the left side of the road.
[0062] The set of the first pre-selected segmentation point, the second pre-selected segmentation point, the third pre-selected segmentation point, and the fourth pre-selected segmentation point is used as the initial pre-selected segmentation point list.
[0063] In this preferred embodiment, the default values for front and back edge information, type information, and obstacle information are set to NULL, indicating that the corresponding attributes do not exist. There are three types of dividing line generation direction information: generating to the left of the road, generating to the right of the road, and generating to both sides of the road. The corresponding values can be left, right, and both, respectively.
[0064] Figure 3 This is an example diagram of the second and third pre-selected segmentation points according to a preferred embodiment of the present invention. Figure 3As shown, when the obstruction is considered as a rectangle, the location of the obstruction can be either A or B, depending on whether the rectangle has a side parallel to the road boundary. When location A exists, its type information is assigned values of UL, UR, DL, and DR, respectively. When location B exists, its type information is assigned values of U, W, L, and R, respectively. Since the front and rear edges are determined by rotating counter-clockwise around the pre-selected dividing point, when the second pre-selected dividing point of obstruction B is assigned the value L, its front endpoints are assigned values of U and L, and its rear endpoints are assigned values of L and W. The principle for determining the front and rear edges of other second pre-selected dividing points is similar and will not be repeated here. Figure 2 It can be seen that the characteristics of the assigned values U, W, L, and R of the second pre-selected segmentation point type information, as well as UL, UR, DL, and DR in the coordinate system are as follows:
[0065] U: The y-coordinates of the other endpoints of both the front and rear sides are less than the y-coordinate of the U-side itself.
[0066] W: The y-coordinates of the other endpoints of both the front and rear sides are greater than the y-coordinate of the W side itself.
[0067] L: The y-coordinate of the rear endpoint is less than its own y-coordinate, and the y-coordinate of the front endpoint is greater than its own y-coordinate.
[0068] R: The y-coordinate of the first endpoint is less than its own y-coordinate, and the y-coordinate of the second endpoint is greater than its own y-coordinate.
[0069] UL: The ordinate of the first endpoint is equal to the ordinate of the whole, and the ordinate of the second endpoint is less than the ordinate of the whole.
[0070] UR: The y-coordinate of the latter endpoint is equal to its own y-coordinate, and the y-coordinate of the former endpoint is less than its own y-coordinate.
[0071] DL: The y-coordinate of the later endpoint is equal to its own y-coordinate, and the y-coordinate of the earlier endpoint is greater than its own y-coordinate.
[0072] DR: The y-coordinate of the first endpoint is equal to its own y-coordinate, and the y-coordinate of the second endpoint is greater than its own y-coordinate.
[0073] Since the type information of the second pre-selected segmentation points of obstacles C and D is assigned the same as that of obstacle B, therefore... Figure 3 Not shown in the text. Further, according to... Figure 3 It can be seen that, in order to segment the internal space that the autonomous vehicle intends to pass through, determined based on road boundary information, the segmentation line of the second pre-selected segmentation point can be one of three cases: X1, X2, and X3. The corresponding segmentation line generation direction information is generated to the left of the road, to the right of the road, and to both sides of the road, respectively. Furthermore, in Figure 3In the process, the internal space that the autonomous vehicle intends to traverse includes not only the vertices of obstructing obstacles, but also the intersections of these obstacles with the road's side boundaries. Figure 3 It can be seen that the above intersection points can only generate dividing lines with the intended passage space when the front and back edges of the points of the obstruction obstacles located on the right side of the road intersect the right side boundary of the road, and when the front and back edges of the points of the obstruction obstacles located on the left side of the road intersect the left side boundary of the road, namely D1, D2, and D3. Intersection points similar to D1, D2, and D3 are designated as the third pre-selected dividing points. The dividing line generated by the third pre-selected dividing point intersecting the left side boundary of the road is directed towards the right side of the road, while the dividing line generated by the third pre-selected dividing point intersecting the right side boundary of the road is directed towards the left side of the road. The third pre-selected dividing point is also a special point other than the vertices of the obstruction obstacles; therefore, its type information and front and back edge information are also assigned NULL.
[0074] Figure 4 This is an example diagram of the fourth pre-selected segmentation point according to a preferred embodiment of the present invention. Figure 4 As shown, after the autonomous vehicle determines the internal space it intends to pass through based on road boundary information, when traversing the boundary values on both sides of the road according to the longitudinal coordinate, there may be situations where the abscissa of the boundary value of the road boundary sampling point on both sides of the road changes significantly, for example... Figure 4 For points D4 and D5, and D6 and D7, when the absolute value of the difference in their x-coordinates exceeds a custom threshold, it is considered that the passage width of the internal space through which the autonomous vehicle intends to pass has changed significantly. This change requires close monitoring, and these road boundary sampling points are recorded as special points, treated as the fourth pre-selected segmentation points. Specifically, to ensure the safe passage of the autonomous vehicle, the scheme design should aim to achieve passage with the minimum possible width. Therefore, road boundary sampling points that minimize the vehicle's passage width are selected. Specifically, among D4 and D5, D5 is selected as the fourth pre-selected segmentation point, and among D6 and D7, D6 is selected as the fourth pre-selected segmentation point. Since the fourth pre-selected segmentation point is also a special point, its type information, front and rear edge information, and obstacle information are set to NULL. The segmentation line generation direction information is determined based on whether the sampling point is located on the left or right edge of the road. When it is a sampling point on the left edge of the road, the segmentation line generation direction information is towards the right side of the road; otherwise, it is towards the left side of the road.
[0075] Preferably, based on the location coordinate information, road boundary information, and information of each blockage obstacle in the blockage obstacle list, the final pre-selected segmentation points in the final pre-selected segmentation point list that do not meet the custom segmentation point filtering rules are taken as important key points, wherein the segmentation point filtering rules include:
[0076] The location coordinate information is filtered out from the first and fourth pre-selected segmentation points and other final pre-selected segmentation points outside the range determined by the road boundary information;
[0077] The final pre-selected segmentation points are those whose position coordinate information is within the range determined by the coordinate information of the discrete point sequence that characterizes the position of the obstruction in the Frenet coordinate system.
[0078] In this preferred embodiment, filtering out the final pre-selected segmentation points whose position coordinate information is within the range determined by the coordinate information of the discrete point sequence representing the position of the blocking obstacle in the Frenet coordinate system means that when a final pre-selected segmentation point is located inside other obstacles, it is impossible to generate a segmentation line. Therefore, when generating the upper boundary segmentation line and the lower boundary segmentation line, such final pre-selected segmentation points do not need to be considered. Thus, when determining the segmentation points that can generate segmentation lines, such segmentation points should be filtered out.
[0079] Preferably, the step of generating an N+1 level cyclic keypoint list based on the N+1 groups of final pre-selected segmentation points in the final pre-selected segmentation point list, and generating a corresponding level update attention edge list based on the type information and preceding and following edge information of the final pre-selected segmentation points in each level cyclic keypoint list, includes:
[0080] Generate a list of loop key points for each level based on the final pre-selected segmentation points for each group;
[0081] The initial attention edge list for level n is generated based on the front and back edge information of the second pre-selected segmentation point in the key point list of level n and the updated attention edge list of level n-1. When n=1, the updated attention edge list of level n-1 is an empty set.
[0082] Remove the attention edges from the initial attention edge list of level n whose maximum ordinate is less than the ordinate of the final pre-selected segmentation point in the cyclic key point list of level n, and delete the attention edges that satisfy the custom type information-attention edge deletion list, and then generate the updated attention edge list of level n. The type information-attention edge deletion list is a list that represents the correspondence between the type information of the second pre-selected segmentation point and the parts to be deleted in its corresponding front and rear edge information.
[0083] Figure 5 This is a schematic diagram illustrating the correspondence between the type information of the second pre-selected segmentation point and the parts to be deleted in its corresponding preceding and following edge information, according to a preferred embodiment of the present invention. Figure 5As shown, there are eight possible values for the type information of the second pre-selected segmentation point: W, U, L, R, UL, UR, DL, and DR. Examples of values W and L are given below. Determining the front and back edges in a counter-clockwise direction yields the front and back edges when the second segmentation point's type information is assigned W and L, as shown in the figure. For the final pre-selected segmentation point with type information assigned W, both the front and back edges need to be considered when updating the focus edges, both represented by solid black lines. In this case, there is no part of the focus edge that needs to be deleted. For the final pre-selected segmentation point with type information assigned L, only the front edge needs to be considered when updating the focus edges, represented by solid black lines, while the back edge needs to be deleted, represented by dashed black lines. The principle for determining and updating focus edges for other types of second pre-selected segmentation points is similar and will not be elaborated further. After determining the focus edges that need to be updated and the parts that need to be deleted in the front and back edges of the second pre-selected segmentation point for each type of information, a corresponding table can be created to generate the corresponding type information - focus edge deletion list.
[0084] Figure 6 This is a schematic diagram illustrating the generation and updating of the interest edge list according to a preferred embodiment of the present invention. Figure 6 As shown, the list of cyclic keypoints from level (n-1) to level (n+4) is extracted, and their corresponding cyclic keypoint sets are {DL1,DR1,DL2}, {UL1,UR1}, {W1}, {L1,UL2}, {R1}, and {U1}, respectively. Assuming the updated attention edge list for level (n-1) corresponding to the (n-1)th cyclic keypoint list is {E1, E3, E5, E7}, then according to the defined second pre-selected split point type and the preceding and following edges, the preceding and following edges of UL1 and UR1 in the level n cyclic keypoint list are E4 and E1, and E3 and E4, respectively. Therefore, the initial attention edge list for level n is {E4, E1, E3, E5, E7}. Furthermore, according to the type information - attention edge deletion list, E4 needs to be deleted from both the preceding and following edges of UL1 and UR1. Therefore, the updated attention edge list for level n is the same as the updated attention edge list for level (n-1), both being {E1, E3, E5, E7}. For the (n+1)th level loop keypoint list, the edges corresponding to W1 are E10 and E11. Therefore, the initial attention edge list for the (n+1)th level is {E1, E3, E5, E7, E10, E11}. However, since the maximum ordinate of E1 and E3 is less than the ordinate of the final pre-selected split point W1 in the (n+1)th level loop keypoint list, they should be deleted. Since W1 does not have any edges to be deleted in the type information - attention edge deletion list, the updated attention edge list for the (n+1)th level should be {E5, E7, E10, E11}. Similarly, the updated attention edge list for the (n+2)th level can be determined as {E5, E7, E9, E11}, the updated attention edge list for the (n+3)th level as {E9, E12}, and the updated attention edge list for the (n+4)th level is also {E9, E12}.
[0085] Preferably, for the nth-level cyclic key point list, generating direction information and position coordinate information based on the dividing line of each important key point, and determining the upper and lower boundary dividing lines of the nth level based on road boundary information and the nth-level attention edge list includes:
[0086] For each important key point in the nth level loop key point list, road boundary sampling points are obtained in the direction of the dividing line generation according to the dividing line generation direction information. When the dividing line generation direction information is generated towards both sides of the road, the road boundary sampling points include the left boundary sampling point and the right boundary sampling point.
[0087] Connect the key points and their corresponding road boundary sampling points to generate a line segment. When the line segment does not intersect with any other edge in the nth-level updated attention list except for the edge containing the key point, the road boundary sampling point corresponding to the key point is determined as an anchor point. When the line segment intersects with any other edge in the nth-level updated attention list except for the edge containing the key point, the intersection point closest to the key point is taken as the anchor point. The intersection point closest to the key point is not on any obstruction to which the key point belongs. When generating the upper boundary dividing line, the minimum ordinate of the edge containing the intersection point closest to the key point is less than the ordinate of the key point. When generating the lower boundary dividing line, the maximum ordinate of the edge containing the intersection point closest to the key point is greater than the ordinate of the key point. When there are two anchor points, the anchor point closer to the left edge sampling point is the left anchor point, and the anchor point closer to the right edge sampling point is the right anchor point. Specifically:
[0088] When the generation direction information of the dividing line of the important key point is to generate to the right of the road, the generated dividing line has coordinate position information of {key point, anchor point}.
[0089] When the direction information for generating the dividing line of the important key point is to generate it to the left side of the road, if the position coordinate information of an already generated dividing line contains the important key point, then no dividing line is generated for the important key point; otherwise, a dividing line with coordinate position information of {anchor point, key point} is generated.
[0090] When the direction information for generating the dividing line of the important key point is to generate it towards both sides of the road, if the position coordinate information of an already generated dividing line contains the important key point, then no dividing line is generated for the important key point; otherwise, a dividing line with coordinate position information of {left anchor point, right anchor point} is generated.
[0091] Figure 7 This is a schematic diagram illustrating the generation of the upper and lower boundary dividing lines according to a preferred embodiment of the present invention. Figure 7As shown, for the important key points in the cyclic key point list from level (n-1) to level (n+4), based on the information of their dividing line generation direction, the road boundary sampling points in the dividing line generation direction are M1, M2, M4, M6, M8, M9 and M10, while the important key points UR2 and DR2 coincide with the road boundary sampling points. Furthermore, for DL1 in the (n-1)th level loop keypoint list, when the lower boundary dividing line is generated, it is connected to the corresponding road boundary sampling point M1 to generate a line segment {DL1, M1}. This line segment intersects only with the interest edge E1 where DL1 is located in the (n-1)th level update interest list {E1, E3, E5, E7}, and does not intersect with the other three interest edges. Therefore, M1 can be determined as the anchor point. Since the dividing line of DL1 is generated in the direction of generating to the left of the road, the coordinate position information of the generated dividing line is in the format of {anchor point, keypoint}, i.e., {M1, DL1}. Correspondingly, for DR1, when the lower boundary dividing line is generated, the dividing line is generated in the direction of generating to the right of the road. When it is connected to the road boundary sampling point on the right side of the road to form a line segment, the closest intersection point is DL2. At this time, DL2 is the anchor point, and the coordinate position information of the generated dividing line is in the format of {keypoint, anchor point}, i.e., {DR2, DL2}. Similarly, for U1 in the (n+4)th level loop key point list, since its dividing line generation direction can be towards both sides of the road, or towards the left and right sides of the road respectively, specifically, according to the meaning of the upper and lower boundary dividing lines, when generating the upper boundary dividing line, since the topological node where point U1 is located must be divided into two by its front and rear edges E9 and E12, the dividing lines at point U1 can only be generated towards the left and right sides of the road respectively, represented as {M9,U1} and {U1,M10}. When generating the lower boundary dividing line, since the autonomous vehicle has already passed through the two topological nodes of point U1 divided by its front and rear edges E9 and E12, the dividing lines at point U1 can be generated towards both sides of the road, represented as {M9,M10}. Similarly, for point W1 in the (n+1)th level loop key point list, when generating the upper boundary dividing line, since the autonomous vehicle has not yet entered the two topological nodes divided by its front and rear edges E10 and E11, the direction of its dividing line generation is towards both sides of the road, and the generated upper boundary dividing line is represented as {M4, M5}. When generating the lower boundary dividing line, since the autonomous vehicle has already entered the two topological nodes divided by its front and rear edges E10 and E11, the direction of its dividing line generation can only be towards the left side of the road and towards the right side of the road, respectively, and the generated dividing lines are represented as {M4, W1} and {W1, M5}, respectively.Furthermore, for point DR1 in the list of key points in the (n-1)th level loop, when the lower boundary dividing line is generated, according to the above analysis, the dividing line is {DR1, DL2}. As for DL2, since its dividing line generation direction is to the left of the road and it intersects with E3 in the list of attention edges at DR1, DR1 is the closest intersection point to it. The dividing line corresponding to point DR2 is also {DR1, DL2}, which is equivalent to the dividing lines of DR1 and DL2 being repeated. Since DR1 is on the left side of the coordinate system, only DR1 is generated, and no dividing line is generated for DL2.
[0092] Based on the above analysis, combined with Figure 7 As shown in Table 1, the list of upper and lower boundary dividing lines corresponding to the list of key points in the loop from level (n-1) to level (n+4) is as follows.
[0093] Table 1
[0094] Loop Key Point List upper bound list Lower Boundary List Level n+4 {M9,U1},{U1,M10} {M9,M10} Level n+3 {R1, M8} {R1, M8} Level n+2 {M6,L},{M7,UL2} {M6,L1},{M7,UR2} Level n+1 {M4,M5} {M4,W1},{W1,M5} Level n {M2,UL1},{UR1,M3} {M2,UR1},{UL1,M3} Level n-1 {M1,DR1},{DL1,DL2},{DR1,DR2} {M1,DL1},{DR1,DL2}
[0095] Preferably, for each upper boundary dividing line in the j-th level upper boundary list, a corresponding j-1 level topology node is generated based on the lower boundary dividing line in the (j-1)-th level lower boundary list that satisfies the topology node generation rule. The topology node generation rule includes:
[0096] For each upper boundary dividing line in the j-th level upper boundary list, take the midpoint of the upper boundary dividing line and the midpoint of each lower boundary dividing line in the (j-1)-th level lower boundary list to be adapted to form a line segment.
[0097] When the line segment does not intersect with any of the blocking obstacles, a polygon containing information on the upper and lower boundary dividing lines, as well as information on obstacles or road boundaries on both sides, is generated as a topology node, and the lower boundary dividing line corresponding to the line segment is marked as adapted.
[0098] Figure 8 This is a schematic diagram illustrating the generation of topology nodes according to a preferred embodiment of the present invention. Figure 8 As shown, when j=n, assuming the (n-1)th level lower boundary list in Table 1 is the (n-1)th level lower boundary list to be adapted, then according to the topology node generation rules, for the upper boundary dividing lines {M2,UL1} and {UR1,M3} in the nth level upper boundary list, when the midpoints of these lines are connected to the midpoints of the lower boundary dividing lines {M1,DL1} and {DR1,DL2} in the (n-1)th level lower boundary list to form line segments, only the line segments formed by connecting the midpoints of {M2,UL1} and {M1,DL1}, and {UR1,M3} and {DR1,DL2} do not intersect with the blocking obstacles. Therefore, two topology nodes are generated, and they are marked as No. n-1,1 and Non-1,2 Furthermore, the lower boundary dividing lines {M1,DL1} and {DR1,DL2} are both marked as adapted. Following this reasoning, the nth-level topology node No can be generated sequentially. n,1 and No n,2 The (n+1)th level topology node No n+1,1 and No n+1,2 However, when generating topology nodes based on all upper boundary dividing lines in the upper boundary list of level n+3, i.e., {R1, M8}, only the lower boundary dividing line {M7, UR2} in the lower boundary list of level n+2 is suitable, thus generating topology node No. n+2,1 The unfitted lower boundary separator {M6, L1} needs to be included in the list of lower boundaries to be adapted at level n+3, and combined with the upper boundary separator {M9, U1} in the list of upper boundaries to be adapted at level n+4 to generate topology node No. n+3,1 The upper boundary dividing line {U1,M10} generates a topology node No by connecting with another lower boundary dividing line {R1,M8} in the (n+3)th level lower boundary list to be adapted. n+3,2 .
[0099] In step 103, M alternative routes for the autonomous vehicle to travel are generated based on the connection relationships between the N-level topological nodes in the proposed travel space, as well as the minimum passage width between the topological nodes with connection relationships.
[0100] Preferably, the step of generating M alternative paths for the autonomous vehicle to travel based on the connection relationships between N-level topological nodes in the proposed travel space, and the minimum passage width between connected topological nodes, includes:
[0101] The i-th level and i+1-th level topology nodes of the proposed passage space are traversed according to a custom topology node connection rule, wherein the topology node connection rule includes:
[0102] Based on the upper boundary dividing line information of the i-th level topological node and the lower boundary dividing line information of the (i+1)-N-th level topological nodes, when the upper boundary dividing line of one of the topological nodes in the i-th level topological node intersects with the lower boundary dividing line of one of the topological nodes in the (i+1)-N-th level topological node, it is determined that there is a connection relationship between the two topological nodes. The minimum passage width of vehicles between the two topological nodes with a connection relationship is the length of the shortest line segment between any two points on the side of the polygon formed by the two topological nodes in the direction perpendicular to the boundaries of the road on both sides.
[0103] Connect the topological nodes with connections in the N-level topological nodes of the proposed travel space in sequence to generate M alternative paths for the autonomous vehicle to travel.
[0104] In this preferred embodiment, such as Figure 8 The topological nodes from level (n-1) to level (n+3) shown are No. n-1,1 The upper boundary dividing line and No n,1 The lower boundary dividing lines intersect, No. n-1,2 The upper boundary dividing line and No n,2 The lower boundary dividing lines intersect, No. n,1 The upper boundary dividing line and No n+1,1 The lower boundary dividing lines intersect, No. n,2 The upper boundary dividing line and No n+1,2 The lower boundary dividing lines intersect, No. n+1,1 The upper boundary dividing line and No n+3,1 The lower boundary dividing lines intersect, No. n+1,2 The upper boundary dividing line and No n+2,1 The lower boundary dividing lines intersect, while No n+2,1 The upper boundary dividing line and No n+3,2 The lower boundary dividing lines intersect, and according to the topological node connection rules, in Figure 8 This can generate two alternative paths for the autonomous vehicle to travel, where the topology nodes of one path are No. n-1,1 No n+1,1 and No n+3,1 The topology nodes of the other path are No. n-1,2 No n,2 Node n+1,2 No n+2,1 and No n+3,2 Furthermore, based on the definition of the minimum passage width for vehicles between two connected topological nodes, from... Figure 8 The table clearly shows the minimum width for vehicle passage between connected topological nodes, such as No. n+1,1 and No n+3,1 All are trapezoids, and the length of the shortest line segment perpendicular to the right boundary of the road is clearly {M6, L1}, i.e., No. n+1,1 and No n+3,1 The minimum width for vehicles to pass between nodes is {M6, L1}. The minimum width for vehicles to pass between other connected topological nodes follows the same principle, and will not be elaborated further here.
[0105] In step 104, the first cost of the N-level topological nodes in the proposed passage space and the second cost between the topological nodes with connection relationships are calculated according to the custom cost function.
[0106] Preferably, the step of calculating the first cost of the N-level topological nodes in the proposed passage space and the second cost between the topological nodes with connectivity according to a custom cost function includes:
[0107] The width cost, historical trajectory cost, wheel orientation cost, and deformation cost of the N-level topological nodes in the proposed passage space are calculated based on the custom node width cost function, node historical trajectory cost function, node wheel orientation cost function, and node deformation cost function in the SL coordinate system, respectively. The first cost includes the width cost, historical trajectory cost, wheel orientation cost, and deformation cost.
[0108] The lateral offset cost between connected topological nodes is calculated based on a custom lateral offset cost function, where the second cost refers to the lateral offset cost between topological nodes.
[0109] The first and second costs in this preferred embodiment can be set according to the needs of actual applications, and the present invention does not impose any limitations.
[0110] In step 105, based on the custom cost weight value, the first cost and the second cost of the topological node on each candidate path are used to calculate the cost of the M candidate paths.
[0111] Preferably, based on a custom cost weight value, the cost of the M candidate paths is calculated using the first cost and the second cost of the topological nodes on each candidate path, respectively, and the calculation formula is as follows:
[0112]
[0113] In the formula, 1≤m≤M, Let L be the cost of the m-th alternative path, and L be the total cost included in the first cost. cost l and These represent the l-th cost in the first cost and its corresponding weight value; K is the total number of costs included in the second cost. cost k and Let k be the kth cost in the second cost and its corresponding weight value.
[0114] In this preferred embodiment, considering the different importance of different costs in determining the proposed passage space, different weight values can be set for different costs to improve the accuracy of selecting the optimal proposed passage space.
[0115] In step 106, based on the custom space filtering rules, the final passage space of the unmanned vehicle is determined according to the custom minimum passage width of the unmanned vehicle, the cost of the M alternative paths, and the minimum passage width of the vehicle.
[0116] Preferably, the step of determining the final passage space of the autonomous vehicle based on a custom space filtering rule, according to a custom minimum passage width for the autonomous vehicle, the cost of the M alternative paths, and the minimum passage width of the vehicle, includes:
[0117] Based on custom spatial filtering rules, the final passage path of the autonomous vehicle is determined according to the custom minimum passage width of the autonomous vehicle, the cost of M alternative paths, and the minimum passage width of the vehicle. The spatial filtering rules include:
[0118] Starting from the origin, the minimum passage width of the vehicle and the minimum passage width of the autonomous vehicle are compared in each candidate path. When the minimum passage width of the vehicle is less than the minimum passage width of the autonomous vehicle, the two topological nodes with a connection relationship corresponding to the minimum passage width of the vehicle are pruned.
[0119] When there is at least one alternative path that has not been pruned, the alternative path with the lowest cost is selected as the final travel path for the autonomous vehicle.
[0120] When there are no unpruned alternative paths, the longest part of the unpruned topology nodes in the M alternative paths is selected and spliced together to generate the final passage path for the unmanned vehicle, in the order from the start point to the end point.
[0121] The system traverses the longitudinal space of the final travel path of the autonomous vehicle, detects the topological node to which the scanned position belongs according to a custom distance step size, and determines the boundary information of the final travel space of the autonomous vehicle based on the information of the blocking obstacles on both sides of the topological node and the road boundary information.
[0122] In this preferred embodiment, such as Figure 8 The two alternative routes shown are: assuming the alternative route closest to the left boundary of the road is No. n+1,1 and No n+3,1 If the minimum width for vehicle passage {M6, L1} is less than the minimum width for autonomous vehicle passage as defined by the user, then the topology node No for that alternative path needs to be checked. n+1,1 and No n+3,1 The path selection process involves cropping. If the alternative path near the right edge of the road is not cropped, then the autonomous vehicle will ultimately travel along that alternative path.
[0123] The method for searching the passage space of unmanned vehicles described in this preferred embodiment, through obstacle screening, topology node generation, node cost calculation, optimal passage path search, and optimal passage space acquisition, can generate a topology node connection graph that conforms to the passage environment under complex road conditions without consuming too much computing power. The highly adaptable search algorithm minimizes the loss of passage space, thereby providing the optimal vehicle passage space for downstream trajectory planning.
[0124] Exemplary System
[0125] Figure 9 This is a schematic diagram of a system for searching the passage space of an unmanned vehicle according to a preferred embodiment of the present invention. Figure 9 As shown, the system 900 for searching the passage space of an unmanned vehicle according to this preferred embodiment includes:
[0126] The preprocessing module 901 is used to generate a list of obstacles based on the current speed of the unmanned vehicle, the minimum scanning distance and scanning time, and the running speed of the obstacles in front of the unmanned vehicle, and to determine the road boundary information in front of the unmanned vehicle.
[0127] The topology node module 902 is used to determine the N-level topology nodes of the proposed passage space based on the information of each blockage obstacle in the blockage obstacle list and the road boundary information, wherein the topology node represents the space in the proposed passage space between blockage obstacles or between blockage obstacles and the road boundary that is intended for the passage of unmanned vehicles.
[0128] The alternative path module 903 is used to generate M alternative paths for the unmanned vehicle to travel based on the connection relationship between the N-level topological nodes of the proposed passage space, as well as the minimum passage width between the topological nodes with connection relationship.
[0129] The first calculation module 904 is used to calculate the first cost of the N-level topological nodes of the proposed passage space and the second cost between the topological nodes with connection relationships according to a custom cost function.
[0130] The second calculation module 905 is used to calculate the cost of M candidate paths based on the first cost and the second cost of the topological node on each candidate path, according to the custom cost weight value.
[0131] The result output module 906 is used to determine the final passage space of the unmanned vehicle based on the custom space filtering rules, the custom minimum passage width of the unmanned vehicle, the cost of M alternative paths and the minimum passage width of the vehicle.
[0132] Preferably, the preprocessing module 901 generates a list of obstructions based on the current speed of the unmanned vehicle, the customized minimum scanning distance and scanning time, and the running speed of the obstructions in front of the unmanned vehicle, and determines the road boundary information in front of the unmanned vehicle, including:
[0133] Based on the current speed of the autonomous vehicle, the minimum scanning distance and scanning time are customized to determine the scanning range for obstructions in front of the autonomous vehicle, including:
[0134] Based on the autonomous vehicle's current speed v and the custom scan time ty Calculate the current scan distance d y The calculation formula is as follows:
[0135] d y =v*t y
[0136] Based on the current scanning distance d y and custom minimum scan distance d min Determine the actual scanning distance d f Its expression is:
[0137] d f =max{d y d min}
[0138] In the Frenet coordinate system, the vertical axis starts from the current position of the autonomous vehicle and extends by the actual scanning distance d. f For the endpoint, the distance from the starting point to the endpoint is taken as the longitudinal length. In the horizontal direction, the longitudinal length is discretized, and for each discretized sampling point, the left and right boundaries of the lane are traversed, and the minimum distance from the left and right boundaries is taken as the horizontal width.
[0139] The scanning range of obstructions in front of the vehicle and the road boundary information in the Frenet coordinate system are determined based on the longitudinal length and the lateral width.
[0140] A list of obstructions is generated by numbering the obstructions within the scanning range whose operating speed is not greater than a user-defined speed threshold and obtaining the coordinate information of a discrete point sequence representing their position in the Frenet coordinate system.
[0141] Preferably, the topology node module 902 determines the N-level topology nodes of the proposed passage space based on the information of each obstruction in the list of obstructions and the road boundary information, including:
[0142] Based on the information of each obstacle in the list of obstacles and the road boundary information, an initial pre-selected segmentation point is determined, and an initial pre-selected segmentation point list is generated. The attribute information of each initial pre-selected segmentation point includes position coordinate information, front and back edge information, type information, segmentation line generation direction information, and obstacle information. The position coordinate information includes abscissa and ordinate, and the front and back edge information includes front edge information and back edge information. The front edge and back edge are determined by rotating counterclockwise around the pre-selected segmentation point.
[0143] Based on the coordinate information, the initial pre-selected segmentation points in the initial pre-selected segmentation point list are divided into N+1 groups of initial pre-selected segmentation points according to the ordinate from near to far. The ordinate of each group of initial pre-selected segmentation points is the same. The "from near to far" refers to the distance from the current position of the unmanned vehicle to the front of the unmanned vehicle.
[0144] For each group of initial pre-selected split points, sort them from left to right according to the horizontal coordinate, filter out duplicate pre-selected split points, generate the final pre-selected split points for the corresponding group, and generate a final pre-selected split point list based on N+1 groups of final pre-selected split points.
[0145] Based on the location coordinate information, road boundary information, and information of each blockage obstacle in the blockage obstacle list, the final pre-selected segmentation points in the final pre-selected segmentation point list that do not meet the custom segmentation point filtering rules are taken as important key points.
[0146] An N+1 level cyclic key point list is generated based on the N+1 groups of final pre-selected segmentation points in the final pre-selected segmentation point list, and an update attention edge list for the corresponding level is generated based on the type information and front and back edge information of the final pre-selected segmentation points in each level cyclic key point list.
[0147] For the list of key points in the nth level loop, direction information and position coordinate information are generated based on the dividing line of each important key point, as well as road boundary information and the list of attention edges in the nth level to determine the upper boundary dividing line and the lower boundary dividing line of the nth level. The upper boundary list and the lower boundary list of the nth level are generated according to the upper boundary dividing line and the lower boundary dividing line. The upper boundary dividing line is a line segment that represents the upper boundary of the topological node, and the lower boundary dividing line is a line segment that represents the lower boundary of the topological node, 1≤n≤N+1.
[0148] For each upper boundary dividing line in the j-th level upper boundary list, according to the lower boundary dividing lines in the (j-1)-th level lower boundary list that satisfy the topology node generation rules, generate the corresponding (j-1)-th level topology nodes. Here, 2≤j≤N+1. When j=2, the (j-1)-th level lower boundary list is the level 1 lower boundary list. When 2<j≤N+1, the (j-1)-th level lower boundary list is the set of the (j-1)-th lower boundary list and the (j-2)-th level lower boundary list after filtering out the lower boundary dividing lines marked as adapted. The lower boundary dividing lines marked as adapted satisfy the custom topology node generation rules. The (j-1)-th level topology nodes of the proposed passage space are the set of (j-1)-th level topology nodes generated corresponding to all upper boundary dividing lines in the j-th level upper boundary list.
[0149] Preferably, the topology node module 902 determines pre-selected split points based on the information of each blockage obstacle in the blockage obstacle list and the road boundary information, and generates an initial pre-selected split point list, including:
[0150] The start and end points of the scanning range are used as the first pre-selected segmentation points. The front and back edge information, type information and obstacle information of the attribute information of the first pre-selected segmentation points are default values, and the segmentation line generation direction information is generated towards both sides of the road.
[0151] The four vertices of each blockage obstacle in the blockage obstacle list are used as the second pre-selected segmentation points. The generation direction information of the segmentation line in the attribute information of the second pre-selected segmentation point is determined according to the assignment of the type information. The generation direction information of the segmentation line is at least one of generating to both sides of the road, generating to the left side of the road, and generating to the right side of the road. The assignment of the type information in the attribute information of the second pre-selected segmentation point is determined according to whether the rectangle has a side parallel to the road boundary when the blockage obstacle is regarded as a rectangle.
[0152] The intersection of the front and back edges of the four vertices of each obstacle in the list of obstacles with the left and right boundaries of the road, and the intersection point where a dividing line is generated into the road boundary, is taken as the third pre-selected dividing point. The front and back edge information and type information in the attribute information of the third pre-selected dividing point are default values. The dividing line generation direction information of the third pre-selected dividing point intersecting with the left boundary of the road is generated to the right of the road, and the dividing line generation direction information of the third pre-selected dividing point intersecting with the right boundary of the road is generated to the left of the road.
[0153] When the absolute value of the difference between the x-coordinates of any two adjacent road boundary sampling points is greater than a custom threshold, the road boundary sampling point that makes the autonomous vehicle's passage width smaller will be used as the fourth pre-selected segmentation point. The front and rear edge information, type information and the information of the obstacle to which the fourth pre-selected segmentation point belongs are default values. The segmentation line generation direction information of the fourth pre-selected segmentation point located on the left side of the road is generated towards the right side of the road, and the segmentation line generation direction information of the fourth pre-selected segmentation point located on the right side of the road is generated towards the left side of the road.
[0154] The set of the first pre-selected segmentation point, the second pre-selected segmentation point, the third pre-selected segmentation point, and the fourth pre-selected segmentation point is used as the initial pre-selected segmentation point list.
[0155] Preferably, the topology node module 902, based on the location coordinate information, road boundary information, and information of each blockage obstacle in the blockage obstacle list, identifies the final pre-selected split points in the final pre-selected split point list that do not meet the custom split point filtering rules as important key points. The split point filtering rules include:
[0156] Filter out the position coordinate information from other final pre-selected segmentation points outside the range determined by the first and fourth pre-selected segmentation points;
[0157] The final pre-selected segmentation points are those whose position coordinate information is within the range determined by the coordinate information of the discrete point sequence that characterizes the position of the obstruction in the Frenet coordinate system.
[0158] Preferably, the topology node module 902 generates an N+1 level cyclic key point list based on the N+1 groups of final pre-selected segmentation points in the final pre-selected segmentation point list, and generates a corresponding level update attention edge list based on the type information and preceding and following edge information of the final pre-selected segmentation points in each level cyclic key point list, including:
[0159] Generate a list of loop key points for each level based on the final pre-selected segmentation points for each group;
[0160] The initial attention edge list for level n is generated based on the front and back edge information of the second pre-selected segmentation point in the key point list of level n and the updated attention edge list of level n-1. When n=1, the updated attention edge list of level n-1 is an empty set.
[0161] Remove the attention edges from the initial attention edge list of level n whose maximum ordinate is less than the ordinate of the final pre-selected segmentation point in the cyclic key point list of level n, and delete the attention edges that satisfy the custom type information-attention edge deletion list, and then generate the updated attention edge list of level n. The type information-attention edge deletion list is a list that represents the correspondence between the type information of the second pre-selected segmentation point and the parts to be deleted in its corresponding front and rear edge information.
[0162] Preferably, for the nth-level cyclic key point list, the topology node module 902 generates direction information and position coordinate information based on the dividing line of each important key point, as well as road boundary information and the nth-level attention edge list, and determines the upper and lower boundary dividing lines of the nth level, including:
[0163] For each important key point in the nth level loop key point list, road boundary sampling points are obtained in the direction of the dividing line generation according to the dividing line generation direction information. When the dividing line generation direction information is generated towards both sides of the road, the road boundary sampling points include the left boundary sampling point and the right boundary sampling point.
[0164] Connect the key points and their corresponding road boundary sampling points to generate a line segment. When the line segment does not intersect with any other edge in the nth-level updated attention list except for the edge containing the key point, the road boundary sampling point corresponding to the key point is determined as an anchor point. When the line segment intersects with any other edge in the nth-level updated attention list except for the edge containing the key point, the intersection point closest to the key point is taken as the anchor point. The intersection point closest to the key point is not on any obstruction to which the key point belongs. When generating the upper boundary dividing line, the minimum ordinate of the edge containing the intersection point closest to the key point is less than the ordinate of the key point. When generating the lower boundary dividing line, the maximum ordinate of the edge containing the intersection point closest to the key point is greater than the ordinate of the key point. When there are two anchor points, the anchor point closer to the left edge sampling point is the left anchor point, and the anchor point closer to the right edge sampling point is the right anchor point. Specifically:
[0165] When the generation direction information of the dividing line of the important key point is to generate to the right of the road, the generated dividing line has coordinate position information of {key point, anchor point}.
[0166] When the direction information for generating the dividing line of the important key point is to generate it to the left side of the road, if the position coordinate information of an already generated dividing line contains the important key point, then no dividing line is generated for the important key point; otherwise, a dividing line with coordinate position information of {anchor point, key point} is generated.
[0167] When the direction information for generating the dividing line of the important key point is to generate it towards both sides of the road, if the position coordinate information of an already generated dividing line contains the important key point, then no dividing line is generated for the important key point; otherwise, a dividing line with coordinate position information of {left anchor point, right anchor point} is generated.
[0168] Preferably, for each upper boundary dividing line in the j-th level upper boundary list, the topology node module 902 generates a corresponding (j-1)-th level topology node based on the lower boundary dividing lines in the (j-1)-th level lower boundary list that satisfy the topology node generation rules. The topology node generation rules include:
[0169] For each upper boundary dividing line in the j-th level upper boundary list, take the midpoint of the upper boundary dividing line and the midpoint of each lower boundary dividing line in the (j-1)-th level lower boundary list to be adapted to form a line segment.
[0170] When the line segment does not intersect with any of the blocking obstacles, a polygon containing information on the upper and lower boundary dividing lines, as well as information on obstacles or road boundaries on both sides, is generated as a topology node, and the lower boundary dividing line corresponding to the line segment is marked as adapted.
[0171] Preferably, the alternative path module 903 generates M alternative paths for the autonomous vehicle to travel based on the connection relationships between N-level topological nodes in the proposed travel space, and the minimum passage width between connected topological nodes, including:
[0172] The i-th level and i+1-th level topology nodes of the proposed passage space are traversed according to a custom topology node connection rule, wherein the topology node connection rule includes:
[0173] Based on the upper boundary dividing line information of the i-th level topological node and the lower boundary dividing line information of the (i+1)-N-th level topological nodes, when the upper boundary dividing line of one of the topological nodes in the i-th level topological node intersects with the lower boundary dividing line of one of the topological nodes in the (i+1)-N-th level topological node, it is determined that there is a connection relationship between the two topological nodes. The minimum passage width of vehicles between the two topological nodes with a connection relationship is the length of the shortest line segment between any two points on the side of the polygon formed by the two topological nodes in the direction perpendicular to the boundaries of the road on both sides.
[0174] Connect the topological nodes with connections in the N-level topological nodes of the proposed travel space in sequence to generate M alternative paths for the autonomous vehicle to travel.
[0175] Preferably, the first calculation module 904 calculates the first cost of the N-level topological nodes in the proposed passage space and the second cost between the connected topological nodes according to a custom cost function, including:
[0176] The width cost, historical trajectory cost, wheel orientation cost, and deformation cost of the N-level topological nodes in the proposed passage space are calculated based on the custom node width cost function, node historical trajectory cost function, node wheel orientation cost function, and node deformation cost function in the SL coordinate system, respectively. The first cost includes the width cost, historical trajectory cost, wheel orientation cost, and deformation cost.
[0177] The lateral offset cost between connected topological nodes is calculated based on a custom lateral offset cost function, where the second cost refers to the lateral offset cost between topological nodes.
[0178] Preferably, based on a custom cost weight value, the cost of the M candidate paths is calculated using the first cost and the second cost of the topological nodes on each candidate path, respectively, and the calculation formula is as follows:
[0179]
[0180] In the formula, 1≤m≤M, Let L be the cost of the m-th alternative path, and L be the total cost included in the first cost. cost l and These represent the l-th cost in the first cost and its corresponding weight value; K is the total number of costs included in the second cost. cost k and Let k be the kth cost in the second cost and its corresponding weight value.
[0181] Preferably, the result output module 906 determines the final passage space of the unmanned vehicle based on a custom spatial filtering rule, according to the custom minimum passage width of the unmanned vehicle, the cost of M alternative paths, and the minimum passage width of the vehicle, including:
[0182] Based on custom spatial filtering rules, the final passage path of the autonomous vehicle is determined according to the custom minimum passage width of the autonomous vehicle, the cost of M alternative paths, and the minimum passage width of the vehicle. The spatial filtering rules include:
[0183] Starting from the origin, the minimum passage width of the vehicle and the minimum passage width of the autonomous vehicle are compared in each candidate path. When the minimum passage width of the vehicle is less than the minimum passage width of the autonomous vehicle, the two topological nodes with a connection relationship corresponding to the minimum passage width of the vehicle are pruned.
[0184] When there is at least one alternative path that has not been pruned, the alternative path with the lowest cost is selected as the final travel path for the autonomous vehicle.
[0185] When there are no unpruned alternative paths, the longest part of the unpruned topology nodes in the M alternative paths is selected and spliced together to generate the final passage path for the unmanned vehicle, in the order from the start point to the end point.
[0186] The system traverses the longitudinal space of the final travel path of the autonomous vehicle, detects the topological node to which the scanned position belongs according to a custom distance step size, and determines the boundary information of the final travel space of the autonomous vehicle based on the information of the blocking obstacles on both sides of the topological node and the road boundary information.
[0187] The system for searching the passage space of unmanned vehicles described in this preferred embodiment and the method for searching the passage space of unmanned vehicles have the same steps in obtaining the optimal passage space through obstacle screening, topology node generation, node cost calculation, and optimal passage path search, and achieve the same technical effect, so they will not be described again here.
[0188] Exemplary electronic devices
[0189] Figure 10 This is a schematic diagram of the structure of an electronic device according to a preferred embodiment of the present invention. Figure 10 As shown, the electronic device includes one or more processors 1001 and memory 1002.
[0190] The processor 1001 may be a central processing unit (CPU) or other form of processing unit with data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device to perform desired functions.
[0191] The memory 1002 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 include, for example, random access memory (RAM) and / or cache memory. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor 1001 may execute the program instructions to implement the methods for searching the passage space of an unmanned vehicle as described in the various embodiments disclosed above, and / or other desired functions. In one example, the electronic device may also include an input device 1003 and an output device 1004, these components being interconnected via a bus system and / or other forms of connection mechanisms (not shown).
[0192] In addition, the input device 1003 may also include, for example, a keyboard, a mouse, etc.
[0193] The output device 1004 can output various information to the outside. The output device 1004 may include, for example, a display, a speaker, a printer, and a communication network and its connected remote output devices, etc.
[0194] Of course, for the sake of simplicity, Figure 10 Only some of the components of the electronic device relevant to this disclosure are shown, omitting components such as buses, input / output interfaces, etc. In addition, the electronic device may include any other suitable components depending on the specific application.
[0195] Exemplary computer program products and computer-readable storage media
[0196] In addition to the methods and apparatus described above, embodiments of this disclosure may also be computer program products comprising computer program instructions that, when executed by a processor, cause the processor to perform the steps of the methods for searching unmanned vehicle access space according to various embodiments of this disclosure as described in the "Exemplary Methods" section of this specification.
[0197] The computer program product can be written in any combination of one or more programming languages to perform the operations of the embodiments of this disclosure. The programming languages include object-oriented programming languages such as Java and C++, as well as conventional procedural programming languages such as C or similar languages. The program code can be executed entirely on a user's computing device, partially on a user's computing device, as a standalone software package, partially on a user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0198] Furthermore, embodiments of this disclosure may also be computer-readable storage media storing computer program instructions that, when executed by a processor, cause the processor to perform the steps of the method for searching the access space of an unmanned vehicle according to various embodiments of this disclosure as described in the "Exemplary Methods" section above.
[0199] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof.
[0200] The basic principles of this disclosure have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this disclosure are merely examples and not limitations, and should not be considered as essential features of each embodiment of this disclosure. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the scope of this disclosure to the necessity of employing the aforementioned specific details for implementation.
[0201] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For system embodiments, since they largely correspond to method embodiments, the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.
[0202] The block diagrams of devices, apparatuses, devices, and systems disclosed herein 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 those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.
[0203] The apparatus and methods of this disclosure may be implemented in many ways. For example, they may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order of steps for the methods is for illustrative purposes only, and the steps of the methods of this disclosure are not limited to the order specifically described above unless otherwise specifically stated. Furthermore, in some embodiments, this disclosure may also be implemented as a program recorded on a recording medium, the program including machine-readable instructions for implementing the methods according to this disclosure. Thus, this disclosure also covers recording media storing programs for performing the methods according to this disclosure.
[0204] It should also be noted that in the apparatus, devices, and methods of this disclosure, the components or steps are decomposable and / or recombinable. Such decomposition and / or recombination should be considered equivalent to the present disclosure. The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other aspects without departing from the scope of this disclosure. Therefore, this disclosure is not intended to be limited to the aspects shown herein, but rather to be carried out within the widest scope consistent with the principles and novel features disclosed herein.
[0205] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this disclosure to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations therein.
Claims
1. A method for searching for an unmanned vehicle passage space, characterized by, The method comprises: According to the current speed of the unmanned vehicle, the minimum scanning distance and scanning time are defined, and the running speed of the jammed obstacle in front of the unmanned vehicle is generated to generate a jammed obstacle list and determine the road boundary information in front of the unmanned vehicle; According to the information of each jammed obstacle in the jammed obstacle list and the road boundary information, N-level topological nodes of the space to be passed are determined, wherein the topological nodes represent the space to be passed between the jammed obstacles and the space to be passed between the jammed obstacles and the road boundary for the unmanned vehicle to pass; According to the connection relationship between the N-level topological nodes of the space to be passed, M alternative paths of the unmanned vehicle to be passed are generated, and the minimum passing width of the vehicle between the topological nodes with the connection relationship is generated; According to the first cost of the N-level topological nodes of the space to be passed and the second cost between the topological nodes with the connection relationship, the first cost and the second cost of the topological nodes on each alternative path are calculated according to the self-defined cost function; According to the first cost and the second cost of the topological nodes on each alternative path, the cost of the M alternative paths is calculated according to the self-defined cost weight value; Based on the self-defined space screening rule, according to the self-defined minimum passing width of the unmanned vehicle, the cost of the M alternative paths and the minimum passing width of the vehicle, the final passing space of the unmanned vehicle is determined.
2. The method of claim 1, wherein, According to the current speed of the unmanned vehicle, the minimum scanning distance and scanning time are defined, and the running speed of the jammed obstacle in front of the unmanned vehicle is generated to generate a jammed obstacle list and determine the road boundary information in front of the unmanned vehicle, comprising: According to the current speed of the unmanned vehicle, the minimum scanning distance and scanning time are defined to determine the scanning range of the jammed obstacle in front of the unmanned vehicle, comprising: According to the current vehicle speed v of the unmanned vehicle and the self-defined scanning time t y The current scanning distance d is calculated y The calculation formula is: d y =v*t y According to the current scanning distance d y and the custom minimum scanning distance d min determine the actual scanning distance d f whose expression is: d f =max{d y ,d min} In the frenet coordinate system, the current position of the unmanned vehicle is taken as the starting point and the actual scanning distance d is taken as the end point in the longitudinal direction f The distance from the starting point to the end point is taken as the longitudinal length, and the longitudinal length is discretized in the transverse direction. For each discretized sampling point, the left and right boundaries of the lane are traversed, and the minimum distance from the left and right boundaries is taken as the transverse width. According to the longitudinal length and the transverse width, the scanning range and the road boundary information of the jammed obstacle in front of the vehicle in the frenet coordinate system are determined; The jammed obstacles with a running speed not greater than the self-defined speed threshold in the scanning range are numbered, and the coordinate information of the discrete point sequence representing the position in the frenet coordinate system is obtained to generate a jammed obstacle list.
3. The method of claim 2, wherein, According to the information of each jammed obstacle in the jammed obstacle list and the road boundary information, N-level topological nodes of the space to be passed are determined, comprising: According to the information of each jammed obstacle in the jammed obstacle list and the road boundary information, initial preselected segmentation points are determined to generate an initial preselected segmentation point list, wherein the attribute information of each initial preselected segmentation point includes position coordinate information, front and back edge information, type information, segmentation line generation direction information and belonging obstacle information, the position coordinate information includes transverse coordinate and longitudinal coordinate, the front and back edge information includes front edge information and back edge information, and the front edge and the back edge are determined in a counterclockwise rotation manner with the preselected segmentation point as the center; Based on the coordinate information, the initial preselected segmentation points in the initial preselected segmentation point list are divided into N+1 groups of initial preselected segmentation points from near to far according to the longitudinal coordinate, wherein the longitudinal coordinates of the initial preselected segmentation points in each group are the same, and the near and far refer to from the current position of the unmanned vehicle to the front of the unmanned vehicle; generating final pre-selected split points for each group of initial pre-selected split points in order from left to right along the horizontal coordinate, and filtering out repeated pre-selected split points to generate a final pre-selected split point list for each group of initial pre-selected split points, and generating a final pre-selected split point list based on the N+1 groups of final pre-selected split points; determining important key points from final pre-selected split points in the final pre-selected split point list that do not meet the self-defined split point filtering rules based on the position coordinate information, road boundary information, and information of each jammed obstacle in the jammed obstacle list; generating an N+1 level cyclic key point list based on the N+1 groups of final pre-selected split points in the final pre-selected split point list, and generating an updated attention edge list for each level based on type information and front and back edge information of final pre-selected split points in the cyclic key point list for each level; determining an upper boundary split line and a lower boundary split line for the nth level based on split line generation direction information and position coordinate information of each important key point, road boundary information, and the nth level attention edge list, and generating an upper boundary list and a lower boundary list for the nth level based on the upper boundary split line and the lower boundary split line, wherein the upper boundary split line is a line segment representing the upper boundary of a topological node, the lower boundary split line is a line segment representing the lower boundary of a topological node, and 1≤n≤N+1; generating a j-1 level topological node corresponding to each upper boundary split line in the jth level upper boundary list based on a lower boundary split line in the j-1 level to-be-adapted lower boundary list that meets the topological node generation rule, wherein 2≤j≤N+1, the j-1 level to-be-adapted lower boundary list is the first level lower boundary list when j=2, the j-1 level to-be-adapted lower boundary list is a set of the j-1 level lower boundary list and the j-2 level to-be-adapted lower boundary list after filtering out lower boundary split lines marked as adapted, the marked as adapted lower boundary split line meets the self-defined topological node generation rule, and the j-1 level topological node of the tentative passable space is a set of j-1 level topological nodes generated by all upper boundary split lines in the jth level upper boundary list.
4. The method of claim 3, wherein, The method for determining pre-selected split points based on information of each jammed obstacle in the jammed obstacle list and the road boundary information, and generating an initial pre-selected split point list, comprises: taking the start point and the end point of the scanning range as first pre-selected split points, wherein the front and back edge information, type information, and belonging obstacle information in the attribute information of the first pre-selected split points are default values, and the split line generation direction information is generated to the two sides of the road; taking four vertices of each jammed obstacle in the jammed obstacle list as second pre-selected split points, wherein the split line generation direction information in the attribute information of the second pre-selected split points is determined according to the assignment of the type information, the split line generation direction information is at least one of generated to the two sides of the road, generated to the left side of the road, and generated to the right side of the road, and the assignment of the type information in the attribute information of the second pre-selected split points is determined according to whether the rectangle formed by the jammed obstacle has a side parallel to the road boundary. Intersect the front and back edges of the four vertices of each occlusion obstacle in the occlusion obstacle list with the left and right boundaries of the road, and generate the intersection point of the split line inside the road boundary as the third pre-selected split point, wherein the front and back edge information in the attribute information of the third pre-selected split point, the type information is a default value, the split line generation direction information of the third pre-selected split point intersecting with the left boundary of the road is generated to the right of the road, and the split line generation direction information of the third pre-selected split point intersecting with the right boundary of the road is generated to the left of the road; When the absolute value of the difference between the horizontal coordinates of any two adjacent road boundary sampling points is greater than a custom threshold, the road boundary sampling point with a smaller vehicle passing width is taken as the fourth pre-selected split point, wherein the front and back edge information in the attribute information of the fourth pre-selected split point, the type information and the obstacle information are default values, the split line generation direction information of the fourth pre-selected split point located on the left side of the road is generated to the right of the road, and the split line generation direction information of the fourth pre-selected split point located on the right side of the road is generated to the left of the road; The set of the first pre-selected split point, the second pre-selected split point, the third pre-selected split point and the fourth pre-selected split point is taken as the initial pre-selected split point list.
5. The method of claim 4, wherein, Based on the position coordinate information, the road boundary information and the information of each occlusion obstacle in the occlusion obstacle list, the final pre-selected split point in the final pre-selected split point list that does not satisfy the custom split point filtering rule is taken as an important key point, wherein the split point filtering rule includes: Filtering other final pre-selected split points whose position coordinate information is outside the range determined by the first pre-selected split point and the fourth split point; Filtering the final pre-selected split points whose position coordinate information is within the range determined by the coordinate information of the discrete point sequence representing the position of the occlusion obstacle in the frenet coordinate system.
6. The method of claim 5, wherein, Generating N+1 level cyclic key point lists according to N+1 groups of final pre-selected split points in the final pre-selected split point list, and generating the updated attention edge list of the corresponding level based on the type information and the front and back edge information of the final pre-selected split point in each cyclic key point list, including: Generating the cyclic key point list of the corresponding level according to each group of final pre-selected split points; Generating the initial attention edge list of the nth level according to the front and back edge information of the second pre-selected split point in the nth level cyclic key point list and the (n-1)th level updated attention edge list, when n=1, the (n-1)th level updated attention edge list is an empty set; Deleting the attention edge in the nth level initial attention edge list whose maximum longitudinal coordinate is less than the longitudinal coordinate of the final pre-selected split point in the nth level cyclic key point list, and generating the nth level updated attention edge list after deleting the corresponding attention edge that satisfies the custom type information-attention edge deletion list, wherein the type information-attention edge deletion list is a list representing the corresponding relationship between the type information of the second pre-selected split point and the part to be deleted in its corresponding front and back edge information.
7. The method of claim 6, wherein, The upper boundary split line and the lower boundary split line of the nth level are determined based on the split line generation direction information and the position coordinate information of each important key point, and the road boundary information and the nth level attention edge list, and the method comprises the following steps: For each important key point in the nth level key point list, the road boundary sampling points in the split line generation direction are obtained according to the split line generation direction information, wherein when the split line generation direction information is to generate to the two sides of the road, the road boundary sampling points comprise a road left side boundary sampling point and a road right side boundary sampling point; A line segment is generated by connecting the important key point and the corresponding road boundary sampling point, when the line segment does not intersect with other attention edges in the nth level updated attention edge list except the attention edge where the important key point is located, the road boundary sampling point corresponding to the important key point is determined as an anchor point, when the line segment intersects with other attention edges in the nth level updated attention edge list except the attention edge where the important key point is located, the intersection point closest to the important key point is taken as the anchor point, wherein the intersection point closest to the important key point is not on the blocking obstacle to which the important key point belongs, and when the upper boundary split line is generated, the minimum longitudinal coordinate of the attention edge where the intersection point closest to the important key point is located is less than the longitudinal coordinate of the important key point, when the lower boundary split line is generated, the maximum longitudinal coordinate of the attention edge where the intersection point closest to the important key point is located is greater than the longitudinal coordinate of the important key point, when there are two anchor points, the anchor point closest to the road left side boundary sampling point is the left anchor point, and the anchor point closest to the road right side boundary sampling point is the right anchor point, and specifically: When the split line generation direction information of the important key point is to generate to the right side of the road, the split line with coordinate position information of {key point, anchor point} is generated; When the split line generation direction information of the important key point is to generate to the left side of the road, if the important key point is contained in the position coordinate information of the generated split line, no split line is generated for the important key point, otherwise, the split line with coordinate position information of {anchor point, key point} is generated; When the split line generation direction information of the important key point is to generate to the two sides of the road, if the important key point is contained in the position coordinate information of the generated split line, no split line is generated for the important key point, otherwise, the split line with coordinate position information of {left anchor point, right anchor point} is generated.
8. The method of claim 6, wherein, For each upper boundary split line in the jth level upper boundary list, the j-1th level topological node corresponding to the upper boundary split line is generated according to the lower boundary split line in the j-1th level to-be-adapted lower boundary list which satisfies the topological node generation rule with the upper boundary split line, wherein the topological node generation rule comprises: For each upper boundary split line in the jth level upper boundary list, a line segment is formed by the midpoint of the upper boundary split line and the midpoint of each lower boundary split line in the j-1th level to-be-adapted lower boundary list; When the line segment does not intersect with all the blocking obstacles, a polygon containing the upper boundary split line and the lower boundary split line information, the left and right obstacle information or the road boundary information is generated as a topological node, and the lower boundary split line corresponding to the line segment is marked as adapted.
9. The method of claim 1, wherein, The M candidate paths of the unmanned vehicle and the minimum vehicle passing width between the topological nodes with the connection relationship are generated according to the connection relationship between the N-level topological nodes of the space to be passed. The i-th level topological node and the i+1-th level topological node of the space to be passed are traversed according to the user-defined topological node connection rule, wherein the topological node connection rule comprises: Based on the upper boundary split line information of the i-th level topological node and the lower boundary split line information of the i+1-th level to N-th level topological node, when the upper boundary split line of one of the i-th level topological nodes intersects with the lower boundary split line of one of the i+1-th level to N-th level topological nodes, it is determined that there is a connection relationship between the two topological nodes, and the minimum vehicle passing width between the two topological nodes with the connection relationship is the length of the shortest line segment between any two points on the edge of the polygon formed by the two topological nodes in the direction perpendicular to the road boundary on both sides; The topological nodes with the connection relationship in the N-level topological nodes of the space to be passed are connected in turn to generate M candidate paths of the unmanned vehicle to be passed.
10. The method of claim 1, wherein, The first cost of the N-level topological nodes of the space to be passed and the second cost between the topological nodes with the connection relationship are calculated according to the user-defined cost function, comprising: The width cost, historical trajectory cost, wheel orientation cost and deformation cost of the N-level topological nodes of the space to be passed are calculated according to the user-defined node width cost function, node historical trajectory cost function, node wheel orientation cost function and node deformation cost function, wherein the first cost includes width cost, historical trajectory cost, wheel orientation cost and deformation cost; The lateral offset cost between the topological nodes with the connection relationship is calculated according to the user-defined lateral offset cost function, wherein the second cost refers to the lateral offset cost between the topological nodes.
11. The method of claim 1, wherein, The cost of the M candidate paths is calculated according to the first cost and the second cost of the topological nodes on each candidate path according to the user-defined cost weight value, and the calculation formula is: where 1≤m≤M, cost m is the cost of the mth alternative path, L is the total number of costs included in the first cost, cost l and w l are the lth cost in the first cost and its corresponding weight value, respectively; K is the total number of costs included in the second cost, cost k and w k are the kth cost in the second cost and its corresponding weight value, respectively.
12. The method of claim 1, wherein, The final passing space of the unmanned vehicle is determined based on the user-defined space screening rule, the user-defined minimum passing width of the unmanned vehicle, the cost of the M candidate paths and the minimum vehicle passing width, comprising: The final passing path of the unmanned vehicle is determined based on the user-defined space screening rule, the user-defined minimum passing width of the unmanned vehicle, the cost of the M candidate paths and the minimum vehicle passing width, wherein the space screening rule comprises: comparing the minimum passing width of the vehicle and the minimum passing width of the unmanned vehicle in each of the candidate paths, and pruning two topological nodes having a connection relationship corresponding to the minimum passing width of the vehicle when the minimum passing width of the vehicle is less than the minimum passing width of the unmanned vehicle; selecting a candidate path with the minimum cost as the final passing path of the unmanned vehicle when there is at least one candidate path that is not pruned; selecting a part with the maximum length of the unpruned topological nodes in M candidate paths in sequence from the starting point to the ending point to splice and generate the final passing path of the unmanned vehicle when there is no candidate path that is not pruned; traversing in the longitudinal space of the final passing path of the unmanned vehicle, detecting the topological node to which the scanned position belongs according to a self-defined distance step, and determining the boundary information of the final passing space of the unmanned vehicle according to the blocking obstacle information and the road boundary information on both sides of the topological node.
13. A system for searching for an unmanned vehicle passage space, characterized by, The system comprises: a preprocessing module configured to generate a blocking obstacle list and determine road boundary information in front of the unmanned vehicle according to a current speed of the unmanned vehicle, a self-defined minimum scanning distance and scanning time, and a running speed of a blocking obstacle in front of the unmanned vehicle; a topological node module configured to determine N-level topological nodes of a tentative passing space according to information of each blocking obstacle in the blocking obstacle list and the road boundary information, wherein the topological nodes represent spaces in the tentative passing space that are tentatively used for the unmanned vehicle to pass through between the blocking obstacles or between the blocking obstacles and the road boundary; a candidate path module configured to generate M candidate paths of the tentative passing space of the unmanned vehicle according to connection relationships between the N-level topological nodes of the tentative passing space, and minimum passing widths of vehicles between topological nodes having the connection relationships; a first calculation module configured to calculate a first cost of the N-level topological nodes of the tentative passing space and a second cost between topological nodes having the connection relationships according to a self-defined cost function; a second calculation module configured to calculate a cost of each of the M candidate paths according to the first cost and the second cost of the topological nodes on the candidate path according to a self-defined cost weight value; a result output module configured to determine a final passing space of the unmanned vehicle according to a self-defined minimum passing width of the unmanned vehicle, the cost of the M candidate paths and the minimum passing width of the vehicle based on a self-defined space screening rule.
14. A computer-readable storage medium having stored thereon a computer program, characterized in that, The program is executed by a processor to implement the steps of the method of any one of claims 1-12.
15. An electronic device, comprising: The electronic device comprises: a processor, a memory for storing executable instructions of the processor, and the processor is configured to read the executable instructions from the memory and execute the instructions to implement the steps of the method of any one of claims 1-12. The electronic device comprises: a processor, a memory for storing executable instructions of the processor, and the processor is configured to read the executable instructions from the memory and execute the instructions to implement the steps of the method of any one of claims 1-12.
Citation Information
Patent Citations
Vehicle path planning method based on storage unmanned vehicle
CN107037812A
Robot navigation path width acquisition system and method, robot and storage medium
CN113932825A