Parking speed planning method, device, equipment and medium
By projecting obstacles onto a dynamic coordinate system, calculating the vehicle's profile and truncating potential collision trajectories, and combining this with linear programming to solve for the optimal speed, the high computational complexity and obstacle avoidance accuracy issues in parking speed planning are resolved, achieving efficient and safe parking speed planning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-19
- Publication Date
- 2026-03-10
AI Technical Summary
Existing technologies for parking speed planning in autonomous driving suffer from high computational complexity, complex obstacle filtering, and separation of filtering and optimization, making it difficult to achieve efficient and safe speed planning in complex environments.
By projecting the target obstacle onto a dynamic first coordinate system, the vehicle profile in the vehicle trajectory is calculated. Based on the vehicle profile and the obstacle, the trajectory with potential collision risks is truncated. The optimal speed is output using a speed planning model. By combining jerk constraints and linear programming solutions, the algorithm complexity of the optimal speed is greatly reduced.
It achieves efficient and safe speed planning in complex parking scenarios, reduces algorithm complexity, meets the real-time requirements of autonomous driving, and ensures obstacle avoidance accuracy and comfort.
Smart Images

Figure CN121626151A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of intelligent driving technology, and in particular to a parking speed planning method, device, equipment, and medium. Background Technology
[0002] In the field of autonomous driving, speed planning is a core module connecting path planning and vehicle control. Its goal is to generate efficient speed curves while meeting safety, traffic rules, and passenger comfort requirements.
[0003] Speed planning for intelligent assisted driving vehicles in complex environments is a key problem in assisted driving decision planning, which is subject to at least the following constraints: safety constraints to avoid collisions with obstacles, maximum speed constraints to meet safety and physical characteristics, passenger comfort constraints, and algorithm real-time constraints. However, considering the complex traffic environment and contradictory constraints, the resulting speed planning problem is highly nonlinear and nonconvex, significantly increasing its solution complexity.
[0004] Therefore, there is an urgent need to propose a safer and more effective collision risk warning scheme that can reduce algorithm complexity while ensuring obstacle avoidance accuracy and comfort. Summary of the Invention
[0005] The present invention aims to solve at least one of the technical problems existing in the prior art, and proposes a parking speed planning method, device, equipment and storage medium.
[0006] In a first aspect, embodiments of the present invention provide a parking speed planning method, including:
[0007] Based on the relative position of the vehicle trajectory and the target obstacle in the static second coordinate system, the target obstacle is projected into the dynamic first coordinate system;
[0008] Calculate the vehicle profile of each trajectory point in each segment of the vehicle trajectory, and based on the vehicle profile and the target obstacle, cut off the segments of the vehicle trajectory that pose a collision risk.
[0009] Input any segment of the remaining vehicle trajectory into a pre-built speed planning model, and output the optimal speed of each trajectory point in that segment. The goal of the speed planning model is to output the optimal speed of each trajectory point that minimizes the loss value of the segment under the constraints of its own trajectory.
[0010] In some embodiments, projecting the target obstacle onto a dynamic first coordinate system includes:
[0011] Obtain the point in the vehicle trajectory that is closest to the target obstacle, and use it as the target trajectory point;
[0012] Obtain the first coordinate system corresponding to the target trajectory point, and the reference angle between the first coordinate system and the second coordinate system;
[0013] Based on the relative position of the target obstacle and the target trajectory point, and the reference angle, the target obstacle is projected onto the first coordinate system corresponding to the target trajectory point.
[0014] In some embodiments, truncating segments of the vehicle trajectory that pose a collision risk includes:
[0015] Calculate the vehicle profile for each trajectory point in any segmented trajectory;
[0016] Based on the vehicle profile of each trajectory point and the projection of the target obstacle in the first coordinate system, it is determined whether the target obstacle exists within the vehicle profile of each trajectory point.
[0017] If there is no target obstacle within the vehicle's outline at any trajectory point in the segmented trajectory, then the segmented trajectory is retained.
[0018] If the target obstacle exists within the vehicle's profile at one or more trajectory points in the segmented trajectory, then the segmented trajectory is truncated starting from the first trajectory point in the vehicle's profile within the target obstacle.
[0019] In some embodiments, the self-trajectories constraints of any segmented trajectory include: reference velocity square boundary constraint, adjacent point velocity square difference constraint, and acceleration change rate constraint.
[0020] In some embodiments, the process of constructing the reference velocity square boundary constraint includes:
[0021] Based on the acceleration of the acceleration segment, the acceleration of the deceleration segment, the initial velocity, the final velocity, and the trajectory length of any segmented trajectory, the maximum reference speed to reach that trajectory point is obtained.
[0022] The square of the maximum reference speed is used as the upper limit of the square of the optimal speed at that trajectory point.
[0023] In some embodiments, the optimal velocity of any trajectory point is an estimated approximation; the estimated approximation is obtained by looking up the distance calibration table and velocity calibration table of the segment trajectory to which the trajectory point is located;
[0024] The initial velocity in the velocity calibration table corresponds to the starting distance in the distance calibration table;
[0025] The final velocity in the velocity calibration table corresponds to the final distance in the distance calibration table;
[0026] The maximum reference speed in the distance calibration table corresponds to the critical point of the acceleration and deceleration paths in the distance calibration table.
[0027] In some embodiments, the loss value of the segmented trajectory is the sum of the velocity deviation and centripetal acceleration of each trajectory point in the segmented trajectory, and the velocity deviation and the centripetal acceleration are preset with different weights.
[0028] Secondly, embodiments of the present invention provide a parking speed planning device, comprising:
[0029] The coordinate projection module is used to project the target obstacle into a dynamic first coordinate system based on the relative position of the vehicle trajectory and the target obstacle in a static second coordinate system.
[0030] The trajectory truncation module is used to calculate the vehicle profile of each trajectory point in each segment of the vehicle trajectory, and based on the vehicle profile and the target obstacle, truncate the segment of the vehicle trajectory that has a collision risk.
[0031] The speed calculation module is used to input any segment of the remaining vehicle trajectory into a pre-built speed planning model and output the optimal speed of each trajectory point in the segment. The goal of the speed planning model is to output the optimal speed of each trajectory point that minimizes the loss value of the segment under the self-trajectories of any segment.
[0032] Thirdly, embodiments of the present invention provide an electronic device, the electronic device comprising:
[0033] At least one processor; and a memory communicatively connected to the at least one processor;
[0034] The memory stores a computer program that can be executed by at least one processor, such that the at least one processor is able to perform the steps of the method according to any embodiment of the present invention.
[0035] Fourthly, embodiments of the present invention provide a computer-readable storage medium storing computer instructions that are used to cause a processor to execute the steps of any embodiment of the method of the present invention.
[0036] Compared with the prior art, the present invention has the following advantages:
[0037] The parking speed planning method provided by this invention first projects the target obstacle onto a dynamic first coordinate system based on the relative position of the vehicle trajectory and the target obstacle in a static second coordinate system. Then, it calculates the vehicle profile of each trajectory point in each segment of the vehicle trajectory and, based on the vehicle profile and the target obstacle, truncates the segments of the vehicle trajectory that pose a collision risk. Finally, it inputs any segment of the remaining vehicle trajectory into a pre-built speed planning model and outputs the optimal speed for each trajectory point in that segment. This invention achieves efficient solving of the speed planning problem, and the algorithm complexity is significantly lower than that of traditional algorithms. Attached Figure Description
[0038] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only preferred embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0039] Figure 1 A flowchart illustrating a parking speed planning method provided in an embodiment of the present invention;
[0040] Figure 2 A schematic diagram of an obstacle projected onto a coordinate system, provided as an embodiment of the present invention;
[0041] Figure 3 A flowchart illustrating another parking speed planning method provided in an embodiment of the present invention;
[0042] Figure 4 A schematic diagram illustrating trajectory truncation in high-risk parking sections provided by an embodiment of the present invention;
[0043] Figure 5 A schematic diagram of a distance-velocity mapping curve provided in an embodiment of the present invention;
[0044] Figure 6 This is a structural block diagram of a parking speed planning device provided in an embodiment of the present invention;
[0045] Figure 7 This is a structural block diagram of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0046] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0047] To enable those skilled in the art to better understand the technical solutions of the present invention, exemplary embodiments of the present invention are described below in conjunction with the accompanying drawings, including various details of the embodiments of the present invention to aid understanding. These should be considered merely exemplary. Therefore, those skilled in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present invention. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.
[0048] Where there is no conflict, the various embodiments of the present invention and the features thereof may be combined with each other.
[0049] As used herein, the term “and / or” includes any and all combinations of one or more related enumerated entries.
[0050] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the invention. As used herein, the singular forms “a” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that when the terms “comprising” and / or “made of” are used in this specification, the presence of the stated feature, integral, step, operation, element, and / or component is specified, but the presence or addition of one or more other features, integrals, steps, operations, elements, components, and / or groups thereof is not excluded. Terms such as “connected” or “linked” are not limited to physical or mechanical connections but can include electrical connections, whether direct or indirect.
[0051] Unless otherwise specified, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having the meaning consistent with their meaning in the context of the relevant art and the invention, and will not be interpreted as having an idealized or overly formal meaning unless expressly so defined herein.
[0052] In the technical solution of this invention, the collection, storage, use, processing, transmission, provision, and disclosure of user personal information all comply with relevant laws and regulations and do not violate public order and good morals. The use of user data in this technical solution follows relevant national laws and regulations (e.g., the "Information Security Technology - Personal Information Security Specification"). For example: appropriate measures are taken for personal information access control; restrictions are imposed on the display of personal information; the purpose of using personal information does not exceed the scope of direct or reasonable association; and explicit identity targeting is eliminated when using personal information to avoid precisely locating a specific individual.
[0053] Before introducing the technical solution in this application, it should be noted that the non-convex obstacle avoidance constraints of dynamic obstacles, the nonlinear characteristics of acceleration, and real-time requirements are the main technical obstacles faced by traditional technologies in solving speed planning problems. In related technologies, there are solutions for parking speed planning as follows:
[0054] The velocity curve is optimized step by step through two linear programming operations. The first linear programming ignores the jerk constraint to generate a preliminary velocity profile. Meanwhile, when the hard constraints cannot meet the requirements for safe obstacle avoidance, the second linear programming relaxes the hard jerk constraint through a dynamic constraint box strategy, thereby generating a safe obstacle avoidance velocity curve.
[0055] However, the above parking speed planning scheme has at least the following drawbacks:
[0056] 1) High computational complexity: Solving the linear programming problem twice significantly increases the time required, making it difficult to meet the needs of high-frequency programming. Furthermore, the initial optimization and final optimization are highly decoupled, failing to achieve closed-loop parameter adjustment and making it difficult to generate a globally optimal solution.
[0057] 2) Complex obstacle filtering: By assuming the motion trajectory of dynamic and static obstacles through continuous linear functions, the vehicle's safe braking distance is calculated based on the obstacle's entry and exit times. The vehicle then performs synchronous following motion at the same speed and outputs the speed constraint after the obstacle speed is filtered. Although this process avoids non-convex obstacle avoidance constraints through linearization, it increases the complexity of calculating obstacles.
[0058] 3) Separation of filtering and optimization: The initial linear programming ignores the jerk constraint, which causes the initial velocity profile to not meet the comfort requirements in the rapid acceleration / deceleration region. It needs to rely on secondary optimization to correct it, but the correction range is limited.
[0059] To address at least one of the technical problems existing in the aforementioned related technologies, the present invention provides a parking speed planning method. Figure 1This is a flowchart illustrating a parking speed planning method provided in an embodiment of the present invention. This method is particularly suitable for speed planning in complex parking scenarios. The method can be executed by a parking speed planning device, which can be implemented in software and / or hardware and can be configured in an electronic device.
[0060] like Figure 1 As shown, the method specifically includes:
[0061] S1, based on the relative position of the vehicle trajectory and the target obstacle in the static second coordinate system, projects the target obstacle into the dynamic first coordinate system.
[0062] Projecting the target obstacle into a dynamic first coordinate system includes:
[0063] S110: Obtain the point in the vehicle trajectory that is closest to the target obstacle and use it as the target trajectory point.
[0064] S120, obtain the first coordinate system corresponding to the target trajectory point, and the reference angle between the first coordinate system and the second coordinate system.
[0065] S130, based on the relative position of the target obstacle and the target trajectory point, and the reference angle, the target obstacle is projected onto the first coordinate system corresponding to the target trajectory point.
[0066] In some embodiments, the second coordinate system is a Cartesian coordinate system and the first coordinate system is a Frenet coordinate system.
[0067] It should be noted that the Frenet coordinate system is a local coordinate system bound to a curve, used to describe the position and motion of an object relative to a reference curve. The position of a vehicle on a curved path is described by the longitudinal displacement (s) and lateral displacement (l) along the curve.
[0068] Figure 2 This is a schematic diagram of an obstacle projected onto a coordinate system according to an embodiment of the present invention, as shown below. Figure 2 As shown, there exists a target obstacle in the second coordinate system, denoted as... Some vehicle trajectories are Figure 2 The two red curves in the diagram represent the trajectory points within these two curves that are closest to the target obstacle. These target trajectory points are denoted as [target trajectory point] in the second coordinate system. Furthermore, at the target trajectory point, there exists a reference angle between the first coordinate system and the second coordinate system, denoted as . .
[0069] It is understandable that in a special scenario, a target trajectory point exists not only within the first curve segment but also within the second curve segment, and the motion directions of the first and second curve segments are exactly opposite. The corresponding longitudinal displacement (s) in the first coordinate system is the same, while the lateral displacement (l) is equal in magnitude but opposite in direction. Therefore, a reference angle can be introduced. To determine the direction of movement of the target trajectory point.
[0070] At this point, projecting the target obstacle onto the first coordinate system, it can be represented as:
[0071]
[0072] in, This represents the longitudinal displacement of the target obstacle point in the first coordinate system, and sign(∙) represents the sign function. Indicates the reference angle. These represent the two components of the target obstacle in the second coordinate system. These represent the two components of the target trajectory point in the second coordinate system.
[0073] It should be noted that in the coincident function, a positive input returns 1, a negative input returns -1, and a zero input returns 0.
[0074] Furthermore, before projecting the target obstacle onto the dynamic first coordinate system, the process also includes: acquiring parking segment trajectory information, obstacle information, and vehicle parameter information.
[0075] Figure 3 A flowchart illustrating another parking speed planning method provided in an embodiment of the present invention is shown below. Figure 3 As shown, the specific implementation process of the entire scheme is as follows: First, obtain the parking segment trajectory information, obstacle information, and vehicle parameter information. Then, establish a dynamic first coordinate system based on the segment trajectory information and project the target obstacle onto this coordinate system. Next, traverse each segment trajectory and calculate the vehicle contour at each trajectory point in the segment trajectory based on the vehicle parameter information. Then, detect whether there is a target obstacle in the vehicle contour and cut off the trajectory where there is a target obstacle. Then, constrain the maximum speed of the parking process based on the distance of the remaining trajectory and perform approximately linearization of the jerk to construct the jerk constraint. Finally, solve the speed sequence of each segment trajectory.
[0076] S2 calculates the vehicle profile of each trajectory point in each segment of the vehicle trajectory, and based on the vehicle profile and the target obstacle, cuts off the segments of the vehicle trajectory that pose a collision risk.
[0077] In some embodiments, truncating segments of the vehicle trajectory that pose a collision risk includes:
[0078] S210, calculate the vehicle profile of each trajectory point in any segmented trajectory.
[0079] S220, based on the vehicle profile of each trajectory point and the projection of the target obstacle in the first coordinate system, determines whether there is a target obstacle within the vehicle profile of each trajectory point.
[0080] S230, if there is a target obstacle in the vehicle profile of one or more trajectory points in the segmented trajectory, then the segmented trajectory is cut off starting from the first trajectory point in the vehicle profile where the target obstacle exists.
[0081] This embodiment proposes a trajectory truncation mechanism to dynamically detect the spatial relationship between obstacles and the vehicle's outline, accurately truncate high-risk path segments, and combine linearized obstacle avoidance constraints to ensure that the collision safety distance is 100% met in complex parking scenarios (such as dynamic obstacles in narrow parking spaces).
[0082] Figure 4 This is a schematic diagram of trajectory truncation for high-risk parking sections provided by an embodiment of the present invention, as shown below. Figure 4 As shown, some vehicle trajectories are Figure 4 The two red curves in the diagram can be viewed either as a single segmented trajectory or as separate segments. For example, if we consider the first red curve as a segmented trajectory consisting of N consecutive trajectory points, and the trajectory stops at the (k+1)th trajectory point, with the target obstacle falling within the vehicle's outline at that point, then the path from the (k+1)th to the Nth trajectory point will be truncated, retaining only the path from the 1st to the kth trajectory point as the remaining trajectory path for that segmented trajectory.
[0083] For example, the above truncation process can be executed by a corresponding program, and part of its code is as follows:
[0084] / / Input: parking trajectory path, obstacles, vehicle parameters / /
[0085] / / Output: Remaining trajectory updated_path / /
[0086] N = path.size();
[0087] M = obstacles.size();
[0088] Collision=false;
[0089] Index=N;
[0090] For k=1 to N do
[0091] / / Calculate the vehicle outline of path point path[i] extendEgoBox[i][4] / /
[0092] ego_s_min,ego_s_max=min(extendEgoBox[i][:].s),max(extendEgoBox[i][:].s);
[0093] ego_l_min,ego_l_max=min(extendEgoBox[i][:].l),max(extendEgoBox[i][:].l);
[0094] For i=1 to M do
[0095] If obstacles[i].s>ego_s_min && obstacles[i].s<ego_s_max && obstacles[i].l> ego_l_min && obstacles[i].l <ego_l_max
[0096] Collision=true;
[0097] break
[0098] End
[0099] End
[0100] if Collision
[0101] Index=k;
[0102] break
[0103] End
[0104] End
[0105] updated_path = path[1:k];
[0106] Based on the above code logic, the current segment trajectory can be truncated starting from the first trajectory point with a collision risk.
[0107] S3 inputs any segment of the remaining vehicle trajectory into the pre-built speed planning model and outputs the optimal speed of each trajectory point in that segment.
[0108] The goal of the velocity planning model is to output the optimal velocity of each trajectory point that minimizes the loss value of any segmented trajectory under its own trajectory constraints.
[0109] This embodiment uses dynamic first coordinate system projection to uniformly process dynamic / static obstacles and introduces centripetal acceleration constraints to optimize curve speed, avoiding the trajectory deviation problem caused by path curvature in traditional methods, and reducing lateral control error.
[0110] In some embodiments, the self-trajectories constraints of any segmented trajectory include: reference velocity square boundary constraint, adjacent point velocity square difference constraint, and acceleration change rate constraint.
[0111] At this point, the velocity planning model can be expressed as:
[0112]
[0113] in, It is the speed deviation weight. It is the centripetal acceleration weight. It is the reference velocity of the i-th trajectory point in the segmented trajectory. It is the square of the optimal velocity at the i-th trajectory point in the segmented trajectory. It is the centripetal acceleration of the i-th trajectory point in the segmented trajectory. It is the length of the trajectory of the i-th trajectory point in the segmented trajectory. It is the minimum acceleration of the i-th trajectory point in the segmented trajectory. It is the maximum acceleration of the i-th trajectory point in the segmented trajectory. It is the minimum jerk of the i-th trajectory point in the segmented trajectory. It is the maximum jerk of the i-th trajectory point in the segmented trajectory.
[0114] The objective function and constraints described above are transformed into a standard linear programming form, and then solved directly using a linear programming solver (such as the simplex method or interior point method). This yields the optimal squared velocity for each sampling point. .
[0115] This embodiment transforms the non-convex obstacle avoidance constraint into a linear reference velocity constraint, and uses velocity estimation to achieve an approximate linearization of the jerk constraint, thus converting the original complex non-convex problem into a single-step linear programming problem. This technical solution significantly reduces computation time, meeting the real-time requirements of autonomous driving.
[0116] It should be noted that one of the core aspects of the technical solution in this embodiment is the approximate linearization of jerk. Jerk is defined as the first derivative of acceleration *a* with respect to time *t*, and its expression along path *s* is:
[0117]
[0118] The above jerk expression contains nonlinear terms and cannot be directly converted to a convex form. To linearize the jerk constraint, this embodiment proposes a velocity estimation method to estimate the optimal velocity. A smooth speed estimation is achieved through a distance-speed mapping table. Specifically, based on the distance between the vehicle and the target (goal_dis), the current speed estimate is calculated using a calibration table lookup and linear interpolation. ).
[0119] Figure 5 This is a schematic diagram of a distance-velocity mapping curve provided in an embodiment of the present invention, such as... Figure 5 As shown, the red curve represents the actual optimal velocity at different trajectory lengths, and the green broken line represents the estimated optimal velocity at different trajectory lengths. Distance and velocity calibration tables are established using linear calibration to calculate the current velocity estimate. ).
[0120] Among them, the distance calibration table dis_list=[0, / 2, , + / 2, ];
[0121] Among them, the speed calibration table vel_list=[ ,( + ) / 2, ,( ) / 2, ].
[0122] In some embodiments, the process of constructing the reference speed square boundary constraint includes: obtaining the maximum reference speed to the trajectory point based on the acceleration of the acceleration segment path, the acceleration of the deceleration segment path, the initial speed, the final speed, and the trajectory length of any segmented trajectory; and using the square of the maximum reference speed as the upper limit of the square of the optimal speed of the trajectory point.
[0123] Understandably, in combination Figure 5 Input the acceleration 'a' of the acceleration segment, the acceleration 'd' of the deceleration segment, and the initial velocity. Final velocity Given the trajectory length s, output the maximum reference velocity. .
[0124] Calculate the length of the acceleration segment path: =( - ) / 2a.
[0125] Calculate the length of the deceleration section path: =( - ) / 2d.
[0126] Based on this, the equation is established: s = + =( - ) / 2a+( - Solve for ) / 2d. .
[0127] In some embodiments, the optimal velocity of any trajectory point is an estimated approximation, which is obtained by looking up the distance calibration table and velocity calibration table of the segment trajectory to which the trajectory point is located.
[0128] The initial speed in the speed calibration table corresponds to the starting distance in the distance calibration table.
[0129] The final velocity in the speed calibration table corresponds to the distance to the endpoint in the distance calibration table.
[0130] The maximum reference speed in the distance calibration table corresponds to the critical point of the acceleration and deceleration paths in the distance calibration table.
[0131] Furthermore, by using linear interpolation, the optimal velocity of any trajectory point in the segmented trajectory can be obtained.
[0132] This embodiment proposes a speed estimation method based on distance-velocity mapping, which generates a smooth speed estimation curve through calibration table interpolation, replacing the traditional nonlinear jerk constraint, and can significantly reduce the bumpy feeling caused by rapid acceleration / deceleration.
[0133] Understandably, in combination Figure 5 Input the target distance goal_dis, the distance calibration table dis_list, and the velocity calibration table vel_list, and output the velocity estimate. .
[0134] For example, the above speed estimation process can be executed by a corresponding program, part of which is shown below:
[0135] / / Input: target distance goal_dis, distance calibration table dis_list, velocity calibration table vel_list / /
[0136] / / Output: Velocity Estimation / /
[0137] N = dis_list.size();
[0138] For k=1 to N do
[0139] d_prev=dis_list[i-1];
[0140] d_curr = dis_list[i];
[0141] v_prev=vel_list[i-1];
[0142] v_curr = vel_list[i];
[0143] if goal_dis <d_curr:
[0144] vest=v_prev+(v_curr-v_prev) / (d_curr-d_prev)*(goal_dis-d_prev);
[0145] break
[0146] End
[0147] End
[0148] Based on the above code logic, the optimal velocity of the i-th trajectory point can be calculated according to the target distance, the distance calibration table, and the velocity calibration table. The estimated value .
[0149] Furthermore, the jerk is discretized, and the velocity estimate is used. To approximate the optimal speed Based on this, the jerk constraint (acceleration rate limit) can be constructed as follows:
[0150]
[0151] In some embodiments, the loss value of the segmented trajectory is the sum of the velocity deviation and centripetal acceleration of each trajectory point in the segmented trajectory; and the velocity deviation and centripetal acceleration are preset with different weights.
[0152] It should be noted that one of the core aspects of the technical solution in this embodiment lies in the modeling and solving of linear programming problems. The velocity programming model is defined as follows: its decision variable is the optimal velocity. The optimization objective is to minimize the velocity deviation (the deviation between the current velocity and the reference velocity) and the centripetal acceleration. The constraints are: reference velocity constraint (reference velocity square boundary limit), acceleration constraint (the difference between the squares of velocities of adjacent points limit), and jerk constraint (acceleration rate limit).
[0153] The technical solution in this invention addresses a highly nonlinear and nonconvex speed planning problem arising from complex traffic environments and conflicting constraints, significantly increasing the complexity of its solution. To address this, a novel constraint approximation method is proposed. This method transforms the nonconvex obstacle avoidance problem into a linear constraint on reference speed by truncating the path. Simultaneously, it approximates the linearization of jerk constraints through speed estimation and further transforms the reference speed constraint into a centripetal acceleration constraint. This approach achieves both obstacle avoidance accuracy and comfort, obtaining the globally optimal solution through a single linear programming iteration, greatly reducing algorithm complexity.
[0154] Based on the same inventive concept, embodiments of the present invention also provide a parking speed planning device. Figure 6 A structural block diagram of a parking speed planning device provided in an embodiment of the present invention is shown below. Figure 6 As shown, the device specifically includes:
[0155] The coordinate projection module 100 is used to project the target obstacle into a dynamic first coordinate system based on the relative position of the vehicle trajectory and the target obstacle in the static second coordinate system.
[0156] The trajectory truncation module 200 is used to calculate the vehicle profile of each trajectory point in each segment of the vehicle trajectory, and truncate the segment of the vehicle trajectory that has a collision risk based on the vehicle profile and the target obstacle.
[0157] The speed calculation module 300 is used to input any segment of the remaining vehicle trajectory into the pre-built speed planning model and output the optimal speed of each trajectory point in the segment. The goal of the speed planning model is to output the optimal speed of each trajectory point that minimizes the loss value of the segment under the self-trajectory constraints of any segment.
[0158] Based on the same inventive concept, embodiments of the present invention also provide an electronic device. Figure 7 This is a structural block diagram of an electronic device provided in an embodiment of the present invention. Figure 7As shown, an embodiment of the present invention provides an electronic device including: one or more processors 101, a memory 102, and one or more I / O interfaces 103. The memory 102 stores one or more programs, which, when executed by the one or more processors, cause the one or more processors to implement any of the parking speed planning methods described in the above embodiments; the one or more I / O interfaces 103 are connected between the processors and the memory, configured to enable information interaction between the processors and the memory.
[0159] The processor 101 is a device with data processing capabilities, including but not limited to a central processing unit (CPU); the memory 102 is a device with data storage capabilities, including but not limited to random access memory (RAM, more specifically SDRAM, DDR, etc.), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), and flash memory (FLASH); the I / O interface (read / write interface) 103 is connected between the processor 101 and the memory 102, and can realize information interaction between the processor 101 and the memory 102, including but not limited to a data bus (BUS).
[0160] In some embodiments, the processor 101, memory 102, and I / O interface 103 are interconnected via bus 104, and thus connected to other components of the computing device.
[0161] In some embodiments, the one or more processors 101 include a field-programmable gate array.
[0162] This invention also provides a computer-readable medium. The computer-readable medium stores a computer program, which, when executed by a processor, implements the steps of any of the parking speed planning methods described in the above embodiments. The computer-readable storage medium may be volatile or non-volatile.
[0163] This invention also provides a computer program product, including computer-readable code, or a non-volatile computer-readable storage medium carrying computer-readable code. When the computer-readable code is run in the processor of an electronic device, the processor in the electronic device executes the above-described parking speed planning method.
[0164] Those skilled in the art will understand that all or some of the steps, systems, and apparatuses disclosed above, and their functional modules / units, can be implemented as software, firmware, hardware, or suitable combinations thereof. In hardware implementations, the division between functional modules / units mentioned above does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed collaboratively by several physical components. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit (ASIC). Such software can be distributed on a computer-readable storage medium, which may include computer storage media (or non-transitory media) and communication media (or transient media).
[0165] As is known to those skilled in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information, such as computer-readable program instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), static random access memory (SRAM), flash memory or other memory technologies, portable compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer. Furthermore, it is known to those skilled in the art that communication media typically contain computer-readable program instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.
[0166] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.
[0167] The computer program instructions used to perform the operations of this invention may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, etc., and conventional procedural programming languages such as the "C" language or similar programming languages. The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing state information from the computer-readable program instructions. This electronic circuitry can execute the computer-readable program instructions to implement various aspects of the invention.
[0168] The computer program product described herein can be implemented specifically through hardware, software, or a combination thereof. In one alternative embodiment, the computer program product is specifically embodied in a computer storage medium; in another alternative embodiment, the computer program product is specifically embodied in a software product, such as a software development kit (SDK), etc.
[0169] Various aspects of the present invention are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0170] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0171] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0172] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those shown in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0173] Example embodiments have been disclosed herein, and while specific terminology has been used, it is for illustrative purposes only and should be construed as such, and is not intended to be limiting. In some instances, it will be apparent to those skilled in the art that features, characteristics, and / or elements described in conjunction with particular embodiments may be used alone, or in combination with features, characteristics, and / or elements described in conjunction with other embodiments, unless otherwise expressly indicated. Therefore, those skilled in the art will understand that various changes in form and detail may be made without departing from the scope of the invention as set forth in the appended claims.
Claims
1. A parking speed planning method, characterized by, The method comprises the following steps: projecting the target obstacle into a dynamic first coordinate system based on the relative position between the vehicle trajectory and the target obstacle in a static second coordinate system; calculating the ego-vehicle contour of each trajectory point in each segment trajectory in the vehicle trajectory, and cutting off the segment trajectory with collision risk in the vehicle trajectory based on the ego-vehicle contour and the target obstacle; inputting any segment trajectory in the remaining vehicle trajectory into a pre-constructed speed planning model to output the optimal speed of each trajectory point in the segment trajectory; the speed planning model aims to output the optimal speed of each trajectory point in any segment trajectory under the self-trajectory constraint condition of the segment trajectory, so as to minimize the loss value of the segment trajectory.
2. The method of claim 1, wherein, The step of projecting the target obstacle into a dynamic first coordinate system comprises the following steps: obtaining the point closest to the target obstacle in the vehicle trajectory as a target trajectory point; obtaining the first coordinate system corresponding to the target trajectory point and the reference angle between the first coordinate system and the second coordinate system; projecting the target obstacle into the first coordinate system corresponding to the target trajectory point based on the relative position between the target obstacle and the target trajectory point and the reference angle.
3. The method of claim 1, wherein, The step of cutting off the segment trajectory with collision risk in the vehicle trajectory comprises the following steps: calculating the ego-vehicle contour of each trajectory point in any segment trajectory; judging whether the target obstacle exists in the ego-vehicle contour of each trajectory point based on the ego-vehicle contour of each trajectory point and the projection of the target obstacle in the first coordinate system; if the target obstacle does not exist in the ego-vehicle contour of each trajectory point in the segment trajectory, the segment trajectory is retained; if the target obstacle exists in the ego-vehicle contour of one or more trajectory points in the segment trajectory, the segment trajectory is cut off from the first trajectory point in the segment trajectory where the target obstacle exists in the ego-vehicle contour.
4. The method of claim 1, wherein, The self-trajectory constraint condition of any segment trajectory comprises a reference speed square boundary limit constraint, an adjacent point speed square difference limit constraint and an acceleration change rate limit constraint.
5. The method of claim 4, wherein, The construction process of the reference speed square boundary limit constraint comprises the following steps: obtaining the maximum reference speed for driving to any trajectory point based on the acceleration of the acceleration segment path, the acceleration of the deceleration segment path, the initial speed, the terminal speed and the trajectory length of the driving path in the segment trajectory; taking the square of the maximum reference speed as the upper limit of the square of the optimal speed of the trajectory point.
6. The method of claim 1, wherein, The optimal speed of any trajectory point is an estimated approximation value; the estimated approximation value is obtained by looking up the distance calibration table and the speed calibration table of the segment trajectory where the trajectory point is located; the initial speed in the speed calibration table corresponds to the starting distance in the distance calibration table; the terminal speed in the speed calibration table corresponds to the terminal distance in the distance calibration table; the maximum reference speed in the distance calibration table corresponds to the critical point of the acceleration segment path and the deceleration segment path in the distance calibration table.
7. The method of claim 1, wherein, The loss value of the segment trajectory is the sum of the velocity deviation and the centripetal acceleration of each trajectory point in the segment trajectory, and the velocity deviation and the centripetal acceleration are preset with different weights.
8. A parking speed planning device characterized by comprising: The device is configured to implement the method of any one of claims 1-7, and the device comprises: a coordinate projection module configured to project the target obstacle into a dynamic first coordinate system based on the relative position of the vehicle trajectory and the target obstacle in a static second coordinate system; a trajectory truncation module configured to calculate the ego vehicle contour of each trajectory point in each segment trajectory in the vehicle trajectory, and truncate the segment trajectory in the vehicle trajectory that has a collision risk based on the ego vehicle contour and the target obstacle; a velocity solving module configured to input any segment trajectory in the remaining vehicle trajectory into a pre-constructed velocity planning model, and output the optimal velocity of each trajectory point in the segment trajectory; the velocity planning model aims to output the optimal velocity of each trajectory point that makes the loss value of the segment trajectory reach a minimum value under the self trajectory constraint condition of the segment trajectory.
9. An electronic device, comprising: The electronic device comprises: at least one processor, and a memory connected to the at least one processor in communication; the memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to execute the steps of the method of any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer readable storage medium stores computer instructions for enabling the processor to implement the steps of the method of any one of claims 1-7 when executed.