calibration of three-axis magnetometer using

12
IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 62, NO. 2, FEBRUARY 2013 281 Calibration of Three-Axis Magnetometer Using Stretching Particle Swarm Optimization Algorithm Zhitian Wu, Yuanxin Wu, Xiaoping Hu, Member, IEEE, and Meiping Wu Abstract—In this paper, a stochastic optimization algorithm is proposed to calibrate the three-axis magnetometer onboard. The sensor errors, namely, hard iron, soft iron, nonorthogonality, scale factors, and bias, are taken into account. Particle swarm optimiza- tion (PSO) strategy is used to do the calibration, enhanced by the stretching technique to improve the accuracy and robustness. The performance of this algorithm is evaluated with a series of laboratory experiments and a field experiment of autonomous underwater vehicle. Comparisons with other analytical calibration methods are made. The results demonstrate that both the PSO and the stretched PSO algorithm can significantly compensate the magnetometer readings, and the latter algorithm has higher accuracy and more robustness. Index Terms—Onboard calibration, parameter estimation, par- ticle swarm optimization (PSO), stretching technique, three-axis magnetometer. I. I NTRODUCTION T HE THREE-AXIS magnetometer consists of three indi- vidual transducers. It is a device that continuously pro- vides the vector information of near magnetic field with respect to the body frame coordinate to aid in the vehicle’s attitude determination or position estimation [1], [2]. This sensor is inexpensive, low in size, lightweight, and reliable and has low power requirement. It has been widely applied to autonomous air, ground, and underwater vehicles. The calibration of the three-axis magnetometer must be performed prior to its application because the onboard mag- netometer (rigidly fixed to a vehicle) readings are seriously distorted by sensor errors and external magnetic field sources. Compared with accuracies of 1 –2 without calibration, the attitude knowledge is achieved in accuracies of 0.1 0.5 by using well-calibrated sensors [3]. The measurement error Manuscript received October 31, 2011; revised June 1, 2012; accepted June 3, 2012. Date of publication September 12, 2012; date of current version December 29, 2012. This work was supported in part by the Foundation for the Author of National Excellent Doctoral Dissertation of People’s Republic of China (FANEDD 200897), by the Program for New Century Excellent Talents in University (NCET-10-0900), and by the Aerospace Support Foun- dation of People’s Republic of China (2010-HT-GFKD-11). The work of Z. Wu was supported in part by the Distinguished Postgraduate Fund of National University of Defense Technology (B110301) and in part by the Distinguished Postgraduate Fund of Hunan Province, China (CX2011B012). The Associate Editor coordinating the review process for this paper was Dr. Antonios Tsourdos. The authors are with the Department of Automatic Control, College of Mechatronics and Automation, National University of Defense Technology, Changsha 410073, China (e-mail: [email protected]; yuanx_wu@ hotmail.com; [email protected]; [email protected]). Color versions of one or more of the figures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identifier 10.1109/TIM.2012.2214951 sources are mainly classified into two kinds. One is the tech- nological limitations in sensor manufacturing, installation, and materials, which results in nonorthogonality, scale factor, and bias. The other is the presence of ferromagnet around the sensor, which generates hard iron and soft iron magnetic errors induced by external magnetic field. These two kinds of error sources contribute to sensor readings together and are hard to be distinguished. Magnetometer calibration is not a new problem, and a few calibration techniques have been presented in the literature. A class of methods called “attitude-dependent” methods was pro- posed to calibrate the magnetic compass or magnetometer [4]– [6]. The major shortcoming of these methods is the necessity of external attitude information, which is difficult to obtain in many applications. Another class of methods relies on the prin- ciple of scalar checking [7], which minimizes the square of the differences between the norms of magnetometer outputs and the magnitude of geomagnetic field. These “attitude-independent” methods do not need additional calibration instruments and are easy to realize. One main drawback of these approaches is the cost function presented as a quadratic equation or quartic equation, and therefore admits multiple minima [8]. Gambhir [9] linearized the cost function using the centering approximation algorithm and adopted the least squares method to estimate the magnetometer bias. This method is practical but introduces linearization error and ignores several kinds of sensor errors. Alonso and Shuster [10] put forward an approach called TWOSTEP method by extending Gambhir’s approach. Crassidis et al. [11] converted the centering approximation al- gorithm to a recursive form and then applied nonlinear Kalman filtering techniques to estimate magnetometer parameters. Both methods are not feasible for onboard magnetometer calibration because they do not take magnetic deviations (hard and soft iron errors) into account. In addition, their solutions may result in suboptimal or divergence in case of bad initial guess. In recent work, Gebre-Egziabher et al. [12] proposed an algorithm called nonlinear two-step estimator (Two-Step) to calibrate a 2-D or 3-D magnetometer. This method was ex- panded to include nonorthogonality and soft iron errors in [13]. Although the Two-Step method does not need an initial guess or linearization, it is sensitive to data noise (see [14] for more de- tails). Worse still, Two-Step will lead to bad estimates when the overdetermined equations are ill posed. Vasconcelos et al. [16] proposed a maximum likelihood estimator (MLE) algorithm which uses the Two-Step estimate as initial approximation. The algorithm treats the measurement noise as a normal distribution and maximizes the likelihood of the parameter estimation by an MLE. As the likelihood function is quadratic, it is solved by the 0018-9456/$31.00 © 2012 IEEE

Upload: jamal-ahmed

Post on 18-Jul-2016

41 views

Category:

Documents


0 download

DESCRIPTION

magnetometer

TRANSCRIPT

Page 1: Calibration of Three-Axis Magnetometer Using

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 62, NO. 2, FEBRUARY 2013 281

Calibration of Three-Axis Magnetometer UsingStretching Particle Swarm Optimization Algorithm

Zhitian Wu, Yuanxin Wu, Xiaoping Hu, Member, IEEE, and Meiping Wu

Abstract—In this paper, a stochastic optimization algorithm isproposed to calibrate the three-axis magnetometer onboard. Thesensor errors, namely, hard iron, soft iron, nonorthogonality, scalefactors, and bias, are taken into account. Particle swarm optimiza-tion (PSO) strategy is used to do the calibration, enhanced bythe stretching technique to improve the accuracy and robustness.The performance of this algorithm is evaluated with a series oflaboratory experiments and a field experiment of autonomousunderwater vehicle. Comparisons with other analytical calibrationmethods are made. The results demonstrate that both the PSOand the stretched PSO algorithm can significantly compensatethe magnetometer readings, and the latter algorithm has higheraccuracy and more robustness.

Index Terms—Onboard calibration, parameter estimation, par-ticle swarm optimization (PSO), stretching technique, three-axismagnetometer.

I. INTRODUCTION

THE THREE-AXIS magnetometer consists of three indi-vidual transducers. It is a device that continuously pro-

vides the vector information of near magnetic field with respectto the body frame coordinate to aid in the vehicle’s attitudedetermination or position estimation [1], [2]. This sensor isinexpensive, low in size, lightweight, and reliable and has lowpower requirement. It has been widely applied to autonomousair, ground, and underwater vehicles.

The calibration of the three-axis magnetometer must beperformed prior to its application because the onboard mag-netometer (rigidly fixed to a vehicle) readings are seriouslydistorted by sensor errors and external magnetic field sources.Compared with accuracies of 1◦–2◦ without calibration, theattitude knowledge is achieved in accuracies of 0.1◦−0.5◦

by using well-calibrated sensors [3]. The measurement error

Manuscript received October 31, 2011; revised June 1, 2012; acceptedJune 3, 2012. Date of publication September 12, 2012; date of current versionDecember 29, 2012. This work was supported in part by the Foundation forthe Author of National Excellent Doctoral Dissertation of People’s Republicof China (FANEDD 200897), by the Program for New Century ExcellentTalents in University (NCET-10-0900), and by the Aerospace Support Foun-dation of People’s Republic of China (2010-HT-GFKD-11). The work ofZ. Wu was supported in part by the Distinguished Postgraduate Fund ofNational University of Defense Technology (B110301) and in part by theDistinguished Postgraduate Fund of Hunan Province, China (CX2011B012).The Associate Editor coordinating the review process for this paper wasDr. Antonios Tsourdos.

The authors are with the Department of Automatic Control, Collegeof Mechatronics and Automation, National University of Defense Technology,Changsha 410073, China (e-mail: [email protected]; [email protected]; [email protected]; [email protected]).

Color versions of one or more of the figures in this paper are available onlineat http://ieeexplore.ieee.org.

Digital Object Identifier 10.1109/TIM.2012.2214951

sources are mainly classified into two kinds. One is the tech-nological limitations in sensor manufacturing, installation, andmaterials, which results in nonorthogonality, scale factor, andbias. The other is the presence of ferromagnet around thesensor, which generates hard iron and soft iron magnetic errorsinduced by external magnetic field. These two kinds of errorsources contribute to sensor readings together and are hard tobe distinguished.

Magnetometer calibration is not a new problem, and a fewcalibration techniques have been presented in the literature. Aclass of methods called “attitude-dependent” methods was pro-posed to calibrate the magnetic compass or magnetometer [4]–[6]. The major shortcoming of these methods is the necessityof external attitude information, which is difficult to obtain inmany applications. Another class of methods relies on the prin-ciple of scalar checking [7], which minimizes the square of thedifferences between the norms of magnetometer outputs and themagnitude of geomagnetic field. These “attitude-independent”methods do not need additional calibration instruments andare easy to realize. One main drawback of these approachesis the cost function presented as a quadratic equation orquartic equation, and therefore admits multiple minima [8].Gambhir [9] linearized the cost function using the centeringapproximation algorithm and adopted the least squares methodto estimate the magnetometer bias. This method is practicalbut introduces linearization error and ignores several kinds ofsensor errors. Alonso and Shuster [10] put forward an approachcalled TWOSTEP method by extending Gambhir’s approach.Crassidis et al. [11] converted the centering approximation al-gorithm to a recursive form and then applied nonlinear Kalmanfiltering techniques to estimate magnetometer parameters. Bothmethods are not feasible for onboard magnetometer calibrationbecause they do not take magnetic deviations (hard and softiron errors) into account. In addition, their solutions may resultin suboptimal or divergence in case of bad initial guess.

In recent work, Gebre-Egziabher et al. [12] proposed analgorithm called nonlinear two-step estimator (Two-Step) tocalibrate a 2-D or 3-D magnetometer. This method was ex-panded to include nonorthogonality and soft iron errors in [13].Although the Two-Step method does not need an initial guess orlinearization, it is sensitive to data noise (see [14] for more de-tails). Worse still, Two-Step will lead to bad estimates when theoverdetermined equations are ill posed. Vasconcelos et al. [16]proposed a maximum likelihood estimator (MLE) algorithmwhich uses the Two-Step estimate as initial approximation. Thealgorithm treats the measurement noise as a normal distributionand maximizes the likelihood of the parameter estimation by anMLE. As the likelihood function is quadratic, it is solved by the

0018-9456/$31.00 © 2012 IEEE

Page 2: Calibration of Three-Axis Magnetometer Using

282 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 62, NO. 2, FEBRUARY 2013

Newton descent method with an initial guess provided by theTwo-Step method. The Newton method generates a sequenceof improved estimates until it reaches an optimal solution.However, the method is influenced by the initial approximation;thus, the MLE increases the rate of converging to the localminimum.

To resolve the aforementioned problems, Wu et al. [17]introduced a new particle swarm optimization (PSO)-basedmagnetometer calibration algorithm. The PSO-based algorithmdiffers from other calibration algorithms in that it uses a moreaccurate nonlinear model directly. There is no need to considerinitial estimates and linearization since the PSO strategy isa stochastic global optimization algorithm [17]. Furthermore,it does not assume the measurement noise characteristics. Asshown in [18] and [19], the PSO is stable and efficient innoise optimization problems. Compared with other stochasticapproaches, the PSO generally has significantly computationalefficiency because of the following: 1) It updates particles (so-lutions) both by position information and velocity information,and 2) it has less function evaluations than other evolutionalgorithms. Hassan et al. [20] reported that the PSO has thesame effectiveness as the genetic algorithm (GA) but with lowercomputational cost.

This paper improves the work by Wu et al. [17] by enhancingthe PSO algorithm using the function stretching technique[21] to overcome the drawback of premature local minimaconvergence. The stretching PSO (SPSO) eliminates the localminima of the optimization problem and preserves global ones.Thus, all global minima can be computed if only they exist [22].The SPSO-based calibration methodology is assessed both bylaboratory and field experiments and compared with the Two-Step method [13] and the MLE method [16]. It is shown thatthe SPSO performs the best.

The rest of this paper is organized as follows. Section IIpresents the measurement error model, and a calibration modelincorporating most magnetometer reading errors as calibrationparameters was constructed. Section III derives the PSO andthe SPSO-based calibration algorithm. Laboratory experimen-tal results are reported in Section IV. The field experimentalresults are reported in Section V. Finally, conclusion is drawnin Section VI.

II. PROBLEM FORMULATION

In this section, a realistic input–output model of the mag-netometer is derived. A calibration model is constructed by in-versing the input–output model. The elements of the matrix andvector are the calibration parameters that address the compoundeffect of magnetometer reading errors. The dimension of thecalibration parameter space is discussed and decreased by QRdecomposition theory. The cost function is proposed accordingto the principle of scalar checking.

A. Input–Output Model

The measurement of the three-axis magnetometer can beexpressed as

B̃s = CNOCSF (CseB

ee +Bs

HI +BsSI) + bso + ws (1)

Fig. 1. Skew axes and orthogonal axes.

where(∗)s sensor frame;(∗)e earth frame;B̃s sensor output vector in sensor frame;Be

e geomagnetic field vector in earth frame;Cs

e attitude matrix from earth to sensor frame;Bs

HI and BsSI hard iron and soft iron error vectors in sensor

frame, respectively;CNO and CSF nonorthogonality matrix and scale factor ma-

trix, respectively;bso sensor bias vector in sensor frame;ws Gaussian white noise in sensor frame.

Due to the limitations in sensor manufacturing, the threesensitive axes of the sensor are nonorthogonal. Assume thatthe three skew axes are denoted by XS , YS , and ZS andthe orthogonal axes of the reference frame (sensor frame) aredenoted by XO, YO, and ZO. Define ZO to coincide with ZS

and YO to lie in the YSZS plane, and XO is defined to constitutea right-handed orthogonal frame with YO and ZO. The anglebetween YO and YS denotes β, the angle between XO andXSYS plane denotes γ, and the angle between XO and XSZS

plane denotes α. Fig. 1 shows the relationship between the skewaxes and the orthogonal axes. Thus, CNO can be modeled as

CNO =

⎡⎣ cosα cos γ sin γ sinα cos γ

0 cosβ sinβ0 0 1

⎤⎦ . (2)

The scale factor errors and bias are modeled as

CSF = diag(sx, sy, sz)T , bso = [box boy boz]

T (3)

where si and boi(i = x, y, z) denote the scale factor and thebias of the i axis output.

The hard iron error vector BsHI is generated by hard iron

materials such as permanent magnets inherent to the vehiclestructure. The generated magnetic field is time invariant forthese materials have large remanence. As a result, hard ironerrors are constants in the sensor frame.

Analogously, the soft iron error vector BsSI is generated by

soft iron materials. The resulting magnetic field is varying withboth magnitude and direction of the external magnetic field withrespect to the soft iron materials. Therefore, soft iron errors are

Page 3: Calibration of Three-Axis Magnetometer Using

WU et al.: CALIBRATION OF THREE-AXIS MAGNETOMETER USING STRETCHING PSO ALGORITHM 283

time variant in the sensor frame. However, in most soft ironmaterials, the hysteresis is small enough that a linear model fordescribing the magnitude of the soft iron material respondingto external magnetic field is acceptable [5], [6], [23]

BsSI = CSI (B

se +Bs

HI) (4)

where CSI is a soft iron matrix whose elements are small andconstant.

Substituting (4) into (1) and reorganizing the terms yield

B̃s = ACseB

se + bs + ws (5)

where A = CNOCSF (I3×3 + CSI) and bs = ABsHI + bso.

B. Calibration Model

Neglecting the measurement noise, a calibration model isconstructed by inversing the input–output model

B̂ee = Ce

sA−1(B̃s − bs) (6)

where B̂ee denotes the output vector of the calibration model,

Ces denotes the attitude matrix from the sensor to earth frame,

and Ces = (Cs

e )−1. In fact, the attitude matrix is difficult to

obtain since the magnetometer cannot provide any attitudeinformation relative to the reference frame. Instead, we derivescalar measurements, namely, scalar checking, which is definedas follows:∥∥∥B̂e

e

∥∥∥ =∥∥∥Ce

sA−1(B̃s − bs)

∥∥∥ =∥∥∥A−1(B̃s − bs)

∥∥∥ . (7)

Equation (7) eliminates the attitude matrix. Therefore, themagnitude of the geomagnetic field can be estimated from (7),as soon as the parameters of A and b are identified. The calibra-tion problem is now converted to the parameter identificationproblem. The dimension of the calibration parameter space is

dimΘ = elements(A) + elements(b) = 12 (8)

where the function elements(∗) means the number of freeelements in a matrix or a vector.

Furthermore, dimΘ can be decreased by the QR decompo-sition of A, which is summarized as follows.

Theorem 1 (QR Decomposition) [24]: Let C ∈ �n×n be annonsingular matrix. There only exit a unitary matrix QC ∈�n×n and an upper triangular matrix RC ∈ �n×n that satisfythe following: 1) C = QCRC , and 2) all diagonal elements ofRC are positive.

The proof can be seen in [24]. According to Theorem 1, thematrix A−1 is decomposed as

A−1 = QARA. (9)

Substituting (9) into (7) and reorganizing the equation yield∥∥∥B̂ee

∥∥∥ =∥∥∥RA(B̃

s − bs)∥∥∥ . (10)

As a result, the dimension of the calibration parameterspace is

dimΘ = elements(RA) + elements(b) = 9. (11)

Fig. 2. Calibration process.

Based on the model of (10), there are nine elements tobe estimated in the calibration model, and these elements arethe compound effect of all magnetometer reading errors. Thecalibrated process is shown in Fig. 2.

C. Cost Function

The principle of scalar checking is based on the fact thatthe magnitude of a measurement vector is independent of thecoordinate systems [7]. Suppose that the magnitude of thegeomagnetic field is r0, the following equations come intoexistence:

r0 =∥∥∥RA

(B̃s

i − bs)∥∥∥ , i = 1, 2, 3, . . . , N (12)

where B̃si (i = 1, 2, 3, . . . , N) is the sensor output vector, the

subscript i stands for the sample index, and N is the totalnumber of samples. The cost function is defined as

argmin f(RA, b) =

N∑i=1

(∥∥∥RA

(B̃i

s − bs)∥∥∥− r0

)2

. (13)

As can be seen, the parameters (RA, b) minimizing the costfunction (13) are the best parameter estimation. Through thecost function, the parameter identification problem has beenconverted into a global optimization problem. Note that thestructure of the cost function makes the effect of measurementnoise complicated, even though the noise was assumed to bewhite and Gaussian [16], [25].

III. CALIBRATION ALGORITHM

In this section, we derived a calibration algorithm basedon the PSO and the function stretching technique. Part Apresents a standard PSO algorithm for the calibration. Part Bintroduces the function stretching technique and the SPSOalgorithm. Part C compares the performance of the SPSO withthe PSO.

A. PSO Algorithm

PSO algorithm is a stochastic swarm intelligence-basedglobal optimization algorithm, developed by Kennedy andEberhart [26]. It is an emerging evolutionary computationtechnique inspired by the social behavior of bird flockingand fish schooling. Each individual in the swarm performssome simple roles, but the action produces complex behaviorfor a swarm. Therefore, PSO has an ability to solve somecomplex problems that traditional approaches cannot [27]. Ascompared to gradient-based algorithms, such as the Newton andLevenberg–Marquardt algorithms, or other nongradient algo-rithms like simulated annealing and GAs, the PSO algorithmyields better or the same quality of results [20], [28]–[31]. PSO

Page 4: Calibration of Three-Axis Magnetometer Using

284 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 62, NO. 2, FEBRUARY 2013

algorithm is insensitive to the initial value and easy to be imple-mented. It has fast convergence rate as well. Furthermore, PSOhas the advantage of parallel computing, which is an importantmotivation to be applied to the magnetometer calibration. Theconcept of PSO is that each particle in the swarm is a potentialsolution in the search space of an optimization problem and isinitialized with a random velocity and a random position. Ateach time step, the particle moves through the solution spaceand updates itself by following two “best values.” One is itsown best position that the particle achieved so far, called Pbest.The other is the overall best position of all particles obtained sofar, called Gbest. All particles are attracted to the best solutionor nearness by minimizing a fitness value [32].

Assume that, in an N -dimensional search space, there are mparticles in the swarm. At the k step, the position vector of theith particle can be presented as

Xi(k) = (xi1(k), xi2(k), xi3(k), . . . , xiN (k))T .

The velocity vector can be presented as

Vi(k) = (vi1(k), vi2(k), vi3(k), . . . , viN (k))T .

The Pbest vector of this particle found so far can be present-ed as

Pi(k) = (pi1(k), pi2(k), pi3(k), . . . , piN (k))T .

The Gbest vector of the swarm found so far can be present-ed as

Gi(k) = (gi1(k), gi2(k), gi3(k), . . . , giN (k))T .

All particles adjust their velocities and positions as follows:

vij(k + 1) =wvij(k) + c1r1 (pij(k)− xij(k))

+ c2r2 (gij(k)− xij(k)) (14)

xij(k + 1) =xij(k) + vij(k + 1) (15)

where i (i = 1, 2, 3, . . . ,m) is the ith particle of the swarm andj (j = 1, 2, 3, . . . , N) is the jth dimension of the particle. wis an inertia weight controlling the influence of the previousvelocity of a particle. c1 and c2 are study factors that play arole in adjusting a particle’s own experience and social swarmexperience, respectively. In other words, c1 and c2 control theimpact of previous values of particle position on its currentvelocity, thus pulling each particle toward the Pbest and Gbestpositions. r1 and r2 are random scalars in the range (0, 1) andkeep the diversities in the swarm. In addition, the particle veloc-ity in each dimension is limited to an interval [−Vmax, Vmax].Hence, the maximum step size that the particle can move iscontrolled by the interval, which prevents the positions of theparticles from increasing rapidly in each step [32].

Note that the PSO holds both position information andvelocity information at each iteration step. Therefore, it usuallyhas a faster convergence rate than other evolution algorithmslike the GA that only retains position information.

The inertia weight w has provided improved performance ina number of applications. A suitable selection of w provides a

balance between global and local exploration and exploitation[33]. The most common strategy of selecting w is decreasedlinearly as

w = wmax −wmax − wmin

itermax× iter (16)

where wmax and wmin denote higher and lower values of w, re-spectively. itermax denotes the maximum number of iteration,and iter is the current iteration.

In order to estimate the calibration parameters (RA, b) in (13)using the PSO algorithm, we define a particle that contains allcalibration parameters. Let vecs : �3×3 → �6 be a vectoriza-tion operator that stacks the upper triangular part of a matrix toa vector. Then, the particle is

X :=[vecs(RA)

T bT]T

. (17)

The procedure of the PSO-based algorithm for the calibrationproblem is summarized as follows.

Step 1) Initialize the parameters of the algorithm, suchas swarm size m, maximum and minimum iner-tial weights wmax and wmin, maximum iterationitermax, and dimension of particle N .

Step 2) Initialize m particles with random velocities andpositions. Set the current positions as initial Pbestfor all particles. Set the current iteration k = 0.Calculate the value of fitness function (13) for eachparticle, and then, select the best position as initialGbest.

Step 3) Update the velocity and position of each particleaccording to (14) and (15). Limit each dimension ofvelocity within [−Vmax, Vmax], and limit the posi-tion within the search space.

Step 4) Calculate the new fitness value of all the particles.For each particle, if the new fitness value is smallerthan the fitness value of its Pbest, then replace Pbestby the current position; otherwise, hold the Pbest.

Step 5) Compare the fitness value of each particle, and selectthe minimum. If this minimum is smaller than thefitness value of Gbest, replace Gbest by the particle’sposition which holds the minimum fitness value.

Step 6) Increase the iteration k = k + 1. If the fitness valueof the Gbest is less than a set threshold or k =itermax, terminate the iteration, and output theGbest; otherwise, go to Step 3).

Given that X∗ is the global optima by the algorithm, thecalibration parameter estimation can be easily abstracted fromthe solution X∗. Let unvecs be the inverse operator of vecs,which forms a matrix out of the vector of the elements in itsupper triangular part. Thus{

RA = unvecs(X(1 : 6))b = X(7 : 9)

. (18)

Converging to a local minimum is the most common problemencountered by global optimization methods. PSO also suffersfrom this problem, and there is no general approach to ensure itssuccess yet. Analysis of PSO’s stability properties has been car-ried out in [34] and [35]. The standard stochastic PSO process

Page 5: Calibration of Three-Axis Magnetometer Using

WU et al.: CALIBRATION OF THREE-AXIS MAGNETOMETER USING STRETCHING PSO ALGORITHM 285

was simplified to a deterministic dynamical system, in whichthe random coefficients were treated as constants. Thus, somestability theory and methods, such as the Lyapunov stabilitymethod, can be applied. In [35], techniques for improvingthe convergence properties of the algorithm by fine-tuning itsparameters were analyzed.

B. SPSO Algorithm

The function stretching technique was proposed by Vrahatiset al. [21]. This technique applies a two-stage transformation toreshape the objective function that eliminates the local minimabut preserves the global minima. The two-stage transformationis defined by [21], [22], [31]

G(x) = f(x) + γ1 ‖x− x∗‖ (sign (f(x)− f(x∗)) + 1) (19)

H(x) =G(x) + γ2sign (f(x)− f(x∗)) + 1

tanh (μ(G (x)−G(x∗)))(20)

where x∗ is the detected local minima of the objective functionf(x), γ1, γ2, and μ are arbitrary positive constants, and sign(•)is the triple valued sign function

sign(x) =

{−1 x < 00 x = 01 x > 0

. (21)

According to the function value f(x∗), the searching spaceof the PSO is divided into two subspaces

S1 ={x|x ∈ �N , f(x) > f(x∗)

}(22)

S2 ={x|x ∈ �N , f(x) ≤ f(x∗)

}. (23)

Thus, the two transformations can be rewritten as follows:

G(x) =

{f(x) + 2γ1 ‖x− x∗‖ x ∈ S1

f(x) x ∈ S2(24)

H(x) =

⎧⎨⎩

G(x) + 2γ2

tanh(μ(G(x)−G(x∗))) , x ∈ S1

f(x), x ∈ S2\{x∗}maximum, x = x∗.

(25)

From (24), the values of the objective function with x ∈ S1

are stretched by γ1 and the Euclidean distance between x andx∗. In contrast, the values of the objection function with x ∈ S2

are unaltered by the transformation. After this stage, all localminima with higher values than f(x∗) will be eliminated, andall minima with lower or equal values remain unchanged.

From (25), the values of the objective function with x ∈ S1

are further stretched. H(x∗) is turned into a maximum, and thevalues of the objective function with x ∈ S2 \ {x∗} are stillunaltered.

The two-stage transformation does not modify the minimawith equal or lower function values except the detected one.However, it alleviates all minima with higher function valuesby reshaping the objective function. As a result, using this tech-nique can decrease the chance of converging to local minima.The pseudocode of the SPSO is described in Table I.

TABLE IPSEUDOCODE OF THE SPSO

TABLE IIPARAMETER VALUES FOR PSO AND SPSO

TABLE IIICOMPARISONS OF THE PSO AND THE SPSO

It is important to note that, for the SPSO algorithm, thefunction stretching technique will not be activated if the pro-cedure does not meet a local minimum. In this case, the SPSOalgorithm is equal to the PSO.

C. SPSO Versus PSO

The performance of the SPSO can be evaluated by a fa-mous 2-D benchmark function, namely, the Levy no.5 function,which is defined by

f(x) =

5∑i=1

[i cos ((i− 1)x1 + i)]

5∑j=1

[j cos ((j + 1)x2 + j)]

+(x1 + 1.042513)2 + (x2 + 0.80032)2 (26)

where xi ∈ [−2, 2], i = 1, 2. There is one global minimum inxg = (−1.3068,−1.4248)T , and its function value is f(xg) =−176.1375. However, a lot of local minima are near the globalone, making it quite difficult for most techniques to detect theglobal minima.

The values of the parameters in the PSO and the SPSO arereported in Table II. Our setting uses the guidelines given in[22] and [36].

Sixty independent runs have been performed using the PSOand the SPSO. Their average performances are exhibited inTable III in terms of the mean value and the standard deviationof the required iteration and the percentage of the success rate.The results show that the SPSO obtains 100% success rate,

Page 6: Calibration of Three-Axis Magnetometer Using

286 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 62, NO. 2, FEBRUARY 2013

Fig. 3. Original plot of the Levy no.5 function.

Fig. 4. G(x) transformation with x∗ = (−0.3521,−0.8003)T .

which means that the algorithm locates the global minima in all60 runs, in contrast to 86.6% of the PSO. However, the SPSOhas heavier computational cost than the PSO since the mean andstandard deviation of SPSO are larger than those of the PSO.This is balanced by the increased success rates, which impliesthat the SPSO has high probability to find the global minima.

The procedure of the SPSO is shown in Figs. 3–5. Fig. 3shows the original plot of the function. Fig. 4 shows the effectof stretching after the first stage of G(x) transformation witha detected local minimum x∗ = (−0.3521,−0.8003)T , and itsfunction value is f(x∗) = −144.3250. All candidate solutionswith higher function values than f(x∗) are stretched. Fig. 5shows the second stage of H(x) transformation. The detectedlocal minimum x∗ is transformed to a maximum.

It is clear from the aforementioned figures that the SPSO canalleviate the local minima problem by reshaping the objectivefunction. Most local minima are eliminated after the two-stagetransformation. Although SPSO shows good performance inmany test functions in the literature (see [37]), it has not yetbeen applied to any real-life problem to our best knowledge.

Fig. 5. H(x) transformation with x∗ = (−0.3521,−0.8003)T .

TABLE IVPERFORMANCE SPECIFICATIONS

IV. LABORATORY EXPERIMENTS

The performance of the proposed algorithm is carried outwith a series of offline laboratory experiments. The SPSO-based algorithm is examined in comparison with the Two-Stepmethod [13] and MLE method [16] in this section.

A. Laboratory Experimental Setup

The magnetometer triad to be calibrated is a three-axis digitalmagnetometer DM-060, manufactured by STL SystemtechnikLudwig GmbH. This sensor is integrated with a digital signalprocessing and thus outputs digital signals directly. Table IVshows the main performance specifications of DM-060 (see[38] for more details). The magnitude of the geomagnetic fieldis sampled by an additional proton magnetometer as a referencevalue for calibrated readings.

The laboratory experiments are performed with the DM-60sensor rigidly attached to an iron block. The reference value ofthe geomagnetic field is measured at the same spot, with theabsence of the DM-60 sensor and the iron block.

Three data sets are collected. Each data set’s measurementlocus is shown in Fig. 6. Subfigure (a) shows data set #1,obtained by performing several rotations. Subfigure (b) showsdata set #2, obtained in a similar situation but with fewer sam-ples. Subfigure (c) shows data set #3, obtained by performingarbitrary rotations. Data set #1 is used to estimate the calibratedparameters, while data sets #2 and #3 are used to evaluate theestimates.

B. Laboratory Experimental Results

When we are concerning a concrete problem and experimen-tal data, some parameters of the SPSO algorithm should be

Page 7: Calibration of Three-Axis Magnetometer Using

WU et al.: CALIBRATION OF THREE-AXIS MAGNETOMETER USING STRETCHING PSO ALGORITHM 287

Fig. 6. Laboratory Experiment: Measurement locus. (a) Data set #1. (b) Dataset #2. (c) Data set #3.

adjusted accordingly. The new values of some parameters arelisted in Table V where xi, i = 1, 2, . . . , 9 is the ith dimensionof the particle. As a result, each dimension of Vmax is set equalto 15% of the dynamic range of the particle’s correspondingdimension. The rest of the parameters are unaltered.

Fig. 7 shows the measurement calibration of data set #1.Subfigure (a) shows the calibrated readings. A plot of residualsis shown in subfigure (b). From this plot, the maximum residual

TABLE VPARAMETER SETTINGS

Fig. 7. Laboratory experiment: Measurement calibration (#1). (a) Calibratedreadings (#1). (b) Residuals (#1).

of each algorithm is less than 10 nT. The parameter estimationof each algorithm is listed in Table VI.

Data sets #2 and #3 are calibrated by using the estimatedparameters in Table VI. Their results are shown in Figs. 8 and9. The residuals of the SPSO-based algorithm are biased about10 nT, in contrast to about 25 nT of the Two-Step algorithm, andless than that of the MLE algorithm as well. The SPSO exhibitsgood performance reliably in these experiments.

Three criterions, namely, root-mean-square error (RMSE),mean value (MEAN), and the standard deviation (STD) of

Page 8: Calibration of Three-Axis Magnetometer Using

288 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 62, NO. 2, FEBRUARY 2013

TABLE VIPARAMETER ESTIMATION

Fig. 8. Laboratory experiment: Measurement calibration (#2). (a) Calibratedreadings (#2). (b) Residuals (#2).

the residuals, are defined to evaluate the performance of eachalgorithm in the sense of statistic

RMSE =

√√√√ 1

N

N∑i=1

r̂2i (27)

Fig. 9. Laboratory experiment: Measurement calibration (#3). (a) Calibratedreadings (#3). (b) Residuals (#3).

MEAN =1

N

N∑i=1

r̂i (28)

STD =1

n

N∑i=1

(r̂i −MEAN)2 (29)

where r̂i, i = 1, 2, . . . , N , is the calibrated reading. RMSEcan display the accuracy of the algorithm, while MEAN andSTD can draw the average and distribution of the residuals forthe algorithm. Performance comparisons among the algorithmsare listed in Table VII. It shows that, in the laboratory experi-ments, the PSO and SPSO algorithms are quite similar and bothoutperform the Two-Step algorithm and the MLE algorithm.

In order to activate the function stretching technique, theestimates of the PSO are set as local minima for the SPSO.Then, the original fitness function f(x) is replaced by H(x)during the following procedure. Fig. 10 shows the values offunction f(x), G(x), and H(x) for the Gbest of particles ateach iteration. For about 3600 iteration, all Gbests have a higherfunction value than f(x∗). Therefore, the function value f(x)is stretched by G(x) transformation and further stretched by

Page 9: Calibration of Three-Axis Magnetometer Using

WU et al.: CALIBRATION OF THREE-AXIS MAGNETOMETER USING STRETCHING PSO ALGORITHM 289

TABLE VIIPERFORMANCE COMPARISONS (nT)

Fig. 10. Comparison of fitness function for Gbest trajectory.

H(x) transformation. The trajectory becomes smoother thanbefore since some local minima are alleviated by stretching.After 3600 iterations, the Gbests have a lower function valuethan f(x∗); in this situation, we have f(x) = G(x) = H(x).

V. FIELD EXPERIMENTS

In this section, we experimentally evaluate the performanceof the SPSO-based algorithm by postprocessing the data col-lected on board an autonomous underwater vehicle (AUV).Also, the Two-Step method and the MLE method are used forcomparison. Part A discusses the experimental setup, includingthe employed sensor systems and their installation. Part Bdiscusses the field experimental condition, including the vehicletrajectory and raw measurement data. Part C discusses theresults of the field experiments.

A. Field Experimental Setup

Fig. 11 shows the experimental instruments mounted in thebody of the AUV. The system consists of an inertial navigationsystem (INS), a three-axis magnetometer, and a hub. The INScomprises an inertial measurement unit and a navigation com-puter. It provides attitude, velocity, and position informationto guide the vehicle running. The three-axis magnetometeris DM-050, which has high performance as DM-060 but is

Fig. 11. Instruments used in field experiment.

Fig. 12. Field experiment: Instrument installation.

lower in size. The hub receives raw sensor readings from themagnetometer and then sends it to the INS for storage.

Obtaining high accuracy measurements of geomagnetic fieldin an AUV environment is a challenging task since the AUV isinstrumented with a lot of magnetic field-generating electronicsand ferromagnet. The fixed position for the magnetometershould be taken into account carefully to isolate those unde-sired magnetic fields. As shown in Fig. 12 the experimentalinstruments are mounted in the head of the AUV. The three-axis magnetometer is strapped down to the body and separatedfrom other equipments.

B. Field Experimental Description

Prior to the field experiment, we had a geomagnetic sur-vey of the water field and built up a high-precision contourmap of geomagnetic field. We selected an experimental spotwith nearly constant magnetic magnitude (less than 10-nTvariations). Fig. 13 shows the the AUV trajectory during theexperiment in the calibration area, overlapped by the contourmap of geomagnetic field. The red line is the vehicle trajectory,indicated by the INS, which starts from the blue star. Fig. 14shows the measurement locus of raw sensor readings. Each axisof the raw sensor readings, as well as the total magnitude of rawdata, is shown in Fig. 15.

C. Field Experimental Results

All parameters for the SPSO are unchanged but the dynamicrange of the particle and Vmax. That is

x1, x4, x6 ∈ [0.3 1.7]

x2, x3, x5 ∈ [−0.4 0.4]

x7 ∼ x9 ∈ [−40000 40000]

Page 10: Calibration of Three-Axis Magnetometer Using

290 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 62, NO. 2, FEBRUARY 2013

Fig. 13. Field experiment: AUV trajectory.

Fig. 14. Field experiment: Measurement locus.

Fig. 15. Field experiment: Raw sensor readings.

and Vmax for each dimension is set to 15% of the correspondingnew dynamic range.

Fig. 16 shows the measurement calibration by three algo-rithms. Subfigure (a) shows the calibration readings, and the

Fig. 16. Field experiment: Measurement calibration. (a) Calibrated readings.(b) Residuals.

TABLE VIIICOMPARISONS OF PERFORMANCES AMONG THE ALGORITHMS

TABLE IXRMSE OF PSO AND SPSO (nT)

residuals are shown in subfigure (b). From the figures, we canobtain the same conclusion as in the laboratory experiments thatthe SPSO outperforms the Two-Step method and the MLEmethod and the MLE method outperforms the Two-Step method.

Detailed comparisons of the algorithms are listed inTable VIII. The reported time is for an embedded computer

Page 11: Calibration of Three-Axis Magnetometer Using

WU et al.: CALIBRATION OF THREE-AXIS MAGNETOMETER USING STRETCHING PSO ALGORITHM 291

TABLE XSPSO RESULTS OF TEN INDEPENDENT RUNS

with a 1.0-GHz Intel CPU, 256-MB inner memory, and 4-GBdisk memory. We see that the SPSO algorithm is the least inRMSE and the largest in computational cost. However, in ourreal application, the calibration result is not so time urgent forsubsequent tasks. As the AUV moves slowly (∼6 kn/h) duringthe entire experiment, some tens of minutes of gap betweenthe calibration task and the magnetic measurement task isacceptable. Moreover, the processing time of the SPSO canbe significantly decreased by parallel computation on specialhardware.

To verify the accuracy and robustness of the proposed algo-rithm, ten independent runs have been executed using the exper-imental data. As can be seen from the procedure of the SPSOin Table I, a detected local minimum is the result of the PSO.Therefore, comparisons of the RMSE for the PSO and theSPSO are reported in Table IX. It shows that the SPSO can sig-nificantly avoid converging to local minima and thus improvesthe performance in both accuracy and robustness. The results often independent runs of the SPSO are listed in Table X. Theseresults show that the SPSO algorithm has stable performanceand is reliable in the magnetometer calibration problem.

On the other hand, the Two-Step method estimates cali-bration parameters by solving the overdetermined equationsof (12) in square forms [12]. However, the overdeterminedequations may be ill posed because the AUV cannot change itsattitude sufficiently, particularly in roll and pitch. As a result,the two methods yield biased estimates since the functionalderivative and inverse of the matrix are numerically unstable.Moreover, the solutions of the MLE are more sensitive toinitial guesses in the ill-posed case. We also carried out tenindependent runs of the MLE with different initial guesses towhich we added random noise up to 10% of the parameterestimated by the Two-Step. The MLE algorithm frequentlydiverged because the Hessian matrix is not positive any moreduring the iterative computation. In contrast, the SPSO is muchmore robust and is insensitive to initial guesses.

VI. CONCLUSION

In this paper, a stochastic optimization algorithm for thecalibration of the three-axis magnetometer onboard has beenproposed. A comprehensive model of the sensor errors wasderived, and then, the calibration problem was transformed intoa global optimization problem using the SPSO-based algorithmto search for the calibration parameters. The SPSO helps to

escape from local minima and provides stable convergence.Through the laboratory and field experiments, we show thatthe SPSO algorithm has higher accuracy and more robustnessin the three-axis magnetometer calibration as compared withother methods. Future work is focused on the adaptation ofthe proposed algorithm to other air and land applications. Thebalance of the computational cost and the real-time requirementwill be considered more.

ACKNOWLEDGMENT

The authors would like to thank the anonymous reviewersfor providing valuable comments to improve this paper, W. Liuand T. Ma for their help in the experiments, and L. Chen for thehelpful discussions.

REFERENCES

[1] L. Psiaki Mark, “Autonomous orbit and magnetic field determinationusing magnetometer and star sensor data,” J. Guid. Control Dyn., vol. 18,no. 3, pp. 584–592, May/Jun. 1995.

[2] L. Psiaki Mark, “Autonomous low-earth-orbit determination from mag-netometer and sun sensor data,” J. Guid. Control Dyn., vol. 22, no. 2,pp. 296–304, 1999.

[3] M. Challa and G. Natanson, “Effects of magnetometer calibration andmaneuvers on accuracies of magnetometer-only attitude and rate deter-mination,” in Proc. AAS/GSFC 13th Int. Symp. Space Flight Dyn., 1998,pp. 389–401.

[4] N. Bowditch, The American Practical Navigator. Arcata, CA: ParadiseCay Publ., 1995.

[5] W. Koo, S. Sung, and Y. J. Lee, “Error calibration of magnetometerusing nonlinear integrated filter model with inertial sensors,” IEEE Trans.Magn., vol. 45, no. 6, pp. 2740–2743, Jun. 2009.

[6] P. Guo, H. Qiu, Y. Yang, and Z. Ren, “The soft iron and hard ironcalibration method using extended Kalman filter for attitude and headingreference system,” in Proc. IEEE Position Location Navig. Symp., 2008,pp. 1167–1174.

[7] B. Lerner Gambhir, “Scalar checking,” in Spacecraft Attitude Determina-tion and Control. Norwell, MA: Kluwer, 1978, pp. 328–334.

[8] R. Alonso and M. D. Shuster, “A new algorithm for attitude-independentmagnetometer calibration,” in Proc. Flight Mech./Estimation TheorySymp., 1994, pp. 513–527.

[9] B. Gambhir, “Determination of magnetometer biases using moduleRESIDG,” Comput. Sci. Corporation, Falls Church, VA, Tech. Rep. 3000-32700-01N1975, Mar. 1975.

[10] R. Alonso and M. D. Shuster, “TWOSTEP: A fast robust algorithmfor attitude-independent magnetometer-bias determination,” J. Astronaut.Sci., vol. 50, no. 2, pp. 433–451, Oct.–Dec. 2002.

[11] J. L. Crassidis, K.-L. Lai, and R. R. Harman, “Real-time attitude-independent three-axis magnetometer calibration,” J. Guid. Control Dyn.,vol. 28, no. 1, pp. 115–120, 2005.

[12] D. Gebre-Egziabher, G. H. Elkaim, J. D. Powell, and B. W. Parkinson,“A non-linear, two-step estimation algorithm for calibrating solid-statestrapdown magnetometers,” in Proc. 8th Int. St. Petersburg Conf. Navig.Syst., 2001, pp. 290–297.

Page 12: Calibration of Three-Axis Magnetometer Using

292 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 62, NO. 2, FEBRUARY 2013

[13] C. C. Foster and G. H. Elkaim, “Extension of a non-linear, two-stepcalibration methodology to include non-orthogonal sensor axes,” IEEETrans. Aerosp. Electron. Syst., vol. 44, no. 3, pp. 1070–1087, Jul. 2008.

[14] A. Tarantola, Inverse Problem Theory. Philadelphia, PA: SIAM, 2005.[15] D. Gebre-Egziabher, G. H. Elkaim, J. D. Powell, and B. W. Parkinson,

“Calibration of strapdown magnetometers in magnetic field domain,”ASCE J. Aerosp. Eng., vol. 19, no. 2, pp. 1–16, Apr. 2006.

[16] J. F. Vasconcelos, G. Elkaim, C. Silvstre, P. Oliveira, and B. Cardeira,“Geometric approach to strapdown magnetometer calibration in sensorframe,” IEEE Trans. Aerosp. Electron. Syst., vol. 47, no. 2, pp. 1293–1306, Apr. 2011.

[17] Z. Wu, Y. Wu, X. Hu, and M. Wu, “Calibration of three-axis strapdownmagnetometers using particle swarm optimization algorithm,” in Proc.IEEE Int. Symp. Robot. Sens. Environ., Montreal, PQ, Canada, 2011,pp. 160–165.

[18] K. E. Parsopoulos and M. N. Varhatis, “Particle swarm optimizer innoisy and continuously changing environments,” in Artificial Intelli-gence and Soft Computing. Anaheim, CA: IASTED/ACTA Press, 2001,pp. 289–294.

[19] H. Pan, L. Wang, and B. Liu, “Particle swarm optimization for functionoptimization in noisy environment,” Appl. Math. Comput., vol. 181, no. 2,pp. 908–919, Oct. 2006.

[20] R. Hassan, B. Cohanim, and O. de Weck, “A Comparison of ParticleSwarm Optimization and the Genetic,” AIAA, Washington, DC, 2004.

[21] M. N. Vrahatis, G. S. Androulakis, and M. E. Manoussakis, “A newunconstrained optimization method for imprecise function and gradientvalues,” J. Math. Anal. Appl., vol. 197, no. 2, pp. 586–607, Jan. 1996.

[22] K. E. Parsopoulos and M. N. Vrahatis, “On the computation of all globalminimizers through particle swarm optimization,” IEEE Trans. Evol.Comput., vol. 8, no. 2, pp. 211–224, Jun. 2004.

[23] W. Denne, Magnetic Compass Deviation and Correction. Dobbs Ferry,NY: Sheridan, 1979.

[24] R. A. Horn and C. R. Johnson, Matrix Analysis. Cambridge, U.K.:Cambridge Univ. Press, 1985.

[25] R. Alonso and M. D. Shuster, “Centering and observability inattitude-independent magnetometer-bias determination,” J. Astronaut.Sci., vol. 51, pt. 2, pp. 133–141, 2003.

[26] J. Kennedy and R. Eberhart, “Particle swarm optimization,” in Proc. 4thIEEE Int. Conf. Neural Netw., Piscataway, NJ, 1995, pp. 1942–1948.

[27] M. G. Hinchey, R. Sterritt, and C. Rouff, “Swarms and swarm intelli-gence,” Computer, vol. 40, no. 4, pp. 111–113, Apr. 2007.

[28] C. A. Sierakowski and L. S. Coelho, “Study of two swarm intelligencetechniques for path planning of mobile robots,” in Proc. 16th TriennialWorld Congr. IFAC, , Prague, Czech Republic, 2005, pp. 1–6.

[29] K. Chau, “A split-step PSO algorithm in prediction of water qualitypollution,” in Proc. 2nd Int. Conf. Adv. Neural Netw., 2005, vol. 3498,pp. 1034–1039, Lecture Notes in Computer Science.

[30] D. Wang, Y. Tu, and T. Zhang, “Research on the application of PSOalgorithm in non-linear camera calibration,” in Proc. 7th World Congr.Intelligent Control Automation, Chongqing, China, 2008, pp. 4495–4500.

[31] K. E. Parsopoulos and M. N. Vrahatis, “Recent approaches to global op-timization problems through particle swarm optimization,” Nat. Comput.,vol. 1, no. 2/3, pp. 235–306, Jun. 2002.

[32] R. C. Eberhart and Y. Shi, “Particle swarm optimiser developmentsapplication and resources,” in Proc. IEEE Congr. Evol. Comput., 2001,pp. 81–86.

[33] Y. Shi and R. Eberhart, “A modified particle swarm optimizer,” in Proc.IEEE World Congr. Comput. Intell. Evol. Comput., 1998, pp. 69–73.

[34] M. Clerc and J. Kennedy, “The particle swarm-explosion, stability, andconvergence in a multidimensional complex space,” IEEE Trans. Evol.Comput., vol. 6, no. 1, pp. 58–73, Feb. 2002.

[35] V. Kadirkamanathan, K. Selvarajah, and P. J. Fleming, “Stability analysisof the particle dynamics in particle swarm optimizer,” IEEE Trans. Evol.Comput., vol. 10, no. 3, pp. 245–255, Jun. 2006.

[36] D. Bratton and J. Kennedy, “Defining a standard for particle swarm opti-mization,” in Proc. IEEE SIS, 2007, pp. 120–127.

[37] K. E. Parsopoulos, V. P. Plagianakos, G. D. Magoulas, andM. N. Vrahatis, “Stretching technique for obtaining global minimizersthrough particle swarm optimization,” in Proc. Workshop Particle SwarmOptim., Indianapolis, IN, 2001, pp. 22–29.

[38] STL Systemtechnik Ludwing GmbH, Konstanz, Germany, HandbookDigital Magnetometer DM, 2009.

Zhitian Wu received the B.Sc. and M.Sc. degreesfrom the Department of Automatic Control, NationalUniversity of Defense Technology, Changsha, China,in 2006 and 2008, respectively. He is currently work-ing toward the Ph.D. degree at the National Univer-sity of Defense Technology.

His current research interests include sensor cali-bration and geomagnetic field-aided navigation.

Yuanxin Wu received the B.Sc. and Ph.D. degreesin navigation from the Department of AutomaticControl, National University of Defense Technology,Changsha, China, in 1998 and 2005, respectively.

From 2005 to 2007, he was with the NationalUniversity of Defense Technology as a Lecturer; heis currently an Associate Professor with the sameuniversity. From February 2009 to February 2010, hewas a Visiting Postdoctoral Fellow in the Departmentof Geomatics Engineering, University of Calgary,Calgary, AB, Canada. His current research interests

include inertial navigation systems, inertial-based integrated navigation sys-tems, and state estimation theory.

Dr. Wu was the recipient of the 2008 Top 100 National Excellent DoctoralDissertations in China, the 2010 New Century Excellent Talents in Universityin China, and the 2011 Fok Ying Tung Education Fund.

Xiaoping Hu (M’08) received the B.Sc. and M.Sc.degrees in automatic control systems and aircraftdesigning from the Department of Automatic Con-trol, National University of Defense Technology,Changsha, China, in 1982 and 1985, respectively.

He has joined IEEE since 2008. He is currentlywith the National University of Defense Technologyas a Professor. His scientific interests include iner-tial and satellite navigation, aircraft guidance, andcontrol.

Meiping Wu received the B.Sc, M.Sc., and Ph.D.degrees from the Department of Automatic Con-trol, National University of Defense Technology,Changsha, China, in 1993, 1996, and 2000, respec-tively.

He is currently with the National University ofDefense Technology as a Professor. His researchinterests include inertial navigation, integrated nav-igation, strapdown airborne gravity survey, and geo-magnetic field-aided navigation.