GPS data improved accuracy based on Data Reconciliation: an mathematical optimization approach

Hello Ardupilot Developers Community.

I am a chemical engineer that recently has been involved with drone activity. In the last few days I have been thinking of GPS accuracy and how it could be possibly improved without investing on RTK.

A short introduction on my professional background as chemical engineer. During years, I dealt with chemical process imbalances, which is the impossibility to close mass (also energy) balances using process data (flow meters, barometers, pressure, temperature, compounds compositions etc),due to sensor random and gross errors.

One technique to minimize these errors is named Data Reconciliation. It is basically an optimization problem taking into account an objective function that aims to minimize the differences between measured sensors values and corrected values (reconciled ones). The second one, in theory, closer to the β€œreal” value. All that driven from the optimization math point of view, constrained by first principles equation, in this particular case, mass and energy balances, to mention the two main equations in process engineering.

I did a quick search on the web and found nothing similarly related for GPS and data reconciliation optimization problem. Thus, I decided to put that on paper and check if there is any mathematical similarity. I think there is! Totally not sure if it is of some meaning and help. But let me explain a bit better.

Drone sensors are not 100% accurate, GPS, barometer, compass, as well as in chemical industries (process sensors). On the other hand, one can also derive equations to calculate latitude and longitude formulas from compass and velocity (pitot tube) and compare them with GPS data. That is exactly what is behind data reconciling in chemical process. Base on that, I derived an optimization problem that could be solved with nonlinear optimization algorithms and deliver reconciled values (superior accuracy compared to sensors readings like in chemical process). Theoretically ……

I am not going further, because at this moment it is just a rough idea, presenting equations and everything else. This is a solution after flight not real time like RTK. The data must be collected and processed after every flight.

I would like to hear from the developers community if it worth explore the subject or if someone else has already talked about it or if it is clearly useless. This is it, please comment.



P.S A brief on data reconciliation in chemical process:

1 Like

During the past month I developed the above model and run it. The optimization problem converged! The results are exactly those ideally generated before random error have been introduced.
Soon I will present the mathematical model.

1 Like

The mathematical formulation:

x,y,z – GPS lat,long,alt;

a – Compass heading;

v – Average speed (gps) or pitot reading between i and i+1;

Sampling = (i+1)-i

Dz – Average (GPS and barometer) altitude climb or descend;

s – Expected error standard deviation of the sensor data (normal distribution);

Measured – Sensors reading data (GPS,COMPASS,BAROMETER AND PITOT);

Reconciled – Calculated (corrected and accuracy improved) sensors data. Must satisfy equations (1) to (8) along all sampling period and minimize the objective function;