1. Field of the Invention
The present relates generally to a method and system for predicting a future state of a vehicle and, more particularly, to such a system utilizing the Unscented Transform (UT) and Numerical Integration (NI) together to stochastically predict the future state.
2. Description of the Related Art
Various vehicular collision detection approaches exist. Some examples include intelligent parking assist and pre-crash sensing. Production systems use radars, laser radars, cameras, or ultrasonic sensors to detect obstacles. However, the majority of these systems do not provide an assessment of another vehicle's future path of travel, but instead solely rely on the proximity of the vehicle as sensed by the sensor.
In order to predict the future position of a vehicle it is conventional to utilize a mathematical nonlinear model of the vehicle. Conventional models include the constant acceleration kinematic model (CA), the kinematic unicycle model (KU), the kinematic bicycle model (KB) or the classic bicycle model (CB). Each model consists of differential equations which, when solved, represent the dynamic action of the automotive vehicle.
Once the model has been selected, one previously utilized approach was to utilize Kalman Prediction to predict the future horizon position of the vehicle at time To+Th where Th equals the horizon time offset into the future from the current time To. Since all of the models are nonlinear, continuous time models, in order to apply the discrete Kalman equations, the nonlinear continuous time models must first be linearized through derivation of the Jacobian state transition matrix, ∇F, and the input gain matrix, ∇G. In addition, Kalman Prediction requires that a discrete time system model propagate forward through the prediction horizon Th. Therefore, at each propagation step, Tstep, the linearized, continuous-time system must be discretized as follows:
where x(t) is the continuous state, x[ ] is the discretized state, Ad is an n×n matrix, Bd is an n×p matrix, n is the number of states, p is the number of inputs, and Ad and Bd are the discretized system using the sample time Tstep.
While Kalman Prediction has proven sufficiently accurate in automotive systems for predicting the future position of the vehicle, Kalman Prediction is necessarily computationally intensive. Since microprocessors of the type used in automotive vehicles, for cost considerations, are not fast relative to personal computers, the computational-intensive equations required by Kalman Prediction mandate relatively long time steps Tstep between sequential equations. This, in turn, can introduce error into the predicted future position of the vehicle.
The UT is a method for calculating the statistics of a random variable which undergoes a nonlinear transformation. The intuition behind the UT is that it is easier to approximate a Gaussian distribution than it is to approximate an arbitrary nonlinear function or transformation. In contrast, the Extended Kalman Filter (EKF) approximates a nonlinear function using linearization, and this can be insufficient when the selected model has large nonlinearities over short time periods.
The UT has been applied to the Kalman-filtering problem to form the well-known Unscented Kalman Filter (UKF). This involves a simple augmentation of the state to include the noise variables. Subsequently, the process and measurement covariance matrices are included in the covariance matrix of the augmented state.
U.S. 2008/0071469, published Mar. 20, 2008 to Caveney (a co-inventor of the present invention) discloses an alternative approach to using Kalman prediction. This publication describes predicting a future position of an automotive vehicle through NI of a non-linear model. Numerical Integration for Future Vehicle Path Prediction by co-inventor Caveney also describes a method for predicting a future position of an automotive vehicle through NI of a non-linear model. The U.S. 2008/0071469 publication, specifically the NI techniques described therein, is hereby incorporated in its entirety by reference.
The inventors discovered that using NI alone to predict the future path of a vehicle is problematic because the non-linear models of vehicular dynamics are not perfect and sensor measurements are noisy. UT accounts for the uncertainty of the model and noisy sensor measurements.
Thus, it is an object of the present invention to use UT and NI together to stochastically predict the future states of the vehicle (e.g., the vehicle's position, orientation, velocity, yaw-rate, and acceleration). This invention allows for the prediction routine to maintain nonlinear models and, consequently, provide more accurate predictions. That the mean of the prediction obtained using UT and NI together was more accurate than obtained by NI alone was unexpected. Furthermore, the invention has been shown to be computationally faster than prior prediction methods.
It is another object of the present invention to predict the future states of a vehicle onboard the vehicle or using roadside hardware.
It is a further object of the present invention to implement the prediction methodology in collision detection and avoidance systems.
A more complete appreciation of the invention and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:
Referring now to the drawings, wherein like reference numerals designate identical or corresponding parts throughout the several views.
In step 101, a non-linear model for the vehicle is chosen. Many vehicle-level models exist. The transformation between the vehicle coordinate frame and the earth coordinate frame implies that all models will at least include some trigonometric nonlinearities. Any model that involves yaw and lateral motion of the vehicle will introduce further nonlinear behavior.
The model described herein is the CB model. However, other dynamic models which can be utilized include the CA, KU, and KB models. Each model consists of differential equations which, when solved, represent the dynamic action of the vehicle. The CB model includes as vehicle parameters the mass M, yaw inertia JZ, and the perpendicular distances from the front and rear axles to the vehicles center of gravity, a and b, respectively. Thus a+b is the wheelbase of the vehicle. The equations are,
where Caf and Car, are the front and rear tire cornering stiffnesses, respectively. The states x, y, and Ψ are with respect to the earth-fixed coordinate frame and vx, vy, and ax are with respect to the vehicle-fixed coordinate frame. x is the longitude with positive East, y is latitude with positive North, and Ψ is the vehicle heading positive counterclockwise from the x axis. VX is the longitudinal velocity of the vehicle, and vy is the lateral velocity. ω is the yaw-rate of the vehicle. The inputs to the model are the vehicle longitudinal acceleration ax and the front-wheel angle, dw and are assumed constant over the prediction horizon. All state values at the initial time of each prediction (i.e., t=0) are available from direct vehicle or Differential Global Positioning System (DGPS) measurements.
The CB model contains a small set of vehicle parameters and differential equations, while still capturing a large part of the vehicle-level dynamics. Note that this model does not include tire deformation or tire caster effects. Only a linear relationship between cornering stiffness and lateral wheel force is incorporated in the CB model.
In step 103a, measurements from sensors 209, 215, 217, and 219 are input to the microprocessor 211. The measurements are noisy (uncertain). Updated sensor measurements are obtained every 100 milliseconds, for example. See step 103b. The present invention accounts for the uncertainty of the measurements as disclosed below. See also Stochastic Path Prediction using the Unscented Transform with Numerical Integration, by co-inventor Caveney.
In step 105, an n-dimensional random variable x with mean
x0=
xi=
xi=
where (√{square root over ((n+λ)Px)})i is the ith row (or column) of the matrix square root. These sigma points are propagated through nonlinear function,
yi=f(xi) i=0, . . . , 2n.
See step 107 of
According to an embodiment of the present invention, when combining NI and UT for path prediction, the propagation through the nonlinear function will be performed by the Runge Kutta-Fehlburg (RKF) equations. Also known as the Embedded Runge-Kutta formulas, this adaptive step-size method is attractive because it allows fifth order accuracy with only six function evaluations. However, other NI techniques including the classical fourth-order Runge-Kutta equations can be utilized.
For the six-state classic bicycle model, the propagation will require 2(6)+1=13 integrations. In step 109, the propagated sigma points are combined into a stochastic prediction. The stochastic prediction is represented in a time or spaced based parameterization in step 111. The mean,
Where the weights are defined by
Here λ=α2 (n+k)−n is a scaling α parameter. α determines the spread of the sigma points around
As discussed above, the UT has been applied to the Kalman-filtering problem to form the well-known UKF. This involves a simple augmentation of the state to include the noise variables. Subsequently, the process and measurement covariance matrices are included in the covariance matrix of the augmented state. However, in the present invention, predictions are only performed where there is no measurement update or process noise, so the UT is only applied to the stochastic state, x. By combining NI with UT, both a better estimate and associated covariance can be obtained.
As illustrated in
As depicted in
The vehicle state microprocessor 211 outputs the predicted future states of Vehicles A, B, D, E, and F to collision detection and avoidance microprocessor 213. The microprocessors 211 and 213 utilize a computer readable storage medium, such as a memory (e.g., ROM, EPROM, EEPROM, flash memory, static memory, DRAM, SDRAM, and their equivalents), configured to control the microprocessors to perform the methods of the present invention. The microprocessors, in an alternate embodiment, further include or exclusively include a logic device for augmenting or fully implementing the present invention. Such a logic device includes, but is not limited to, an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a generic-array of logic (GAL), and their equivalents. The microprocessors 211 and 213 can be separate devices or a single processing mechanism.
In an alternative embodiment illustrated in
The microprocessor 211 uses the output of sensors 203, 205, and 207 to predict the future states of Vehicles A, B, C, D, E, and F. The stochasticly predicted states are communicated to microprocessor 213 for collision detection and avoidance processing. If a collision is detected, then the roadside system 301 communicates to the vehicles involved calculated avoidance measures. The communications 317a, 317b, 317c, 317d, and 317e are unidirectional wireless communications in this embodiment. Supplemental or in lieu of the unidirectional wireless communications, road signs could be used to communicate predicted collisions.
In another embodiment illustrated in
Each Vehicle A, B, and C stochastically predicts its own future states and then shares its predictions with the roadside system through bi-directional wireless communications 403a, 403b, and 403c. Collision detection and avoidance is computed by the roadside system processor 213 and the results shared with the Vehicles A, B, and C through the wireless communications.
In another embodiment illustrated in
Each Vehicle A, B, and C stochastically predicts its own future states and then shares its predictions with the other vehicles through bi-directional wireless communications 503a, 503b, and 503c. Collision detection and avoidance is computed on board each vehicle using microprocessors 213.
Thus, it can be seen that the embodiments illustrated in
Methodologies other than the UT-NI stochastic prediction methods of the present invention can be used in the embodiments illustrated by
In step 611, if the comparison reveals intersecting paths at the same instance in time, then in step 613 that information is used by each involved vehicle to take avoidance measures. If the comparison does not reveal an intersecting path, then the processing loops back to step 607 where predicted paths of the vehicle are shared. It should be noted that different time scales can exist for the different step processes illustrated in
The comparative analysis provided below was performed using real-world data collected on a 2006 Toyota Prius equipped with a DGPS (using WAAS corrections), a longitudinal accelerometer, a yaw-rate gyro, wheel-speed sensors that are averaged for a vehicle-speed estimate, and a steering-wheel-angle sensor. All sensors besides the DGPS were from the production vehicle. For consistency, no additional filtering, besides that done by the sensors and ECUs themselves was performed on the data collected off the vehicle's communication bus. This included the use of the noisy automotive-grade longitudinal accelerometer over numerically differentiated wheel speeds. The steering wheel angle was proportionally related to the front wheel angles by a constant 19.1:1 ratio. Cornering-stiffness values were found empirically while driving on dry asphalt road surfaces.
A. Prediction Accuracy
When linearizing the CB model for Kalman Prediction, it can be linearized once, using the prediction horizon Th, or it can be re-linearized M times over the prediction horizon. Note that for the comparison discussed below, M is chosen to equal the average number of numerical integration timesteps for each of the horizon. Looking at the overall average number of integration timesteps for all five different prediction horizons, M equals approximately 5 times the prediction horizon (i.e., for a 3 sec. prediction horizon, an average of 15 integration steps are required). Thus, a sampling time T of 0.2 sec. was used for Kalman Prediction.
The Earth Coordinate Frame is based on the Universal Transverse Mercator (UTM) System grid. It is a decimal, rectangular grid to which spherical degree measurements from GPS signals can be converted using various reference ellipsoids. In this comparison, the WGS-84 reference ellipsoid was used. Cartesian UTM positions (x, y) are in meters.
The data was collected from a checkroad at the Toyota Technical Center in Ann Arbor, Mich. As illustrated in
Table I provides the Root Mean Square (RMS) prediction accuracy for different loops around the checkroad at different speeds. The superiority of the UT-NI approach is particularly apparent during long prediction horizons and high vehicle speeds. It is interesting to note that means of the prediction position using the UT-NI approach are more accurate than the results provided by the NI approach alone, where the nonlinear CB model is simply integrated ahead using the (deterministic) initial condition.
The checkroad in Ann Arbor receives good GPS satellite visibility. With the WAAS differential beacon correction, the absolute position accuracy of the DGPS unit is roughly 1 m. However, the prediction accuracy is a function of relative accuracy, thus the values in Table I can fall below 1 m.
The superior prediction capabilities of the UT-NI approach are further illustrated in Table II, where the percentage of actual positions which fell within the 98 percentile ellipse of their predicted positions is given. Again this is shown for three different speeds.
B. Computation Requirements
Maintaining floating-point-operation counts in MATLAB with machine-optimized BLAS3 is no longer possible. Fortunately, with modern computer architectures, memory references and cache usage dominate floating-point operations in their effect on execution speed. Therefore, it was decided to use the tic and toc commands available in MATLAB to calculate execution speeds and to use execution speed as the measure of computation requirements. The comparisons obtained were performed on MATLAB version R2006a using its latest version of LAPACK and LinuxX86-optimized BLAS3 libraries. The platform included a 2.13 GHz processor with 2.0 GB RAM and 2 MB cache memory.
Table III shows the average execution times for a loop taken at an average speed of 55 kph, while starting and ending at 0 kph. For a given prediction horizon, the computation times at other speeds were comparable to these values found at 55 kph.
From Table III, each additional second of prediction horizon adds roughly 9 ms and 14 ms to the computation time of the Kalman and UT-NI approaches, respectively. Also, it should be noted that the computation times of the UT-NI approach are roughly 7 times that of the times given by the NI approach although 13 Runge-Kutta evaluations are performed in the present work per prediction, whereas only 1 Runge Kutta evaluation was performed in the NI approach of Caveney's U.S. application Ser. No. 11/554,150.
Table III also shows a rough factor of two increase in execution time using the UT-NI over the Kalman-Prediction approach. However, any single prediction with up to a 5 second horizon is still executable within 100 ms. Furthermore, a particular property of the UT-NI approach not included in this comparison, is that the individual sigma points can be propagated in parallel, where as the Kalman prediction approach requires sequential matrix evaluations and model linearizations/discretizations. A parallel-processing architecture for computing the UT-NI approach should easily require less computation time than the Kalman approach. That said, parallel-processing versions of BLAS3 and LAPACK do exist (e.g., PBLAS and SLAPACK), and should be equally evaluated to see possible reductions in the computation time of the Kalman Prediction approach.
Obviously, numerous modifications and variations of the present invention are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the invention may be practiced otherwise than as specifically described herein.
Number | Name | Date | Kind |
---|---|---|---|
4706771 | Kawabe et al. | Nov 1987 | A |
6202007 | Spicer | Mar 2001 | B1 |
6240367 | Lin | May 2001 | B1 |
6408245 | An et al. | Jun 2002 | B1 |
6675074 | Hathout et al. | Jan 2004 | B2 |
6721657 | Ford et al. | Apr 2004 | B2 |
6816799 | Yu et al. | Nov 2004 | B2 |
6859170 | Devereux et al. | Feb 2005 | B2 |
6907391 | Bellora et al. | Jun 2005 | B2 |
7222007 | Xu et al. | May 2007 | B2 |
7289906 | van der Merwe et al. | Oct 2007 | B2 |
7865299 | Caveney | Jan 2011 | B2 |
20030055563 | Jonas Lars et al. | Mar 2003 | A1 |
20080071469 | Caveney | Mar 2008 | A1 |
20080082266 | Bye et al. | Apr 2008 | A1 |
20080084283 | Kalik | Apr 2008 | A1 |
Entry |
---|
Wan et al., The Unscented Kalman Filter for Nonlinear Estimation, IEEE, 2000. |
Caveney, Numerical Integration for Future Vehicle Path Prediction, IEEE, Proceedings of the 2007 American Control Conference, Jul. 11-13, 2007. |
Caveney, Stochastic Path Prediction using the Unscented Transform with Numerical Integration, Proceedings of the 2007 IEEE Intelligent Transportation Systems Conference, Sep. 30-Oct. 3, 2007. |
Vehicle Speed and Wheel Angles for 55kph loop of Checkroad. |
Numerical Intergration for Future Vehicle Path Prediction, Derek Caveney, New York city, Jul. 11-13, 2007, pp. (3906-3912). |
Stochastic Path Prediction using the Unscented Transform with Numerical Integration, Derek Caveney, 2007. |
Nonlinear Filters: Beyond the Kalman Filter, Fred Daum, Member, IEEE Raytheon, vol. 20 No. 8 Aug. 2005, pp. (57-69). |
Actual versus UT-IN Predicted Positions with 98 Percentile Ellipses for 3 sec Horizon. |
Vehicle Future Trajectory Prediction with a DGPS/INS-based Positioning System, Jihua Huang, Member, IEEE, Han-Shue Tan, Minneapolis, Minnesota, USA, Jun. 14-16, 2006, pp. (5831-5836). |
A New Approach for Filtering Nonlinear Systems, Simon J.Julier,et al,Robotics Research Group, department of Engineering Science, University of Oxford, OX1 3PJ UK, Proceeding of the American Control conferences, Seattle, Washington, Jun. 1995, pp. (1628-1632). |
An IMM Algorithm for Tracking Maneuvering Vehicles in an adaptive Cruise Control Environment, Yong-Shik Kim,et al., International Journal of Control, Automation, and Systems, vol. 2, No. 3., pp. (310-318), Sep. 2004. |
F=Const. * (1-cos(deltaHeading)) * TotalVelocity/(Relative Distance Λ2). |
Zoom-In during Curves of Actual Versus UT-IN Predicted Positions with 3 sec Horizon and 98 Percentile Ellipses. |
Number | Date | Country | |
---|---|---|---|
20100057361 A1 | Mar 2010 | US |