DOP, the non-technical description
How accurate is your GPS? How close are you really to where it says
Measure the accuracy
First you have to know where you really are. Obviously, if you know where
you really are, you can check the GPS. But if you knew where you were you
wouldn't need the GPS. So how do you know what your position error is when
you don't know exactly where you are? It's not obvious, but the short answer
is that you don't. Just like if you buy a lottery ticket; you can't tell
if you've won or not until they announce the correct numbers. You can't
know the correct number in advance, but you can estimate your chances of
Estimate the accuracy
As you sit, wondering where you are, watching your GPS, you notice that
the position it gives wanders around. Some of those numbers must be accurate,
but which ones are they? If you wait long enough, you can take the average
and find your position with improved accuracy. Then you can take all of
the positions and find out how far they are from that average position.
From that you could calculate what the average deviation was. The next
time you used the GPS, you could figure that the GPS position would vary
in about the same way, so you could use your "average deviation" numbers
to estimate the accuracy of your new GPS position. The only problem is
that these numbers do vary, so it's not this simple. But the idea is good.
Sources of error
There are several sources of error in any GPS reading. Some of these errors
are due to natural causes, and some error is introduced on purpose (SA).
You can read more about the "error budget" and Selective Availability elsewhere.
These numbers vary, but not so much as the position errors.
There's a famous computing principle called GIGO -- garbage in, garbage
out. Here it's not really garbage in; they're just "little" errors.
When the GPS uses these inputs to solve for your position, it is only
natural that your position is going to be in error too. If you study the
equations that the GPS uses to solve for the position, you can analyze
what the effects of these input errors will be and you can find a formula
which predicts what the output errors will be. This formula predicts what
the error in the GPS position will be and presents a number to the user.
It's like a magnifying effect, since it normally makes the final error
bigger than the input errors. The magnifying factor is called DOP -- Dilution
Dilution of Precision
The DOP factor is used in a very simple equation:
SD(position) = DOP * SD(inputs)
This means that the standard deviation of the position is simply the
standard deviation of the inputs multiplied times the DOP factor. Of course,
this formula isn't as simple as it looks, since for GPS a multidimensional
solution is required, and therefore matrix mathematics is used. But the
idea is good.
One interesting thing about DOP is that it does not depend on the anything
that cannot be predicted in advance. It only depends on the positions of
the GPS satellites relative to the GPS receiver's location. The satellite
positions can be calculated in advance, so you can determine the quality
of your GPS position fix in advance, without even using the GPS system.
DOP only depends on the position of the satellites: how many satellites
you can see, how high they are in the sky, and the bearing towards them.
This is often refered to as the geometry. The satellites move, so the geometry
varies with time, but it is very predictable.
VDOP, HDOP, etc
DOP is often divided up into components. These componets are used because
the accuracy of the GPS system varies. For example horizontal position
can usually be measured more accurately than vertical position. The input
errors are the same, but the geometry may favor one direction over another.
VDOP is vertical DOP; HDOP is horizontal DOP. There are also PDOP for 3D
positions, TDOP for time, and GDOP for geometic DOP (which is everything
For example, a DOP of 2 means that whatever the input errors were, the
final error will twice as big. We can use the DOP value to estimate the
possible error of your position. If you know (or guess) that the UERE is
25 meters ... (where UERE is user estimated range error: the standard deviation
of the errors in the psuedoranges of the satellites at the user's position)
... then you know that your position error has a standard deviation of
If we don't know the input errors, we can just use the DOP value as
an indicator of how good the conditions are for making GPS position measurements.
ie, one with a DOP of 2 is better than one with a DOP of 4.
Some ways to improve accuracy
Use DGPS to reduce the errors in the inputs.
Improve DOP by using more satellites.
Take your measurements when the satellites are spread out over the
Average the GPS position readings over time.
Reaching for a metaphor
To understand how DOP is calculated requires understanding statistics.
If you just want to use it, and if you don't know statistics, just think
about betting. Pick a sport, any sport. Whether it is pool, bowling, basketball,
diving, the stock market, or whatever. There are difficult shots and easy
shots. Difficult things are riskier. DOP is a rating of the difficulty
of getting a good position out of a particular combination of GPS satellites.
With a high DOP, don't expect an accurate position; it could still be
good, but probably it's not.
With low DOP, the position is probably closer to being right, but remember
it's an estimate, not a guarantee.
By Norris Weimer