The paper aims at discussing techniques for administering one implementation issue that often arises in the application of particle filters: sample impoverishment. Dealing with such problem can significantly improve the performance of particle filters and can make the difference between success and failure. Sample impoverishment occurs because of the reduction in the number of truly distinct sample values. A simple solution can be to increase the number of particles, which can quickly lead to unreasonable computational demands, which only delays the inevitable sample impoverishment. There are more intelligent ways of dealing with this problem, such as roughening and prior editing, procedures to be discussed herein. The nonlinear particle filter is based on the bootstrap filter for implementing recursive Bayesian filters. The application consists of determining the orbit of an artificial satellite using real data from the GPS receivers. The standard differential equations describing the orbital motion and the GPS measurements equations are adapted for the nonlinear particle filter, so that the bootstrap algorithm is also used for estimating the orbital state. The evaluation will be done through convergence speed and computational implementation complexity, comparing the bootstrap algorithm results obtained for each technique that deals with sample impoverishment.
The orbit of an artificial satellite is determined using real data from the Global Positioning System (GPS) receivers. In the orbit determination process of artificial satellites, the nature of the dynamic system and the measurements equations are nonlinear. As a result, it is necessary to manage a fully nonlinear problem in which the disturbing forces as well as the measurements are not easily modelled. In this orbit determination problem, the variables that completely specify a satellite trajectory in the space are estimated, with the processing of a set of pseudorange measurements related to the body.
A spaceborne GPS receiver is a powerful resource to determine orbits of artificial Earth satellites by providing many redundant measurements, which ultimately yields high degree of the observability to the problem. The Jason satellite is a nice example of using GPS for space positioning. Through an onboard GPS receiver, the pseudoranges (error corrupted distance from satellite to each of the tracked GPS satellites) can be measured and used to estimate the full orbital state.
The bootstrap filter is a particle filter whose central idea is to express the required probability density function (PDF) as a set of random samples, instead of a function over state space [
Numerous strategies have been developed for solving the particles degeneracy (or sample impoverishment) problem that often arises in particle filter applications like introduction of a risksensitive particle filter as an alternative approach to mitigate sample impoverishment based on constructing explicit risk functions from a general class of factorizable functions [
Herein, the main goal is to analyze the bootstrap filter behavior for the highly nonlinear orbit determination problem. Its simulation results are compared taking into account the sample impoverishment. A reference solution is a bootstrap particle filter (BPF) applied to orbit determination that has already been compared to the unscented Kalman filter solution for the same problem and works well for the analysis of the sample impoverishment issue [
The particle filter was designed to numerically implement the Bayesian estimator [
The main idea of the BPF is intuitive and direct. At the beginning,
In (
The particle filter, adjusted to the orbit determination problem, can be summarized as follows.
(1) The dynamic and the measurement equations are given as
where
(2)
(3) For
(a) in the time propagation step, obtain a priori (predicted) particles
where each noise vector,
(b) compute the relative likelihood
(c) normalize the relative likelihood values:
(d) in the resampling step, generate a set of a posteriori (resampled) particles
(e) now, there is a set of particles
In the implementation of the bootstrap filter, there is only a small overlap between the prior and the likelihood.
There are some procedures that may be implemented for combating the consequent reduction in the number of truly distinct sample values, such as increasing the number of particles, roughening, and prior editing [
Roughening will be the first remedy for sample impoverishment to be discussed. It restrains the resampled particles spread (a posteriori particles) by adding random noise to them, which is similar to adding artificial process noise to the Kalman filter [
The tuning parameter
Prior editing can be tried if roughening does not prevent sample impoverishment. Such approach edits the a posteriori particles from the prior time instant,
Pass the resampled sample from previous instant,
Calculate
If the magnitude of
Due to the high computational cost involving prior editing, such approach was done only once. It is important to make it clear that, here, the
The accommodation of roughening and prior editing in the bootstrap particle filter algorithm can be schematized as Figure
Roughening and prior editing accommodation in the BPF algorithm.
The orbit determination is a process for obtaining values of the parameters that completely specify the motion of an orbiting body (as an artificial satellite), based on a set of observations of the body. It involves nonlinear dynamical and nonlinear measurement systems, which depends on the tracking system and the estimation technique [
The observation may be obtained from the ground station networks using laser, radar, Doppler, or space navigation systems, as the GPS. The choice of the tracking system depends on a compromise between the goals of the mission and the available tools. In the case of the GPS, the advantages are global coverage, high precision, low cost, and autonomous navigation resources. The GPS may provide orbit determination with accuracy at least as good as the methods using ground tracking networks. The latter provides standard precision around tens of meters and the former can provide precision as tight as some centimetres. The GPS provides, at a given instant, a set of many redundant measurements, which makes the orbit position observable geometrically.
After some advances of technology, the single frequency GPS receivers provide a good basis to achieve fair precision at relatively low cost, still attaining the accuracy requirements of the mission operation. The GPS allows the receiver to determine its position and time, geometrically, anywhere at any instant, with data from at least four satellites. The principle of navigation by satellites is based on sending signals and data from the GPS satellites to a receiver located on board the satellite whose orbit needs to be determined. This receiver measures the travel time of the signal and then calculates the distance between the receiver and the GPS satellite. Those measurements of distances are called pseudoranges.
The instantaneous orbit determination using GPS satellites is based on the geometric method. In such method, the observer knows the set of GPS satellites position in a reference frame, obtaining its own position in the same reference frame.
In the case of orbit determination via GPS, the ordinary differential equations which represent the dynamic model are, in its simplest form, given traditionally as follows:
There are gravitational and nongravitational forces that affect the orbit of an Earth’s artificial satellite. The main disturbing forces of gravitational nature are the nonuniform distribution of Earth’s mass; ocean and terrestrial tides; and the gravitational attraction of the Sun and the Moon. And the principal nongravitational effects are Earth atmospheric drag; direct and reflected solar radiation pressure; electric drag; emissivity effects; relativistic effects; and meteorites impacts.
The disturbing effects are, in general, included according to the physical situation presented and to the accuracy that is intended for the orbit determination. Here, only a minimum set of perturbations was included which enable analyzing the performance of the particle filter [
The nonlinear equation of the observation model is
The tests and the analysis for the bootstrap particle filter and two procedures for avoiding sample impoverishment (roughening and prior editing) are presented. To validate and to analyze the methods, real GPS data from the Jason2 satellite are used. Ocean Surface Topography Mission (OSTM)/Jason2 is a followon altimetry mission to the very successful TOPEX/Poseidon mission and Jason1. It is a joint mission between NASA and CNES (French space agency), launched June 20, 2008. Jason2 has a repeat period of approximately 10 days with 254 passes per cycle. Its nodal period is 6,745.72 sec (near 1.87 hours). Sometimes there may be anomalous or missing data. Occasionally Jason2 must perform maneuvers to maintain orbit. When the satellite detects something abnormal, it will go into safe hold and will turn off all instruments and no data will be collected [
The filters estimated position and velocity are compared with Jason2 precise orbit ephemeris (POE) from JPL/NASA. The test conditions consider real ionfree pseudorange data, collected by the GPS receiver onboard Jason2, on October 22, 2010, presenting up to 12 GPS satellites tracked. The tests were limited to 5.5 hours of GPS data spaced 10 s. After that, there was an undesirable data gap which could spoil the test case. Such 5.5hour arc (near 3 Jason2 orbital periods) was considered sufficient for evaluating the bootstrap particle filter and roughening and prior editing approaches, in this orbit determination application.
The force model comprises perturbations due to geopotential up to order and degree
This work is not a search for results accuracy. It aims at analyzing the application of a bootstrap filter to the orbit determination problem. The analysis is based on comparing the errors in position (translated to the orbital radial, normal, and alongtrack RNT components) among three solutions:
The bootstrap particle filter with resampling, applied without any sample impoverishment procedure (named “PF” in the results).
The bootstrap particle filter applied with roughening (named “PFR” in the results).
The bootstrap particle filter applied with roughening and prior editing (named “PFPE”in the results).
The RNT system interpretation is straightforward: the radial component “R” points to the nadir direction; the normal “N” is perpendicular to orbital plane; and the transversal (alongtrack) “T” is orthogonal to “R” and “N,” and it is also the velocity component. Thus, it is possible to analyze what happens with the orbital RNT components and the orbit evolution as well. There is also interest for processing time, in order to analyze the computational efforts face to the accuracy achieved by each algorithm.
Regarding time of processing,
As said before, prior editing recomputes any particle that does not match a specific criterion. Therefore, a relevant test is to observe the instant when each algorithm starts rejecting particles which will be presented. The goal is to verify whether, as a procedure is included, it delays the rejection process. It will also be analyzed whether the number of particles affects the particle rejection, that is, whether its increase may work as an approach for avoiding sample impoverishment.
If
Time of processing.

PF  PFR  PFPE  


17  44 s  45 s  1 min 23 s 
100  4 min 16 s  4 min 19 s  7 min 07 s  
300  12 min 49 s  13 min 05 s  20 min 56 s  
700  31 min 09 s  31 min 27 s  50 min 31 s 
For computing time of processing and for all the simulations shown, a computer Intel Core i52430M processor of 2.40 GHz, with 2.70 GB of RAM, was used. The program was coded in FORTRAN 77 within operating system Windows XP and compiler Compaq Visual Fortran version 6.1.
When some particles do not reach prior editing criterion (i.e., the magnitude of
Instant of the first rejection of particles occurrence.

PF  PFR  PFPE  


17  16 min 00 s  26 min 40 s  26 min 40 s 
100  10 min 00 s  45 min 50 s  45 min 50 s  
300  9 min 20 s  45 min 50 s  45 min 50 s  
700  9 min 00 s  45 min 50 s  45 min 50 s 
In Table
As said before, the number of particles is chosen as a tradeoff between computational cost and estimation accuracy. The results in Table
Mean and standard deviation statistics.
Estimator 

Mean ± standard deviation (m)  

R  N  T  
PF  17  −5.940 ± 36.276  −1.821 ± 17.869  120.504 ± 212.955 
100  −10.289 ± 14.711  −0.238 ± 9.961  94.695 ± 119.586  
300  −1.065 ± 9.367  0.139 ± 7.333  −9.177 ± 50.723  







PFR  17  27.666 ± 64.094  6.011 ± 31.725  37.537 ± 343.973 
100  −6.876 ± 19.706  −2.935 ± 12.435  2.562 ± 11.078  
300  −6.105 ± 16.806  −2.335 ± 5.478  1.066 ± 6.198  







PFPE  17  −101.686 ± 63.379  −1.322 ± 75.400  1394.298 ± 902.146 
100  −9.833 ± 15.272  −1.813 ± 7.972  1.290 ± 9.093  
300  −5.839 ± 15.008  −1.890 ± 7.615  0.602 ± 3.953  




In order to show the behavior of the errors in terms of RNT coordinates, Figures
Errors in RNT coordinates for PFPE simulation (
Errors in RNT coordinates for PFR simulation (
Errors in RNT coordinates for PFR simulation (
According to Figures
Despite the undesirable data gap near 5.5 hours of GPS data, in order to properly evaluate the fittest algorithm (PFR) regarding number of particles, two other graphics were generated. Figures
A Bayesian bootstrap particle filter was applied for the satellite orbit determination problem, using a set of GPS measurements. The development was evaluated taking into account performance and computational burden. The bootstrap filter results, implemented with resampling, were compared with two other versions, which include roughening and prior editing, aiming at avoiding sample impoverishment.
With regard to time of processing, results showed that PFPE algorithm requires greater time than PF, which is as competitive as PFR. Since the number of particles is chosen as a tradeoff between computational cost and estimation accuracy, the CPU time is related to the variation in number of particles chosen.
When the number of particles used is analyzed, it is also possible to conclude that if it is very small, any sample impoverishment avoidance procedure will not be effectual. And since PFPE approach executes particles edition only once here, it does not present any significant improvement facing the PFR procedure, no matter the number of particles used. Additionally, if the computational costs between PFR and PFPE (as implemented) are compared, the computation burden is enough to contraindicate PFPE implementation as many times as necessary, even if the results are improved.
Results confirm that the greater the number of particles, the better the estimation accuracy. The best result was achieved for
In order to obtain a better bootstrap particle filter performance, especially in terms of estimation accuracy, adjustments in the many filter variants might be done for improving its efficiency. Such adjustments are directly related to the knowledge about the filter. Other strategies can also be tried for solving implementation issues such as sample impoverishment. Another approach for improving particle filtering is to combine it with another filter such as extended Kalman filter or unscented Kalman filter. In this approach, each particle is updated at the measurement time using the extended or the unscented filter, and then resampling is performed using the measurements.
The authors declare that there is no conflict of interests regarding the publication of this paper.
The authors wish to express their consideration to the National Institute for Space Research (INPE) that kindly provided everything necessary for this paper to be developed. The authors are also grateful to São Paulo Research Foundation (FAPESP), for the support under Contract no. 2012/210236, and to National Council for Scientific and Technological Development (CNPq), for the support under Contract no. 303119/20101.