Next Article in Journal
Degradation of the In-plane Shear Modulus of Structural BFRP Laminates Due to High Temperature
Next Article in Special Issue
Real-Time Recursive Fingerprint Radio Map Creation Algorithm Combining Wi-Fi and Geomagnetism
Previous Article in Journal
Unsupervised Machine Learning for Advanced Tolerance Monitoring of Wire Electrical Discharge Machining of Disc Turbine Fir-Tree Slots
Previous Article in Special Issue
An Improved Strapdown Inertial Navigation System Initial Alignment Algorithm for Unmanned Vehicles
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Decentralized Cooperative Localization with Fault Detection and Isolation in Robot Teams

1
State Key Laboratory of Intelligent Control and Decision of Complex Systems, Beijing Institute of Technology, Beijing 100081, China
2
Department of Automatic Control, Henan Institute of Technology, Xinxiang 453000, China
*
Author to whom correspondence should be addressed.
Sensors 2018, 18(10), 3360; https://doi.org/10.3390/s18103360
Submission received: 3 August 2018 / Revised: 17 September 2018 / Accepted: 18 September 2018 / Published: 8 October 2018
(This article belongs to the Special Issue Sensor Fusion and Novel Technologies in Positioning and Navigation)

Abstract

:
Robot localization, particularly multirobot localization, is an important task for multirobot teams. In this paper, a decentralized cooperative localization (DCL) algorithm with fault detection and isolation is proposed to estimate the positions of robots in mobile robot teams. To calculate the interestimate correlations in a distributed manner, the split covariance intersection filter (SCIF) is applied in the algorithm. Based on the split covariance intersection filter cooperative localization (SCIFCL) algorithm, we adopt fault detection and isolation (FDI) to improve the robustness and accuracy of the DCL results. In the proposed algorithm, the signature matrix of the original FDI algorithm is modified for application to DCL. A simulation-based comparative study is conducted to demonstrate the effectiveness of the proposed algorithm.

1. Introduction

Robots have become increasingly prevalent in many domains, such as medical services and security [1]. Tasks assigned to robots such as rescue [2] are becoming increasingly complex for a single robot to address, making multirobot cooperation imperative. The cooperation intrinsic to a multirobot team makes it possible to execute tasks such as rescue which may be difficult or difficult with a single, highly capable robot; moreover, the presence of more than one robot makes the team fault-tolerant. The net effect is that a robot team can reliably execute its task even when its working environment changes.
Accurate position information is very important for cooperation in a multirobot team. For a single robot, the localization process is performed based only on its own sensor data, such as Global Positioning System (GPS) data [3], camera data [4], or laser scanner data [5,6]. In a multirobot team, however, sensor data collected from inter-robot observations can be considered in the process of cooperative multirobot localization. It is believed that cooperative localization (CL) methods using sensor data from inter-robot observations will outperform traditional single-robot localization methods [7].
The idea of CL was first proposed in [8], in which the robot team was considered to be divided into two groups. Each group alternately remained stationary to serve as a landmark for the other group. In [9], the premise of the stationarity of one group of robots is canceled. To date, many CL algorithms have been proposed. Among these algorithms, the simplest is centralized cooperative localization (CCL) [10]. In CCL, all information, including observation information and position information from the whole team, is transmitted to a fusion center, which maintains only one global state, as shown in Figure 1.
However, CCL has clear disadvantages. First, the communication and computational costs of CCL are very high since all computational loads are concentrated at the fusion center. Second, if a fault occurs in the fusion center, then the whole CCL system will be corrupted. Finally, given the finite communication and computational capabilities of a practical system, it is difficult to continue to use only one fusion center to achieve CL for the entire team as the size of the team increases.
Decentralized cooperative localization (DCL) has proven to be a desirable solution [11] to resolve these problems, because both the computational and communication burdens placed on each robot in the team are lower. In DCL, each robot handles only its own local information. Moreover, in this paper, to calculate the interestimate correlations in a distributed manner, the split covariance intersection filter (SCIF) [12] is applied. In this algorithm, two covariance states, namely, independent covariance and dependent covariance, are maintained in each robot.
To improve the robustness of the robot team, fault detection and isolation (FDI) [13,14,15] are needed. In [16], an FDI algorithm was applied in CCL. However, the FDI algorithms cited above are designed for CCL and are not applicable in DCL due to the limited sensor information available. To improve the performance of fault detection, a decision algorithm that maximizes the amount of information transformation is adopted, as introduced in Section 3. To enable the application of FDI in DCL, the isolation rule is modified. The signature matrix is simplified by combining certain fault types, and a new Kullback–Leibler (KL) residual is added.
The remainder of this paper is organized as follows. The theoretical background of the DCL and FDI algorithm is introduced in Section 2. We describe the concepts of DCL with the SCIF and FDI and introduce the corresponding algorithms in Section 3. The experiments and results are introduced in Section 4. The last section concludes the paper.

2. Background

In this section, some background knowledge is introduced.
Four assumptions are made in this paper. First, each robot is assumed to be equipped with one motion sensor. The equipped sensors can report the motion data on of the robots. No single-robot localization method based on other sensors is considered in these simulations.
Second, the robots are assumed to be able to capture the relative poses of other robots within their range of perception. A robot that is perceived is called a neighboring robot in this paper. Each robot can share its relative measurements and motion states with its neighboring robots via inter-robot communication.
Third, two types of noises are considered in the simulations: additive white Gaussian noise and impulse noise. Here, additive white Gaussian noise consists of unbiased normally distributed errors with a fixed standard deviation, as shown in Figure 2a, whereas impulse noise consists of unpredictable errors that simulate certain unexpected situations, such as poor odometric measurements and noisy and distorted measurements, as shown in Figure 2b.
To demonstrate the features of these two types of noise in our simulation, the localization errors of a robot under these two types of noise without filtering are shown in Figure 3a,b. As shown in these figures, the localization error of the robot increases smoothly under additive white Gaussian noise, whereas it increases suddenly under impulse noise.
Fourth, the members of the robot team are assumed to be subject to different levels of positioning error. When one robot changes its orientation to avoid an obstacle, the accuracy of its motion model will be lower than those of its neighboring robots because the amplitude of the noise is related to the yaw rate and the yaw rate of this robot will be larger than those of the other robots on the team.

2.1. Split Covariance Intersection Filter

As mentioned above, in DCL with the SCIF, each robot executes a localization algorithm to calculate its own position. This subsection provides a brief introduction to the concept of the SCIF, which enables the fusion of two different estimates with an unknown correlation.
Given two estimates { X 1 , P 1 } and { X 2 , P 2 } , where X denotes the estimated state vector and P denotes the estimated covariance, the following fused estimate { X , P } can be calculated using the Kalman filter:
P - 1 = P 1 - 1 + P 2 - 1 , X = P ( P 1 - 1 X 1 + P 2 - 1 X 2 ) .
However, one premise of the Kalman filter that may not be satisfied is that the estimate and the observation are independent of each other. In other words, the estimate and the observation are correlated, Equation (1) might yield inconsistent results, and the fused result might be overconfident.
One widely used tool for handling the fusion of estimates with unknown correlations is the covariance intersection filter (CIF) [17]. In the CIF approach, a parameter w is added to the fusion formulae:
P - 1 = ( P 1 w ) - 1 + ( P 2 1 - w ) - 1 , X = P ( ( P 1 w ) - 1 X 1 + ( P 2 1 - w ) - 1 X 2 ) ,
where w, which takes values in the interval [0, 1], is chosen to minimize P.
Although the CIF alleviates the overconfidence problem, it also has clear drawbacks, mainly because it treats the estimates to be fused as completely interdependent values. Thus, the fused result estimated with the CIF is pessimistic. To further mitigate this problem, the SCIF [12] has been introduced. In the algorithm of SCIF, the estimates to be fused are split into two parts: an independent part and a dependent part. Thus, the estimate { X 1 , P 1 } and the observation { X 2 , P 2 } to be fused are reformulated as { X 1 , P 1 d + P 1 i } and { X 2 , P 2 d + P 2 i } , respectively, where P 1 d corresponds to the dependent part of X 1 and P 1 i corresponds to the dependent part of X 1 . The formula of SCIF can be written as
P 1 = P 1 d w + P 1 i , P 2 = P 2 d 1 - w + P 2 i , P - 1 = P 1 - 1 + P 2 - 1 , X = P ( P 1 - 1 X 1 + P 2 - 1 X 2 ) , P i = P ( P 1 - 1 P 1 i P 1 - 1 + P 2 - 1 P 2 i P 2 - 1 ) P , P d = P - P i ,
where w, which takes values in the interval [0, 1], is chosen to minimize P.

2.2. Statistical Decision Theory Based on an Information Theoretic Approach

In this subsection, statistical decision theory based on an information theoretic approach is introduced. In this algorithm, the decision is evaluated based on the mutual information I ( S , S a ) . The decision rule δ ( x ) , which is based on an observation x, can be written as shown in Equation (4).
δ ( x ) = arg max S a I ( S , S a )
Here, the decision S a is chosen to maximize I ( S , S a ) . The input state x represents the observation of the fault state of the detection system, which is conditioned on the true state, represented by S.
The state space of S consists of two values: s 0 or s 1 , where s 0 represents the absence of fault and s 1 represents the presence of fault. Similarly the decision result S a may only take one of these two values.
The value of I ( S , S a ) can be calculated using Equation (5):
I ( S , S a ) = S S a p ( S , S a ) log ( p ( S | S a ) p ( S a ) ) ,
where the various probabilities that appear in this expression are defined as follows:
p ( S | S a ) :
p ( S | S a ) = p ( S = s 0 | S a = s 0 ) = 1 - P F , p ( S = s 0 | S a = s 1 ) = P F , p ( S = s 1 | S a = s 0 ) = 1 - P D , p ( S = s 1 | S a = s 1 ) = P D .
p ( S a ) :
p ( S a = s 0 ) = P 0 ( 1 - P F ) + ( 1 - P 0 ) ( 1 - P D ) , p ( S a = s 1 ) = P 0 P F + ( 1 - P 0 ) P D .
p ( S , S a ) :
p ( S , S a ) p ( S = s 0 , S a = s 0 ) = ( 1 - P F ) P 0 , p ( S = s 0 , S a = s 1 ) = P F P 0 , p ( S = s 1 , S a = s 0 ) = ( 1 - P D ) ( 1 - P 0 ) , p ( S = s 1 , S a = s 1 ) = P D ( 1 - P 0 ) .
Here, P D is the probability of correctly concluding that there are faulty sensors when faulty sensors are present in the robot system, P F is the probability of incorrectly concluding that there are faulty sensors when no faulty sensors are present in the robot system, and P 0 is a priori probability of the absence of faulty sensors in the robot system, whose initial value is known.
The values of P D and P F are calculated as shown in Equation (9):
P D = λ f ( x | S = s 1 ) d x , P F = λ f ( x | S = s 0 ) d x .
Additionally, the probability density functions f ( x | S = s 0 ) and f ( x | S = s 1 ) are computed from the data distributions of x in the faulty and nonfaulty cases, respectively.
By substituting Equations (6)–(8) into Equation (5), we can obtain Equation (10):
I ( S , S a ) = P 0 ( 1 - P F ) log ( 1 - P F P 0 ( 1 - P F ) + ( 1 - P 0 ) ( 1 - P D ) ) + P 0 P F log ( P F P 0 P F + ( 1 - P 0 ) P D ) + ( 1 - P 0 ) ( 1 - P D ) log ( 1 - P D P 0 ( 1 - P F ) + ( 1 - P 0 ) ( 1 - P D ) ) + ( 1 - P 0 ) ( P D ) log ( P D P 0 P F + ( 1 - P 0 ) P D ) .
The threshold t of the likelihood ration that maximizes I ( S , S a ) is determined as follows. First, the derivative of I ( S , S a ) with respect to P F is calculated:
I / P F = - P 0 log 1 - P F P F + [ P 0 + t ( 1 - P 0 ) ] log ( p ( S a = s 0 ) ) - t ( 1 - P 0 ) log 1 - P D P D - [ P 0 + t ( 1 - P 0 ) ] log ( p ( S a = s 1 ) ) .
Set this derivative is equal to zero. We obtain that
t = - P 0 [ log ( p ( S a = s 0 ) / p ( S a = s 1 ) ) - log ( ( 1 - P F ) / P F ) ] ( 1 - P 0 ) [ log ( p ( S a = s 0 ) / p ( S a = s 1 ) ) - log ( ( 1 - P D ) / P D ) ] .
Here,
t = P D P F .
With this threshold t, the decision rule δ ( ) can be written as
δ ( x ) = s 1 l ( x ) t , s 0 l ( x ) < t .
Here, l ( x ) is a likelihood ratio that is calculated as follows:
l ( x ) = f x ( x | s 1 ) f x ( x | s 0 ) .
Likely wise Equation (14) can be expressed as
δ ( x ) = s 1 x λ , s 0 x < λ .
Here λ is calculated by algorithm where is chosen from the a set λ consisting of values between λ m a x and λ m i n (shown in Algorithm 1).
Algorithm 1 Algorithm of the thresholding calculation:
1:
i 1
2:
I ( S , S a ) 0
3:
while i < m a x do
4:
 calculate P F i and P D i with λ i by Equation (9)
5:
 calculate I ( S , S a ) i with P F i and P D i by Equation (10)
6:
if I ( S , S a ) i > I ( S , S a ) then
7:
   I ( S , S a ) I ( S , S a ) i
8:
   λ λ i
9:
end if
10:
i i + 1
11:
end while

3. Materials and Methods

The DCL algorithm with FDI is introduced in this section. The communication graph of DCL in a robot team with three robot members, where each robot communicates only with its neighbors, is shown in Figure 4. As shown in this figure, there is no fusion center in DCL; instead, every robot executes its own localization and FDI algorithm to calculate its own position. In contrast with the fusion center in CCL, which can obtain all the information that it needs, in DCL, every robot can obtain information only from its neighbors. For this reason, the information available to every robot in DCL is limited, and the FDI algorithms designed for CCL are not applicable to DCL. To enable the application of FDI in DCL, a novel FDI algorithm is introduced in this section.

3.1. Decentralized Cooperative Localization Algorithm

In this section, the method for achieving DCL using the SCIF (abbreviated henceforth as SCIFCL) is introduced. The SCIFCL algorithm is presented as Algorithm 2.
Algorithm 2 DCL Algorithm with the SCIF (SCIFCL):
1:
for i = 1 to N do
2:
X k / k - 1 i = f ( X k - 1 i , u k - 1 i )
3:
P k / k - 1 i = F k - 1 i P k - 1 i F i k - 1 T + G k - 1 i ( Q u ) k - 1 i G i k - 1 T
4:
P k / k - 1 i _ i n = F k - 1 i P k - 1 i _ i n F i k - 1 T + G k - 1 i ( Q u ) k - 1 i G i k - 1 T
5:
P k / k - 1 i _ d = P k / k - 1 i - P k / k - 1 i _ i n
6:
if there exists a relative measurement Z k j i between robot j and robot i then
7:
   X k / k - 1 i * = h ( X k / k - 1 j , Z k j i )
8:
   P k / k i = ( 1 - K ) ( P k / k - 1 i _ d / w + P k / k - 1 i _ i n )
9:
   X k / k i = X k / k - 1 i + K ( X k / k - 1 i * - X k / k - 1 i )
10:
end if
11:
end for
The state model of robot i in a multiple mobile robots team can be expressed as
X k / k - 1 i = f ( X k - 1 i , u k - 1 i ) = x k - 1 i y k - 1 i θ k - 1 i + Δ k - 1 i c o s ( θ k - 1 i + v k - 1 i 2 ) Δ k - 1 i s i n ( θ k - 1 i + v k - 1 i 2 ) v k - 1 i .
where X k i is the state vector of robot i:
X k i = [ x k i , y k i , θ k i ] T ,
and
X k - 1 = [ X k - 1 1 , X k - 1 2 , . . . , X k - 1 i , . . . ] T .
Here, Δ k - 1 i and v k - 1 i are the elementary displacement and rotation, respectively, of robot i.
In summary, the state model of the multirobot system consists of differentially driven robots governed by a linear control law.
And the Jacobian matrices F k - 1 i = f X and G k - 1 i = f u are written as
F k - 1 i = 1 0 - Δ k - 1 i s i n ( θ k - 1 i + v k - 1 i 2 ) 0 1 Δ k - 1 i c o s ( θ k - 1 i + v k - 1 i 2 ) 0 0 1
and
G k - 1 i = c o s ( θ k - 1 i + v k - 1 i 2 ) - 1 2 Δ k - 1 i s i n ( θ k - 1 i + v k - 1 i 2 ) s i n ( θ k - 1 i + v k - 1 i 2 ) 1 2 Δ k - 1 i c o s ( θ k - 1 i + v k - 1 i 2 ) 0 1 .
In DCL, in addition to the covariance of the robot itself, P k / k - 1 i , two additional covariances, P k / k - 1 i _ i n and P k / k - 1 i _ d , are also calculated as follows:
P k / k - 1 i = F k - 1 i P k - 1 i F i k - 1 T + G k - 1 i ( Q u ) k - 1 i G i k - 1 T , P k / k - 1 i _ i n = F k - 1 i P k - 1 i _ i n F i k - 1 T + G k - 1 i ( Q u ) k - 1 i G i k - 1 T , P k / k - 1 i _ d = P k / k - 1 i - P k / k - 1 i _ i n .
When robot i is observed by robot j, the measurement model can be written as
Thus, the measurement of X k i can be written as
X k / k - 1 i * = h ( X k / k - 1 j , Z k j i ) = x k / k - 1 j + x k j i c o s θ k / k - 1 j - y k j i s i n θ k / k - 1 j y k / k - 1 j + x k j i s i n θ k / k - 1 j + y k j i c o s θ k / k - 1 j θ k / k - 1 j + θ k j i ,
where
Z k j i = [ x k j i , y k j i , θ k j i ] T .
Then, the measurement and the observation to be fused are { X k / k - 1 i , P k / k - 1 i _ d + P k / k - 1 i _ i n } and { X k / k - 1 i * , P k / k - 1 i * _ d + P k / k - 1 i * _ i n } , respectively, where
P k / k - 1 i * = C k i * P k / k - 1 j ( C k i * ) T + D k i * ( D k i * ) T , P k / k - 1 i * _ i n = C k i * P k / k - 1 j _ i n ( C k i * ) T + D k i * ( D k i * ) T .
Here, the Jacobian matrices C k i * = X k / k - 1 i * X k / k - 1 j and D k i * = X k / k - 1 i * Z k j i can be expressed as
C k i * = X k / k - 1 i * X k / k - 1 j = 1 0 - x k j i s i n ( θ k / k - 1 j ) - y k j i c o s ( θ k / k - 1 j ) 0 1 x k j i c o s ( θ k / k - 1 j ) - y k j i s i n ( θ k / k - 1 j ) 0 0 1 , D k i * = X k / k - 1 i * Z k j i .
Applying the SCIF to the cooperative localization problem, we obtain that
( P k / k i ) - 1 = ( P k / k - 1 i _ d w + P k / k - 1 i _ i n ) - 1 + ( P k / k - 1 i * _ d 1 - w + P k / k - 1 i * _ i n ) - 1 X k / k i = P k / k i [ ( P k / k - 1 i _ d w + P k / k - 1 i _ i n ) - 1 X k / k - 1 i + ( P k / k - 1 i * _ d 1 - w + P k / k - 1 i * _ i n ) - 1 X k / k - 1 i * ] .
Writing the above equation in Kalman filter form, we obtain that
P k / k i = ( 1 - K ) ( P k / k - 1 i _ d w + P k / k - 1 i _ i n )
X k / k i = X k / k - 1 i + K ( X k / k - 1 i * - X k / k - 1 i ) ,
where K = ( P k / k - 1 i _ d w + P k / k - 1 i _ i n ) ( P k / k - 1 i _ d w + P k / k - 1 i _ i n ) + ( P k / k - 1 i * _ d 1 - w + P k / k - 1 i * _ i n ) .
And
P k / k i _ i n = ( 1 - K ) P k / k - 1 i _ i n ( 1 - K ) T + K P k / k - 1 i * _ i n K T P k / k i _ d = P k / k i - P k / k i _ i n .
Thus, the fused result is { X k / k i , P k / k i _ d + P k / k i _ i n } .

3.2. Fault Detection and Isolation in Decentralized Cooperative Localization

After estimating the locations of the robot team via SCIFCL, the FDI algorithm is implemented. As mentioned above, in DCL, each member of the team communicates only with its neighbors, and thus, the information available to each robot for FDI is limited. To resolve this problem, an improved FDI algorithm is developed.
To evaluate the possibility of the presence of faulty sensors, the Kullback–Leibler divergence (KLD) between the results of estimation before and after the measurement update is calculated. The KLD is a measure of the extent of one probability distribution diverges from another. If f ( x ) and g ( x ) are two-dimensional Gaussian distributions, with respective means of μ 1 and μ 2 and covariance matrices P 1 and P 2 , then the KLD can be calculated using Equation (28):
K L D ( f ( x ) | | g ( x ) ) = 1 2 [ trace ( P 2 - 1 P 1 ) + log ( det ( P 2 P 1 ) ) - d + ( μ 1 - μ 2 ) T P 2 - 1 ( μ 1 - μ 2 ) ] .
Here, the mean X k / k - 1 and the covariance matrix P k / k - 1 of the state estimate before the measurement update correspond to the prior probability distribution, while the mean X k / k and the covariance matrix P k / k of the state estimate after the measurement update correspond to the posterior probability distribution.
Since both the prior and posterior probability distributions are two-dimensional Gaussian distributions, each robot can use the information obtained from its neighbors to calculate G K L D i , as an indicator of the possible presence of a fault of robot i, as shown in Equation (29).
G K L D i = K L D ( X k / k - 1 i | | X k / k i ) = 1 2 [ trace ( P k / k i - 1 P k / k - 1 i ) + log ( det ( P k / k i P k / k - 1 i ) ) - M + ( X k / k i - X k / k - 1 i ) T P k / k i - 1 ( X k / k i - X k / k - 1 i ) ]
With the threshold optimization algorithm mentioned in Section 2, the problem of fault detection in DCL is simplified to find the S a which maximizes the value of δ ( G K L D i ) in Equation (30).
δ ( G K L D i ) = arg max S a I ( S , S a )
Here the state space of S consists of two values: s 0 or s 1 , where s 0 represents the absence of faulty sensors and s 1 represents the presence of faulty sensors.
And the threshold λ can be expressed as the function of G K L D i .
δ ( G K L D i ) = s 1 G K L D i λ s 0 G K L D i < λ
Here the threshold λ is obtained by Algorithm 1.
After fault detection, if a fault in a robot is detected, then the fault isolation procedure is applied to identify the faulty robot. KL residuals are calculated to isolate the fault. The number of KL residuals calculated depends on the number of inter-robot observations. For example, when robot j is observed by robot i, the KL residual K L i j is calculated as shown in Equation (32):
K L i j = K L D ( X k / k - 1 i | | X k / k i j ) = 1 2 [ trace ( P k / k i j - 1 P k / k - 1 i ) + log ( det ( P k / k i j P k / k - 1 i ) ) - M + ( X k / k i j - X k / k - 1 i ) ) T P k / k i j - 1 ( X k / k i j - X k / k - 1 i ) ] .
Here, X k / k i j denotes the estimation calculated by robot i based on its observation of robot j.
Each KL residual is sensitive to some faults and insensitive to others. For example, the value of K L i j depends on the odometers of robots i and j and the observation of robot j as measured by robot i.
δ ( K L i j ) = arg max S a I ( S , S a ) = s 1
If the value of K L i j satisfies Equation (33), then there may be a fault in the odometer of robot j or i or in robot i’s observation of robot j. The corresponding signal value is equal to 1. As an illustrative example, the signature matrix of robot 1 is given in Table 1.
Since the authors of [16] utilized lidar and Kinect to capture the relative position of other robot, the observation here may represent the sensor information from these two sensors.
However, it is difficult to isolate the faulty sensors with signature matrices described above. To enable FDI in DCL, the signature matrices are simplified by combining the information on the observation and the odometer sensor for each robot. Here, the grouped observation information for each robot is sensitive to faults in both the observation and the odometer sensor of that robot. The corresponding signal value will equal to 1 when either the observation or the odometer sensor is faulty. Thus, the signature matrices are modified as shown in Table 2, Table 3 and Table 4 for the case of a robot team with three members.
However, after this simplification, there is one fault type that cannot be isolated. If faults exist in both sensors, then the signature matrices will both be equal to (1, 1), which is same with the case that faults exist in both observations. Thus, no observation information will be accepted, even if these sensors are free of faults.
To solve this problem, we add another set of KLD entries to the signature matrix based on the measured divergence between the observations of the two robots being observed. Thus, the signature matrices are modified to those shown in Table 5, Table 6 and Table 7. The proposed signature matrices can be used to identify more fault types than is possible with the classic isolation algorithm.
K L i k / i j = K L D ( X k i / k | | X k i / j ) = 1 2 [ trace ( P k i / j - 1 P k i / k ) + log ( det ( P k i / j P k i / k ) ) - M + ( X k i / j - X k i / k ) ) T P k i / j - 1 ( X k i / j - X k i / k ) ]
Here, X k i / k denotes the observation of robot k as measured by robot i.
δ ( K L i k / i j ) = arg max S a I ( S , S a ) = s 1
If the value of K L i k / i j satisfies Equation (35), the corresponding signal value is equal to 1.

4. Results

To validate the FDI algorithm proposed in this paper, four simulations are performed. The simulations reported in this paper were conducted in MATLAB. The background for the simulations was based on a real scenario in which a team of robots were moved forward in a certain formation while maneuvering to avoid an obstacle ahead. To maintain the formation of the team, one robot adjusted its orientation, as shown in Figure 5.
The localization results obtained for the robot team using the SCIFCL algorithm and the SCIFCL algorithm with FDI were tested in four simulations. In the first two simulations, only additive white Gaussian noise was considered, and the distance between neighboring robots was varied from 2 m to 1 m. The velocity of each robot was approximately 0.3 m/s. The additive white Gaussian noise added to the motion measurements introduced standard errors of 0.1 m/s in velocity and 0.005 rad/s in yaw rate. The absolute positioning measurement period was set to 1 s. The standard errors in relative positioning were set to 0.1 m in relative position and 0.005 rad in relative orientation. Time delay was not considered in these simulations.
The simulations consisted of two primary stages. In the first stage, one robot was randomly chosen as the leader, and each of the other robots used its relative measurements of the leader robot until its own state estimation converged. Then, in the second stage, the SCIFCL algorithm and the SCIFCL algorithm with FDI were executed simultaneously, and the robot localization errors associated with these two algorithms were recorded.
In simulation 1, the number of robots in the robot team was set to 3. The communication graph for the robot team is shown in Figure 6. The results of simulation 1 are shown in Figure 7, where each subfigure presents the localization errors of one team member with different localization methods. Here, the vertical axis represents the position error, and the horizontal axis represents the time step. The localization errors of the different methods are represented by lines of different colors. The blue line denotes the robot localization error achieved with the SCIFCL algorithm, and the red line denotes the robot localization error achieved with the SCIFCL algorithm with FDI.
In simulation 2, the number of robots in the robot team was set to be 9. Since at least two neighbor observations are needed for each robot to apply the SCIFCL algorithm with FDI, the communication graph for the robot team was defined as shown in Figure 8, with each robot using only the information obtained by observing the two nearest robots.
The results of simulation 2 are shown in Figure 9, where each subfigure presents the localization errors for one team member as obtained using different localization methods.
The SCIFCL results will be improved if some team members achieve better positioning accuracy. However, the localization results achieved by robots with better accuracy will be “contaminated” by the robots with less position accuracy. This is mainly because the SCIFCL procedure does not consider the accuracy of the observations being fused. We divide the team members into two groups based on their localization accuracy, where the accuracy of the first group of robots is better than that of the second group. Updating the localization result for a robot in either the first or the second group with the observation from the first group of robots will improve the accuracy of its localization result. However, updating the localization result for a robot in either the first or the second group with an observation from the second group of robots will decrease the accuracy of the result being updated.
Since the SCIFCL algorithm is applied to all observations from neighboring robots, some observations from robots in the second group will be utilized to adjust the states of robots in the first group. Consequently, the localization results for robots in the first group will be “contaminated” by robots in the second group. However, with the FDI algorithm, it is possible to select the robots that belong to the second group and isolate them. If the observations from robots in the second group are excluded from the measurement update, then the accuracy achieved for the entire robot team will be enhanced.
In simulations 3 and 4, impulse noise was added in addition to additive white Gaussian noise. In simulation 3, the number of robots in the team was three, while in simulation 4, the number of team members was 9. The results of these two simulations are shown in Figure 10 and Figure 11, respectively.
As in the case of simulation 1, the localization errors achieved using different methods are represented by lines of different colors. The blue lines denote the localization errors of the SCIFCL method, and the red lines denote the localization errors of the SCIFCL method with FDI.
As shown in Figure 10 and Figure 11, the phenomenon of “contamination” is more evident when impulse noise is present. The SCIFCL results for the robot team diverge, while for the SCIFCL algorithm with FDI, the localization results for other robots in the robot team are not affected by robots that experience extreme localization failure.
The results of these four simulations demonstrate that the SCIFCL algorithm with FDI exhibits better localization performance than that of the SCIFCL algorithm alone.

5. Discussion

In this paper, an FDI algorithm is applied in DCL for a multirobot system. In the proposed algorithm, the signature matrix used in the original FDI algorithm is modified to enable the application of FDI in DCL, in which each robot communicates only with its neighbors. In the proposed algorithm, certain fault types in the signature matrix are combined, and a new KL residual is added. With this modified signature matrix, fault isolation can be achieved in DCL. Simulations have been conducted to test the proposed FDI algorithm for DCL. The experimental results demonstrate that the proposed DCL algorithm with FDI achieves better accuracy and robustness than the DCL algorithm without FDI does.
The purpose of the algorithm introduced in this paper is to serve as an augmentation approach to compensate for poor odometric measurements and noisy and distorted measurements from other sensors. The proposed localization method may become a valuable tool for the application of FDI in DCL.
Possible further studies are concluded below:
  • We plan to test the performance of the proposed method in a real experiment.
  • Our algorithm is designed to be an augmentation system to some localization algorithm. A localization algorithm with map for example AMCL and SCIFCL with FDI would be part of our further work.
  • In our plan, the communication graph may change but the signature matrices will not change for the algorithm FDI runs in each robot only need two nearest neighbor information. The further discussion is needed about this issue.
  • When every robot loses theirs position at the same time a re-location algorithm with sensors like GPS or anchor node will be needed.

Author Contributions

H.M. conceived the idea, provided financial support to this work and finalized this paper. M.W. designed the simulations, implemented the algorithm, analyzed the data and drafted the paper. X.Z. provided constructive and useful comments to the manuscript. All authors read and approved the manuscript.

Funding

This work is partially supported by the National Key Research and Development Program of China [2017YFF0205300], the National Natural Science Foundation of China [61473038, 91648117] and Beijing Natural Science Foundation [4172055].

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Chi, W.; Wang, J.; Meng, M.Q. A Gait Recognition Method for Human Following in Service Robots. IEEE Trans. Syst. Man Cybern. Syst. 2018, 48, 1429–1440. [Google Scholar] [CrossRef]
  2. Ghedini, C.; Ribeiro, C.H.; Sabattini, L. Toward efficient adaptive ad-hoc multi-robot network topologies. Ad Hoc Netw. 2018, 74, 57–70. [Google Scholar] [CrossRef]
  3. Cooper, S.B.; Durrantwhyte, H.F. A Kalman filter model for GPS navigation of land vehicles. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Munich, Germany, 12–16 September 1994; pp. 157–163. [Google Scholar] [CrossRef]
  4. Fuentespacheco, J.; Ruizascencio, J.; Rendonmancha, J.M. Visual simultaneous localization and mapping: A survey. Artif. Intell. Rev. 2015, 43, 55–81. [Google Scholar] [CrossRef]
  5. Fox, D. KLD-Sampling: Adaptive Particle Filters. Adv. Neural Inf. Process. Syst. 2001, 14, 713–720. [Google Scholar]
  6. Grisetti, G.; Stachniss, C.; Burgard, W. Improved Techniques for Grid Mapping With Rao-Blackwellized Particle Filters. IEEE Trans. Rob. 2007, 23, 34–46. [Google Scholar] [CrossRef] [Green Version]
  7. Kia, S.S.; Rounds, S.F.; Martinez, S. Cooperative Localization for Mobile Agents: A Recursive Decentralized Algorithm Based on Kalman-Filter Decoupling. IEEE Control Syst. 2015, 36, 86–101. [Google Scholar] [CrossRef]
  8. Kurazume, R.; Nagata, S.; Hirose, S. Cooperative Positioning with Multiple Robots. Proc. IEEE Int. Conf. Rob. Autom. 1994, 2, 1250–1257. [Google Scholar] [CrossRef]
  9. Rekleitis, I.; Dudek, G.; Milios, E. Multi-robot collaboration for robust exploration. Ann. Math. Artif. Intell. 2001, 31, 7–40. [Google Scholar] [CrossRef]
  10. Howard, A.; Matarić, M.J.; Sukhatme, G.S. Mobile Sensor Network Deployment using Potential Fields: A Distributed, Scalable Solution to the Area Coverage Problem. In Distributed Autonomous Robotic Systems 5, Proceedings of the International Symposium on Distributed Autonomous Robotic Systems, Fukuoka, Japan, 25–27 June 2002; Springer: Tokyo, Japan, 2002; pp. 299–308. [Google Scholar] [CrossRef] [Green Version]
  11. Kia, S.S.; Rounds, S.F.; Martinez, S. A centralized-equivalent decentralized implementation of Extended Kalman Filters for cooperative localization. In Proceedings of the International Conference on Intelligent Robots and Systems, Chicago, IL, USA, 14–18 September 2014; pp. 3761–3766. [Google Scholar] [CrossRef]
  12. Li, H.; Nashashibi, F. Cooperative multi-vehicle localization using split covariance intersection filter. IEEE Intell. Transp. Syst. Mag. 2013. [Google Scholar] [CrossRef]
  13. Tinos, R.; Navarroserment, L.E.; Paredis, C.J.J. Fault tolerant localization for teams of distributed robots. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Maui, HI, USA, 29 October–3 November 2001; pp. 1061–1066. [Google Scholar]
  14. Hozo, I.; Djulbegovic, B.; Luan, S.; Tsalatsanis, A.; Gigerenzer, G. Towards theory integration: Threshold model as a link between signal detection theory, fast-and-frugal trees and evidence accumulation theory. J. Eval. Clin. Pract. 2017, 23, 49–65. [Google Scholar] [CrossRef] [PubMed]
  15. Harmouche, J.; Delpha, C.; Diallo, D. Incipient fault detection and diagnosis based on Kullback–Leibler divergence using Principal Component Analysis: Part I. Signal Process. 2015, 109, 334–344. [Google Scholar] [CrossRef]
  16. Hage, J.A.; Najjar, M.E.B.E.; Pomorski, D. Multi-sensor fusion approach with fault detection and exclusion based on the Kullback CLeibler Divergence: Application on collaborative multi-robot system. Inf. Fusion 2017, 37, 61–76. [Google Scholar] [CrossRef]
  17. Julier, S.J.; Uhlmann, J.K. A non-divergent estimation algorithm in the presence of unknown correlations. In Proceedings of the American Control Conference, Albuquerque, NM, USA, 6 June 1997; Volume 4, pp. 2369–2373. [Google Scholar] [CrossRef]
Figure 1. Communication graph for CCL.
Figure 1. Communication graph for CCL.
Sensors 18 03360 g001
Figure 2. Additive white Gaussian noise and impulse noise.
Figure 2. Additive white Gaussian noise and impulse noise.
Sensors 18 03360 g002
Figure 3. Position errors under additive white Gaussian noise and impulse noise.
Figure 3. Position errors under additive white Gaussian noise and impulse noise.
Sensors 18 03360 g003
Figure 4. Communication graph for DCL.
Figure 4. Communication graph for DCL.
Sensors 18 03360 g004
Figure 5. Simulation scenario: a team of three robots.
Figure 5. Simulation scenario: a team of three robots.
Sensors 18 03360 g005
Figure 6. Communication graph for 3 robots.
Figure 6. Communication graph for 3 robots.
Sensors 18 03360 g006
Figure 7. Position errors of 3 robots under additive white Gaussian noise.
Figure 7. Position errors of 3 robots under additive white Gaussian noise.
Sensors 18 03360 g007
Figure 8. Communication graph for 9 robots.
Figure 8. Communication graph for 9 robots.
Sensors 18 03360 g008
Figure 9. Position errors of 9 robots under additive white Gaussian noise.
Figure 9. Position errors of 9 robots under additive white Gaussian noise.
Sensors 18 03360 g009
Figure 10. Position errors of 3 robots under additive white Gaussian noise and impulse noise.
Figure 10. Position errors of 3 robots under additive white Gaussian noise and impulse noise.
Sensors 18 03360 g010
Figure 11. Position errors of 9 robots under additive white Gaussian noise and impulse noise.
Figure 11. Position errors of 9 robots under additive white Gaussian noise and impulse noise.
Sensors 18 03360 g011
Table 1. The signature matrix of robot 1 for DCL.
Table 1. The signature matrix of robot 1 for DCL.
K L 12 K L 13
Odometer 111
Odometer 210
Odometer 301
Observation 100
Observation 210
Observation 301
Table 2. The simplified signature matrix of robot 1.
Table 2. The simplified signature matrix of robot 1.
K L 12 K L 13
Robot 111
Robot 210
Robot 301
Table 3. The simplified signature matrix of robot 2.
Table 3. The simplified signature matrix of robot 2.
K L 12 K L 23
Robot 110
Robot 211
Robot 301
Table 4. The simplified signature matrix of robot 3.
Table 4. The simplified signature matrix of robot 3.
K L 13 K L 23
Robot 110
Robot 201
Robot 311
Table 5. The proposed signature matrix of robot 1.
Table 5. The proposed signature matrix of robot 1.
K L 12 K L 13 K L 12 / 13
Robot 1110
Robot 2101
Robot 3011
Table 6. The proposed signature matrix of robot 2.
Table 6. The proposed signature matrix of robot 2.
K L 12 K L 23 K L 12 / 23
Robot 1101
Robot 2110
Robot 3011
Table 7. The proposed signature matrix of robot 3.
Table 7. The proposed signature matrix of robot 3.
K L 13 K L 23 K L 13 / 23
Robot 1101
Robot 2011
Robot 3110

Share and Cite

MDPI and ACS Style

Wu, M.; Ma, H.; Zhang, X. Decentralized Cooperative Localization with Fault Detection and Isolation in Robot Teams. Sensors 2018, 18, 3360. https://doi.org/10.3390/s18103360

AMA Style

Wu M, Ma H, Zhang X. Decentralized Cooperative Localization with Fault Detection and Isolation in Robot Teams. Sensors. 2018; 18(10):3360. https://doi.org/10.3390/s18103360

Chicago/Turabian Style

Wu, Mei, Hongbin Ma, and Xinghong Zhang. 2018. "Decentralized Cooperative Localization with Fault Detection and Isolation in Robot Teams" Sensors 18, no. 10: 3360. https://doi.org/10.3390/s18103360

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop