Smoothing Multilateration Tracks Using Kalman Filter?

I have the following issue regarding aircraft tracking through multilateration: We have been able to implement some algorithms to calculate aircraft positions based on multilateration using 3 or 4 receivers. The problem is that the track looks pretty "wobbly" (see image in the link, sorry I couldn't add it here due to the reputation.)

GPS and Mlat Track

The green line is the true GPS track of the aircraft on Earth, the orange line is the track calculated using multilateration (difference in arrival time, approximately one to two positions per second). The GPS track is just for comparison, it may not be available in the future.

What would be a good way to flatten the track? I came across Kalman filters. I am not a mathematician or have no experience in robotics, etc. The math at this level is extremely difficult for me to understand (I'm glad I was able to do a good job in multilateration). The track is calculated by the closed form algorithm. Maybe, maybe a transition to an iterative algorithm?

So, does it make sense to implement a Kalman filter on the resulting Multilateration position? Or maybe already by the TDOA values ​​before actually calculating the position? Poor appearance leads to minor measurement errors at the receiver site, so it can help smooth / filter the TDOA values ​​themselves.

But then I need a very complex update model since the plane is moving and the TDOA values ​​depend on one true position of the plane. I could imagine that the track smoothing model and the smoothing of the TDOA values ​​are very similar. if not the same.

We do all of this in Java, so maybe there is some library we can start with without doing all the math again?

+3


source to share


2 answers


This is a classic tracking problem on which you will find a lot of scientific literature with many different approaches. The bad news is that if you can't find a library that does the job for you, you'll have to learn math.

The Kalman filter is going in the right direction as it can estimate state (position, speed) from indirect measurement data. Since your multi-iterations are a non-linear mapping for the measured data, you need a non-linear estimate.

My standard recommendation for problems like this is the immemorial Kalman filter because of its (relative) algorithmic simplicity and high reliability. It can also take care of your multi-reclamation, as multiple measurements are allowed in one time step. As for the Kalman filter, you will also need a motion model - a simple (linear) one that can do the job, since I am assuming you are tracking normal aircraft (not very maneuverable jet fighters). Unfortunately I don't know of any suitable implementation - for instructions on how to effectively implement one, read (the math behind this is not trivial):



Merwe, RVD and Wan, EA Quadratic filter without Kalman filter for state and parameter estimation at the International Conference on Acoustics, Speech and Signal Processing, 2001, 3461-3464

For a quick and dirty solution (low accuracy), add a FIR Low-Path Filter for each measurement. You will find tools on the internet (like here ) that can generate code for you.

+3


source


After a quick look at the wikipedia entry for the Kalman filter, it seems quite promising.

Here's another suggestion you might consider:



From previous measurements, you can estimate the position, speed and direction of the plane. Therefore, for any new dimension, you can calculate whether the forces required to move the plane to that position are realistic. Thus, you can sort the measurements with a large error.

+1


source