Impact Factor 3.000 | CiteScore 3.51
More on impact ›

Original Research ARTICLE

Front. Neurorobot., 08 May 2019 | https://doi.org/10.3389/fnbot.2019.00019

Solving Gravity Anomaly Matching Problem Under Large Initial Errors in Gravity Aided Navigation by Using an Affine Transformation Based Artificial Bee Colony Algorithm

Tian Dai*, Lingjuan Miao, Haijun Shao and Yongsheng Shi
  • School of Automation, Beijing Institute of Technology, Beijing, China

Gravity aided inertial navigation system (GAINS), which uses earth gravitational anomaly field for navigation, holds strong potential as an underwater navigation system. The gravity matching algorithm is one of the key factors in GAINS. Existing matching algorithms cannot guarantee the matching accuracy in the matching algorithms based gravity aided navigation when the initial errors are large. Evolutionary algorithms, which are mostly have the ability of global optimality and fast convergence, can be used to solve the gravity matching problem under large initial errors. However, simply applying evolutionary algorithms to GAINS may lead to false matching. Therefore, in order to deal with the underwater gravity matching problem, it is necessary to improve the traditional evolutionary algorithms. In this paper, an affine transformation based artificial bee colony (ABC) algorithm, which can greatly improve the positioning precision under large initial errors condition, is developed. The proposed algorithm introduces affine transformation to both initialization process and evolutionary process of ABC algorithm. The single-point matching strategy is replaced by the strategy of matching a sequence of several consecutive position vectors. In addition, several constraints are introduced to the process of evolution by using the output characteristics of the inertial navigation system (INS). Simulations based on the actual gravity anomaly base map have been performed for the validation of the proposed algorithm.

Introduction

It is well known that inertial navigation systems (INSs) typically used on underwater vehicles tend to develop accumulated errors. Above water, the INS data can be corrected by the use of global navigation satellite system (GNSS) (Bishop, 2002). However, due to the rapid attenuation of higher frequency signals and the unstructured nature of the undersea environment, GNSS signals can only propagate within short distance under water (Paull et al., 2013). As a passive navigation system, the gravity aided inertial navigation system (GAINS) holds strong potential as an auxiliary navigation system (Canciani and Raquet, 2017). GAINS obtains a gravity anomaly measurements by using gravimeters installed on a vehicle. These measurements are matched with a priori digital map of the gravity anomaly, to estimate the vehicle position. GAINSs are completely passive and difficult to interfere with. These advantages are totally meet the requirement of underwater vehicles (Rice et al., 2004).

A GAINS consists of a priori gravity anomaly database (gravity anomaly map), a measurement unit (gravimeter), and a navigation algorithm. There are two types of GAINSs: filtering algorithms based GAINSs (Li et al., 2013; Claus and Bachmayer, 2015; Copp and Subbarao, 2015; Allotta et al., 2016) and matching algorithms based GAINSs (Zhao et al., 2014; Wu et al., 2015; Zhu et al., 2015; Han et al., 2016; Song et al., 2016). Filtering algorithms, which take use of simplified dynamic mathematical model of the vehicle, have a good performance in real-time. In filtering algorithms based GAINSs, commonly used filters are the extended Kalman filter (EKF), the particle filter (PF) and the Rao-Blackwellized particle filter (RBPF). EKF is more effective for low nonlinear estimation problems. PF can effectively handle highly non-linear or non-Gaussian estimation problems. RBPF is a hybrid filter combining EKF and PF (Simanek et al., 2015; Kim T. et al., 2018; Kim Y. et al., 2018). However, the application of filtering algorithms is limited since the precise model of gravity anomaly is difficult to establish (Han et al., 2016). The matching algorithm is a key factor in matching algorithms based GAINSs (Hegrenaes and Hallingstad, 2011; Wu et al., 2017). Terrain contour matching (TERCOM) (Affleck and Jircitano, 1990) algorithm and iterative closest contour point (ICCP) (Kamgarparsi and Kamgarparsi, 1999) algorithm are two conventional matching algorithms in GAINSs. TERCOM algorithm is realized via group correlation analysis. Most of the improvements to the TERCOM algorithm (Zhao et al., 2014; Han et al., 2016) are proposed to solve bad real-time performance and heavy computational complexity problem. However, TERCOM algorithm is sensitive to angular error of the INS-indicated segment, which is difficult to improve. ICCP algorithm, which uses rigid transformation to matching the multilateral arc, has a high matching accuracy. Over the past decade, a number of improved ICCP algorithm have been suggested. Among them, a part of researches were developed for improving the real-time performance (Tong et al., 2011; Wang et al., 2013). Other studies adopted affine transformation to deal with the scale error (Xu et al., 2014; Song et al., 2016). However, the mismatching of ICCP algorithm is easily included when the initial position errors of INS are large (Han et al., 2016). Both TERCOM-based algorithms and ICCP-based algorithms cannot guarantee the matching accuracy when initial errors are large. TERCOM-based algorithms are sensitive to angular errors of the INS-indicated segments and ICCP-based algorithms are sensitive to position errors. Therefore, a matching algorithm that maintain high matching precision under large initial errors is needed. Evolutionary algorithms (Quan and Fang, 2010; Gao et al., 2014; Hidalgo-Paniagua et al., 2016; Teymourian et al., 2016; Li et al., 2017) are a good choice because most of them have the ability of both global optimality and fast convergence.

The evolutionary algorithms have emerged as a powerful tool for finding optimum solutions of complex optimization problems. In the past few decades, a number of evolutionary algorithms have been used extensively to obtain optimal designs and overcome the computational drawbacks of traditional mathematical optimization methods (Abrao, 2013; Yildiz, 2013). Jaesung and Kim improved the genetic algorithm so solve robot path planning problem (Lee and Kim, 2016). An improved intelligent water drops algorithm and an advanced cuckoo search algorithm are proposed to solve the capacitated vehicle routing problem (Teymourian et al., 2016). Improved bee colony algorithm is applied to the color image segmentation, assigning the optimal coordinates of seeds and determining similarity differences (Sag and Çunkaş, 2015).

Gravity matching problem can be regarded as an optimization problem (Wu et al., 2017). Therefore, evolutionary algorithms can be directly applied to the gravity matching problem. Gao et al. proposed an improved artificial bee colony (ABC) algorithm and obtained a good performance on gravity matching under small initial errors (Gao et al., 2014). However, there exists a lot of similarity feature points in matching area when initial errors are large. Although the improved ABC algorithm can be implemented on navigation systems under large initial errors, the mismatching of position is easily included. In this paper, we consider a challenging gravity matching problem of achieving high precision under large initial errors. To solve this problem, we propose an affine transformation based ABC algorithm. Firstly, In order to avoid mismatching caused by similarity feature points, we apply sequence matching strategy to the proposed algorithm. Secondly, Scaling transformation, rotation transformation, and translation transformation are introduced to both initialization process and evolutionary process to increase the convergence speed. In addition, we constrain the affine transformation by utilizing the output characteristics of INS.

The rest of the paper is organized as follows. The second part introduces the ABC algorithm. INS error propagation model and the constraints of affine transformation are provided in the third part. The fourth part of this paper presents the procedure of affine transformation based artificial bee colony algorithm. A comprehensive discussion on the experimental settings and simulation results are provided in the fifth part. Conclusions are given in the last part.

Artificial Bee Colony Algorithm

The ABC algorithm (Karaboga and Basturk, 2007) is one of the most recently introduced swarm-based search methods (Akay and Karaboga, 2012; Akbari et al., 2012; Sag and Çunkaş, 2015; Li et al., 2016). It contains three groups of bees: employed bees, onlookers, and scouts. In ABC algorithm, the position of a food source represents a possible solution of the optimization problem and the nectar amount of a food source corresponds to the quality (fitness) of the associated solution. The more a solution has high fitness, the more possibility of being selected of this solution by onlooker bees. The number of the employed bees or the onlooker bees is equal to the number of solutions in the population. The initial swarm composed of employed bees are generated by (1):

xij=xminj+rand(0,1)(xmaxj-xminj)    (1)

Where xij indicates the jth parameter of ith solution in the population, i = {1, 2, ⋯ , SN} and SN is the size of population, j = {1, 2, ⋯ , D} and D is the number of parameters in a solution. xminj and xmaxj are, respectively, the lower bound and the upper bound of jth parameter. rand(0, 1) generates a real number between 0 and 1.

After initialization, fitness values of solutions are calculated by (2):

fiti={1/(1+fi)fi01+|fi|fi<0    (2)

Where fi is the objective function value of ith solution in the population. fiti is the fitness value of ith solution in the population. The employed bee evaluates the quality of food sources and determines a new one according to the fitness value. If the nectar amount of new source is better than the old source, employed bee will update its memory with new source. The employed bees update their sources according to the following equation:

vij=xij+rand(-1,1)(xij-xneighborj)    (3)

Where xneighborj is the neighbor solution selected randomly, neighbor ∈ {1, 2, ⋯ , i − 1, i + 1, ⋯ , SN}. vij represents new solution.

After new food sources have been explored, onlookers select an employed bee for guidance. For this purpose, roulette wheel is used to calculate the probabilities:

pi=fitiq=1SNfitq    (4)

After the onlooker bees select a food source as a guide, the candidate food source is calculated by (3). Afterwards, the greedy selection process is applied for the onlooker bees. The best solution achieved so far is memorized. In addition, a food source will be abandoned when limit, a control parameter, is exceeded for the source. So it is replaced with randomly produced solution by (1).

For the gravity matching problem, denote x as the position of vehicle and f as the gravity objective function. Then ABC algorithm can be directly used to find the optimal position. However, simply applying ABC algorithm to the gravity matching problem may lead to false matching (Gao et al., 2014). There exists a lot of similarity gravity feature points in gravity database, which means single-point matching process may easily convergence at the wrong position.

Sequence Matching Strategy

To solve the mismatching problem, the single-point matching strategy in basic ABC is replaced by strategy of matching a sequence of several consecutive position vectors. Considering the short-term high-precision characteristics of the INS (Wu et al., 2015), affine transformation could be used to describe the relationship between the sequence to be matched and the INS-indicated sequence. Specifically, these transformations include scaling transformation, rotation transformation, and translation transformation. The range of affine transformations can be estimated by an INS error propagation model.

INS Error Propagation Model

Affine transformation is constrained by the output characteristics of the INS. Therefore, an INS error propagation model (Yan et al., 2008) is employed in this paper. In Yan et al. (2008), i-reference frame is the fixed inertial frame; e-reference frame is the Terrestrial reference frame (TRF); n-reference frame has its origin on the surface and its axes pointing East, North, and Up (ENU reference frame); b-reference frame is centered in the center of gravity of the vehicle, with the y-axis pointing in the direction of the forward motion of the vehicle, the z-axis pointing up and the x-axis completing a right-handed reference frame. However, GAINSs are commonly used in underwater environments. In which case n-reference frame adopts North, East and Down (NED) reference frame; b-reference frame is centered in the center of gravity of the vehicle, with the x-axis pointing in the direction of the forward motion of the vehicle, the z-axis pointing down and the y-axis completing a right-handed reference frame (Allotta et al., 2016). Hence the INS error propagation model in Yan et al. (2008) needs to be modified.

In actual case, there exist rotation errors between n-reference frame (ideal mathematics platform) and n’-reference frame (actual mathematics platform). n’-reference frame can be gained after rotating 3 times of n-reference frame. Let αz, αy, αx be the three rotational angles and α = [αx αy αz], the rotation matrixes can be expressed as:

Cαz=[cosαz-sinαz0sinαzcosαz0001]Cαy=[cosαy0-sinαy010sinαy0cosαy]Cαx=[1000cosαxsinαx0-sinαxcosαx]    (5)

Then, the coordinate transformation matrix from n-reference frame to n’-reference frame is derived:

Cnn =CαxCαyCαz    (6)

Denoting with ωnn n  the relative angular velocity of n′-reference frame in n-reference frame, the following equation has been derived:

ωnn n =CαxCαy[00α˙z]+Cαx[0α˙y0]+[α˙x00]=Cω[α˙xα˙yα˙z]    (7)

Hence, the differential equation of Euler platform error angles can be expressed as follows:

α˙=Cω1ωnnn    (8)

Here Cω and Cω-1 are calculated by the following expressions:

Cω=[10-sinαy0cosαxsinαxcosαy0-sinαxcosαxcosαy]Cω-1=1cosαy[cosαysinαxsinαycosαxsinαy0cosαxcosαy-sinαxcosαy0sinαxcosαx]    (9)

Denoting with ωien the rotational angular velocity of the earth. L and h are, respectively, latitude, and depth. RM is the local radius of curvature in meridian and RN is the local radius of curvature in prime vertical. L^=L+δL, ĥ = h + δh. In addition, δL and δh are slight errors. The following equations have been derived:

ωien=[ωiecosL0-ωiesinL]T    (10)
ωenn=[vEnRN-h-vNnRM-h-vEnRN-htanL]T    (11)
δωien=[-ωiesinL^δL0-ωiecosL^δL]    (12)
δωenn=[δvEn/(R^N-ĥ)-δvNn/(R^M-ĥ)-(tanL^δvEn+v^Ensec2L^δL)/(R^N-ĥ)]    (13)

ωinn and δωinn can be expressed as follows:

ωinn=ωien+ωenn    (14)
δωinn=δωien+δωenn    (15)

On the basis of these formulas, the INS attitude error and velocity error have been derived (Yan et al., 2008):

α˙=Cω-1[ (I-Cnn)ω^inn+CnnδωinnCbnδωibb ]    (16)
δv˙n=[I-(Cnn)T ]Cbnf^sfb+(Cnn)TCbnδfsfb(2δωien+δωenn)×(v^nδvn)(2ω^ien+ω^enn)×δvn+δgn    (17)

Where δωibb is the measurement error of gyroscope, δωinn is the calculation error of ωinn. δfsfb is the measurement error of accelerometer. In addition, δωibb are mainly consist of a constant bias εb and zero mean Gaussian white noise wgb. δfsfb are mainly consist of a constant bias ∇b and zero mean Gaussian white noise wab. Besides, δgncould be ignored. Hence, the INS error propagation model used in underwater environment is defined by the following equations:

{ δL˙=δvNnRMh+δhvNn(RMh)2δλ˙=δvEnRNhsecL+δLvEnRNhtanLsecL+δhvEnsecL(RNh)2δh˙=δVDα˙=Cω-1[ (I-Cnn)ω^inn+CnnδωinnCbnεb ]Cω-1Cbnwgbδv˙n=[ -(Cnn)T ]Cbnf^sfb+(Cnn)TCbnb(2δωien+δωenn)×(v^nδvn)(2ω^ien+ω^enn)×δvn+(Cnn)TCbnwabε˙b=0˙b=0     (18)

Range of Scaling Transformation

Through the INS error propagation model (18), the range of rotation transformation and translation transformation can be estimated. However, the range of scaling transformation cannot be directly calculated. To better describe the scaling transformation, the INS-indicated distance and the actual distance in a short period are expressed by the following equations:

dk-1,kINS=||vk-1INS+vkINS||2·Δt    (19)
dk-1,kreal||vk-1real+vkreal||2·Δt    (20)

dk-1,kINS and dk-1,kreal are, respectively, the INS-indicated distance and the actual distance between k-1th sampling point and kth sampling point. vkINS and vkreal are the INS-indicated linear velocity and the actual linear velocity of kth sampling point. Δt is the sampling period of the discrete time system.

Then, the relationship between dk-1,kINSand dk-1,kreal is derived:

dk-1,krealdk-1,kINS=||vk-1real+vkreal||||vk-1INS+vkINS||    (21)

Where vkINSis described by an equation in the form:

vkINS=vkreal+δvk    (22)

Here δvk is the INS accumulated velocity error of kth sampling point. Accordingly, (21) is developed into the following form:

dk-1,krealdk-1,kINS=||vk-1INS+vkINS-δvk-1-δvk||||vk-1INS+vkINS||    (23)

Denoting with N the number of sampling points on matching sequence, the constraint of scale transform has been derived:

S=k=2Ndk-1,krealk=2Ndk-1,kINS=k=2N||vk-1INS+vkINS-δvk-1-δvk||k=2N||vk-1INS+vkINS||    (24)

Affine Transformation Based ABC Algorithm

In order to achieve high positioning accuracy under large initial errors, this paper proposes an affine transformation based ABC algorithm. The proposed algorithm is specifically presented to deal with the gravity matching problem for underwater navigation system. The affine transformation based ABC algorithm introduces affine transformation to both initialization process and evolutionary process of ABC algorithm. In addition, the affine transformation satisfies the constraint conditions provided by the output characteristics of the INS.

Objective Function and Initialization

The proposed algorithm use mean absolute difference (MAD) function as the objective function:

f(x)=1Nk=1N|gkobs-gkx|    (25)

Where x indicates a sequence of several consecutive position vectors. gkobs is the measured gravity anomaly value of kth sampling point and gkx is the corresponding gravity anomaly value on gravity anomaly base map of kth sampling point. f(x) is the objective function.

fit (x), the fitness value of x, is calculated by (26):

fit(x)=11+f(x)    (26)

Initialization process is the first step of the proposed algorithm. In ABC algorithm, the initial swarm composed of employed bees are given by (1). But the lower bound and the upper bound of the x in sequence matching are difficult to acquire. Thus, the initialization method should be redefined.

The proposed algorithm applies scaling transformation, rotation transformation, and translation transformation on the INS-indicated sequence to implement initialization. Translation transformation is implemented by choosing a random first element of initial swarm:

xi,1L=xminL+rand(0,1)(xmaxL-xminL)    (27)
xi,1λ=xminλ+rand(0,1)(xmaxλ-xminλ)    (28)

Where xi,1L and xi,1λ indicate the latitude and longitude of the first sampling point on sequence i, i = {1, 2, ⋯ , SN} and SN is the size of population. xmaxL and xminL are, respectively, the upper bound and the lower bound of latitude in search scope. xmaxλ and xminλ are, respectively, the upper bound and the lower bound of longitude in search scope.

Let Siini be the scale factor used for initialization sequence i. The value of Siini is calculated by (29):

Siini={rand(1,S),S1rand(S,1),S<1    (29)

The expression of S is obtained from (24). The rotation angle used for initialization sequence i can be calculated by the following equation:

βiini=rand(βminini,βmaxini)    (30)

Where βminini and βmaxini are the minimum angle error and the maximum angle error of a segment in INS-indicated trajectory. Thus, the rotation matrix used for initialization sequence i have been derived:

Riini=[cosβiini-sinβiinisinβiinicosβiini]    (31)

Let XINS={x1INS,x2INS,,xNINS} be the INS-indicated trajectory and xiini={xi,1ini,xi,2ini,,xi,Nini} be the ith initialization sequence. After above mentioned transformations have been performed, the initial swarm is obtained:

XIINS=SiiniRiiniXINS    (32)
Tiini=xi,1inix1INS    (33)
Xiini=XiINS+Tiini    (34)

Where XiINS is the intermediate sequence, xiINS is the first point in XiINS. Additional translation vector need to be applied on generated trajectories if they are out of range. Let initminL and initmaxL be the maximum and minimum latitude of initial trajectory. initminλ and initmaxλ are the maximum and minimum longitude of initial trajectory. T = {TL, Tλ}, the translation vector, can be expressed as:

TL={xminLinitminL,initminL<xminLxmaxLinitmaxL,initmaxL>xmaxL0,other    (35)
Tλ={xminλinitminλ,initminλ<xminλxmaxλinitmaxλ,initmaxλ>xmaxλ0,other    (36)

Employed Bee Phase

With the initialization complete, an employed bee updates its food source in the neighborhood. Suppose Xiini is the sequence to be updated, Xjini={xj,1ini,xj,2ini,,xj,Nini} is selected randomly in the neighborhood of xiini, j ∈ {1, 2, ⋯ , i − 1, i + 1, ⋯ , SN} and SN is the size of population. The evolution equation is derived through the relation between xiini and xjini.

Denoting with Q the covariance matrix:

Q=[Q11Q12Q21Q22]=k=1N(xi,kini-x~iini)(xj,kini-x~jini)T    (37)

Where x~iini and x~jini are, respectively, the average value of all sampling points in Xiini and Xjini. The eigenvalues of Q and the rotation angle from Xiini to Xjini are calculated through quaternion algorithm (Berthold, 1987):

λ1,2=±[(Q11+Q22)2+(Q21-Q12)2]1/2λ3,4=±[(Q11-Q22)2+(Q21+Q12)2]1/2    (38)
tg(τ2)=(Q11+Q22-λm)/(Q12-Q21)    (39)

Where λμ (μ = {1, 2, 3, 4}) are four eigenvalues of Q. λm is the maximum eigenvalue. τ is the rotation angle from Xiini to Xjini. Then, the rotation angle used for Xiini during employed bee phase is calculated by the following equations:

βiem=rand(-|τ|,|τ|)    (40)

Notice that the angle between Xiini and XINS after rotation should be in the range (βminini,βmaxini). Denoting with η be the rotation angle from Xiini to XINS, βiem should meet the following in equation:

βminini+η<βiem<βmaxini+η    (41)

Then, the following expression is obtained by (40) and (41):

βiem=rand(max(-|τ|,βminini+η),min(|τ|,βmaxini+η))    (42)

Thus, the rotation matrix used for Xiini during employed bee phase is calculated by (43):

Riem=[cosβiem-sinβiemsinβiemcosβiem]    (43)

Let Liini and Ljini be the length of Xiini and Xjini. Lins is the length of INS-indicated trajectory. The scale factor used for Xiini during employed bee phase is calculated by the following equations:

Siem=rand(min(LjiniLiini,LiiniLjini),max(LjiniLiini,LiiniLjini))    (44)

Notice that the scale factor between Xiini and XINS after scaling transformation should meet the range on the right side of (29):

{1  Lins<Liini·Siem<S·Lins,S1SLins<Liini·Siem<1  ·Lins,S<1    (45)

Denoting with Sminem and Smaxem the lower bound and the upper bound of Siem. According to (44) and (45), Siem is updated by (46):

Siem=rand(Sminem,Smaxem)    (46)
Sminem={max(min(LjiniLiini,LiiniLjini),LinsLiini),          S1max(min(LjiniLiini,LiiniLjini),S·LinsLiini), S<1Smaxem={min(max(LjiniLiini,LiiniLjini),S·LinsLiini),  S1min(max(LjiniLiini,LiiniLjini),  ·LinsLiini),     S<1    (47)

Xiini is converted to Xiini after rotation transformation and scaling transformation have been performed:

Xiini=SiemRiemXiini    (48)

Let x˜iini be the average value of all sampling points in Xiini the translation vector is calculated by (49):

Tiem=(x˜iinix˜iini)·rand(1,1)    (49)

Then, the employed bees update their sources according to the following equation:

Xiem=Xiini+Tiem    (50)

If the fitness value of Xiem is larger than the fitness value of Xiini, Xiini will be replaced by Xiem. At the end of the employed bee phase, all of current sequences are denoted by Xem.

Onlooker Bee Phase and Scout Bee Phase

The probability of each sequence to be selected by the onlooker bee is calculated by (4). Suppose Xiem is the sequence selected by onlooker bee, the rotation matrix Rion, the scale factor Sion, and the translation vector Tion used on Xiem during onlooker bee phase can be calculated by (43), (46), and (49). Thus, the onlooker bees update their sources according to the following equation:

Xion=SionRionXiem+Tion    (51)

If the fitness value of Xion is larger than the fitness value of Xiem, Xiem will be replaced by Xion. The best solution achieved so far is memorized. In addition, a sequence will be abandoned when limit, a control parameter, is exceeded for the source during scout bee phase. So it is replaced with randomly produced solution by (34). The pseudo of the proposal is given below.

www.frontiersin.org

Procedure of the proposal

Simulation and Analysis

Simulation Parameters

In order to test the feasibility of our approach, numerous simulation experiments have been performed. An INS indicated trajectory start from (156°E, 20°N) is generated and the INS relevant parameters are listed in Table 1. The INS position error is shown in Figure 1 (Supplementary Data Sheet 1). As seen from Figure 1, the position error of the generated trajectory exhibits a Scuhler oscillation of 84.4 min.

TABLE 1
www.frontiersin.org

Table 1. Simulation condition of INS.

FIGURE 1
www.frontiersin.org

Figure 1. The INS position error.

In order to evaluate the algorithm presented in this work, a gravity anomaly base map is required. In the simulations tests, goco05c model (Fecher et al., 2017) is used to calculate the gravity anomaly in the area from (147.6°E, 19.5°N) to (156.6°E, 24°N). After interpolated, the grid step is converted to 0.3′. The 3-D map of the gravity anomaly data is shown in Figure 2 (Supplementary Data Sheet 1). The gravity anomaly relevant parameters are shown in Table 2.

FIGURE 2
www.frontiersin.org

Figure 2. 3-D gravity anomaly base map.

TABLE 2
www.frontiersin.org

Table 2. Parameters of gravity anomaly base map.

Figure 3 shows the angle error of a segment in INS-indicated trajectory. It is obtained that the angle error is vary in a small range and the maximum segment angle error is 15°. Thus, βminini and βmaxini are set as −15°and 15°, respectively. The proposed algorithm uses the 3σ principle to confirm the search scope (Han et al., 2016). Table 3 shows the configuration of the proposed algorithm. In this paper, optimal parameter values of affine transformation based ABC are obtained based on experience.

FIGURE 3
www.frontiersin.org

Figure 3. The INS-indicated segment angle error.

TABLE 3
www.frontiersin.org

Table 3. Configuration of the proposed algorithm.

Comparison Between Basic ABC and Affine Transformation Based ABC

Based on the parameters above, the first set of 50 Mont Carlo simulation tests were done on the trajectory after 3 h of sailing. Simulation results of introducing sequence matching strategy into ABC algorithm has better positioning precision and matching probability than the basic ABC, as shown in Figures 4, 5. Statistical results of simulation tests are given in Table 4. In Table 4, a matching result is considered to be a successful matching if the position error is within 2′.

FIGURE 4
www.frontiersin.org

Figure 4. Position errors of basic ABC.

FIGURE 5
www.frontiersin.org

Figure 5. Position errors of affine transformation based ABC.

TABLE 4
www.frontiersin.org

Table 4. Comparison of 50 Mont Carlo simulation results between basic ABC and affine transformation based ABC.

Comparison Between ICCP, Improved-ABC and Affine Transformation Based ABC

Due to ICCP is a widely used gravity matching algorithm and improved-ABC algorithm (Gao et al., 2014) is presented to tackle the similar problem. We use these algorithms as references, comparing the results of ICCP algorithm and improved-ABC algorithm with the proposed algorithm.

To test algorithms under large initial position errors, the second set of 50 Mont Carlo simulation tests were done on the trajectory after 7 h of sailing using the above three algorithms. Trajectories of matching results are shown in Figure 6, each trajectory is a typical one in 50 Mont Carlo simulations. Figure 7 indicates the average error of longitude and latitude of each sampling point in 50 Mont Carlo simulations. In order to better evaluate the proposed algorithm, the statistical results of all the three algorithms are given in Table 5.

FIGURE 6
www.frontiersin.org

Figure 6. Matched trajectory.

FIGURE 7
www.frontiersin.org

Figure 7. The average error of longitude and latitude.

TABLE 5
www.frontiersin.org

Table 5. Statistical results of the matching errors.

Simulation results in Figures 6, 7, and Table 5 show that the matching accuracy of the proposed algorithm is significantly superior to the other two algorithms under large initial position errors.

To better observe the effect of initial errors on these three algorithms, matching results of the whole trajectory within 16 h are shown in Figure 8 and Table 6. The results are divided into three time periods for statistic. In Table 6, a matching result is considered to be a successful matching if the position error is within 5′. It can be concluded that the convergence speed of ICCP algorithm decreases a lot with the increase of initial position errors. While the convergence speed of improved-ABC algorithm is not affected by initial position errors. The proposed algorithm converge slower than improved-ABC algorithm and much faster than ICCP algorithm under large initial errors. In Figure 8, at the beginning, all of the three algorithms can hold high positioning accuracy. But with the initial errors and the search scope increase, the accuracy of ICCP algorithm and improved-ABC algorithm decrease significantly, whereas the proposed algorithm can guarantee much higher matching accuracy.

FIGURE 8
www.frontiersin.org

Figure 8. Matching results of the whole trajectory.

TABLE 6
www.frontiersin.org

Table 6. Statistical results within 16 h.

Conclusion

Gravity aided inertial navigation system can solve the problem of INS error accumulation and ensure the concealment of INS. However, there are still many problems in the field of gravity aided navigation system. In this paper, we focus on the problem of how to ensure the matching accuracy under the large initial errors condition. In order to avoid mismatching under large initial errors, an affine transformation based ABC algorithm is adopted. The simulation results show that the proposed algorithm can achieve high matching precision under the condition of large initial errors.

In addition to ABC algorithm, other evolutionary algorithms can also be used to solve the gravity matching problem. How to introduce the sequence matching strategy in other evolutionary algorithms? How are the effects of these algorithms after introducing the sequence matching strategy? These need to be further studied in the future. What's more, the matching accuracy of gravity matching algorithm is highly correlated with the precision and resolution of the gravity anomaly base map. This paper focuses on the matching algorithm for large initial errors. How to perform a gravity matching algorithm in the area with low uniqueness should be discussed in the next step.

Author Contributions

TD and LM designed the study. TD, LM, and HS performed the simulations. All of the authors analyzed the data. All authors contributed to the writing and editing of the manuscript.

Funding

This work was supported by the National Natural Science Foundation of China (grant number 61473039).

Conflict of Interest Statement

The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

Supplementary Material

The Supplementary Material for this article can be found online at: https://www.frontiersin.org/articles/10.3389/fnbot.2019.00019/full#supplementary-material

Supplementary Data Sheet 1. Gravity base map and the INS data.

References

Abrao, T. (2013). Search Algorithms for Engineering Optimization: Chapter 8- Application of Harmony Search Algorithm in Power Engineering, Chapter Book-Chapter 8. Crovatia: InTech Open Access Publishing.

Affleck, C. A., and Jircitano, A. (1990). “Passive gravity gradiometer navigation system,” in Proceedings of IEEE Position Location and Navigation Symposium (Las Vegas, NV), 60–66.

Google Scholar

Akay, B., and Karaboga, D. (2012). A modified artificial bee colony algorithm for real-parameter optimization. Inform. Sci. 192, 120–142. doi: 10.1016/j.ins.2010.07.015

CrossRef Full Text | Google Scholar

Akbari, R., Hedayatzadeh, R., Ziarati, K., and Hassanizadeh, B. (2012). A multi-objective artificial bee colony algorithm. Swarm Evol. Comput. 2, 39–52. doi: 10.1016/j.swevo.2011.08.001

CrossRef Full Text | Google Scholar

Allotta, B., Caiti, A., Costanzi, R., Fanelli, F., Fenucci, D., and Meli, E., et al. (2016). A new AUV navigation system exploiting unscented Kalman filter. Ocean Eng. 113, 121–132. doi: 10.1016/j.oceaneng.2015.12.058

CrossRef Full Text | Google Scholar

Berthold, K. P. H. (1987). Closed-form solution of absolute orientation using unit quaternions. J. Opt. Soc. Am. A 4, 629–642.

Google Scholar

Bishop, G. C. (2002). Gravitational field maps and navigational errors [unmanned underwater vehicles]. IEEE J. Ocean. Eng. 27, 726–737. doi: 10.1109/JOE.2002.1040954

CrossRef Full Text | Google Scholar

Canciani, A., and Raquet, J. (2017). Airborne magnetic anomaly navigation. IEEE Trans. Aerosp. Electron. Syst. 53, 67–80. doi: 10.1109/TAES.2017.2649238

CrossRef Full Text | Google Scholar

Claus, B., and Bachmayer, R. (2015). Terrain-aided navigation for an underwater glider. J. Field Robot. 32, 935–951. doi: 10.1002/rob.21563

CrossRef Full Text | Google Scholar

Copp, B., and Subbarao, K. (2015). Nonlinear adaptive filtering in terrain-referenced navigation. IEEE Trans. Aerosp. Electron. Syst. 51, 3461–3469. doi: 10.1109/TAES.2015.140826

CrossRef Full Text | Google Scholar

Fecher, T., Pail, R., and Gruber, T. (2017). Goco05c: a new combined gravity field model based on full normal equations and regionally varying weighting. Surv. Geophys. 38, 571–590. doi: 10.1007/s10712-016-9406-y

CrossRef Full Text | Google Scholar

Gao, W., Zhao, B., Zhou, G., Wang, Q., and Yu, C. (2014). Improved artificial bee colony algorithm based gravity matching navigation method. Sensors 14, 12968–12989. doi: 10.3390/s140712968

PubMed Abstract | CrossRef Full Text | Google Scholar

Han, Y., Wang, B., Deng, Z., and Fu, M. (2016). An improved TERCOM-based algorithm for gravity-aided navigation. IEEE Sens. J. 16, 2537–2544. doi: 10.1109/JSEN.2016.2518686

CrossRef Full Text | Google Scholar

Hegrenaes, O., and Hallingstad, O. (2011). Model-aided INS with sea current estimation for robust underwater navigation. IEEE J. Ocean. Eng. 36, 316–337. doi: 10.1109/JOE.2010.2100470

CrossRef Full Text | Google Scholar

Hidalgo-Paniagua, A., Vega-Rodríguez, M., and Ferruz, J. (2016). Applying the MOVNS (multi-objective variable neighborhood search) algorithm to solve the path planning problem in mobile robotics. Expert Syst. Appl. 58, 20–35. doi: 10.1016/j.eswa.2016.03.035

CrossRef Full Text | Google Scholar

Kamgarparsi, B., and Kamgarparsi, B. (1999). Vehicle localization on gravity maps. Proc. SPIE. 3693, 182–191.

Google Scholar

Karaboga, D., and Basturk, B. (2007). A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm. J. Glob. Optimization 39, 459–471. doi: 10.1007/s10898-007-9149-x

CrossRef Full Text | Google Scholar

Kim, T., Kim, J., and Byun, S. W. (2018). A comparison of nonlinear filter algorithms for terrain-referenced underwater navigation. Int. J. Control Autom. Syst. 16, 2977–2989. doi: 10.1007/s12555-017-0504-5

CrossRef Full Text | Google Scholar

Kim, Y., Hong, K., and Bang, H. (2018). Utilizing out-of-sequence measurement for ambiguous update in particle filtering. IEEE Trans. Aerosp. Electron. Syst. 54, 493–501. doi: 10.1109/TAES.2017.2741878

CrossRef Full Text | Google Scholar

Lee, J., and Kim, D. W. (2016). An effective initialization method for genetic algorithm-based robot path planning using a directed acyclic graph. Inf. Sci. (NY). 332, 1–18. doi: 10.1016/j.ins.2015.11.004

CrossRef Full Text | Google Scholar

Li, H., Liu, M., and Zhang, F. (2017). Geomagnetic navigation of autonomous underwater vehicle based on multi-objective evolutionary algorithm. Front. Neurorobot. 11, 1–8. doi: 10.3389/fnbot.2017.00034

PubMed Abstract | CrossRef Full Text | Google Scholar

Li, J., Pan, Q., and Duan, P. (2016). An improved artificial bee colony algorithm for solving hybrid flexible flowshop with dynamic operation skipping. IEEE Trans. Cybern. 46, 1311–1324. doi: 10.1109/TCYB.2015.2444383

PubMed Abstract | CrossRef Full Text | Google Scholar

Li, T., Zhao, D., and Huang, Z. (2013). A wavelet-based grey particle filter for self-estimating the trajectory of manoeuvring autonomous underwater vehicle. Trans. Inst. Meas. Control 36, 321–335. doi: 10.1177/0142331213500981

CrossRef Full Text | Google Scholar

Paull, L., Saeedi, S., Seto, M., and Li, H. (2013). AUV navigation and localization: a review. IEEE J. Ocean. Eng. 2013 39, 131–149. doi: 10.1109/JOE.2013.2278891

CrossRef Full Text | Google Scholar

Quan, W., and Fang, J. (2010). A star recognition method based on the adaptive ant colony algorithm for star sensors. Sensors 10, 1955–1966. doi: 10.3390/s100301955

PubMed Abstract | CrossRef Full Text | Google Scholar

Rice, H., Kelmenson, S., and Mendelsohn, L. (2004). “Geophysical navigation technologies and applications,” in Proceedings of IEEE Position Location and Navigation Symposium (Monterey, CA), 618–624.

Google Scholar

Sag, T., and Çunkaş, M. (2015). Color image segmentation based on multiobjective artificial bee colony optimization. Appl. Soft Comput. 34, 389–401. doi: 10.1016/j.asoc.2015.05.016

CrossRef Full Text | Google Scholar

Simanek, J., Reinstein, M., and Kubelka, V. (2015). Evaluation of the EKF-based estimation architectures for data fusion in mobile robots. IEEE ASME Trans. Mech. 20, 985–990. doi: 10.1109/TMECH.2014.2311416

CrossRef Full Text | Google Scholar

Song, Z., Zhang, J., Zhu, W., and Xi, X. (2016). The vector matching method in geomagnetic aiding navigation. Sensors 16:1120. doi: 10.3390/s16071120

PubMed Abstract | CrossRef Full Text | Google Scholar

Teymourian, E., Kayvanfar, V., Komaki, G. H. M., and Zandieh, M. (2016). Enhanced intelligent water drops and cuckoo search algorithms for solving the capacitated vehicle routing problem. Inf. Sci. (NY). 334, 354–378. doi: 10.1016/j.ins.2015.11.036

CrossRef Full Text | Google Scholar

Tong, Y., Bian, S., Jiang, D., and Xiao, S. (2011). Gravity matching simulation of real-time iccp algorithm. J. Chin. Inertial Technol. 19, 340–343.

Google Scholar

Wang, X., Su, M., Liu, P., and Ding, S. (2013). Application of improved ICCP algorithm in gravity matching aided navigation. Sci. Surv. Mapp. 207. 38, 36–39

Google Scholar

Wu, L., Wang, H., Chai, H., Hsu, H., and Wang, Y. (2015). Research on the relative positions-constrained pattern matching method for underwater gravity-aided inertial navigation. J. Navigation 68, 937–950. doi: 10.1017/S0373463315000235

CrossRef Full Text | Google Scholar

Wu, L., Wang, H., Chai, H., Zhang, L., Hsu, H., and Wang, Y. (2017). Performance evaluation and analysis for gravity matching aided navigation. Sensors 17:769. doi: 10.3390/s17040769

PubMed Abstract | CrossRef Full Text | Google Scholar

Xu, X., Wu, J., Xu, S., Wang, L., and Li, P. (2014). ICCP algorithm for underwater terrain matching navigation based on affine correction. J. Chin. Inertial Technol. 22, 362–367. doi: 10.13695/j.cnki.12-1222/o3.2014.03.016

CrossRef Full Text

Yan, G., Yan, W., and Xu, D. (2008). Application of simplified UKF in SINS initial alignment for large misalignment angles. J. Chin. Inertial Technol. 16, 253–264. doi: 10.13695/j.cnki.12-1222/o3.2008.03.006

CrossRef Full Text

Yildiz, A. R. (2013). Comparison of evolutionary-based optimization algorithms for structural design optimization. Eng. Appl. Artif. Intell. 26, 327–333. doi: 10.1016/j.engappai.2012.05.014

CrossRef Full Text | Google Scholar

Zhao, L., Gao, N., Huang, B., Wang, Q., and Zhou, J. (2014). A novel terrain-aided navigation algorithm combined with the TERCOM algorithm and particle filter. IEEE Sens. J. 15, 1124–1131. doi: 10.1109/JSEN.2014.2360916

CrossRef Full Text | Google Scholar

Zhu, Z., Guo, Y., and Yang, Z. (2015). Study on initial gravity map matching technique based on triangle constraint model. J. Navigation 69, 353–372. doi: 10.1017/S0373463315000661

CrossRef Full Text | Google Scholar

Keywords: gravity aided navigation, bio-inspired navigation, navigation systems, optimization, underwater vehicle, evolutionary algorithm

Citation: Dai T, Miao L, Shao H and Shi Y (2019) Solving Gravity Anomaly Matching Problem Under Large Initial Errors in Gravity Aided Navigation by Using an Affine Transformation Based Artificial Bee Colony Algorithm. Front. Neurorobot. 13:19. doi: 10.3389/fnbot.2019.00019

Received: 16 November 2018; Accepted: 17 April 2019;
Published: 08 May 2019.

Edited by:

Xiaofeng Xiong, University of Southern Denmark, Denmark

Reviewed by:

Ning Sun, Nankai University, China
Chin-Shiuh Shieh, National Kaohsiung First University of Science and Technology, Taiwan

Copyright © 2019 Dai, Miao, Shao and Shi. This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.

*Correspondence: Tian Dai, daitian@bit.edu.cn