System and method for trajectory estimation
11567500 · 2023-01-31
Assignee
Inventors
Cpc classification
B60W30/0956
PERFORMING OPERATIONS; TRANSPORTING
B60W30/0953
PERFORMING OPERATIONS; TRANSPORTING
B62D15/026
PERFORMING OPERATIONS; TRANSPORTING
G05D1/0214
PHYSICS
B60W30/09
PERFORMING OPERATIONS; TRANSPORTING
B62D15/0255
PERFORMING OPERATIONS; TRANSPORTING
G08G1/167
PHYSICS
B60W10/20
PERFORMING OPERATIONS; TRANSPORTING
International classification
B60W30/09
PERFORMING OPERATIONS; TRANSPORTING
B60W30/095
PERFORMING OPERATIONS; TRANSPORTING
B60W10/20
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A system for estimating a trajectory of a vehicle includes vehicle state sensors detecting a state of movement of the vehicle and environment sensors monitoring an environment of the vehicle. A free space module determines a free space corridor based on the detected state of movement of the vehicle and the monitored environment of the vehicle. A goal point determination module determines at least one goal point for the trajectory to be estimated based on the free space corridor. A trajectory planning module estimates a reference trajectory based on the at least one goal point and calculates a deviation between an actual trajectory and the reference trajectory of the vehicle. A trajectory control module minimizes the deviation between the actual trajectory and the reference trajectory of the vehicle and outputs optimal control parameters for the movement of the vehicle based on the minimized deviation.
Claims
1. A system for estimating a trajectory of a vehicle, comprising: vehicle state sensors detecting a state of movement of the vehicle, environment sensors monitoring an environment of the vehicle, a free space module which determines a free space corridor based on the detected state of movement of the vehicle and based on the monitored environment of the vehicle, a goal point determination module which determines at least one goal point for the trajectory based on the free space corridor, a trajectory planning module which estimates a reference trajectory based on the at least one goal point and which calculates a deviation between an actual trajectory and the reference trajectory of the vehicle, and a trajectory control module which minimizes the deviation between the actual trajectory and the reference trajectory of the vehicle and which outputs optimal control parameters for movement of the vehicle based on the minimized deviation, wherein the goal point determination module determines a primary goal point based on a maximum range of perception capability of the environment sensors and at least one backup goal point based on a reduced range that is smaller than the maximum range of perception capability, the trajectory planning module estimates the reference trajectory based on the primary goal point and checks the reference trajectory with respect to dynamic constraints and to constraints related to the free space corridor, and the trajectory planning module estimates a revised reference trajectory based on the backup goal point if the reference trajectory based on the primary goal point violates the dynamic constraints or the constraints related to the free space corridor.
2. The system according to claim 1, wherein the trajectory planning module determines if the deviation between the actual trajectory and the reference trajectory is greater than a predetermined threshold, determines a remaining steering intervention time, and estimates an updated reference trajectory based on the remaining steering intervention time if the deviation is greater than the predetermined threshold.
3. The system according to claim 1, comprising a lateral error determination module which determines a lateral error between a lateral position of the vehicle derived from the state of movement of the vehicle and an expected lateral position, and wherein the goal point determination module determines the at least one goal point additionally based on the lateral error.
4. The system according to claim 1, wherein the trajectory control module minimizes the deviation between the actual trajectory and the reference trajectory of the vehicle by minimizing a cost function which is based on a single track model of the vehicle.
5. The system according to claim 1, wherein the trajectory control module estimates a compensating curvature which is applied to the actual trajectory in order to redirect the vehicle to the reference trajectory if the deviation between the actual trajectory and the reference trajectory of the vehicle increases.
6. The system according to claim 1, wherein the vehicle state sensors comprise a global positioning system and a inertial measurement unit, and/or wherein the environment sensors comprise an optical camera, a Radar system and/or a Lidar System.
7. A method for estimating a trajectory of a vehicle, the method comprising: detecting a state of movement of the vehicle by using vehicle state sensors, monitoring an environment of the vehicle by using environment sensors, determining a free space corridor based on the detected state of movement of the vehicle and based on the monitored environment of the vehicle, determining at least one goal point for the trajectory based on the free space corridor, estimating a reference trajectory based on the at least one goal point, calculating a deviation between an actual trajectory and the reference trajectory of the vehicle, minimizing the deviation between the actual trajectory and the reference trajectory of the vehicle, and providing optimal control parameters for movement of the vehicle based the minimized deviation, wherein determining the at least one goal point comprises determining a primary goal point based on a maximum range of perception capability of the environment sensors and at least one backup goal point based on a reduced range that is smaller than the maximum range of perception capability, and estimating the reference trajectory comprises estimating the reference trajectory based on the primary goal point and checking the reference trajectory with respect to dynamic constraints and to constraints related to the free space corridor, and estimating a revised reference trajectory based on the backup goal point if the reference trajectory based on the primary goal point violates the dynamic constraints or the constraints related to the free space corridor.
8. The method according to claim 7, wherein estimating the reference trajectory comprises: determining if the deviation between the actual trajectory and the reference trajectory is greater than a predetermined threshold, and if the deviation is greater than the predetermined threshold: determining a remaining steering intervention time, and estimating an updated reference trajectory based on the remaining steering intervention time.
9. The method according to claim 7, comprising: determining a lateral error between a lateral position of the vehicle derived from the state of movement of the vehicle and an expected lateral position, and determining the at least one goal point additionally based on the lateral error.
10. The method according to claim 7, wherein minimizing the deviation between the actual trajectory and the reference trajectory of the vehicle comprises minimizing a cost function which is based on a single track model of the vehicle.
11. The method according to claim 7, wherein providing optimal control parameters for the movement of the vehicle comprises estimating a compensating curvature which is applied to the actual trajectory in order to redirect the vehicle to the reference trajectory if the deviation between the actual trajectory and the reference trajectory of the vehicle increases.
12. The method according to claim 7, wherein the reference trajectory is estimated when a lateral acceleration of the vehicle is smaller than an acceleration threshold and the at least one goal point is in compliance with predefined constraints.
13. The method according to claim 7, wherein determining the free space corridor for the vehicle comprises applying a convex hull technique.
14. A non-transitory computer readable medium comprising instructions for carrying out the method of claim 7.
Description
DRAWINGS
(1) Exemplary embodiments and functions of the present disclosure are described below in conjunction with the following drawings, in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
DETAILED DESCRIPTION
(14) In
(15) Longitudinal and lateral control of the host vehicle 11 can be provided, however, by trajectory planning as depicted in
(16) The time horizon 21 being indicated by T.sub.p in
(17)
(18) The system 31 further comprises a free space module 37 and a lateral error determination module 39 which each receive a combined input from the vehicle state sensors 33 and from the environment sensors 35. The free space corridor module 37 determines a space being free of obstacles in the direction of movement of the host vehicle 11. This space is denoted as free space corridor 38 (see
(19) The free space corridor 38 determined by the free space module 37 and the lateral error determined by the lateral error determination module 39 are inputs for a goal point determination module 41 of the system 31. The goal point determination module 41 determines a primary goal point 55 (see
(20) The trajectory planning module 43 estimates the reference trajectory 27 (see
(21) The system 31 further comprises a trajectory control module 45 which outputs control parameters for the movement of the vehicle to a vehicle motion control 51 being in communication with the system 31 for estimating the trajectory of the host vehicle 11. The output of the trajectory control module 45 which is also the output of the entire system 31 comprises parameters for the steering of the host vehicle 11, e.g. steering angle or steering torque.
(22) As depicted in
(23) The segments 53 are represented in a vehicle coordinate system 52. In contrast, an occupancy grid as shown in
(24) Therefore, the set of segments 53 representing the free space corridor 38 (see
(25) Examples for the use of the segments 53 representing the free space corridor 38 are shown in
(26)
(27) In step 101, inputs are acquired which are necessary to carry out the method 100. These inputs comprise goal point information 91 being provided by the goal point determination module 41 (see
(28) In steps 102 and 103, a validation of a part of the input is performed which is received at step 101. At step 102, the received goal point information 91 is validated by checking if the goal points required for the trajectory planning are existing and available. For example, it is checked if the primary goal point 55 (see
(29) At step 103, the current lateral acceleration of the host vehicle 11 is compared with a maximum lateral acceleration which may be predefined for the host vehicle 11. For example, an upper limit for the lateral acceleration with respect to comfortable driving is 0.3 g.
(30) If the examination of the goal points fails at step 102 or if the current lateral acceleration is greater than the predefined maximum lateral acceleration at step 103, the trajectory planning is terminated and a driver of the host vehicle 11 has to take over control. In the latter case, i.e. if the current lateral acceleration is greater than the maximum lateral acceleration, the host vehicle 11 is driving too fast for the system 31 and the method 100 to provide a feasible trajectory output.
(31) At steps 104 and 105, the reference trajectory 27 is estimated based on the primary goal point 55 which corresponds to the maximum range of perception capability of the environment sensors 35. The reference trajectory 27 can be represented by a fifth order polynomial for the longitudinal and for the lateral position, respectively, of the host vehicle 11. In detail, the longitudinal position px(t) and the lateral position py(t) for a given time t is represented by the following equations:
(32)
(33) The coefficients a.sub.0 to a.sub.5 and b.sub.0 to b.sub.5 are determined at step 104 by using an initial condition (px.sub.0, py.sub.0, t.sub.0) representing the current position of the host vehicle 11 for the time to and using a final condition (px.sub.f, py.sub.f, t.sub.f) representing the primary goal point which is to be reached at the time tf. In addition, the coefficients a.sub.0 to a.sub.5 and b.sub.0 to b.sub.5 are subjected to the further condition of minimizing a planning cost function which is defined by:
J=∫.sub.0.sup.T.sup.(t).sup.2+
(t).sup.2dt (2)
(34) At steps 106 to 109, the reference trajectory 27 being estimated based on the primary goal point 55 is checked for violation of certain constraints. If one of these constraints is violated, a revised reference trajectory is estimated based on the first of the backup goal points 57 (see
(35) At step 106, the reference trajectory being estimated based on the primary goal point is checked against dynamic constraints. The dynamic constraints comprise minimum and maximum limits of the velocity and the acceleration in longitudinal and lateral direction for the host vehicle 11. f one of these constraints is violated, i.e. if the velocity or the acceleration of the host vehicle 11 is greater than one of these limits along the reference trajectory, a revised reference trajectory will be estimated based on the first backup goal point 57 which has a reduced distance with respect to the current position of the host vehicle 11 in comparison to the primary goal point 55 (see
(36) The revised reference trajectory is estimated as step 108, and it is also checked for violation of the dynamic constraints at step 106. If the dynamic constraints are still violated, a further revised trajectory is estimated as step 108 based on the next backup goal point 57 having a further reduced distance with respect to the current position of the host vehicle 11 in comparison to the first backup goal point 57 (see
(37) The check if a further backup goal point 57 is available is performed at step 109. That is, before the next revised trajectory is estimated at step 108, the existence of the next backup goal point 57 is checked. If it is determined at step 109 that no further backup goal point 57 is available, the method will be not able to plan a feasible trajectory. In this case, the method is terminated and the driver of the host vehicle 11 has to take over control.
(38) At step 107, the reference trajectory which is in compliance with the dynamic constraints is checked for a violation of free space corridor constraints. For this check, the segments 53 are used which are a representation of the free space corridor 38 as described above in context of
(39) In detail, the set of segments 53 shown in
Σ.sub.(j)=1.sup.Mx.sub.FR.sup.(j)=X.sub.FR
Σ.sub.(j)=1.sup.My.sub.FR,L.sup.(j)=Y.sub.FR,L
Σ.sub.(j)=1.sup.My.sub.FR,R.sup.(j)=Y.sub.FR,R (3)
wherein x.sub.FR.sup.(j) represents the set of arc lines in the longitudinal direction for the segment j, M is the total numbers of segments, y.sub.FR,L.sup.(j) and y.sub.FR,R.sup.(j) are the set of left and right lateral boundaries of each segment, respectively, X.sub.FR is the convex hull of the set of longitudinal arc lines, Y.sub.FR,L and Y.sub.FR,R are the convex hull of the set of left and right lateral boundary of whole segment.
(40) The reference trajectory 27 being output of step 106 is checked for the free space corridor 38 represented by the convex hull 60, i.e. it is checked if the reference trajectory 27 is located within the limits given by the area defined by the convex hull 60. If yes, the movement of the host vehicle along the trajectory will be free of collisions.
(41) If the reference trajectory violates the free space corridor constraints, a revised reference trajectory is estimated again based on the next backup goal point at step 108. This reference trajectory being estimated based on the next backup goal point 57 is checked again for violation of the dynamic constraints at step 106. Thus, the check for violation of the free space corridor constraints is also iterated in the same manner using the next backup goal point 57 as described above for the check with respect to the dynamic constraints at step 106.
(42) The reference trajectory which passes both checks for constraints at steps 106 and 107 and therefore fulfils all constraints can be regarded as trajectory having optimal coefficients of the fifth order polynomial defined above in formula (1). This set of optimal coefficients can be denoted by
α={a.sub.0, a.sub.1, a.sub.2, a.sub.3, a.sub.4, a.sub.5}
β={b.sub.0, b.sub.1, b.sub.2, b.sub.3, b.sub.4, b.sub.5} (4)
(43) These sets α, β of coefficients can be regarded as vectors describing the longitudinal and lateral component of the reference trajectory 27 (see
(44) At step 111, the reference trajectory 27 having the optimal coefficients as described above is checked for a deviation with respect to an actual trajectory or motion of the host vehicle 11 which is derived from the output provided by the vehicle state sensors 33 (see
(45)
(46) The sampling time Δk corresponds to a current time stamp which is part of the time information 94 being input by the vehicle state sensors 33, e.g. a GPS and a IMU system. The reference trajectory for the sampling time Δk can be determined as:
PX(t)=Φ.Math.α
PY(t)=Φ.Math.β
PX(t)=[(t)
(t)
(t)
(t)].sup.T
PY(t)=[(t)
(t)
(t)
(t)].sup.T (6)
(47) PX, PY are vectors of the estimated reference trajectory 27 for the longitudinal and lateral direction, respectively, and comprise the position, the velocity, the acceleration and the jerk of the planned motion of the host vehicle 11.
(48) As mentioned above, the actual trajectory of the host vehicle 11 can be determined by the output of the vehicle state sensors 33, and respective vectors corresponding to PX, PY can be determined by a synchronization with the time information 94 (see
(49) The deviation between the reference trajectory 27 and the actual trajectory of the host vehicle 11 can be described by the following deviation vector:
(50)
(51) The deviation vector e(t) for the instantaneous time t comprises a longitudinal distance deviation e.sub.x(t), a lateral distance deviation e.sub.y(t) and a yaw angle deviation e.sub.ψ(t), respectively.
(52) Next, a remaining steering intervention time as well as a remaining longitudinal distance to the primary or backup goal point 55, 57 being used for the reference trajectory is calculated. In detail, the remaining steering intervention time and the remaining longitudinal and lateral distances are calculated as follows:
(53)
px.sub.g and py.sub.g are the longitudinal and the lateral coordinates of the primary or backup goal point 55, 57 being used for the calculation of the reference trajectory in the vehicle coordinate system, and px(t) and py(t) describe the feedback for the motion of the host vehicle 11. t.sub.f is the total steering intervention time, i.e. the time the host vehicle needs to arrive at the primary or backup goal point 55, 57. The remaining steering intervention time Δt.sub.r and the remaining distances are calculated at step 113 where it is decided if the remaining time and distances are sufficient in order to re-optimize the reference trajectory. If the remaining time and the remaining distances are not sufficient, the method is terminated and the driver of the vehicle has to take over control.
(54) If there is sufficient remaining time for steering intervention and if the distances to the primary or backup goal point 55, 57 are also sufficient, a re-optimization of the reference trajectory will be performed at step 112. For the re-optimization, a new reference trajectory is estimated for the remaining steering intervention time using the same primary or backup goal point 55, 57 as for the original reference trajectory 27 for which the optimal coefficients are output at step 110. That is, for the remaining steering intervention time new optimal coefficients a.sub.0 to a.sub.5 are calculated in order to redirect the host vehicle 11 to the primary or backup goal point under consideration.
(55) The process of re-optimizing the trajectory is depicted schematically in
(56) If the deviation between the reference trajectory 27 and the motion of the host vehicle 11 is lower than the predefined threshold at step 111, trajectory control will be performed based on the use of a single track model (see
(57) According to the single track model, a vector x is defined as [e.sub.y, ė.sub.y, e.sub.ψ, ė.sub.ψ], wherein e.sub.y and ė.sub.y are the lateral deviation and its rate, and wherein e.sub.ψ and ė.sub.ψ are the yaw deviation and the yaw rate deviation with respect to the reference trajectory, respectively. An equation of motion for the deviation can be formulated as
(58)
(59) In these formulas, m is the mass of the vehicle, v.sub.x is the longitudinal velocity (see
(60) The equation of motion (9) can be vectorized as follows by introducing a state transmission matrix A and input matrices B, B.sub.{dot over (ψ)} and B.sub.Φ:
(61)
(62) An optimal control output may be determined based on a Model Predictive Control scheme which tries to diminish the deviation at a steady state in which the influence of the road curvature B.sub.ψ and of the road angle B.sub.Φ is excluded. In order to derive the cost function, a prediction according to the Model Predictive Control scheme can be formulated as follows:
(63)
(64) The matrix M is a convolution matrix of the state transition matrix A as defined in (10) and describes the predictive horizon (N steps) of the state of the vehicle, and Θ is a collective controllability matrix based on the matrices A and B as also defined in (10). u.sub.k corresponds to the steering angle δ at the time step k.
(65) A cost matrix q for weighting each deviation state (vector x as defined in context of (9)) can be defined at a predicted time horizon N by the following equation:
(66)
(67) {tilde over (Q)} represents a cost matrix of states at for the whole predicted time horizon N, and C denotes an output matrix. Furthermore, an input rate matrix at the predicted horizon can be defined as:
(68)
(69) By calculating a Hessian matrix of the cost function and an coefficient vector F of the linear part of the function as follows
H=C.sup.T{tilde over (Q)}C+{tilde over (R)}
F=C.sup.t{tilde over (Q)}M (14)
a quadratic cost function can be formulated for an optimization problem as
J.sub.k=u.sub.k.sup.THu.sub.k+2x.sub.k.sup.TFu.sub.k (15)
(70) An example for a quadratic cost function is shown in
½u.sup.THu+F.sup.tu.fwdarw.min
subjected to
A.sub.cu.sub.k≤b.sub.c+B.sub.cx.sub.k (16)
(71) A.sub.c is an concatenation of an equality and inequality constraint matrix, b.sub.c is a state constraint [λ.sub.ub, λ.sub.lb], wherein λ.sub.ub is a upper boundary of the deviation state vector, λ.sub.lb is a lower boundary of the deviation state vector, B.sub.c is a concatenation of the state transition matrix at each predictive horizon [−A.sub.n, A.sub.n] and n is the associated predictive horizon (n steps).
(72) The result of the minimization provides an optimal control output for the vehicle motion control 51 (see
(73)
(74) In addition, based on the single track model a compensation for the steering angle δ may be derived as follows:
(75)
(76) δ.sub.FF is a feed forward steering angle, RoC is the radius of curvature, a*.sub.y is a desired lateral acceleration, ψ* is the desired yaw rate, and Φ is the road angle.
(77) At block 115, a compensating curvature 67 (see
(78) In a normal situation, the host vehicle 11 should track the reference trajectory 27. If the motion of the host vehicle 11 starts to deviate from the reference trajectory 27, i.e. if a current direction 69 and a current curvature 73 of the vehicle motion deviates from the direction 71 and the curvature 75 of the reference trajectory as shown at
(79) Based on the single track model, the compensation curvature 67 may be calculated as:
(80)
(81) The direction of the host vehicle 11 is defined by the steering angle of the vehicle. As shown in
(82) TABLE-US-00001 TABLE 1 Glossary of Terms Used Above Abbreviation Description Unit px.sub.0 initial longitudinal position m py.sub.0 initial lateral position m t.sub.0 initial time s px.sub.f final longitudinal position m px.sub.f final lateral position m t.sub.f final time s α.sub.0, α.sub.1, α.sub.2, α.sub.3, α.sub.4, α.sub.5 longitudinal trajectory polynomial coefficients — b.sub.0, b.sub.1, b.sub.2, b.sub.3, b.sub.4, b.sub.5 lateral trajectory polynomial coefficients — x.sub.FR.sup.(j) arc of the free space corridor segment j m y.sub.FR, L.sup.(j) boundary of left lateral position at segment j m y.sub.FR, R.sup.(j) boundary of right lateral position at segment j m j number of free space corridor segment — M total numbers of segments — X.sub.FR vector of whole set of arc length — Y.sub.FR vector of whole set of boundary of left and right lateral position — α vector of longitudinal trajectory polynomial coefficients — β vector of lateral trajectory polynomial coefficients — Δk sampling time s Φ state transition matrix — PX vector of longitudinal trajectory — PX vector of lateral trajectory — estimated longitudinal position m
estimated lateral position m
estimated longitudinal velocity m/s
estimated lateral velocity m/s
estimated longitudinal acceleration m/s.sup.2
estimated lateral acceleration m/s.sup.2
estimated longitudinal jerk m/s.sup.3
estimated lateral jerk m/s.sup.3 e.sub.x longitudinal distance deviation m e.sub.y lateral distance deviation m e.sub.ψ yaw angle deviation rad e deviation vector — px.sub.g longitudinal goal position m py.sub.g lateral goal position m Δt.sub.r remain steering intervention time s Δpx remain longitudinal distance to goal m Δpy remain lateral distance to goal m ė.sub.y lateral velocity deviation m/s ë.sub.y lateral acceleration deviation m/s.sup.2 ė.sub.ψ yaw rate deviation rad/s ë.sub.ψ yaw acceleration deviation rad/s.sup.2 c.sub.f front tire cornering stiffness coefficient N/rad c.sub.r rear tire cornering stiffness coefficient N/rad l.sub.f distance between the center of gravity to the front axle m. l.sub.r distance between the center of gravity to the rear axle m. .sub.ψ* desired yaw rate rad/s δ steering angle rad g constant of gravitational acceleration m/s.sup.2 m vehicle mass kg ϕ road angle rad I.sub.z mass moment of inertia of the vehicle around the vertical axis kg/m.sup.2 ν.sub.x Feedback longitudinal velocity m/s A single track model state transition matrix — B state input matrix for the steering angle input — B.sub.ψ state input matrix for the yaw rate input — B.sub.ϕ state input matrix for the road bank angle input — χ deviation state vector — ξ The prediction of Model Predictive Control for the — deviation state vector M convolution matrix — Θ prediction of a controllability matrix — N prediction horizon — k discretized time step — u.sub.k steering angle at time step k — q.sub.e.sub.