Here we look at an example of a more complicated state estimation filter than the Simple Static State Estimation Example, where we have a dynamic system that changes its state over time. Specifically, we use an - filter in one dimension.
We assume an aircraft is moving radially away from the radar or towards the radar. The angle to the radar and airplane altitude are constant.
represents the range to the aircraft at time . The aircraft velocity can be approximated by using the range differentiation method – the change in the measured range with time.
Thus, the velocity is the derivative of the range:
The radar sends a track beam in the direction of the target at a constant rate. The track-to-track interval is .
Prediction Equations
Two motion equations describe the system dynamic model for constant velocity motion:
- The aircraft range at the next track cycle equals the range at the current track cycle plus the target velocity multiplied by the track-to-track interval.
- Since we assume constant velocity in this example, the velocity at the next cycle equals the velocity at the current cycle.
The above system of equations is called a State Extrapolation Equation (also called the Transition Equation or Prediction Equation) and is also one of the five Kalman filter equations. This system of equations extrapolates the current state to the next state (prediction).
The predictton equations depend on the system dynamics and differ from example to example.
- Filter
Let the radar track-to-track period be 5 seconds. Assume that at time , the estimated range of the unmanned air vehicle is 30,000 the estimated UAV velocity is 40 m/s.
Using the prediction/state extrapolation equations, we can predict the target position at time :
The target velocity prediction for time :
However, at time , the actual range measurement we get from the radar, , is and not ; there is a 90 meter gap between the predicted range and the measured range. There are two possible explanations for this:
- The radar measurements are not precise.
- The aircraft velocity has changed. The new aircraft velocity would be .
Which of these two is true?
State Update Equations
Velocity
We can write a State Update Equation for velocity:
The factor depends on the precision level of the radar.
Suppose that the precision of the radar is 20m. The 90 meter gap between the predicted and measured ranges would most likely result from change in aircraft velocity. In this case, should be set to a high value. For example, with , we would have
Suppose that the precision of the radar is 150m. Then, the 90 meter gap probably results from measurement error. In this case, should be set low. If we have , we would have:
If the aircraft velocity has changed from 40m/s to 22m/s, we see this after 10 track cycles (running the above equation 10 times with ). If the gap is caused by random measurement error, then the measurements will fluctuate around the predicted position, and might be in front or behind the predicted positions. Thus, on average, if the gap between the predicted and measured positions is caused by random measurement errors, the errors will cancel out over multiple measurement cycles and will not result in a significant change in the estimated velocity.
Position
The State Update Equation for the aircraft position is similar to the equation that was derived in the previous Simple Static State Estimation Example:
Unlike the previous example, where the gain factor is re-calculated in each iteration with , the factor is constant in this example. Its magnitude depends on the radar measurement precision. For high precision-radar, we should choose high , giving high weight to the measurements.
If , then the estimated range equals the measured range:
If , then the measurement has no meaning:
Thus, our State Update equations or - track update equations or - track filtering equations are:
State Update equations for position and velocity
- and are gains for position update and velocity update.
- For example, a higher means that the update is more sensitive to new position measurements.
Estimation Algorithm
Numerical Example
Consider an aircraft moving radially toward a radar in a 1D setting. The parameters used are:
The track to track interval is 5 seconds.
Iteration 0
The initialization for time is given as:
Prediction:
- Position:
- Velocity:
Iteration 1
In the first cycle, the initial guess is the prior estimate:
We get a measurement of:
Calculating the current estimate with the State Update Equation:
- Position:
- Velocity:
Calculating the next state estimate using the State Extrapolation equations:
- Position:
- Velocity:
Iteration 2
After a unit time delay, the predictions from the previous iteration become the prior estimate in the current iteration:
We get a new measurement from the radar of
Calculating the current state estimate using the State Update Equation:
and
Calculating the next state estimate using the Prediction Equations:
The following table summarizes the measurements and estimates for 10 iterations:
Calculation Summary
Result Analysis
The following chart compares the true values, measured values, and estimates:
Our estimation algorithm has a smoothing effect on the measurements and converges toward the true value.
Using high and
The following chart depicts the true, measured, and estimated values for α = 0.8 and β = 0.5.
The “smoothing” degree of this filter is much lower. The “current estimate” is very close to the measured values, and the predicted estimate errors are relatively high.
So, shall we always choose low values for and ? No. The value of and should depend on the measurement precision. If we use high-precision equipment, like laser radar, we would prefer a high and that follow measurements. In this case, the filter would quickly respond to a velocity change of the target. On the other hand, if measurement precision is low, we prefer low and . In this case, the filter smoothes the uncertainty (errors) in the measurements. However, the filter reaction to target velocity changes would be much slower.