park - optimal hatch filter with an adaptive smoothing window width

20
Optimal Hatch Filter with an Adaptive Smoothing Window Width Byungwoon Park, Kyoungho Sohn, Changdon Kee (Seoul National University) (Email : [email protected]) The Hatch filter is a code-smoothing technique using integrated carrier phase observations. It is an easy technique that non-experts can use to reduce receiver noise on the pseudorange. This paper suggests a new algorithm for the optimal Hatch filter whose smoothing window width varies adaptively depending on the regional, diurnal and seasonal ionospheric vari- ation and satellite elevation angle. We consider both quiet and storm conditions of the ionosphere. Using the well-known quiet ionospheric model, a conservative boundary value for ionospheric storm and the receiver noise statistics function of the satellite elevation angle, this algorithm can mathematically solve the optimal averaging constant for each satellite in every epoch. From a 24 hr data process result and real-time experiment, we found that the position accuracy of the optimal Hatch filter is better and more robust than that of the traditional Hatch filter. The optimal Hatch filter algorithm and its results are expected to provide a new solution for a single-frequency DGPS receiver and a thorough understanding of the relationship between the position error and the averaging constant. Furthermore, a DGPS user who applies this algorithm to a low-cost single-frequency receiver can obtain a more accurate and robust position result than via the classical Hatch filter. KEY WORDS 1. DGPS. 2. optimal Hatch filter. 3. ionospheric delay. 1. INTRODUCTION. The Hatch filter is an averaging filter that can smooth pseudorange measurement with a carrier phase. It is a type of recursive filter that uses the current measurement and previous estimate without any dynamic model or additional sensor. It is so simple that even a non-expert can use it, and it is well known and popular with researchers and receiver developers. There are many smart filters now available such as the divergence-free hatch or the Kalman filter, but it is still used in simple system construction, cheap single-frequency receivers or local Differential GPS (DGPS) because of its advantages. The performance of the Hatch filter is profoundly coupled to the width of the smoothing window. In principle, the larger the smoothing window width used in the filtering process, the more precise the smoothed pseudorange. However, it remains a problem that the ionospheric divergence effect between the code and carrier increases with smoothing window width. According to the Federal Aviation Administration (FAA) report, the Local Area Augmentation System (LAAS) recommends a 100 second time constant, and many experts in North America follow this. Elsewhere, others insist that the results with other constants can be better than those with 100 s. THE JOURNAL OF NAVIGATION (2008), 61, 435–454. f The Royal Institute of Navigation doi:10.1017/S0373463308004694 Printed in the United Kingdom

Upload: mlytvyn1

Post on 23-Oct-2014

132 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

Optimal Hatch Filter with anAdaptive Smoothing Window Width

Byungwoon Park, Kyoungho Sohn, Changdon Kee

(Seoul National University)(Email : [email protected])

The Hatch filter is a code-smoothing technique using integrated carrier phase observations.It is an easy technique that non-experts can use to reduce receiver noise on the pseudorange.

This paper suggests a new algorithm for the optimal Hatch filter whose smoothing windowwidth varies adaptively depending on the regional, diurnal and seasonal ionospheric vari-ation and satellite elevation angle. We consider both quiet and storm conditions of the

ionosphere. Using the well-known quiet ionospheric model, a conservative boundary valuefor ionospheric storm and the receiver noise statistics function of the satellite elevation angle,this algorithm can mathematically solve the optimal averaging constant for each satellite in

every epoch. From a 24 hr data process result and real-time experiment, we found that theposition accuracy of the optimal Hatch filter is better and more robust than that of thetraditional Hatch filter. The optimal Hatch filter algorithm and its results are expected toprovide a new solution for a single-frequency DGPS receiver and a thorough understanding

of the relationship between the position error and the averaging constant. Furthermore, aDGPS user who applies this algorithm to a low-cost single-frequency receiver can obtain amore accurate and robust position result than via the classical Hatch filter.

KEY WORDS

1. DGPS. 2. optimal Hatch filter. 3. ionospheric delay.

1. INTRODUCTION. The Hatch filter is an averaging filter that can smoothpseudorange measurement with a carrier phase. It is a type of recursive filter thatuses the current measurement and previous estimate without any dynamic model oradditional sensor. It is so simple that even a non-expert can use it, and it is wellknown and popular with researchers and receiver developers. There are many smartfilters now available such as the divergence-free hatch or the Kalman filter, but it isstill used in simple system construction, cheap single-frequency receivers or localDifferential GPS (DGPS) because of its advantages.

The performance of the Hatch filter is profoundly coupled to the width of thesmoothing window. In principle, the larger the smoothing window width used in thefiltering process, the more precise the smoothed pseudorange. However, it remains aproblem that the ionospheric divergence effect between the code and carrier increaseswith smoothing window width. According to the Federal Aviation Administration(FAA) report, the Local Area Augmentation System (LAAS) recommends a 100second time constant, and many experts in North America follow this. Elsewhere,others insist that the results with other constants can be better than those with 100 s.

THE JOURNAL OF NAVIGATION (2008), 61, 435–454. f The Royal Institute of Navigationdoi:10.1017/S0373463308004694 Printed in the United Kingdom

Page 2: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

Each researcher has developed a constant value that is best for the receiver in his orher region after much experience or recommendation. There is little clear explanationof this key value, and many use it without question or consideration.

Moreover, it is not reasonable that the constant applies to all satellites for all theconsidered time. A small averaging constant should be applied to measurement witha low-lying satellite, because its ionospheric divergence may be enlarged by the Hatchfilter with a large smoothing window. On the other hand, we feel safe in broadeningthe window size for a satellite with a high elevation angle.

This paper approaches the Hatch filter constant theoretically and suggests an al-gorithm that calculates the optimal smoothing window width that can maximize theperformance of the classical Hatch filter on the receiver DGPS in its establishedlocation. Moreover, using this for each satellite in real time may provide a new filteralgorithm that gives a better position result than the classical Hatch filter.

2. THEORETICAL APPROACH TO HATCH FILTER. The Hatchfilter is a code-smoothing technique using the change in carrier range. The filterexploits the accuracy of the pseudorange and the precision of the carrier phase,which in practice is in the order of millimetres, to mitigate multipath and otherreceiver-associated noise. This filter does not improve the stand-alone position verymuch, because the errors induced by the atmosphere and ephemeris are larger thanthe reduction in pseudorange noise and multipath. For differential code GPS, thesefactors may very well be the largest contribution to the error budget, and in thiscase, code smoothing does a good job.

In principle, the more epochs of data that are used in the smoothing process, themore precise the smoothed pseudorange should become, and it should approach theprecision of the carrier range. However, if the averaging constant is increased beyonda certain point, the filter diverges because the ionosphere delays the pseudorange andadvances the carrier range. This effect is called the ionospheric divergence, and thiseffect increases with the averaging constant k. With a reduction in the ionosphericdivergence, the variable k remains constant when it reaches K.

kfK

r̂r(k)=1

k

Xkj=1

rj(k)=kx1

k{r̂r(kx1)+Dw(k)}+

1

kr(k)

k>K

r̂r(k)=1

K

XKj=1

rj(k)=Kx1

K{r̂r(kx1)+Dw(k)}+

1

Kr(k)

(1)

where:r(k) raw pseudorange measurement at the current epoch,Dw(k) change in carrier phase,r̂r(k) smoothed pseudorange at the current epoch,r̂r(kx1) smoothed pseudorange at the previous epoch,k smoothing window width of Hatch filter,K maximum value of k.

436 BYUNGWOON PARK AND OTHERS VOL. 61

Page 3: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

At one observation per second, a maximum of 100 seems a good value for K, andthe FAA reported it as the LAAS recommendation. It is, however, a recommendedvalue not an optimal one. The value of K depends on where and when the GPSmeasurements are made, so we need to focus on reducing both the ionosphere-induced and measurement-noise error sources.

The estimated pseudorange (rm(k)) for the current epoch (k) uses pseudorange(rm(m)) and carrier phase (wm(m)) measurement of the past epoch (m) and includesthe ionosphere-induced error x2�iidot �(kxm) and measurement noise.

rm(k)=rm(m)+{w(k)xw(m)}

=rtrue(k)x2 ��iidot � (kxm)+vr(m)+vw(k)+vm(m)

=�rr(k)+vr(m)+vw(k)+vm(m)

(2)

where:�iidot average time-rate in ionospheric delay,�rr estimated pseudorange including ionosphere-induced error,vr pseudorange measurement noise,vw carrier phase measurement noise.

After the first K epoch, the smoothing window width (k) should remain constant.Generally, the value K is far smaller than the total observable epochs of each satellite,so it is reasonable to concentrate on the second equation in (1), which is normallysuitably applied.

If we gather together the estimations of the last K epochs to smooth thecurrent measurement, the estimated pseudorange has the noise expressed inequation (3).

rk(k)=�rr(k)+vr(k)

rkx1(k)=�rr(k)+vr(kx1)+vw(k)+vw(kx1)

rkx2(k)=�rr(k)+vr(kx2)+vw(k)+vw(kx1)

..

.

rkxK+1(k)=�rr(k)+vr(kxK+1)+vw(k)+vw(kxK+1)

averaging

r̂r(k)=�rr(k)+1

K{vr(k)+vr(kx1)+ � � �+vr(kxK+1)}

+1

K{(Kx1)vw(k)+vw(kx1)+vw(kx2)+ � � �+vw(kxK+1)}

(3)

Recalling that the carrier noise is far smaller than that of the code and that thesehave similar properties to those of white noise, the estimation noise (N(k)) can besimplified as equations (4) and (5).

N(k)=1

K{vr(k)+ � � �+vr(kxK+1)}+

1

K{(Kx1)vw(k)+vw(kx1)+ � � �+vr(kxK+1)}

� 1

K{vr(k)+ � � �+vr(kxK+1)}

(4)

NO. 3 OPTIMAL HATCH FILTER 437

Page 4: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

E(N(k)TN(k))={vr(k)+ � � �+vr(kxK+1)}

T{vr(k)+ � � �+vr(kxK+1)}

K2

=1

K2{s2

r(k)+s2r(kx1)+ � � �+s2

r(kxK+1)} �1

K2Ks2

r(k)=1

Ks2r(k)

(5)

The ionosphere delays the code and advances the phase, so it gives the estimationan ionosphere-induced error. Equation (6) shows that it reaches x Kx1

K 2�iidot �1 for thelast epoch, and the cumulative error for K epochs is expressed in Equation (7).

r̂r(k)=Kx1

K{r̂r(kx1)+Dw(k)}+

1

Kr(k)

=Kx1

K{r̂r(kx1)+Dr(k)x2�iidot �1}+

1

Kr(k)

=rtrue(k)xKx1

K2�iidot �1

(6)

r̂r(k)=Kx1

K{r̂r(kx1)+Dr(k)x2 ��iidot}+

1

Kr(k)

=Kx1

K{rkx1(k)x

Kx1

K2�iidotx2�iidot}+

1

Kr(k)

=Kx1

K{rkx2(k)x

Kx1

K

� �2

2�iidotxKx1

K

� �2�iidotx2�iidot}+

1

Kr(k)

(7)

Assuming that the ionospheric delay varies linearly for K epochs, �iidot=constant,the ionosphere-induced error (R(k)) is derived by Equation (8).

R(k)=xXKi=1

Kx1

K

� �i

2 ��iidot=xKx1K 1x Kx1

K

� �Kn o1x Kx1

K

� � 2 ��iidot

=x(Kx1) 1x 1x1

K

� �K( )

�2 ��iidot

(8)

limK!1

1x1

K

� �xK

=e (9)

If K is great enough, the ionosphere-induced error (R(k)) can be simplified byEquation (10).

R(k)=x(Kx1) 1x1

e

� ��2 ��iidot (10)

Therefore, the estimated pseudorange can be summarized as Equation (11), and wecan find out the DRMS value of the pseudorange error in Equation (13).

r̂r(k)=rtrue(k)+N(k)+R(k)=rtrue(k)+dr(k) (11)

438 BYUNGWOON PARK AND OTHERS VOL. 61

Page 5: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

DRMS2=E [dr(k)Tdr(k)]

=E [{N(k)+R(k)}T{N(k)+R(k)}]

=E [N(k)TN(k)]+R(k)TE [N(k)]+E [N(k)T]R(k)+R(k)TR(k)

(12)

DRMS2=E [N(k)TN(k)]+R(k)TR(k)

=1

Ks2r(k)+(Kx1)2 1x

1

e

� �2

�4 ��ii 2dot (,E [N(k)]=0)(13)

From Equation (13), we reconfirm that the pseudorange estimation has less noisebut larger ionospheric error as the smoothing window width increases.

3. ALGORITHM.3.1. Optimal Averaging Constant. Equation (13) says that a large K makes

the noise component in estimation error small but the ionospheric component large.It is a kind of trade-off problem, so an optimization is needed. For this, we takeDRMS2 to M (K). The optimal K minimizes the M (K), and it is in the root ofEquation (14).

d

dKM(K)=2(Kx1) 1x

1

e

� �2

4i2dotx1

K2s2r

=8 1x1

e

� �2�ii 2dot �

1

K2K3xK2x

s2r

8 1x 1e

� �2�ii 2dot( )

=0

(14)

The smoothing constant K is a natural number, and thes2r

8 1x1eð Þ2�ii 2

dot

term in

Equation (14) is a positive value, so the graph shape of ddKM(K) is always similar to

Figure 1. Accordingly, Equation (14) has only a root in the positive area, and Mk (K)changes from a negative to a positive value at this root, which means that the root

Figure 1. Graph shape of ddKM(K).

NO. 3 OPTIMAL HATCH FILTER 439

Page 6: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

makes the minimum value of M (K). Therefore, rounding the positive answer ofEquation (14) to the nearest integer is the optimal smoothing window width of theHatch filter.

3.2. Cardano’s Method. One of the advantages of the Hatch filter is that it is asimple algorithm that is not a heavy load for the receiver process. When we apply theoptimal constant to the classical Hatch filter, we should solve the cubic equation (15),and this can impose an additional heavy burden on the computing process.

K3xK2xs2r

8 1x 1e

� �2�ii 2dot =0 (15)

To keep the Hatch filter’s merit as a simple algorithm, we bring Cardano’s methodto the calculation of the optimal averaging constant. This is a way of solving a class ofcubic equations originally published in the 16th century by the Italian mathematicianGerolamo Cardano.

*************Cardano’s Method*************Cubic Equation: x3+ax2+bx+c=0

x=

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

2xq+

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiq2+4p3

p� 3

r+

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

2xqx

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiq2+4p3

p� 3

r,

w

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

2xq+

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiq2+4p3

p� 3

r+w2

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

2xqx

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiq2+4p3

p� 3

r,

w2

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

2xq+

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiq2+4p3

p� 3

r+w

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

2xqx

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiq2+4p3

p� 3

r

where, p=1

3x

a2

3+b

� �, q=

2a3

27x

ab

3+c, w2+w+1=0

(16)

***************************************This method is still useful in Equation (15), and only the positive real root is avail-

able ; therefore, the solution of Equation (15), Ktemp, is expressed in Equation (17).

Ktemp=

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

2xq+

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiq2+4p3

p� 3

r+

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1

2xqx

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiq2+4p3

p� 3

r+

1

3

where, p=1

3x

1

3

� �, q=x

2

27x

s2r

8 1x 1e

� �2�ii 2dot(17)

The optimal smoothing constant Kopt is an integer value, so we can get it byrounding Ktemp to the nearest integer.

Kopt=Roundoff(Ktemp) (18)

3.3. Measurement Noise Statistics. The measurement noise depends on theelevation angle, resulting primarily from the antenna gain pattern and signal at-tenuation due to atmospheric effects. Lower satellites are subject to substantially

440 BYUNGWOON PARK AND OTHERS VOL. 61

Page 7: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

higher noise ; however, different hardware might produce different noise, dependingon the elevation angle (Grejner, 2001).

In this paper, we used a Trimble 4000ssi ReceiverModel for a simulation andDGPStest, so the receiver model that was introduced by Kee (1996) is useful for thisalgorithm. The standard deviation for each increment of elevation angle is fitted toEquation (19), and the parameters are summarized in Table 1. The standard devi-ation of pseudorange varies from 0.24 to 0.80 m as the elevation angle reduces from90 deg to 10 deg, which is expressed in Figure 2.

s(Ele)=x0+x1 �e xElex2

� �(19)

3.4. Ionospheric Model. Receivers limited to L1 measurement have recourse toan empirical model whose parameter values are broadcast by the satellite. This isreferred to as the Klobuchar model and represents the zenith delay as a constantvalue at night-time and a half-cosine function in the daytime as shown in Equation(20) and Figure 3. Eight parameters in the navigation message, local time and piercepoint can be used to calculate the ionospheric vertical delay. The Klobuchar modelrepresents the zenith delay as a constant value at nighttime and a half-cosine functionin the daytime with a maximum at 2 pm local time. Update of the Klobuchar model

Table 1. Parameters for receiver noise.

x0 x1 x2

sw1 0.24 0.99 17.7

sr1 0.0024 0.0099 17.7

Figure 2. Noise statistics for L1 measurement.

NO. 3 OPTIMAL HATCH FILTER 441

Page 8: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

coefficients occurs when there is a significant change in the 10.7 cm solar flux. Thisis combined with an obliquity factor dependent on the elevation angle.

Dt1=A1+A2 cos [2p(tlocalxA3)=A4]

where

A1=5r10x9s

A2=a1+a2’IP+a3’2IP+a4’

3IP

A3=14:00h local time

A4=b1+b2’IP+b3’2IP+b4’

2IP

ai, bi are 8 ephemeris parameters

Dt1: delay time(s), tlocal: local time

’IP: spherical distance of pierce point

geomagnetic pole

(20)

The dotted line in Figure 3 is obtained by this model, and the real value is shownas a solid line. Unfortunately, it is just a model and does not always describe thereal world. It is generally accepted that it provides an estimate within 50% of thetrue delay. We can find this gap between the model estimation and the real delay inFigure 4. These data were obtained by the Youngju NDGPS reference station inKorea on a quiet day. The blue line is estimated using a dual-frequency receiver, andit is close to the real value, while the red line is calculated using the Klobuchar modelwith the ephemeris parameter of that day. The error is as high as 4 m, so there stillremains an ionospheric error after using this model.

However, the model follows the tendency very well, as is shown in Figures 4 and 5.If we wish to estimate the current rate in quiet ionospheric delay, there is littleproblem in using this model.

Figure 3. Ionospheric delay estimation by the Klobuchar model.

442 BYUNGWOON PARK AND OTHERS VOL. 61

Page 9: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

On the other hand, the tendency in ionospheric delay becomes very different on astormy day. The tendency has already been studied by Ene et al. (2005). Figure 6shows the tendency in a storm event. Because there is a steep gradient in thedelay measurement in an ionospheric storm, the delay rate is much higher. Eneanalysed the largest number of extreme ionosphere events of all the storms observedsince Wide Area Augmentation System (WAAS) was fielded in the year 2000, and heconcluded that ‘The other storms investigated, while potentially disruptive to civil

Figure 4. Ionospheric delay estimation by dual-frequency and Klobuchar model.

Figure 5. Ionospheric delay-rate estimation using dual-frequency receiver and Klobuchar model.

NO. 3 OPTIMAL HATCH FILTER 443

Page 10: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

aviation, fell well within the boundaries of the same threat model, as no events as criticalas what was observed during the Autumn 2003 storms were found and confirmed ’ (Ene,2005).

Therefore, we set a conservative basic constant �iidot of the autumn 2003 storm as aworst case when a storm is noticed. A conservative high constant �iidot value weakensthe noise performance but makes no critical bias. In conclusion, we use theKlobuchar model for a quiet day and the conservative constant �iidot value when astorm is noticed from the WAAS correction message.

3.5. Optimal Hatch filter constant. We have found that the optimal smoothingconstant can be determined by a function of receiver noise and ionospheric variationin Equations (17) and (18). The measurement noise depends on the elevation angle inEquation (19), and the Klobuchar model is available to estimate the time rate inionospheric delay on a quiet day. Now that we have the models, by inputtingephemeris parameter, local time, pierce point and elevation angle, we may get themeasurement noise and time rate in ionospheric delay, which are definite componentsfor the optimal constant. Therefore, we adopt a new function for elevation angle andionospheric variation in the optimal Hatch filter constant.

Using the suggested algorithm and noise model for the Trimble 4000ssi, we derivethe optimal smoothing constant variation with the elevation angle and ionosphericdelay rate as shown in Figure 7. In the case where the ionospheric delay varies slowlyand the satellite is low lying, the optimal constant will be large. On the other hand, thelimited measurement noise from a high elevation angle and a fast-moving ionospheremakes it small. When a storm is detected, a high basic constant �iidot value is used, andthe optimal constant will be very low.

To obtain a representative value, we took the mean elevation angle and time rate inionospheric delay for all satellites during 24 hr on 24 May at Seoul, Korea as a quiet-day example. The mean values are summarized in Table 2, and inputting these to thefunction in Figure 8 gives the optimal constant 65. When we use the classical Hatch

Figure 6. Steep gradient measurement in a storm event [figure from Ene (2005)].

444 BYUNGWOON PARK AND OTHERS VOL. 61

Page 11: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

filter, we therefore expect that the smoothing window width of 65 will give the bestDGPS performance.

To see whether the suggested optimal averaging constant is effective for theclassical Hatch filter, we did a 24 hr DGPS test for the various constants of 10, 30, 50,70, 100, 200, and 300, and the results are summarized in Table 3. Using the same dataas used in the previous analysis, we concluded that the constant that produced thebest result was near 50. Considering that the averaging constant ranges from 0 to

Figure 7. Optimal smoothing constant variation.

ElevationAngle

Local Time

Pierce Point

KlobucharModel

ObliquityFactor

Idot

NoiseModel

σρ

EphemerisParameter

Kopt

Figure 8. Block diagram for the optimal Hatch filter constant.

Table 2. The mean value of the parameters for the optimal Hatch filter.

Input Mean Value

Idot by Model 3.2350e–4 m/s

Elevation Angle 49.8257 deg

NO. 3 OPTIMAL HATCH FILTER 445

Page 12: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

1,000 or more and that the estimation was made by model, not by measurement, 50 isvery close to the theoretical optimal constant of 65.

4. ADAPTIVE WINDOW WIDTH ALGORITHM AND SIMU-LATION. The classical Hatch filter uses a fixed smoothing constant for each sat-ellite throughout the day as shown in the left block diagram in Figure 9. Accordingto our new algorithm, this is not optimal. A number of satellites are rising, othersare overhead, and some are setting. In the morning, the ionosphere changes quickly,but at night, it is quiescent. Should K remain constant for all satellites throughout?A small averaging constant should be applied to the measurement of the low-lyingsatellite in the morning, because then the ionospheric divergence may be enlarged bythe Hatch filter with a large smoothing window. On the other hand, we feel that it issafe to broaden the window size for a high-elevation-angle satellite in the afternoon.

We suggest the flexible application of a different smoothing width KSVi(t) for each

satellite and each epoch. It is not a complex filter but a recursive one, which is addedby one line of code in the existing receiver as shown in the right panel of Figure 9. Wecan therefore improve single-frequency receiver performance while maintaining thekey advantage of the Hatch filter.

Table 3. Classical Hatch filter DGPS result (2DRMS, m) with various smoothing constants.

Smoothing

Constant 10 30 50 70 100 200 300

Hor (m) 1.17 1.12 1.08 1.15 1.33 1.98 2.62

Ver (m) 1.38 1.35 1.30 1.37 1.43 2.21 2.81

Figure 9. Classical Hatch filter and new Hatch filter algorithm.

446 BYUNGWOON PARK AND OTHERS VOL. 61

Page 13: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

We did a simulation to verify that the new algorithm works well as summarized inTable 4. The reference station and user are located in Seoul. The 24 hr satellite pos-itions and clock bias are calculated for the Youngju Korean NDGPS referencestation in July. The ionospheric error varies based on the Klobuchar model whoseephemeris parameters are obtained by the station. The noise model is that of theTrimble 4000ssi receiver.

We derived the position from a stand-alone DGPS without filtering, a DGPS withHatch filter whose averaging constant is 100, and an optimal Hatch filter with aadaptive smoothing width. For the performance comparison, we calculated theDGPSresult for the divergence-free hatch filter using a dual-frequency receiver.

Figure 10 shows the variation of the optimal constant of PRN 14. It increases to500, but for the classical Hatch filter remains at 100 throughout the day. For alow elevation angle, the optimal averaging constant is far smaller than 100, but itincreases as the satellite moves overhead.

Figure 11 shows the comparison of PRN 14 pseudorange error between theclassical Hatch filter and the new algorithm while the averaging constant varies as inFigure 10. The classical averaging constant, 100, is too large for low-elevation-angle

Table 4. Adaptive smoothing window simulation summary.

Location (User) SNU, Seoul (37x27k03.600aN, 126x57k06.001aE, 217.965m)

Baseline 180m

Satellite Position, &

Clock Bias

Observed for 24 hr at Youngju Korean NDGPS Reference Station (09:00

on 16 July, 2005–09:00 on 17 July, 2005)

Ionospheric Error Klobuchar model (Parameters of 16 July)

Tropospheric Error RTCA-recommended model

Receiver Clock Bias Linear increase

Receiver Noise Trimble 4000ssi model

Figure 10. Averaging constant variation with elevation angle.

NO. 3 OPTIMAL HATCH FILTER 447

Page 14: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

measurement to have ionosphere-induced error in the shape of a bias. The new fil-tering algorithm keeps a small constant to reduce the ionospheric variation effect. Onthe other hand, the measurement noise for a high elevation angle is safely decreasedby a large amount, because the ionospheric delay changes slowly.

As noted before, the optimal constant depends on the elevation angle and iono-spheric variation. Each elevation angle for the same epoch is different, so any twooptimal constants are not the same in Table 5. Generally, we note that the higher theelevation angle, the larger the constant. The smoothing window widths are not equalin spite of the same elevation angle in Table 6 because the ionosphere varies not onlyin elevation angle but also in the pierce point and the measured time. Like these, thedifferent constants are applied to different satellites, elevation angles, ionosphericvariations and epochs by our new algorithm.

Figure 12 and Table 7 are the results of the simulation. Noise and occasionallysevere bias are shown for the classical Hatch filter, but the optimal Hatch filter re-duces both of these. The classical filter reduces the error by 15–30%, whereas our newalgorithm decreases the error by 50%. From the result, the performance of our sug-gested filter algorithm using a single frequency matches that of a divergence-freeHatch filter that uses a dual-frequency signal.

5. DGPS TEST AND RESULTS. To check that our proposed algorithmwith an improved performance is still effective for real data, we constructed aDGPS test system. It is explained in Table 8 and was made using the same data

Figure 11. The classical (left) and optimal (right) Hatch filter error on the estimated pseudorange.

Table 5. The optimal constants for the same epoch.

SV # 1 14 16 22 25

Kopt 114 509 16 19 31

Ele (deg) 73.4 73.9 34.3 24.5 64.3

448 BYUNGWOON PARK AND OTHERS VOL. 61

Page 15: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

employed for the 24 hr optimal Hatch filter test. The Trimble 4000ssi was selectedas the receiver type for the reference and user stations, and we used its noise stat-istics and the Klobuchar model for the optimal Hatch filter with a real-time adapt-ive smoothing window algorithm.

From our previous results, we concluded that the best performance from these datacan be obtained when the smoothing width was fixed to 50. Therefore, we comparedthe DGPS results obtained by the new technique with those of 50 and 100.

These results are shown in Table 9 and Figure 13. The traditional Hatch filter with50 epoch smoothing did not improve the horizontal position accuracy and reducedthe vertical error by 0.13 m (2DRMS) for 24 hr. The optimal Hatch filter withadaptive window width gave a better horizontal and vertical accuracy. The respectivedecrement seen is 0.07 m and 0.28 m (2DRMS). The errors for the fixed constant aresmoothed but have some jumps as shown by the blue dots in Figure 13. The newalgorithm brings these jumps to the true position as well as reducing the noise (reddots). The vertical error of DGPS with a constant K of 50 is as high as 4 m in theworst case, but it can be mitigated to under 3 m by our filtering algorithm.

The new filter smoothes the errors as does the former one. Our smoothing per-formance is best, but the difference is not large. Examining the vertical results and thesatellite constellation in the right graph in Figure 13, we see that the optimal Hatchfilter is robust to the low satellites, while the classical Hatch filter is not. It can reducethe vertical error of the Hatch filter by 2 m.

The following plots show how the low-elevation-angle satellite has affected theDGPS position accuracy with a classical Hatch filter. As soon as a new satellite risesas shown in Figure 14, the error jumps and returns to near zero after about 1000 sec.For about 1500 sec before the setting of a low-elevation-angle satellite in Figure 15,the positions are very noisy and biased. After a new satellite rises, the error increases

Table 6. The optimal constants for the same elevation angle.

SV # 1 3 7 13 27 28

Kopt 55 25 63 38 137 144

GPS time 556383 600370 576804 604028 559853 551991

Figure 12. DGPS horizontal (left) and vertical (right) simulation results.

NO. 3 OPTIMAL HATCH FILTER 449

Page 16: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

as in Figure 14. The suggested Hatch filter causes the position to be robust to a low-elevation case, and it reduces the vertical position error of a traditional filter by asmuch as 2 m as seen in Figure 16.

Table 7. DGPS simulation results.

Positioning\Error

Horizontal

(2DMRS, m)

Vertical

(2DMRS, m)

Stand-alone 8.6920 16.5492

DGPS w/o filter 1.0110 1.5170

DGPS w/ Hatch filter (K=100) 0.8592 1.0422

DGPS w/ optimal Hatch filter (K=adaptively varying) 0.5172 0.7561

DGPS w/ div-free Hatch filter (K=300) 0.4213 0.6795

Table 8. DGPS test construction.

Location (Ref) SNU 301 Building, (37x27k03.600aN, 126x57k06.001aE, 217.965m)

Location (User) SNU 136 Building, (37x26k58.903aN, 126x57k09.887aE, 281.925m)

Baseline 180m

Date 00:00 on 24 May – 00:00 on 25 May (24 hr)

Ionospheric Model Klobuchar model

Receiver Trimble 4000ssi

Table 9. DGPS test results.

Positioning\Error

Horizontal

(2DMRS, m)

Vertical

(2DMRS, m)

DGPS w/o filter 1.0312 1.4264

DGPS w/ Hatch filter (K=100) 1.5566 1.3352

DGPS w/ Hatch filter (K=50) 1.0773 1.2984

DGPS w/ optimal Hatch filter (K=adaptively varying) 0.9603 1.1483

Figure 13. DGPS horizontal (left) and vertical (right) results.

450 BYUNGWOON PARK AND OTHERS VOL. 61

Page 17: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

If we look at what is happening to the averaging constant for rising and setting,the reason why the new algorithm is robust to a low-elevation-angle satellite iseasily explained. We cannot forecast when this satellite will fall away, so the classicalHatch filter uses the fixed constant right before the satellite sets and causes a largeionosphere-induced error on the pseudorange estimation just before setting (left inFigure 17). However, the new algorithm can reduce it as shown in the right panel inFigure 17, because the low elevation gives much noise and reflects rapid ionospherevariation, and these narrow the smoothing window.

A rising satellite case is similar to the previous one. For the first 50 epochs, theclassical averaging constant increases continuously. It is still often large enough to

Figure 14. Low-elevation-angle positioning result (rising satellite case).

Figure 15. Low-elevation-angle positioning result (rising and setting satellite case).

NO. 3 OPTIMAL HATCH FILTER 451

Page 18: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

inhibit an ionospheric divergence error as in the Figure 18 case. The optimal aver-aging constant slowly increases until the measurements may be safely smoothed.

6. CONCLUSIONS. We can maximize the less expensive single-frequency re-ceiver performance by adding the one line of Equation (17). This equation is usefulin maximizing classical Hatch filter performance. Using 24 hr DGPS data, we veri-fied that it derives the optimal constant reflected by the regional and receivercharacteristics on a quiet day. We can also prevent a DGPS user experiencingsevere bias due to a steep ionospheric delay gradient on a stormy day.

Figure 16. Positioning accuracy improvement for low-elevation-angle satellite case.

Figure 17. Pseudorange error of a classical (left) and new (right) Hatch filter for a setting satellite

(PRN #5).

452 BYUNGWOON PARK AND OTHERS VOL. 61

Page 19: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

In applying our method to each epoch and satellite, we suggest a new optimalHatch filter algorithm with an adaptive window width. The optimal Hatch filter wesuggest maintains all the advantage of the classical Hatch filter. It is still recursive andsimple and does not need any dynamicmodel or additional filter for time propagation.By using it, we can improve accuracy by 15%. Moreover, it is very robust to all theepochs, especially to those with low-lying satellites, and it occasionally reduces errorjump by 2 m. The improvement of 15% (0.15 m) may not be so large because the2DRMS value was calculated with the sense of 24 hr averaging. The user who obtainsa position epoch by epoch will, however, see a 2 m error reduction as great progress.

If in future we have a smart ionospheric model that can estimate the tendency verywell, our inexpensive single-frequency receiver will be able to compete with a highlypriced dual-frequency receiver in DGPS positioning.

ACKNOWLEDGEMENT

The study was supported in part by in part by the Brain Korea 21 (BK-21) Program forMechanical and Aerospace Engineering Research, the Institute of Advanced Machinery and

Design, and Institute of Advanced Aerospace Technology at Seoul National University.

REFERENCES

Ene, A., Qiu, D., Luo, M., Pullen, S. and Enge, P. (2005). A Comprehensive Ionosphere Storm Data

Analysis Method to Support LAAS Threat Model Development, the Institute of Navigation National

Technical Meeting, San Diego CA, pp 110–130

Park, B. (2003). Comparison of the DGPS performance by various PRC filtering methods, MS thesis, Seoul

National University, pp 16–36

Park, B. et al (2006). RRC Unnecessary for DGPS Messages, IEEE Transactions on Aerospace and

Electronic Systems, 42 (3), pp 1149–1160

Parkinson, B. (1996). Global Positioning System: Theory and Applications II, Progress in Astronautics and

Aeronautics, pp 81–114.

Klepczynski, B. (2003). Systematic Effects in GPS and WAAS Time Transfers, 34th Annual Precise Time

and Time Interval (PTTI) Meeting, Reston, Virginia, pp. 405–412.

Kee, C., Park, B., Kim, J., Choi, S. (2004). PRC Generation in Time-Latency: Is RRC Still Required Even

If S/A Has Been Turned Off?, ION 2004 NTM, pp 869–874.

Figure 18. Pseudorange error of a classical (left) and new (right) Hatch filter for a rising satellite

(PRN #26).

NO. 3 OPTIMAL HATCH FILTER 453

Page 20: Park - Optimal Hatch Filter With an Adaptive Smoothing Window Width

Kee, C., Park, B., Kim, J., Cleveland, A., Parsons, M., Wolfe, D. (2007). A Guideline on Establishing

DGPS Reference Station Requirements, The Journal of Navigation, 61 pp 99–114.

Kee, C. (1996), Quality Control Algorithm on Wide-area Reference Station for WAAS, ION 52nd Annual

Meeting, Cambridge, Massachusetts, pp 487–495.

Jwo, D. (2004), ARMA Neural Networks for Predicting DGPS Pseudorange Correction, The Journal of

Navigation, 57 pp 275–286.

Kim D. (2000), The Multipath Divergence Problem in GPS Carrier-Smoothed Code Pseudorange,

Proceedings of 47th Annual Conference of the Canadian Aeronautics and Space, Ottawa, Ont, pp 161–163.

Yun, D. and Kee, C. (1999), Single-frequency Differential GPS Accuracy Improvement via Local Area

Ionospheric Time Delay Model Development, Telecommunications Review, 9 (1), pp 33–49.

Grejner-Brzezinska D and Toth C. (2001), Performance Study of High-End Dual Frequency GPS

Receivers Tightly Integrated with a Strapdown INS, Proc. 3rd International Symposium on Mobile

Mappig, Cairo, Egypt.

Loomis, P. (1989), Correction Algorithms for Differential GPS Reference Station, The Journal of

Navigation, 36 pp 179–193.

Misra, P., and Enge, P. (2001), Global Positioning System – Signals, Measurements, and Performance

Ganga-Jamura Press, pp 123–171.

RTCA (1999), Minimum Operational Performance Standards for Global Positioning System/Wide Area

Augmentation System Airborne Equipment RTCA

Wullschleger, V. (2000), FAA LAAS Specification: Requirements for Performance Type 1, European

Institutes of Navigation GNSS 2000 Conference.

454 BYUNGWOON PARK AND OTHERS VOL. 61