Table of Contents Author Guidelines Submit a Manuscript
Journal of Applied Mathematics

Volume 2014 (2014), Article ID 107156, 10 pages
Research Article

Urban and Indoor Weak Signal Tracking Using an Array Tracker with MVA and Nonlinear Filtering

1College of Automation, Harbin Engineering University, Harbin 150001, China

2The Unit 92941, PLA, Huludao 125000, China

Received 4 May 2014; Accepted 17 June 2014; Published 2 July 2014

Academic Editor: Yuxin Zhao

Copyright © 2014 Jicheng Ding et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.


We focus on the need for weak GPS signal tracking technique at a receiver powered on in urban or indoor environment; the tracking loop is unlocked and data bit edge position is unknown. A modified Viterbi algorithm (MVA) based on dynamic programming is developed and it is applied to GPS bit synchronization to improve bit edge position detection probability. Meanwhile, two combination carrier tracking schemes based on central difference Kalman filter (CDKF) and MVA module are designed for tracking very weak GPS signal. The testing results indicate that the methods can successfully detect bit edge position with high detection probability whether or not the tracking loop is locked. The tested combination tracking scheme is still able to work well when the signal quality deteriorates to 20 dB-Hz without additional large store space.

1. Introduction

Urban and indoor positioning techniques have become a major focus for research over the past decade for applications like location based services (LBS). Such requirements are the main thrust in the technology development for a pedestrian navigation system (PNS). Global positioning system (GPS) is undoubtedly a viable option for use in such systems due to its high accuracy positioning capability. A pedestrian typically moves in dense urban areas (along sidewalks), inside buildings, in tunnels, and under foliage, where GPS signals often fail to reach the user. That is, the receiver technologies to overcome weak signal environment have been a topic of radiobiological interest.

In the present day practice, a receiver may get “assistance” in the form of additional acquisition aiding messages from a server or base station or Internet based [1]. However, the E-911 mandate requires GPS receivers to provide a position solution in any kind of environment [2]. So, providing this type of assistance requires additional infrastructure and may not be available in all places. Also, the receiver requires additional hardware to receive the aiding messages. Therefore developing a GPS receiver which is able to work well without assistant information under weak or indoor signal conditions is very important. Further, there is a need as in the case of E-911.

Conventional GPS receivers process signals with a above 33–35 dB-Hz successfully. With advances in GPS receiver technology, high sensitivity GPS (HSGPS) technology provides the ability to process signal at lower power levels using longer predetection integration times (PIT) [3]. At present, several studies indicate that coherent integration, noncoherent integration, and differential coherent integration have led to growing acceptance of these weak signal acquisition approaches [4]. Followed by the signal acquisition strategy is weak signal tracking with long time integration model. Thus, it raises an interesting question: the data bit timing presents a navigation message bit offset ambiguity; the purpose of data bit edge detection is to avoid integration across a data bit edge which might cause loss of bit energy and errors in the navigation message extraction. Conventional wisdom states that histogram method (HM) and Kokkonen and Pietila method (K-P method) are able to combat the bit offset ambiguity. However, it is difficult to get ideal results using these methods when receiving signal degrading [5]. Lately, considerable progress has been made in this question, such as Viterbi algorithm (VA) [57]. This idea using dynamic programming technology has led to a better result than the previous two methods [7]; that is, the VA with a cost function in the form of bit energy sum is able to determine data bit boundary with a higher probability detection (PD) in the presence of weak signal. The form of cost function would lead to error when detection occurs in those close to true bit edge positions. Furthermore, these approaches would be subjected to carrier phase and frequency error [8]. This means that they will be performed after the loop is locked or has wiped off carrier phase and frequency error. This will raise a very realistic problem: if a receiver is powered on under very weak signal conditions, its loop will not be locked forever and the data bit edge detection methods as mentioned would be failure. Received signal phase changes fierce in the presence of much noise. As a traditional PLL (phase locked loop) phase discriminator with nonlinear characteristic and the loop is easy to lose lock [9, 10]. It is necessary to develop an effective tracking method when a receiver is powered on in weak signal environments.

The structure of the paper is as follows. In Section 2, a modified Viterbi algorithm (MVA) based on hide Markov model (HMM) with alternative cost function is developed for improving GPS bit synchronization. When detection occurs especially in those close-to-true bit edge positions, the new cost function will make the bit energy in different position appear of great differences and turn out to be more robust when working in weak signal environments. In Section 3, a CDKF weak signal tracking model and filtering process are designed by establishing the carrier tracking error model to avoid nonlinear affection coming from the traditional PLL discriminator. In Section 4, a weak signal tracking scheme which combined CDKF with MVA is put forward; the proposed array tracker scheme contains two realization methods. Performance analysis and simulation results are given in Section 5. Then conclusions are provided in the last section.

2. Modified Viterbi Algorithm to Bit Synchronization

Assuming code loop has been synchronized and is local code, an approximate Doppler shift , Doppler rate , and phase are obtained. They are used to construct the following model for the in-phase and quad-phase local signals [11]:

The I and Q components from correlators are where, is the data bit associated with sample k, is carrier phase error, and are the noise for the I and Q samples, which is assumed to be additive white Gaussian noise (AWGN), and is the signal level.

Suppose there is no phase and frequency error between the local signal and received signal; loop is locked. Then, the is equal to zero in (2) and correlator output is , . When the sampling period is 1 millisecond (ms), is in units of 20 milliseconds. can be expressed as

If the 20 consecutive samples belong to the same message data bit, the sign of will not change. Define the corresponding message as during the sampling period. For 20 milliseconds data length, suppose missing points is . There would be complete navigation message at least in group 20 milliseconds sampling sequences due to the period of a GPS navigation message which is 20 milliseconds. Because the period of sampling is 1 millisecond, there is 20 possible data bit edges. We can get corresponding 20 continuous observation sequences and the length of each observation sequence is . If δ indicates the bit edge position, then the corresponding observation sequence is [7] where ; it represents the current integration interval and goes from 1 to N and N is the number of received data bits; is the correlator samples.

Equation (4) can be written in the form where the is average level and is noise.

Obviously, If is the expected data edge position, will reach the maximum.

For each bit edge candidate, a two-state trellis diagram has been set in Figure 1 [7]. Every diagram is constructed setting full connections between consecutive states; it means that every state will have two paths entering it and two paths leaving it. Since N is the total number of observations in a set, each diagram presents exactly N steps. The algorithm processes them identifying the minimum weighting paths; the weights for each transition are expressed by (2) Here, A is the true signal level and is the bit value associated with the state considered as destination in the current transition.

Figure 1: N steps state transition.

For the total data, it contains at least full data bits. The maximum of (5) can be represented as [7]. However, when is close to the edge of the correct data bits, even on normal signal conditions, and certainly are very close too. A typical example as we know is that 6 plus 7 is equal to 13 and 6 plus 8 is equal to 14. It is very close between 13 and 14. If we consider the effect of noise, the result will be worse. But 6 multiples 7 is equal to 42 and 6 multiples 8 is equal to 48; the result of “multiples” is better than “plus.” Therefore, we use instead of or as the cost function. In this way, it will have superior resistance to noise. Define

Obviously, the which makes maximum is expected data bit edge.

When tracking loop is in bit synchronization tracking state, the sampling period is 1 millisecond. Data bit edge index ( ) range is from 1 to 20. A grid map that is shown in Figure 1 will always be achieved for each and a surviving path corresponding to be generated. When the 20 ’s candidates have been processed, we can get 20 surviving paths. In all 20 surviving paths, the path of maximum weight is the optimal path, that is, the maximum likelihood path. And the optimal path suggests a symbol sequences which is expected navigation message.

3. Nonlinear Filter Technique Improving PLL’s Parameter Estimation Performance

The Kalman filter is essentially a recursive algorithm that implements a predictor corrector type estimator. The predictor is based on a system model and the corrector is based on the measurement model. The Kalman filter is optimal in the sense that it minimizes the estimated error covariance. Ping has established adaptive Kalman filtering model to track high dynamic GPS signal. It has a linear measurement model based on oscillator output. Psiaki realized weak GPS signal tracking using EKF [1214]. But the EKF algorithm has some potential drawbacks such as Jacobi matrix calculation and linear error to solve nonlinear equation [15]. The sigma-point Kalman filters (SPKF), a family of filters based on derivativeness statistical linearization achieves higher performance than EKF for many problems and is applicable to areas where EKFs cannot be used, such as unscented Kalman filter (UKF) and center difference Kalman filter (CDKF) [1618]. As UKF had to select three parameters, , , and , it is very difficult in practice and UKF covariance of positive semidefinite cannot be fully guaranteed [16]. For CDKF, only one parameter will be selected to complete filtering operation, and it can fully guarantee the positive semidefinite covariance when [17]. Therefore, CDKF is more suitable for practical application.

In this paper, the initial attempt is made for CDKF method tracking weak signal due to its precision which is equal to EKF’s 2nd Taylor series expansion. An error tracking scheme is designed. The phase discriminator is substituted by CDKF in order to get better parameters estimation.

The estimated parameters are phase difference, Doppler frequency error, Doppler rate error, and amplitude. That is, . An error tracking model is established as follows: Here, Δt is CDKF update time. Disturbances term is assumed to be independent; their variances can be defined. The established measurement equation with measurement noise is where is signal mean level during loop update and is message bit estimation; if , , else . Outputs of the CDKF are used to calculate the and it will be used to control local NCO and make the phase constituted. The CDKF carrier tracking processing is as follows.

( ) With the Initial Values. Consider

( ) Time Updating. According to the sigma point symmetric sampling theory, Sigma points , are calculated by and :

propagates to through the nonlinear function ; one can get one-step status prediction and the error covariance matrix from :

( ) Measurement Updating. Similarly, sigma points and are achieved using and according to the sigma point symmetric sampling theory; that is, can be written by

propagates to through nonlinear function . The outputs prediction , autocovariance matrix , and cross-covariance matrix are achieved using :

After getting new measurement , the filter is updated: Here, is a gain matrix.

4. Array Nonlinear Filtering Tracker

The bit synchronization model starts working after the PLL has been locked by pulling frequency and phase for a typical receiver. If a receiver is powered on under weak signal environment, it should extend the loop integral time right. However, unknown navigation data bit edge makes it impossible to execute this strategy. The reason is that input signal is just very weak before the loop is locked. The typical 1 millisecond integration is not suitable for tracking loop since its processing gain is not enough for very weak signal. A practical program which can accurately identify the bit edge position before the PLL achieves lock state is needed.

In above circumstances, in order to make the receiver still work well, we combine designed bit synchronization module with CDKF signal tracking module, so that a bit synchronization tracking is realized for very weak signals. In this scheme, the CDKF module removes the phase and frequency errors on the state transition path which is in the bit synchronization module. The bit synchronization tracking parallel processing scheme (scheme I) is shown in Figure 2. If the first group of data delay 0 ms, the finally group of data will delay 19 milliseconds considering that the number of bit edge candidate is 20.

Figure 2: Parallel bit synchronized tracking scheme (scheme I).

The bit synchronization in the red box refers to Section 2. As input signal is very weak, when the receiver is in tracking state, the sample period of input signal is 1 millisecond and CDKF loop update time is 20 ms. Every observation sequence which is used by bit synchronization comes from independent CDKF tracking loop outputs. Updated CDKF removes the phase error of observations before performance bit synchronization algorithm. Because the number of bit edge candidate is 20, 20 groups of CDKF and bit synchronization modules are designed to quickly complete bit synchronization tracking. After the bit synchronization, the integration time no longer crosses the data bit edge. The CDKF loop which has the maximum weight continues to work with 20 milliseconds integrated time. Other modules are to stop working. Tracking loop converts to single CDKF weak signal tracking status. Be noted that the above process has no complex process control.

Sometimes, for saving hardware resources, we can also use a serial manner (scheme II) that is realized by using a group of bit synchronization tracking module in Figure 2. That is, only one red box in Figure 2 will be realized for scheme II. The designed process of scheme II is as follows. (i)Deal with current 1 millisecond data; one can get an optimal weight and the path recording this information.(ii)Extract next 1 millisecond data and go into (i).(iii)Repeat (i) and (ii) 19 times; 20 optimal weights will be achieved.(iv)Find the maximum from the 20 optimal weights and extract the delay time ( milliseconds) corresponding to the maximum.(v)Delay new input data milliseconds; it is the right bit edge position. Bit synchronization tracking is completed. The tracking loop uses single CDKF to work.

Obviously, scheme II (serial mode) is less than scheme I (parallel mode) in terms of hard resource consumption. However scheme II has more complex control and its bit synchronization tracking total time is 20 times more than the parallel mode.

Results of scheme II are shown in Figure 6. It is easier to implement using software than hardware. In terms of complexity, CDKF and optimal path dynamic programming are implemented by recursive algorithm and the quantity of calculation is very small. Further, once the current optimal weights are determined, it is not necessary that the used observations are saved on a large memory. It is very important to practice project.

5. Test Results and Analysis

For comprehensive assessment of the proposed weak signal tracking scheme, the following three experiments were set up to determine bit synchronization time, bit synchronization performance assessment, phase and frequency estimation error, and demodulation error rate; the implementation complexity was analyzed at last. Taken together, these results suggest that proposed method is very suitable for weak signal tracking. Particularly the bit edge is unknown when a receiver is powered on under very weak signal environment.

5.1. Determining Bit Synchronization Time

Firstly, assess suitable bit synchronization time. CNR (carrier-to-noise ratio) or of tested signal is set to 15 dB-Hz, 20 dB-Hz, 25 dB-Hz, and 30 dB-Hz. It is difficult to demodulate when using 1 millisecond integration time for very weak tested signal. A reconstructed output signal was generated and its phase and frequency error has been removed. Tested signal center frequency is 4.092 MHz, sampling frequency is 12.276 MHz, and data bit state obeys binomial distribution; that is, the probability of each state transition is 0.5 and bit synchronization time is set to 100 milliseconds, 500 milliseconds, 1000 milliseconds, and 2000 milliseconds, respectively. The tested results are shown in Figure 3.

Figure 3: Bit synchronization time test.

As a result of Figure 3, the longer the synchronized time or the more the bits that contain the full number ( ), the more accurate the bit synchronization, the shorter the bit synchronization time, and the more closely the optimal path weight values which are between other candidate bit edges and the expected bit edge. Obviously, the results are credible. When bit synchronization time arises to 2 seconds, it can also detect the right bit edge even for 15 dB-Hz signal and the weights may be quite different between the expected edge position and the adjacent position. However, from the point of view of the weights distribution, the weak signal synchronization model has no guarantee of a higher bit EDR in very short time, for example, 100 milliseconds. Certainly, 2 seconds have been also short enough. More importantly, we should pay attention to the bit energy difference between the true bit edge position and its near position. The difference has been very significant using more than 500 milliseconds of bit synchronization time. 2 seconds of bit synchronization time will be adopted in the following assessment according to these test results.

5.2. Bit Synchronization Performance Evaluation

In order to compare detection performance between the MVA and the traditional histogram method, we test the two methods and get different data bit edge detection probability to different CNR. The tested CNR range is from 15 to 30 dB-Hz, bit synchronization time is 2 seconds according to the previous results, and other settings in MVA are the same with the previous experiment; NBS1 = 50 and NBS2 = 45 in histogram method. Repeat 200 times for every CNR for the two methods. The results are shown in Figure 4, which has removed the phase and frequency errors. The test results suggest that the power of the input signal gradually increases with CNR; performance of both two methods can be continuously improved. As far as detection probability is concerned, the MVA is superior to the histogram method. Even for 20 dB-Hz, the MVA can also achieve 100% of the detection probability, but histogram method has to increase bit synchronization time to achieve better detection probability.

Figure 4: Without phase and frequency errors.

Meanwhile, the bit edge detection results are shown in Figure 5 in the presence of phase and frequency error, where the phase error and frequency error are normal distribution; the range of phase error is from 0 to 15 degrees and range of frequency error is from 0 to 5 Hz. The results suggest that the bit edge detection performance has been declined compared with no phase and frequency errors. This decline would to be relieved by increasing bit synchronization time.

Figure 5: With phase and frequency errors.
Figure 6: Estimated phase, frequency error history, and the first 75 data bits.
5.3. Signal Tracking Performance Evaluation

Usually, carrier is in low dynamic movement on weak signal environment, such as downtown and indoor. The phase and frequency errors estimation history and the first 75 demodulated data bits using CDKF loop with bit synchronization module for 20 dB-Hz and 28 dB-Hz weak GPS signal are demonstrated in Figure 6. As can be seen from Figure 6, when the loop has not been locked, the conventional method, without bit synchronization aided, cannot determine the right edge of the data bit edge position. The new tracking scheme using a bit synchronization module can work well when the is 20 dB-Hz; the frequency and phase errors are allowed within a certain range and navigation message has been correctly demodulated. In fact, the signal quality drops to 20 dB-Hz and the tracking loop is not always kept locked. The undesired result is due to the signal power which is too low.

The loop locked probability to different CNR using 100 times Monte Carlo tests is shown in Figure 7. The data suggest that the new tracking method retains lower loss locked probability during weak signal tracking.

Figure 7: The loop stability to different CNR.
5.4. Complexity Analysis

The computational complexity of CDKF is very low due to its recursion. A bit synchronization tracking module is able to achieve an optimal path when the state transition occurs every time. The current optimal weights can be obtained using four status transition probabilities and the optimal path weights which are the previous results; only four optimal path weights state transition probabilities and the previous weights are needed to be saved; that is, there are only five numbers of data that need to be stored; after obtaining the current optimal weights, the current observations will be discarded to relieve storage space. If the start time of a receiver needs to be improved, save the survivor path information corresponding to the optimal weights for navigation solution. Certainly, an additional store space is needed to temporarily store number of data.

6. Summary

The paper endeavors to solute the problem of signal tracking when a receiver is powered on under weak signal environments. The loop will stay in the unlocked state and cannot find the data edge to implement weak signal tracking using traditional 1 millisecond update loop approach. A tracking scheme based on CDKF has been designed to avoid the complexity of traditional EKF algorithm in computing nonlinear equation. The MVA based on optimal path dynamic programming which comes from HMM has been developed and some better results have been obtained. Finally, serial and parallel weak signal tracking scheme combining CDKF estimation technology with MVA are designed and implemented. A suitable scheme would be adopted due to practical requirements. Test results and analysis confirmed the rationality and resource consumption advantages; furthermore, some acceptable tracking results proved 20 dB-Hz weak GPS signal can be processed. The phase and frequency estimation accuracy for weak GPS signal tracking will be evaluated in following research work.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.


The financial support from the National Science Foundation of China under Grant (nos. 61304234 and 61273081) and the Fundamental Research Funds for the Central Universities (HEUCFX041403 and HEUCFR1114) is gratefully acknowledged.


  1. L. Wang, D. P. Groves, and M. K. Ziebart, “GNSS shadow matching: improving urban positioning accuracy using a 3D city model with optimized visibility prediction scoring,” in Proceedings of the 25th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS '12), pp. 423–437, Nashville, Tenn, USA, 2012.
  2. S. Singh, “Comparison of assisted GPS (AGPS) performance using simulator and field tests,” in Proceedings of the ION GNSS Conference, pp. 1–12, Fort Worth, Tex, USA, 2006.
  3. S. Schön and O. Bielenberg, “On the capability of high sensitivity GPS for precise indoor positioning,” in Proceedings of the 5th Workshop on Positioning, Navigation and Communication (WPNC '08), pp. 121–127, March 2008. View at Publisher · View at Google Scholar · View at Scopus
  4. B. Y. T. James, Fundamentals of Global Positioning System Receivers: A Software Approach, John Wiley & Sons, New York, NY, USA, 2nd edition, 2004.
  5. B. Parkinson and J. Spilker, Global Positioning System: Theory and Applications, vol. 1, American Institute of Aeronautics and Astronautics, 1996.
  6. M. Kokkonen and S. Pietilä, “A new bit synchronization method for a GPS receiver,” in Proceedings of the IEEE Position Location and Navigation Symposium, pp. 85–90, April 2002. View at Publisher · View at Google Scholar · View at Scopus
  7. N. I. Ziedan and J. L. Garrison, Bit Synchronization and Doppler Frequency Removal at Very Law Carrier to Noise Ratio Using a Combination of the Viterbi Algorithm with an Extended Kalman Filter, ION GPS/GNSS, Portland, Ore, USA, 2003.
  8. S. Jeon, C. Kim, G. Kim et al., “Optimal signal tracking algorithm for GNSS signal using moving set-point LQG system,” International Journal of Control, Automation and Systems, vol. 11, no. 6, pp. 1214–1222, 2013. View at Google Scholar
  9. M. Anghiler, T. Pany, J. Won et al., “An algorithm for bit synchronization and signal tracking in software GNSS receivers,” in Proceedings of the ION GNSS 19th International Technical Meeting of the Satellite Division, pp. 1836–1848, 2006.
  10. O. Macchi and L. L. Scharf, “Dynamic programming algorithm for phase estimation and data decoding on random phase channels,” IEEE Transactions on Information Theory, vol. 27, no. 5, pp. 581–595, 1981. View at Google Scholar · View at Scopus
  11. G. J. Gao, INS-assisted high sensitivity GPS receivers for degraded signal navigation [Ph.D. thesis], Department of Geomatics Engineering, University of Calgary, Calgary, Canada, 2007.
  12. M. L. Psiaki and H. Jung, “Extended Kalman filter methods for tracking weak GPS signal,” in Proceedings of the ION GPS 15th International Technical Meeting of the Satellite Division of The Institute of Navigation, pp. 2539–2553, Portland, Ore, USA, 2002.
  13. N. I. Ziedan and J. L. Garrison, “Extended Kalman filter-based tracking of weak GPS signals under high dynamic conditions,” in Proceedings of the 17th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS '04), pp. 20–31, Long Beach, Calif, USA, September 2004. View at Scopus
  14. A. Razavi, D. Gebre-Egziabher, and D. M. Akos, “Carrier loop architectures for tracking weak GPS signals,” IEEE Transactions on Aerospace and Electronic Systems, vol. 44, no. 2, pp. 697–710, 2008. View at Publisher · View at Google Scholar · View at Scopus
  15. J. H. Won, T. Pany, and B. Eissfeller, “Characteristics of kalman filters for GNSS signal tracking loop,” IEEE Transactions on Aerospace and Electronic Systems, vol. 48, no. 4, pp. 3671–3681, 2012. View at Publisher · View at Google Scholar · View at Scopus
  16. S. Julier, J. Uhlmann, and H. F. Durrant-Whyte, “A new method for the nonlinear transformation of means and covariances in filters and estimators,” IEEE Transactions on Automatic Control, vol. 45, no. 3, pp. 477–482, 2000. View at Publisher · View at Google Scholar · View at MathSciNet · View at Scopus
  17. M. Nørgaard, N. K. Poulsen, and O. Ravn, “New developments in state estimation for nonlinear systems,” Automatica, vol. 36, no. 11, pp. 1627–1638, 2000. View at Publisher · View at Google Scholar · View at MathSciNet · View at Scopus
  18. R. van der Merwe and E. A. Wan, “The square-root unscented Kalman filter for state and parameter-estimation,” in Proceedings of the IEEE Interntional Conference on Acoustics, Speech, and Signal Processing, pp. 3461–3464, May 2001. View at Scopus