Search This Blog

Tuesday, July 23, 2013

Adaptive Filtering for Errant GPS Data in Smartphone and Vehicle Tracking Systems

loop of errant position data - only about
5.2km was actually traveled.
The route shown to the left is for a pedometer application on my iPhone; one of the many free applications available.  You'll note a loop in the middle of the run - where in fact there was no actual loop; I followed streets and highways and took the same path back that I took out.  When I posted the data on Facebook, my friends and family congratulated me on such a long distance over a short time period - I had to explain that the data wasn't accurate, which I only knew from experience on this route - and by looking closer at the actual trail that the application created for me on a separate page.

So what happened?  GPS data (which is a key source of how the pedometer generates it's data) from time to time can lose accuracy - it's a fact of life; nothing is infallible.  This can be attributed to several potential factors: inadvertent or intentional signal jamming, loss of signal strength in heavy tree foliage, multipathing, an impaired view of the sky combined with a poor satellite constellation, ionospheric interference, space weather interference or signal degredation, GNSS systemic issues, etc.

This reminded me of the reason we developed adaptive filtering processes into our vehicle tracking software.

Big Data - Real-time position data
Smartphone and vehicle tracking systems are a kind of 'Big Data' system that is continuously absorbing position data from the field - pre-processing some of the data, but storing it away for use and forwarding to customers; either in near-real-time, or at a later date.  Some errant data can be identified and eliminated immediately, but most data must be evaluated later for cohesiveness.  Data errors are not always multidimensional: in some cases all but one particular portion of the data is correct.

Adaptive GPS Filtering
A position taken under an overpass inadvertently increased
the estimated speed of the vehicle to 99MPH, which triggered
an over-speed alert, which in turn warranted an investigation.
The driver was cleared of any wrong doing after the analysis.
By looking at moving 'windows' of patterned data, the system can evaluate positions and select those that seem to be out of sync with prior patterns, by evaluating significant speed deviation, sudden direction changes, sudden changes in available satellites for a location calculation and position data that appears 'out of place'; or combinations of the prior conditions.  The larger the data-set to work from, especially when looking backward and forward, the better these types of analyses perform - and the more likely they are to find and remove the errant data while leaving valid data in-place.

Endpoints and window size of data
Errant data at the beginning or end of a reported sequence of data can be more difficult to detect - but one easy way to fix that is by changing the time window; by choosing an earlier start or stop time for the report.  As the window narrows, this gets more and more difficult to determine - such as in instantaneous alert reporting - i.e. over-speed alerts.

Fleet Managers - the human brain as a Big Data Engine
In a prior report we discussed how fleet managers can act a a 'Big Data' Engine, evaluating data in order to determine if it's valid, and to give it proper meaning.  In the above example, it was difficult to tell from the position report or the over-speed alert if this was an actual violation by the driver or not. Though positions prior to and after the report looked normal, it was possible for the driver to have increased their speed long enough to reach the alert trip - but by pairing the data with the satellite map data, we were able to determine that there was an impaired view of the sky, and possible multipathing - eliminating the point as a possible traffic violation.  This kind of analysis would be difficult or impossible with today's technology; there is still a place for humans as part of the critical evaluation of events.

In the future, use of inertial measurement unit technology will be able to help 'fix' the problem at the source by providing an estimate that the GPS signal can corroborate with or can identify as 'challengable'.

In the original example, it appears that there is an intermittent wide-band jamming source in the area that I happened to be traveling.