Abstract

Consensus algorithm for networked dynamic systems is an important research problem for data fusion in sensor networks. In this paper, the distributed filter with consensus strategies known as Kalman consensus filter and information consensus filter is investigated for state estimation of distributed sensor networks. Firstly, an in-depth comparison analysis between Kalman consensus filter and information consensus filter is given, and the result shows that the information consensus filter performs better than the Kalman consensus filter. Secondly, a novel optimization process to update the consensus weights is proposed based on the information consensus filter. Finally, some numerical simulations are given, and the experiment results show that the proposed method achieves better performance than the existing consensus filter strategies.

1. Introduction

In recent years, there has been a surge of interests in the area of distributed sensor networks. The advantages of distributed sensor networks lie in their low processing power, cheap memory, scalable sensing features, and fault tolerance capabilities.

One of the most basic problems for distributed sensor networks is to develop distributed algorithms [1] for the state estimation of a process of interest. When a process is observed by a group of sensors organized in a network, the goal of each sensor node is to obtain the accurate state estimation for the process. Kalman filtering has been proved to be an effective algorithm for state estimation of dynamic processes [2, 3]. Because of this, most papers focusing on distributed estimation propose different mechanisms by combining the Kalman filter with a consensus filter in order to ensure that the estimates asymptotically converge to the same value, schemes which will be henceforth called consensus based distributed filtering algorithms. Based on the idea mentioned above, a scheme for distributed Kalman filtering (DKF) was proposed in [4] based on reaching an average-consensus [5, 6], and in [7] Olfati-Saber proposed a scalable and distributed Kalman filtering algorithm based on reaching a dynamic average consensus [8]. Olfati-Saber’s algorithm [7] has been further developed by other researchers [9] with similar algorithms. However, methods based on such kind of algorithms produce relatively weak performances. According to [10], the performance is compared with the collective estimation error of noncooperative local Kalman filters, which is a trivial base performance level for distributed estimation in sensor networks. To solve this, Olfati-Saber developed the Kalman consensus filter (KCF) in [11], where a consensus filter runs directly on the estimator state space variables. In addition, a formal derivation followed by optimality and stability analysis of KCF in discrete-time has been elaborated in [10]. However, in distributed implementations, there is a correlation between local estimates [12] in KCF. In general distributed networks, it is not possible to exactly determine this correlation [13] and it results in nonoptimal local estimates. Other techniques to accomplish distributed estimation for dynamic systems that rely on the inverse covariance filter or information filter have been around for many years [14, 15]. An information consensus filter (ICF) is presented in [16] that applies consensus filters to an information filter. This method does not exactly solve the problem of correlation between local estimates but it gives insight into the statistical effects of the correlation and is working much well in distributed sensor networks. Based on the ICF, we focus on designing the consensus weights to improve its performance.

In this paper, we firstly describe the existing distributed filter with consensus strategies. Then we make an in-depth comparison between the KCF and the ICF. Based on the ICF, we propose the consensus weights optimization for better performance of the system and refer this method as weights optimized information consensus filter (WO-ICF). We show experimentally that the proposed method achieves the best performance and it is closest to the optimal centralized performance.

The structure of this paper is organized as follows. In Section 2, the background knowledge on Kalman filter and the centralized information filter are provided. In Section 3, the consensus strategies are discussed. In Section 4, Kalman consensus filter is presented. In Section 5 we discuss the information consensus filter, and an ICF based weights optimization method is proposed. Simulation results and performance comparisons between the KCF and ICF algorithm are provided in Section 6. In Section 7, we make a brief summary.

2. Kalman Filter: Information Form

2.1. Kalman Filter

Consider a dynamic process with the linear time-varying model as follows: where and are the state and input noise of the process at time , respectively; is the initial state with a Gaussian distribution; is the model matrix, is the state noise matrix. We are interested in tracking the state of this target by the use of a sensor network with sensors and the communication topology .

The observations at sensor and time are where with , is the local observation matrix for sensor , and is the local observation noise. We refer to as sensor data. Assume that and are zero mean white Gaussian noise with the following statistics: where if and , otherwise. We stack the observations at all sensors in the sensor network to get the global observation model as follows.

Let the global observation vector , the global observation matrix , and the global observation noise vector be

Then the global observation model is given by

Since observation noises of different sensors are mutually independent, we can combine into one global observation noise covariance matrix as

Given the collective information , the estimation of the state of the process can be expressed as

We refer to and as estimate and prior estimate (or prediction) of the state , respectively. Then, the error covariance matrices associated with the estimates and are given by where and denote the estimate errors and . Then, the Kalman filter is a linear estimator in the form with the Kalman gain .

Remark 1. Throughout this paper, due to the importance of the node indices, we adopt a notation that is free of the time-index and call it an index-free notation to represent all estimators [10]. The index-free form of the above estimator can be written as

We also use the update operation defined in [10] to rewrite the sensing model of node of the sensor network as

Then, we get the index-free recursive equations of a centralized Kalman filter (CKF) for system (11):

2.2. Information Form: Centralized Information Filter

Using the matrix inversion lemma By use of the identity , we have

From (14), we have

Using the matrix inversion lemma we have Then we can rewrite (15) as

Based on the above derivation, the recursive equations of the Kalman filter can be rewritten as From (19), the estimate can be expressed as

Now we define the -dimensional global observation variables as and the -dimensional local observation variables at sensor as

When the observations are distributed among the sensors, the KF can be implemented by collecting all the sensor observations at a central location, or with observation fusion by realizing that the global observation variables in (21), it can be written as Similarly,

Recall (20) where the estimate could be written as Multiplication on the left by yields a variation of (25) as

Let the inverse of and be the information matrices, and . Let and be the information vectors. We have the following relations: Then (26) can be rewritten as and the update of predicted estimate can be expressed as and we have

Now we get the following simpler form of the filter in (19) and call it centralized information filter (CIF): where (31) is the filter step and prediction step (or update step) of the CIF, respectively.

3. Consensus Strategy

Consensus strategy defines a set of rules for a team of agents to agree on specific consensus states. With these rules each agent exchanges information with its neighboring agents and finally reaches an agreement (or consensus) concerning the consensus state over time [17, 18]. Furthermore, average consensus occurs when the final consensus state is the average of the initial values.

Consider a team of agents to agree on specific consensus states, and at any discrete-time instant , the communication topology between agents can be described by the graph , the graph is undirected, is the vertex set, and is the edge set. In the consensus algorithm, each agent in the network maintains a local copy of the consensus state and updates this value using its neighbors’ consensus states according to the rule: where indicates the consensus filter iteration step. To choose the weights , we can use the Maximum-degree weights or the Metropolis weights [19]. Here we use the latter which preserves the averaging in consensus filters and can be computed by where is the degree of agent in the graph . Arrange the local consensus states into the vector , and define the matrix for ; otherwise , and we can rewrite the update in (32) as where is the appropriate size identity matrix and denotes the matrix Kronecker product.

The th element of in (34) satisfies the following four conditions: (1) , (2) , (3) , (4) and each nonzero entry is both uniformly upper and lower bounded. Based on these conditions, we have the following results [20] for average consensus.

Lemma 2. Under switching interaction topologies, if there exists a finite that for every interval the union of the interaction graph across interval is strongly connected, then consensus protocol (34) achieves average consensus asymptotically; that is, as .

Remark 3. In order to calculate the metropolis weights in (33), we assume undirected communication throughout this paper. Therefore, if the graph is connected, the matrix is a doubly stochastic matrix, and the four conditions on are satisfied. This implies that average consensus is achieved asymptotically as long as every graph is connected [21].

4. Distributed Kalman Filter: Consensus on Estimate

In this section, we discuss an alternative approach to distribute the Kalman filtering that relies on communicating state estimates between neighboring nodes and refer to it as Kalman consensus filter (KCF). Before presenting the KCF algorithm, we first need to discuss a more primitive DKF algorithm called local Kalman filter (LKF) which forms the basis of the KCF.

4.1. Local Kalman Filter

In local Kalman filtering, let be the set of neighbors of node on graph . Each node of the sensor network communicates its measurement , covariance information , and observation matrix with its neighbors . For node , we assume that the information flow from nonneighboring nodes to node is prohibited if there is no nodes except for its neighbors exist. Therefore, node can use a central Kalman filter that only utilizes the observation vectors and observation matrices of the nodes in [11]. This leads to the following primitive DKF algorithm with no consensus on state estimation.

LKF Iterations. Assume that node only receives information from its neighbors. Then, we have the iterations of node in local Kalman filtering as where and are local aggregate information vector and matrix, respectively and node locally computes both and .

4.2. Kalman Consensus Filter

We now present the Kalman consensus filter (KCF). The KCF uses consensus strategy (32) on the state estimate in a distributed Kalman filter, where each node maintains a local Kalman filter. Corresponding to (32), let be the prior estimate at time and be fused prior estimate; each node fuses the prior estimates from its neighbors according to the rule: Using the fused prior estimate , the filter estimate at node could be implemented by

The local KCF is summarized in Algorithm 1, where is the time index for the consensus strategy and is the time interval between prediction updates. One-time step is equivalent to time steps of the consensus time index ; that is, for each node, the information exchanges between neighboring nodes occurred faster than the prediction update step. The three steps in KCF prediction, local filter estimate, and consensus update are not necessarily sequential.

Initialization (for node ):
           
            
Loop  {Local iteration on node
(1) Consensus update
        
        
(2) If new observations are taken then the Kalman consensus state estimate are computed
   
        
(3) If time for a predication step (i.e., ) then prediction step
        
        
        
End loop

The last term in (37) is the correction of filter estimate compared to the standard Kalman estimator. Intuitively, adding the consensus term in (37) will force local estimators to reach a consensus regarding state estimates. The structure of node in the KCF algorithm is shown in Figure 1.

In [11], the author proposed the following Kalman consensus estimator which is in the form of where is named consensus gain of node . The choice of the consensus gain is free. A poor choice of leads to either the lack of consensus on estimates (e.g., setting , for all ) or the lack of stability of the error dynamics of the filter. One possible choice is to let where is a relative small constant and denotes the Frobenius norm of a matrix. The derivation of the optimal Kalman consensus filter can be found in [10], where we can also find that the computational complexity of updating the error covariance of the optimal Kalman consensus filter is not scalable in . To obtain a suboptimal approximation of the KCF which is distributed and scalable in , we make an assumption that the consensus gains are of the order of . Then we get the stable suboptimal KCF summarized in Algorithm 2.

Initialization:
         , , and message
While new data exists do
(1) Compute local observation vector and matrix of node :
           
(2) Broadcast message to neighbors.
(3) Receive messages from all neighbors.
(4) Compute the local aggregate information vector and matrix:
           
(5) Compute the Kalman consensus state estimate
        
        
         ,  
(6) Update the state of the Kalman consensus filter:
        
        
End While

5. Distributed Filter: Consensus on Information Matrix

The KCF discussed previously applies consensus strategy on the prior estimate to the Kalman filter and improves the state estimate of KF. However, the error covariance matrix is not improved because each node in KCF only fuses the prior estimates from its neighbors but neglects the helpful information about the error covariance matrix. In the next section, we adopt an information matrix weighted consensus strategy to improve the consensus based distributed Kalman filter algorithm in the estimation fusion of sensor networks. We refer to this method as information consensus filter (ICF) [16]. Before presenting the ICF algorithm, we need to discuss a more primitive DKF algorithm called local information filter (LIF) which forms the basis of the ICF.

5.1. Local Information Filter

To distribute the estimation of the global state vector, in CIF, we implement local information filter (LIF) at each sensor , which is based on the sensor model (11) and can be derived from local Kalman filter (LKF) in (35) after we use its information form. Each LIF computes local objects (matrices and vectors) which are then fused (if required) by exchanging information among the neighbors. In LIF, there is no centralized knowledge of the estimation of the global state that exists in CIF; however, it can be obtain by fusing the local state vector.

Let the inverses of and be the local information matrices, and . Let and be the local information vector. We have the following relations:

Then we get the following simpler form of the filter in (35).

LIF Iterations. The local information filtering iterations for node are in the form

5.2. Information Consensus Filter

We now present the information consensus filter (ICF). The ICF uses consensus strategy (32) on both the information state and the information matrix in a distributed Kalman filter, where each node maintains a local information filter. Recalling (32), let be the fused local information vector and the fused local information matrix; each node fuses the local information from its neighbors according to the rule:

Using the fused local information vector and matrix, and , the local ICF is summarized in Algorithm 3.

Initialization (for node ):
            
             
Loop  {Local iteration on node
(1) Consensus update
        
        
        
(2) If new observations are taken then the information consensus estimate are computed
        
        
(3) If time for a predication step (i.e., ) then prediction step
        
        
        
End Loop

Now we make a comparison between ICF and KCF based on the state estimate and the error covariance matrix . Let ; we can rewrite (42) as Then we have Here we use , and , . Then we finally get where the error covariance matrix has been improved by a consensus term compared with in KCF, and the state estimate is also corrected by a factor compared with the in KCF.

5.3. The Optimization of Consensus Weights in ICF

The weights are important parameters of ICF and we can use the metropolis weights or the maximum-degree weights to determine it. In fact, the more reasonable approach is to choose different weights according to the fused local information and . Here, a nice scheme to optimize the consensus weights is proposed base on the following objective function: where , are the weight coefficients, and .

The first term in the objective function is used to assess the prior estimate error covariance of node after fusing the local information of its neighbors, and the second term is used to assess the consensus of the fused local information vector in node and the prior estimates of its neighbors. Base on the objective function , the consensus weights optimization problem can be described as where . To solve the optimization problem (48),we only need the local information of node and that of its neighbors. We refer to this method as weights optimized information consensus filter (WO-ICF).

6. Numerical Simulations

Let the linear system under consideration be represented by a second-order discrete time-varying model: where with , and with , . The initial conditions are , . A sensor network with 20 randomly located nodes is used in this experiment (see Figure 2). The local observation matrix for sensor is , and the local observation noise covariance is for otherwise .

Define the averaged estimation error and the averaged consistency estimation error as the algorithm performance metrics, which can be computed as follows: where is the averaged estimation of state.

Figure 3 demonstrates the averaged estimation error using different algorithms. We can see that the ICF and the WO-ICF behave in a similar manner (with comparable performances), and the averaged estimation accuracy in ICF and WO-ICF is improved compared to KCF. After 50 iterations, their performances are very close to CKF; this is because the average consensus is achieved after constantly information exchanging, fusing, and filtering.

Figure 4 shows that our WO-ICF performs significantly better than both KCF and ICF, it was the fastest converged, and the consistency of estimates between different nodes in WO-ICF was improved by optimizing the consensus weights.

Figure 5 demonstrates the comparisons of different algorithms on the traces of the averaged estimation covariance matrices . A quick look at Figure 5 reveals that both ICF and our WO-ICF perform significantly better than KCF, of which the reason is that the information matrix weighted consensus strategy is adopted. Furthermore, by optimizing the consensus weights, the error covariance matrix is improved significantly compared to ICF.

7. Conclusions

In this paper, a description about the existing distributed Filter with consensus strategies is presented, including Kalman consensus filter (KCF) and information consensus filter (ICF). In addition, an in-depth comparison between the KCF and the ICF is made. Based on the ICF, the weights optimized information consensus filter (WO-ICF) is proposed to optimize the consensus weights. Simulation shows that both ICF and WO-ICF perform better than KCF; they improve not only the state estimate but also the error covariance matrix, and the proposed WO-ICF achieves better consistency estimation performance than ICF. Compared with the existing consensus filter, our WO-ICF achieves the best performance and is closest to the optimal centralized performance.

Acknowledgments

This work is supported in part by NSFC (Natural Science Foundation of China) Projects 61202400, Natural Science Foundation of Zhejiang Q12F020078, Shaoxing Project of Science and Technology 2011A22013, and Wenzhou Project of Science and Technology H20090054, S20100029, and H20100095.