11
Digital Signal Processing 23 (2013) 442–452 Contents lists available at SciVerse ScienceDirect Digital Signal Processing www.elsevier.com/locate/dsp Optimal decentralized Kalman filter and Lainiotis filter Nicholas Assimakis a , Maria Adam b,, Maria Koziri c , Stamatis Voliotis d , Konstantinos Asimakis e a Department of Electronics, Technological Educational Institute of Lamia, 3rd km Old National Road Lamia–Athens, Lamia, Greece b Department of Computer Science and Biomedical Informatics, University of Central Greece, 2-4 Papasiopoulou str., PO 35100 Lamia, Greece c Department of Computer and Communication Engineering, University of Thessaly, Greece d Department of Electrical Engineering, Technological Educational Institute of Chalkis, Greece e Department of Computer Engineering and Informatics, University of Patras, Greece article info abstract Article history: Available online 16 August 2012 Keywords: Kalman filter Lainiotis filter Discrete time Decentralized algorithms Analysis of algorithms Optimization A method to implement the optimal decentralized Kalman filter and the optimal decentralized Lainiotis filter is proposed; the method is based on the a priori determination of the optimal distribution of measurements into parallel processors, minimizing the computation time. The resulting optimal Kalman filter and optimal Lainiotis filter require uniform distribution or near to uniform distribution of measurements into parallel processors. The optimal uniform distribution has the advantages of elimination of idle time for the local processors and of low hardware cost, but it is not always applicable. The optimal filters present high parallelism speedup; this is verified through simulation results and is very important due to the fact that, in most real-time applications, it is essential to obtain the estimate in the shortest possible time. © 2012 Elsevier Inc. All rights reserved. 1. Introduction Estimation plays an important role in many fields of science and engineering. The discrete time Kalman filter [1] and Lainio- tis filter [2] are well-known algorithms that solve the estimation problem. Real time problems require fast and accurate computa- tion of large amount of data in order to deal with larger and more realistic models. The advances in the technology of inte- grated multi-sensor network systems allow the use of distributed or decentralized signal processing algorithms. The literature is very rich of contributions addressing several aspects of distributed or decentralized estimation. There are several works in literature that address several as- pects of distributed estimation. These works can be classified works into classes based on the modeling adopted: static versus dynamic estimation, distributed versus hierarchical estimation, and all-to-all versus multi-hop communication networks. A distributed Kalman filter presented in [3,4], wherein a system with an m- dimensional measurement vector is first split into subsystems of measurement sub-vectors, then these subsystems are individually processed by micro Kalman filters in the nodes of the network. In this system, the sensors compute an average inverse covariance and average measurements using consensus filters. These averaged values are then used by each node to individually compute the * Corresponding author. E-mail addresses: [email protected] (N. Assimakis), [email protected] (M. Adam), [email protected] (M. Koziri), [email protected] (S. Voliotis), [email protected] (K. Asimakis). estimated state of the system using the information form of the Kalman filter. The distributed Kalman filtering algorithms are based on an average-consensus computing first the mean of the sensor measurements, and then to update and predict the local estimates using the centralized Kalman optimal gains; the Kalman Consensus Filter or the Generalized Kalman Consensus Filter are distributed algorithms for fusing multiple measurements from different sen- sors as stated in [3,5–7]. Decentralized Kalman filtering and distributed Kalman filtering are two separate problems. The decentralized Kalman filter was in- troduced in [8]. There are several works in literature that propose decentralized versions of the Kalman filter [9–16]. Fusion cen- ter (FC) based WSNs can perform decentralized estimation [15,16]. Decentralized estimation of Gaussian random parameters is pre- sented in [10] for stationary environments and decentralized esti- mation of random signals in arbitrary nonlinear and non-Gaussian setups is presented in [12]. A comparison between the distributed Kalman filter and the decentralized sensor fusion algorithms both with and without fusion centers is presented in [17–19]. There are two major approaches to obtain the required esti- mates for such multiple-sensor systems as stated in [20]: (i) The centralized approach, where all the sensor observations are trans- mitted from the local sensor to a central location for processing, using Kalman filter [1,21–23] or Lainiotis filter [20,21,24–27]; this approach requires high computational load at the central pro- cessor. (ii) The decentralized approach, where the data are ob- tained by the different sensor subsystems, processed locally and the results are transmitted to the central processor which com- bines the information from the local subsystems to produce the 1051-2004/$ – see front matter © 2012 Elsevier Inc. All rights reserved. http://dx.doi.org/10.1016/j.dsp.2012.08.005

Optimal decentralized Kalman filter and Lainiotis filter

  • Upload
    uth

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Digital Signal Processing 23 (2013) 442–452

Contents lists available at SciVerse ScienceDirect

Digital Signal Processing

www.elsevier.com/locate/dsp

Optimal decentralized Kalman filter and Lainiotis filter

Nicholas Assimakis a, Maria Adam b,∗, Maria Koziri c, Stamatis Voliotis d, Konstantinos Asimakis e

a Department of Electronics, Technological Educational Institute of Lamia, 3rd km Old National Road Lamia–Athens, Lamia, Greeceb Department of Computer Science and Biomedical Informatics, University of Central Greece, 2-4 Papasiopoulou str., PO 35100 Lamia, Greecec Department of Computer and Communication Engineering, University of Thessaly, Greeced Department of Electrical Engineering, Technological Educational Institute of Chalkis, Greecee Department of Computer Engineering and Informatics, University of Patras, Greece

a r t i c l e i n f o a b s t r a c t

Article history:Available online 16 August 2012

Keywords:Kalman filterLainiotis filterDiscrete timeDecentralized algorithmsAnalysis of algorithmsOptimization

A method to implement the optimal decentralized Kalman filter and the optimal decentralized Lainiotisfilter is proposed; the method is based on the a priori determination of the optimal distributionof measurements into parallel processors, minimizing the computation time. The resulting optimalKalman filter and optimal Lainiotis filter require uniform distribution or near to uniform distributionof measurements into parallel processors. The optimal uniform distribution has the advantages ofelimination of idle time for the local processors and of low hardware cost, but it is not always applicable.The optimal filters present high parallelism speedup; this is verified through simulation results and isvery important due to the fact that, in most real-time applications, it is essential to obtain the estimatein the shortest possible time.

© 2012 Elsevier Inc. All rights reserved.

1. Introduction

Estimation plays an important role in many fields of scienceand engineering. The discrete time Kalman filter [1] and Lainio-tis filter [2] are well-known algorithms that solve the estimationproblem. Real time problems require fast and accurate computa-tion of large amount of data in order to deal with larger andmore realistic models. The advances in the technology of inte-grated multi-sensor network systems allow the use of distributedor decentralized signal processing algorithms. The literature is veryrich of contributions addressing several aspects of distributed ordecentralized estimation.

There are several works in literature that address several as-pects of distributed estimation. These works can be classifiedworks into classes based on the modeling adopted: static versusdynamic estimation, distributed versus hierarchical estimation, andall-to-all versus multi-hop communication networks. A distributedKalman filter presented in [3,4], wherein a system with an m-dimensional measurement vector is first split into subsystems ofmeasurement sub-vectors, then these subsystems are individuallyprocessed by micro Kalman filters in the nodes of the network.In this system, the sensors compute an average inverse covarianceand average measurements using consensus filters. These averagedvalues are then used by each node to individually compute the

* Corresponding author.E-mail addresses: [email protected] (N. Assimakis), [email protected] (M. Adam),

[email protected] (M. Koziri), [email protected] (S. Voliotis), [email protected](K. Asimakis).

1051-2004/$ – see front matter © 2012 Elsevier Inc. All rights reserved.http://dx.doi.org/10.1016/j.dsp.2012.08.005

estimated state of the system using the information form of theKalman filter. The distributed Kalman filtering algorithms are basedon an average-consensus computing first the mean of the sensormeasurements, and then to update and predict the local estimatesusing the centralized Kalman optimal gains; the Kalman ConsensusFilter or the Generalized Kalman Consensus Filter are distributedalgorithms for fusing multiple measurements from different sen-sors as stated in [3,5–7].

Decentralized Kalman filtering and distributed Kalman filteringare two separate problems. The decentralized Kalman filter was in-troduced in [8]. There are several works in literature that proposedecentralized versions of the Kalman filter [9–16]. Fusion cen-ter (FC) based WSNs can perform decentralized estimation [15,16].Decentralized estimation of Gaussian random parameters is pre-sented in [10] for stationary environments and decentralized esti-mation of random signals in arbitrary nonlinear and non-Gaussiansetups is presented in [12]. A comparison between the distributedKalman filter and the decentralized sensor fusion algorithms bothwith and without fusion centers is presented in [17–19].

There are two major approaches to obtain the required esti-mates for such multiple-sensor systems as stated in [20]: (i) Thecentralized approach, where all the sensor observations are trans-mitted from the local sensor to a central location for processing,using Kalman filter [1,21–23] or Lainiotis filter [20,21,24–27]; thisapproach requires high computational load at the central pro-cessor. (ii) The decentralized approach, where the data are ob-tained by the different sensor subsystems, processed locally andthe results are transmitted to the central processor which com-bines the information from the local subsystems to produce the

N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452 443

global estimate. This approach is used in [28–30], where the al-gorithms used to obtain the estimates are based on the differentKalman filter formulations (standard covariance-type Kalman fil-ter, information-type Kalman filter, square root Kalman filter) anda formulation of the Lainiotis per-step partitioning filter was pre-sented in [24].

In this paper we use the ideas in [21,28,31] in order to parti-tion the measurement noise process into statistically uncorrelatedparts. A typical multi-sensor environment consists of several sen-sors observing a dynamic system, where each sensor is attached toa local processor; in these decentralized structures some amountof processing is done at the local processors of the network andthe results are then communicated to a central processor, also re-ferred to as a fusion center. The hierarchical approach for signalprocessing is used in the case where the sensors are both collo-cated and dispersed [28]. The resulting decentralized algorithmsare decomposed into two parts: the local level and the centrallevel. The data of each local processor is communicated to thefusion center where the global estimate is computed. The localprocessors can operate concurrently, since there is no need forcommunication among local processors and no communication isneeded from the central processor downwards in the hierarchy ofthe local processors.

In this paper we investigate the problem of decentralized com-puting is the derivation of the optimal solution to the decentral-ized problem: the optimal number of processors required for theparallel implementation of Kalman filter and Lainiotis filter, forwhich the maximum parallelism speedup is achieved. The optimaldecentralized Kalman filter and Lainiotis filter have been discussedin [32] assuming uniform distribution of measurements into theparallel processors. Concerning the novelty of the paper, we men-tion that: (i) decentralized implementation of both Kalman andLainiotis filters is derived, (ii) a method to implement the optimaldecentralized Kalman and Lainiotis filters is proposed; the methodis based on the a priori determination of the optimal distributionof measurements into parallel processors, minimizing the compu-tation time; this means that we are able to design the optimalsensor network for a given problem, (iii) the optimal distributionis derived for three separate cases: time varying, time invariantand steady state; this is significant due to the fact that there is adifference between the time varying case and the time invariantand steady state cases concerning the optimal distribution deter-mination, and (iv) it is pointed out that the optimal distributionof measurements into parallel processors is not always uniform,but it can be near to uniform; this leads to maximum parallelismspeedup mainly in cases when the number of measurements hasa small number of dividers, especially when it is a prime num-ber. The contribution of the paper is that we propose a method forimplementing the optimal decentralized Kalman filter and Lainiotisfilter by a priori determination of the distribution of measurementsinto parallel processors.

The paper is organized as follows: In Section 2 the decentral-ized filtering problem is formulated. In Section 3 the centralizedKalman filter and Lainiotis filter are presented for time varying,time invariant and steady state systems. In Section 4 the decentral-ized Kalman filter and Lainiotis filter are derived for time varying,time invariant and steady state systems. In Section 5 the computa-tional requirements of both centralized and decentralized filteringalgorithms are calculated. In Section 6 the optimal decentralizedKalman filter and Lainiotis filter are defined. First, the optimal the-oretical uniform distribution is determined, but it is not always ap-plicable. In the sequel, the optimal uniform distribution is derived,but it is not always applicable as well. Then, the optimal generaldistribution is derived: it is a uniform distribution or a near touniform distribution with high parallelism speedup. In Section 7

simulation results are presented. Finally, Section 8 summarizes theconclusions.

2. Problem formulation

The estimation/filtering problem is associated with the follow-ing state space equations:

x(k + 1) = F (k + 1,k)x(k) + w(k) (1)

z(k) = H(k)x(k) + v(k) (2)

where x(k) is the n-dimensional state vector at time k, z(k) is them-dimensional measurement vector, F (k + 1,k) is the n × n sys-tem transition matrix, H(k) is the m × n output matrix, {w(k)}is the plant noise process and {v(k)} is the measurement noiseprocess. These processes are assumed to be Gaussian, zero-mean,white and uncorrelated random processes with n × n plant noiseand m ×m measurement noise covariance matrices Q (k) and R(k),respectively. The initial value x(0) of the state vector x(k) at timek = 0 is considered as Gaussian random variable with mean x0 andcovariance P0. Also, x(0), {w(k)} and {v(k)} are independent.

For a multi-sensor environment, the measurement vector is par-titioned into ρ parts [21,28,31]:

zT (k) = [zT

1 (k) zT2 (k) . . . zT

ρ(k)]

(3)

where zi(k) is the mi-dimensional vector for every i = 1,2, . . . , ρand it holds:ρ∑

i=1

mi = m (4)

Partitioning the measurement noise process into ρ statistically un-correlated parts as

vT (k) = [vT

1 (k) vT2 (k) . . . vT

ρ(k)]

(5)

the measurement noise covariance matrix is given by

E[v(k)vT (k)

] = diag(

R1(k), R2(k), . . . , Rρ(k))

(6)

where Ri(k) is the mi ×mi (measurement noise) covariance matrixand partitioning the output matrix as

H T (k) = [H T

1 (k) H T2 (k) . . . H T

ρ(k)]

(7)

where Hi(k) is the corresponding mi × n submatrix of H(k), themeasurement equation takes the form:

zi(k) = Hi(k)x(k) + vi(k), i = 1,2, . . . , ρ (8)

3. Centralized Kalman filter and Lainiotis filter

In this section we present the discrete time Kalman filter [1]and the discrete time Lainiotis filter [2] in a centralized form. Thismeans that all the required computations are carried out in onecentral processor.

For time varying systems, the classical implementation of theKalman filter is summarized in the following equations:

Kalman filter

x(k + 1/k) = F (k + 1,k)x(k/k) (9)

P (k + 1/k) = F (k + 1,k)P (k/k)F T (k + 1,k) + Q (k) (10)

K (k + 1) = P (k + 1/k)H T (k + 1)[

H(k + 1)P (k + 1/k)

× H T (k + 1) + R(k + 1)]−1

(11)

x(k + 1/k + 1) = x(k + 1/k) + K (k + 1)[z(k + 1)

− H(k + 1)x(k + 1/k)]

(12)

P (k + 1/k + 1) = P (k + 1/k) − K (k + 1)H(k + 1)

× P (k + 1/k) (13)

444 N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452

Lainiotis filter

A(k + 1) = [H(k + 1)Q (k)H T (k + 1) + R(k + 1)

]−1(14)

Kn(k + 1) = Q (k)H T (k + 1)A(k + 1) (15)

Km(k + 1) = F T (k + 1,k)H T (k + 1)A(k + 1) (16)

Pn(k + 1,k) = Q (k) − Kn(k + 1)H(k + 1)Q (k) (17)

Fn(k + 1,k) = F (k + 1,k) − Kn(k + 1)H(k + 1)F (k + 1,k) (18)

O n(k + 1) = Km(k + 1)H(k + 1)F (k + 1,k) (19)

xn(k + 1/k + 1) = Kn(k + 1)z(k + 1) (20)

Mn(k + 1) = Km(k + 1)z(k + 1) (21)

P (k + 1/k + 1) = Pn(k + 1,k) + Fn(k + 1,k)

× [I + P (k/k)O n(k + 1)

]−1

× P (k/k)F Tn (k + 1,k) (22)

x(k + 1/k + 1) = xn(k + 1/k + 1) + Fn(k + 1,k)

× [I + P (k/k)O n(k + 1)

]−1

× [P (k/k)Mn(k + 1) + x(k/k)

](23)

The equivalence of the two filters is confirmed in [33]. Hence,using only the equations of Kalman filter, (10)–(11) in (13) and(9)–(11) in (12), the following implementation of the centralizedtime varying Kalman filter/Lainiotis filter is derived, as shown inAppendix A.

Centralized time varying Kalman filter/Lainiotis filter

P (k + 1/k + 1) = {[F (k + 1,k)P (k/k)F T (k + 1,k) + Q (k)

]−1

+ H T (k + 1)R−1(k + 1)H(k + 1)}−1

(24)

x(k + 1/k + 1) = P (k + 1/k + 1){

H T (k + 1)R−1(k + 1)z(k + 1)

+ [F (k + 1,k)P (k/k)F T (k + 1,k) + Q (k)

]−1

× F (k + 1,k)x(k/k)}

(25)

For time invariant systems, the system transition matrix, theoutput matrix, the plant and measurement noise covariance matri-ces are constant, following the similar way as (24)–(25) the cen-tralized time invariant Kalman filter/Lainiotis filter is obtained:

Centralized time invariant Kalman filter/Lainiotis filter

P (k + 1/k + 1) = {[F P (k/k)F T + Q

]−1 + H T R−1 H}−1

(26)

x(k + 1/k + 1) = P (k + 1/k + 1){

H T R−1z(k + 1)

+ [F P (k/k)F T + Q

]−1F x(k/k)

}(27)

where the constant matrices H T R−1 and H T R−1 H are calculatedoff-line.

For time invariant systems, it is well known [34] that if the sig-nal process model is asymptotically stable (i.e. all eigenvalues of Flie inside the unit circle), then there exists a steady state value P e

of the estimation error covariance matrix, which is calculated off-line by

P e = [I − K H]P p (28)

where the steady state gain K is calculated by

K = P p H T [H P p H T + R

]−1(29)

and the steady state prediction error covariance matrix P p is cal-culated off-line by off-line solving of the corresponding discretetime Riccati equation [34,35]:

P p = Q + F P p F T − F P p H T [H P p H T + R

]−1H P p F T (30)

Then, the centralized steady state Kalman filter/Lainiotis filter isobtained:

Centralized steady state Kalman filter/Lainiotis filter

x(k + 1/k + 1) = Assx(k/k) + Bssz(k + 1) (31)

where the following constant matrices are calculated off-line:

Ass = [I − K H]F (32)

Bss = K (33)

4. Decentralized Kalman filter and Lainiotis filter

In this section we present the discrete time Kalman and Laini-otis filters in a decentralized form [28]. As was pointed out earlier,the main drawback of the above centralized approaches is thatthey require a large amount of computations to be carried outin the central processor, demanding therefore large computationalpower. Moreover in the case of very large m, there is a tremen-dous computational burden in the processor. In the following, theresults of the previous section are extended and the correspondingdecentralized algorithms are decomposed into two parts: the locallevel and the central level. At the local level each processor com-putes its local quantities using its own measurement. The data ofeach local processor is communicated to the fusion center wherethe global estimate is computed. The local processors can operateconcurrently, since there is no need for communication among lo-cal processors and no communication is needed from the centralprocessor downwards in the hierarchy of the local processors. Thegeneration of the global estimate can be thought of as overhead,due to the fact that the central processor needs information fromthe local processors, but not vice versa.

Using the formulas of the matrices in (6), (7) and (3), we have

H T (k + 1)R−1(k + 1)H(k + 1)

=ρ∑

i=1

H Ti (k + 1)R−1

i (k + 1)Hi(k + 1) (34)

H T (k + 1)R−1(k + 1)z(k + 1)

=ρ∑

i=1

H Ti (k + 1)R−1

i (k + 1)zi(k + 1) (35)

which allow us through Eqs. (24)–(25) to derive the followingimplementation of the decentralized time varying Kalman fil-ter/Lainiotis filter:

Decentralized time varying Kalman filter/Lainiotis filter

Local level

Bi(k + 1) = H Ti (k + 1)R−1

i (k + 1)Hi(k + 1), i = 1, . . . , ρ (36)

bi(k + 1) = H Ti (k + 1)R−1

i (k + 1)zi(k + 1), i = 1, . . . , ρ (37)

Central level

P (k + 1/k + 1) =[[

F (k + 1,k)P (k/k)F T (k + 1,k) + Q (k)]−1

+ρ∑

Bi(k + 1)

]−1

(38)

i=1

N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452 445

x(k + 1/k + 1) = P (k + 1/k + 1)

{ρ∑

i=1

bi(k + 1)

+ [F (k + 1,k)P (k/k)F T (k + 1,k) + Q (k)

]−1

× F (k + 1,k)x(k/k)

}(39)

For time invariant systems, the following implementation of thedecentralized time invariant Kalman filter/Lainiotis filter is derived:

Decentralized time invariant Kalman filter/Lainiotis filter

Local level

bi(k + 1) = H Ti R−1

i zi(k + 1), i = 1, . . . , ρ (40)

where H Ti R−1

i , i = 1, . . . , ρ , are constant matrices calculated off-line.

Central level

P (k + 1/k + 1) =[[

F P (k/k)F T + Q]−1 +

ρ∑i=1

Bi

]−1

(41)

x(k + 1/k + 1) = P (k + 1/k + 1)

{ρ∑

i=1

bi(k + 1)

+ [F P (k/k)F T + Q

]−1F x(k/k)

}(42)

where Bi , i = 1, . . . , ρ , and∑ρ

i=1 Bi , are constant matrices calcu-lated off-line by

Bi = H Ti R−1

i Hi, i = 1, . . . , ρ (43)

In the steady state case the following implementation of thedecentralized steady state Kalman filter/Lainiotis filter is derived:

Decentralized steady state Kalman filter/Lainiotis filter

Local level

di(k + 1) = P e H Ti R−1

i zi(k + 1), i = 1, . . . , ρ (44)

where the constant matrices P e H Ti R−1

i , i = 1, . . . , ρ , are calculatedoff-line by the steady state value P e of the estimation error co-variance matrix using (28), that is calculated by the steady statevalue P p from the solving of Eq. (30) and the steady state gain Kfrom (29).

Central level

x(k + 1/k + 1) = Assx(k/k) +ρ∑

i=1

di(k + 1) (45)

where the constant matrix Ass is calculated off-line using (32).

5. Computational requirements

The centralized and the decentralized Kalman filters and Lain-iotis filters are recursive algorithms. The computational times re-quired for the implementation of the centralized algorithms are:

T CTV = BC

TV · s · top, T CTI = BC

TI · s · top, T CSS = BC

SS · s · top

(46)

and the computational times required for the implementation ofthe decentralized algorithms are:

Table 1Calculation burden of matrix operations.

Matrix operation Calculation burden

A(n × m) + B(n × m) = C(n × m) nmA(n × n) + B(n × n) = S(n × n) [S: symmetric] 0.5n2 + 0.5nI(n × n) + A(n × n) = B(n × n) [I: identity] nA(n × m) · B(m × k) = C(n × k) 2nmk − nkA(n × m) · B(m × n) = S(n × n) [S: symmetric] n2m + nm − 0.5n2 − 0.5n[A(n × n)]−1 = B(n × n) (16n3 − 3n2 − n)/6

T DTV = B D

TV · s · top, T DTI = B D

TI · s · top

T DSS = B D

SS · s · top (47)

where

• BCTV , BC

TI , BCSS are the per recursion calculation burden required

for the on-line calculations of the centralized time varying,time invariant, steady state algorithms, respectively,

• B DTV , B D

TI , B DSS are the per recursion calculation burden required

for the on-line calculations of the decentralized time varying,time invariant, steady state algorithms, respectively,

• s is the number of recursions (steps) that each algorithm exe-cutes,

• top is the time required to perform a scalar operation.

The centralized and the decentralized algorithms presented aboveare equivalent with respect to their behavior: they calculate the-oretically the same estimates. Then, it is reasonable to assumethat both implementations compute the estimate value x(L/L) ofthe state vector x(L), executing the same number of recursions.Thus, in order to compare the algorithms with respect to theircomputational time, we have to compare their per recursion calcu-lation burden required for the on-line calculations; the calculationburden of the off-line calculations (initialization process for timeinvariant and steady state filters) is not taken into account.

The computational analysis is based on the analysis in [33]:scalar operations are involved in matrix manipulation operations,which are needed for the implementation of the filtering algo-rithms. Table 1 summarizes the calculation burden of needed ma-trix operations.

In the centralized algorithms case, all required computations forthe calculation of the global estimate are carried out in one cen-tral processor. The computational requirements of all centralizedalgorithms depend on the state vector dimension n and the mea-surement vector dimension m.

In the decentralized algorithms case, each local processor com-putes its local data using its own measurement (the local proces-sors operate in parallel, since there is no need for communicationamong local processors). The data of each local processor is com-municated to the central processor (there is no two way commu-nication between the local and the central processor), where theglobal estimate is computed. The computational requirements ofall decentralized algorithms depend on the state vector dimensionn and the maximum local measurement vector dimension M:

M = max{mi}, i = 1, . . . , ρ (48)

The per recursion calculation burdens of all the Kalman/Lainiotisfiltering algorithms are determined in Appendix B and summarizedin Table 2.

It is obvious that when ρ = 1 and M = m, then the decen-tralized algorithms become the same as the centralized algorithmswith equivalent calculation burdens.

446 N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452

Table 2Computational requirements. Per recursion calculation burden of the Kalman/Lainiotis filtering algorithms.

Implementation System Calculation burden

Centralized Time varying BCTV = (31n3 + 6n2 − 7n)/3 + (16m3 − 3m2 − m)/6 + n2m + 2nm + 2nm2

Centralized Time invariant BCTI = 2nm + (62n3 + 15n2 − 11n)/6

Centralized Steady state BCSS = 2n2 + 2nm − n

Decentralized Time varying B DTV = (62n3 + 9n2 − 23n)/6 + (16M3 − 3M2 − M)/6 + n2 M + 2nM + 2nM2 + (n2 + 3n)ρ/2

Decentralized Time invariant B DTI = 2nM + nρ + (62n3 + 15n2 − 17n)/6

Decentralized Steady state B DSS = 2n2 − 2n + 2nM + nρ

6. Optimal decentralized Kalman filter and Lainiotis filterdefinition

In this section, a method to define the optimal decentralizedKalman and Lainiotis filters is proposed. Our aim is to minimizethe computation time of the decentralized filter. From the previoussection, it becomes obvious that in order to minimize the compu-tation time of the decentralized algorithm, we have to minimizethe corresponding per recursion calculation burden. From Table 2we can easily see that the calculation burden of the decentralizedKalman filter/Lainiotis filter depends on the distribution of m mea-surements into ρ parallel local processors. Each local processor cantransfer data to the central processor after its local data is com-puted in the local processor; this communication process can beperformed while the other local processors compute their local es-timates. The global estimate is computed in the central processorafter all needed information is transferred from the local proces-sors to the central processor.

(i) Theoretical uniform distribution. We examine the uniform dis-tribution of measurement into parallel processors. We make thefollowing assumption: The measurement vector is partitioned intoρ equal parts. Then, it is clear that the following relation holds

mi = M, i = 1, . . . , ρ (49)

and then by (4) we have:

ρ · M = m (50)

This uniform distribution of measurements into local processorshas the following advantages:

1. All local processors perform the same calculations concern-ing quantities of the same type and dimensionality. Thus, alllocal processors have the same structure and therefore, lowhardware cost is required for the implementation of the de-centralized algorithms.

2. There is no idle time for the local processors.

It is obvious that when ρ = 1 and M = m, then the decentral-ized algorithms become the same as the centralized algorithms (allmeasurements into one processor).

It is also obvious that when ρ = m and M = 1, then the de-centralized algorithms use measurements fully decentralized (onemeasurement per processor).

In order to determine the optimal theoretical uniform decen-tralized Kalman filter/Lainiotis filter, we observe that ρ and Mmust be positive integers satisfying (50). From Table 2 we con-clude that we are able to determine the optimal uniform distribu-tion of m measurements into ρth

opt processors, each one of which

deals with Mthopt measurements, using the optimality criterion of

minimizing the computation time of the decentralized Kalman fil-ter/Lainiotis filter.

For time varying systems, the calculation burden of the de-centralized Kalman filter/Lainiotis filter B D

TV can be written as afunction of ρ , M , denoted fTVF(ρ), fTVF(M), and given by:

fTVF(ρ) = 1

6

(16m3

ρ3− 3m2

ρ2− m

ρ+ 62n3 + 9n2 − 23n

)

+ (n2 + 2n

)m

ρ+ 2n

m2

ρ2+ n2 + 3n

fTVF(M) = 1

6

(16M3 − 3M2 − M + 62n3 + 9n2 − 23n

)+ (

n2 + 2n)M + 2nM2 + m(n2 + 3n)

2M(51)

The first and second derivatives of fTVF(ρ), fTVF(M) with respectto ρ , M are:

f ′TVF(ρ)

= −8m3

ρ4− m2(4n − 1)

ρ3− m(n2 + 2n − 1

6 )

ρ2+ n2 + 3n

2

f ′TVF(M)

=(

8M2 + (4n − 1)M − 1

6

)+ (

n2 + 2n) − m(n2 + 3n)

2M2(52)

f ′′TVF(ρ) = 32m3

ρ5+ 3m2(4n − 1)

ρ4+ 2m(n2 + 2n − 1

6 )

ρ3

f ′′TVF(M) = 16M + 4n − 1 + m(n2 + 3n)

M3(53)

Then, it becomes clear (from the first and the second derivatives)that the function fTVF(ρ) for ρ > 0 has a unique minimum valueat ρth

opt and the function fTVF(M) for M > 0 has a unique minimum

value at Mthopt determined by solving:

3(n2 + 3n

)ρ4 − (

6n2 + 12n − 1)mρ2 − (24n − 6)m2ρ

− 48m3 = 0

48M4 + (24n − 6)M3 + (6n2 + 12n − 1

)M2

− 3m(n2 + 3n

) = 0 (54)

For time invariant and for steady state systems, the calculation bur-den of the decentralized Kalman filter/Lainiotis filter B D

TI and B DSS

can be written as a function of ρ, M , denoted fTIF(ρ), fTIF(M) andfSSF(ρ), fSSF(M), and given by:

fTIF(ρ) = 2nm

ρ+ nρ + 62n3 + 15n2 − 17n

6

fTIF(M) = 2nM + nm

M+ 62n3 + 15n2 − 17n

6(55)

and

fSSF(ρ) = 2nm

ρ+ nρ + 2n2 − 2n

fSSF(M) = 2nM + nm + 2n2 − 2n (56)

M

N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452 447

The first and second derivatives of the above functions with re-spect to ρ , M are:

f ′TIF(ρ) = f ′

SSF(ρ) = −2nm

ρ2+ n

f ′TIF(M) = f ′

SSF(M) = − nm

M2+ 2n (57)

f ′′TIF(ρ) = f ′′

SSF(ρ) = 4nm

ρ3

f ′′TIF(M) = f ′′

SSF(M) = 2nm

M3(58)

Then, it becomes clear (from the first and the second derivatives)that the functions fTIF(ρ) and fSSF(ρ) for ρ > 0 have a uniqueminimum value at ρth

opt and the functions fTIF(M) and fSSF(M) for

M > 0 have a unique minimum value at Mthopt determined by solv-

ing:

ρ2 = 2m

M2 = m

2(59)

Thus, the optimum theoretical uniform distribution is determinedtheoretically by solving (54) for time varying systems or (59) fortime invariant or steady state systems; the optimum distributionconsists of ρth

opt processors with Mthopt measurements in each of

them. It is obvious that these theoretical solutions hold for m > 1;in fact, when m = 1, then ρth

opt = 1 and Mthopt = 1.

(ii) Uniform distribution. The above theoretical solution has thedisadvantage that it is not always applicable. In fact, it is obviousthat ρth

opt and Mthopt have to be positive integers; but the theoretical

solutions by (54) or (59) are real numbers in general. If these the-oretical values are integers, then they define the unique optimaluniform distribution: ρu

opt processors with Muopt measurements in

each of them. If they are not integers, then we have to seek allthe uniform distributions minimizing the computation time usingfTVF(ρ) or fTVF(M) for time varying systems, fTIF(ρ) or fTIF(M) fortime invariant systems and fSSF(ρ) or fSSF(M) for steady state sys-tems in order to a priori define the optimal uniform decentralizedKalman filter/Lainiotis filter. Then, there exists either one optimaluniform distribution minimizing the computational cost consistingof ρu

opt processors with Muopt measurements in each of them, or

two optimal uniform distributions, because it is possible that thereexist two integer values M1u

opt < Mthopt < M2u

opt and two integer val-

ues ρ1uopt < ρth

opt < ρ2uopt minimizing the computational cost. In the

case where there exist two optimal uniform distributions, then wepropose to define the optimum distribution with criterion the min-imum number of processors in order to minimize the hardwarecost.

(iii) General distribution (uniform or non-uniform). The uniformdistribution has the disadvantage that it is not always applica-ble; for example when the number of measurements m has asmall number of dividers, especially when it is a prime number.In the following we examine the case of general (uniform or non-uniform) distributions of measurements into processors.

So we have to seek all the distributions (uniform or non-uniform) of measurements into processors minimizing the com-putation time using fTVF(ρ) or fTVF(M) for time varying sys-tems, fTIF(ρ) or fTIF(M) for time invariant systems and fSSF(ρ) orfSSF(M) for steady state systems in order to a priori define the op-timal uniform decentralized Kalman filter/Lainiotis filter. From theprevious analysis, it becomes obvious that there exist either one ortwo optimal uniform distributions minimizing the computational

Table 3Percent speedup gain from optimal uniform distribution to optimal general distri-bution.

System Maximum gain (%) Average gain (%)

Steady state 253.571 9.614Time invariant 186.842 0.649Time varying 58.199 1.589

cost. Furthermore, it is possible that there exist non-uniform dis-tributions (in fact near to uniform distributions) consisting of ρ

gopt

processors with M gopt measurements in each of them, which also

minimize the computational cost as well.In the case where there exist many optimal uniform or non-

uniform distributions, which minimize the computational cost,then we propose to define the optimum distribution with crite-rion the minimum number of processors in order to minimize thehardware cost; of course, the physical topology of sensors (mea-surements) may change this criterion. Thus, the resulting optimaldistribution is a uniform distribution or a near to uniform distri-bution minimizing the computation time.

In the sequel, we compare the decentralized implementationof Kalman/Lainiotis filters to the centralized implementation. Us-ing (46) and (47) the theoretical parallelism speedup of each de-centralized Kalman/Lainiotis algorithm is defined as the ratio ofthe computational time required for its centralized implementationby the computational time required for its decentralized imple-mentation:

speedupthTV = T C

TV

T DTV

= BCTV

B DTV

, speedupthTI = T C

TI

T DTI

= BCTI

B DTI

speedupthSS = T C

SS

T DSS

= BCSS

B DSS

(60)

Thus, the optimal decentralized algorithms present the maximumparallelism speedup, which is achieved minimizing the computa-tional time required for the algorithm’s decentralized implementa-tion. The maximum parallelism speedup increases as the measure-ment vector dimension increases (and the state vector dimensionremains constant), for time varying, time invariant and steady statesystems. This is very important for multi-sensor problems. The op-timal distribution leads to the maximum speedup, which is greaterthan or equal to the maximum speedup of the optimal uniformdistribution; it is much greater when the number of measurementsm has a small number of dividers, especially when it is a primenumber (see in Section 7, Example 4).

Furthermore, in order to compare the optimal general (uniformor non-uniform) distribution to the (real) optimal uniform distri-bution we use the percent speedup gain:

% gain = 100 · speedupg − speedupu

speedupu (61)

where speedupg is the speedup achieved for the optimal general(uniform or non-uniform) distribution and speedupu is the speedupachieved for the optimal uniform distribution. The percent speedupgain from optimal uniform distribution to optimal distribution forn = 1, . . . ,100 and m = 1, . . . ,100 is presented in Table 3. Ofcourse, there is no speedup gain when the optimal distribution isa uniform one. If this is not the case, then the maximum speedupgain is very high.

Finally, in order to compare the optimal general (uniform ornon-uniform) distribution to the theoretical optimal uniform dis-tribution we use the percent speedup efficiency:

% efficiency = 100 · speedupg

th(62)

speedup

448 N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452

Table 4Percent speedup efficiency from optimal theoretical uniform to optimal general dis-tribution.

System Average efficiency (%) Minimum efficiency (%)

Steady state 99.483 90.351Time invariant 99.965 96.028Time varying 99.855 87.841

Table 5Optimal distributions (processors × measurements).

Distribution type Optimal ρopt Mopt Max speedupdistribution

Theoretical uniform 258.757 × 3.865 258.757 3.865 3.743297 · 106

Uniform 250 × 4 250 4 3.736932 · 106

General 250 × 4 250 4 3.736932 · 106

Table 6Optimal distributions (processors × measurements).

Distribution type Number of distributions ρopt Mopt

Uniform 1 40 25Near to uniform 22 42 24Near to uniform 77 44 23Near to uniform 77 46 22Near to uniform 22 48 21Uniform 1 50 20

where speedupg is the speedup achieved for the optimal gen-eral (uniform or non-uniform) distribution and speedupth is thespeedup achieved for the theoretical optimal uniform distribu-tion. The percent speedup efficiency from optimal theoretical uni-form distribution to optimal distribution for n = 1, . . . ,100 andm = 1, . . . ,100 is presented in Table 4. Of course, the speedup ef-ficiency is 100% when the optimal distribution is a uniform one.If this is not the case, then the average speedup efficiency is veryimportant.

7. Simulation results

In this section it is pointed out through simulation results thatthe proposed optimal decentralized Kalman filter/Lainiotis filterpresents high parallelism speedup.

Example 1 (Time varying Kalman filter/Lainiotis filter). A typicalmulti-sensor example taken from [21] is presented. A time varyingsystem with n = 1 and m = 1000 is considered. The optimal theo-retical uniform distribution (processors × measurements) and thereal optimal distribution are shown in Table 5.

The optimal decentralized Kalman filter/Lainiotis filter is achie-ved for the optimum uniform distribution: Mopt = 4 measurementsin each of ρopt = 250 local processors. The optimal decentralizedKalman filter/Lainiotis filter presents a very high maximum paral-lelism speedup: the optimal decentralized Kalman filter/Lainiotisfilter can be implemented 3.736932 · 106 times faster than thecentralized Kalman filter/Lainiotis filter. The speedup efficiencyis 99.830%.

Example 2 (Time invariant Kalman filter/Lainiotis filter). A typicalseismic deconvolution example taken from [36] is presented. Thetime invariant wavelet used to describe the signal received by theseismic sensors is assumed of order n = 4. A number of m = 1000sensors divided into local geophone clusters are utilized in orderto capture the seismic trace. The optimal decentralized Kalman fil-ter/Lainiotis filter arises for 200 different distributions, as shownin Table 6.

The optimal distributions are 2 uniform distributions: Mopt = 25measurements in each of Popt = 40 local processors and Mopt = 20

Table 7Optimal distributions (processors × measurements).

Distribution type Optimal ρopt Mopt Max speedupdistribution

Theoretical uniform 44.721 × 22.360 44.721 22.360 8.297616Uniform 40 × 25 40 25 8.280000General 40 × 25 40 25 8.280000

Table 8Optimal distributions (processors × measurements).

Distribution type Optimal ρopt Mopt Max speedupdistribution

Theoretical uniform 258.181 × 3.862 258.181 3.862 3.717816 · 106

Uniform 997 × 1 997 1 1.316193 · 106

General 247 × 4 + 3 × 3 250 4 3.703407 · 106

General 248 × 4 + 1 × 3 250 4 3.703407 · 106

+ 1 × 2General 249 × 4 + 1 × 1 250 4 3.703407 · 106

measurements in each of Popt = 50 local processors and 198 nearto uniform distributions. In this case, we propose to determinethe optimum distribution using the criterion of minimizing thenumber of processors (except of the criterion of minimizing thecomputation time). This is reasonable since the hardware cost isminimized.

The optimal theoretical uniform distribution (processors ×measurements) and the real optimal distribution are shown in Ta-ble 7.

The optimal decentralized Kalman filter/Lainiotis filter can beimplemented 8.280000 times faster than the centralized Kalmanfilter/Lainiotis filter. This is achieved for all the above distributions.The speedup efficiency is 99.788%.

Example 3 (Time varying Kalman filter/Lainiotis filter with prime num-ber of measurements). In this example a time varying system isassumed with scalar state and prime number of measurements:n = 1 and m = 997 (prime number). The optimal theoretical uni-form distribution (processors × measurements) and the real opti-mal distributions are shown in Table 8.

The optimal decentralized Kalman filter/Lainiotis filter can beimplemented 3.703407 · 106 times faster than the centralizedKalman filter/Lainiotis filter. This is achieved for 3 different near touniform distributions. The speedup gain is 181.373%. The speedupefficiency is 99.612%.

8. Conclusions

Centralized and decentralized algorithms for the solution of thediscrete time estimation problem for multi-sensor environmentwere presented. The discrete time centralized and decentralizedKalman filters/Lainiotis filters were analyzed for time varying, timeinvariant and steady state systems and their computational re-quirements were discussed. A method was developed to definethe optimal decentralized Kalman and Lainiotis filters a priori (be-fore the implementation of the filter). The method is based on thedetermination of the optimum distribution of measurements intoparallel processors using the criterion of minimizing the compu-tation time. The paper proposes the optimal distribution of mea-surements into parallel processors. Thus we are able to design theoptimal sensor network choosing among equivalent (optimal) dis-tributions. So we can design such an optimal network for a givenproblem. On the other hand, if the sensor network is given, wehave to use the measurements distribution to this given sensornetwork (which may be not the optimal one). In both cases, thecomputation time depends on the maximum local measurementvector dimension. Of course the decision of designing the optimal

N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452 449

Table 9Centralized time varying Kalman filter/Lainiotis filter.

Matrix operation Matrix dimensions Calculation burden

F (k + 1,k)P (k/k) (n × n) · (n × n) 2n3 − n2

F (k + 1,k)P (k/k)F T (k + 1,k) (n × n) · (n × n) n3 + 0.5n2 − 0.5nsymmetric

W (k) ≡ F (k + 1,k)P (k/k)F T (k + 1,k) + Q (k) (n × n) + (n × n) 0.5n2 + 0.5nsymmetric

W −1(k) (n × n) (16n3 − 3n2 − n)/6R−1(k + 1) (m × m) (16m3 − 3m2 − m)/6H T (k + 1)R−1(k + 1) (n × m) · (m × m) 2nm2 − nmH T (k + 1)R−1(k + 1)H(k + 1) (n × m) · (m × n) n2m + nm − 0.5n2 − 0.5n

symmetricW −1(k) + H T (k + 1)R−1(k + 1)H(k + 1) (n × n) + (n × n) 0.5n2 + 0.5n

symmetricP (k + 1/k + 1) = [W −1(k) + H T (k + 1)R−1(k + 1)H(k + 1)]−1 (n × n) (16n3 − 3n2 − n)/6H T (k + 1)R−1(k + 1)z(k + 1) (n × m) · (m × 1) 2nm − nW −1(k)F (k + 1,k) (n × n) · (n × n) 2n3 − n2

W −1(k)F (k + 1,k)x(k/k) (n × n) · (n × 1) 2n2 − nH T (k + 1)R−1(k + 1)z(k + 1) + W −1(k)F (k + 1,k)x(k/k) (n × 1) + (n × 1) nx(k + 1/k + 1) = P (k + 1/k + 1){H T (k + 1)R−1(k + 1)z(k + 1) + W −1(k)F (k + 1,k)x(k/k)} (n × n) · (n × 1) 2n2 − n

Total BCTV = (31n3 + 6n2 − 7n)/3

+ (16m3 − 3m2 − m)/6+ n2m + 2nm + 2nm2

Table 10Centralized time invariant Kalman filter/Lainiotis filter.

Matrix operation Matrix dimensions Calculation burden

F P (k/k) (n × n) · (n × n) 2n3 − n2

F P (k/k)F T (n × n) · (n × n) n3 + 0.5n2 − 0.5nsymmetric

W (k) ≡ F P (k/k)F T + Q (n × n) + (n × n) 0.5n2 + 0.5nsymmetric

W −1(k) (n × n) (16n3 − 3n2 − n)/6W −1(k) + H T R−1 H (n × n) + (n × n) 0.5n2 + 0.5n

symmetricP (k + 1/k + 1) = [W −1(k) + H T R−1 H]−1 (n × n) (16n3 − 3n2 − n)/6H T R−1 z(k + 1) (n × m) · (m × 1) 2nm − nW −1(k)F (n × n) · (n × n) 2n3 − n2

W −1(k)F x(k/k) (n × n) · (n × 1) 2n2 − nH T R−1 z(k + 1) + W −1(k)F x(k/k) (n × 1) + (n × 1) nx(k + 1/k + 1) = P (k + 1/k + 1){H T R−1 z(k + 1) + W −1(k)F x(k/k)} (n × n) · (n × 1) 2n2 − n

Total BCTI = 2nm + (62n3 + 15n2 − 11n)/6

sensor network or reclaiming a given (not surely optimal) sensornetwork depends on the corresponding costs. The resulting opti-mal Kalman/Lainiotis filters require uniform distribution or near touniform distribution of measurements into parallel processors. Theoptimal uniform distribution has the advantages of elimination ofidle time for the local processors and of low hardware cost, butit is not always applicable. The optimal filters present high paral-lelism speedup; this is verified through simulation results and isvery important due to the fact that, in most real-time applications,it is essential to obtain the estimate in the shortest possible time.

Acknowledgments

The authors wish to thank the anonymous reviewers for theirhelpful feedback which improved exposition of this paper.

Appendix A. Centralized time varying Kalman filter/Lainiotisfilter

In (13) substituting the matrices P (k + 1/k), K (k + 1) by (10),(11), respectively, and using the matrix inversion lemma1 (24) isderived:

1 (A + BC D)−1 = A−1 − A−1 B(C−1 + D A−1 B)−1 D A−1.

Table 11Centralized steady state Kalman filter/Lainiotis filter.

Matrix operation Matrix dimensions Calculation burden

Assx(k/k) (n × n) · (n × 1) 2n2 − nBss z(k + 1) (n × m) · (m × 1) 2nm − nx(k + 1/k + 1) (n × 1) + (n × 1) n

= Assx(k/k) + Bss z(k + 1)

Total BCSS = 2n2 + 2nm − n

P (k + 1/k + 1) = {[F (k + 1,k)P (k/k)F T (k + 1,k) + Q (k)

]−1

+ H T (k + 1)R−1(k + 1)H(k + 1)}−1

which can be formulated as

P (k + 1/k + 1)

= [P−1(k + 1/k) + H T (k + 1)R−1(k + 1)H(k + 1)

]−1(A.1)

due to (10).The vector x(k + 1/k + 1) in (12) can be written as

x(k + 1/k + 1) = x(k + 1/k) − K (k + 1)H(k + 1)x(k + 1/k)

+ K (k + 1)z(k + 1)

and substituting in the last equation the quantities x(k + 1/k),K (k + 1) by (9) and (11) we derive:

450 N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452

Table 12Decentralized time varying Kalman filter/Lainiotis filter.

Matrix operation Matrix dimensions Calculation burden

Local levelR−1

i (k + 1) (M × M) (16M3 − 3M2 − M)/6

H Ti (k + 1)R−1

i (k + 1) (n × M) · (M × M) 2nM2 − nMBi(k + 1) = H T

i (k + 1)R−1i (k + 1)Hi(k + 1) (n × M) · (M × n) n2 M + nM − 0.5n2 − 0.5n

symmetricbi(k + 1) = H T

i (k + 1)R−1i (k + 1)zi(k + 1) (n × M) · (M × 1) 2nM − n

Central levelF (k + 1,k)P (k/k) (n × n) · (n × n) 2n3 − n2

F (k + 1,k)P (k/k)F T (k + 1,k) (n × n) · (n × n) n3 + 0.5n2 − 0.5nsymmetric

W (k) ≡ F (k + 1,k)P (k/k)F T (k + 1,k) + Q (k) (n × n) + (n × n) 0.5n2 + 0.5nsymmetric

W −1(k) (n × n) (16n3 − 3n2 − n)/6∑ρi=1 Bi(k + 1) (n × n) + · · · + (n × n) (0.5n2 + 0.5n)(ρ − 1)

symmetricW −1(k) + ∑ρ

i=1 Bi(k + 1) (n × n) + (n × n) 0.5n2 + 0.5nsymmetric

P (k + 1/k + 1) = [W −1(k) + ∑ρi=1 Bi(k + 1)]−1 (n × n) (16n3 − 3n2 − n)/6∑ρ

i=1 bi(k + 1) (n × 1) + · · · + (n × 1) n(ρ − 1)

W −1(k)F (k + 1,k) (n × n) · (n × n) 2n3 − n2

W −1(k)F (k + 1,k)x(k/k) (n × n) · (n × 1) 2n2 − n∑ρi=1 bi(k + 1) + W −1(k)F (k + 1,k)x(k/k) (n × 1) + (n × 1) n

x(k + 1/k + 1)

= P (k + 1/k + 1){∑ρi=1 bi(k + 1) + W −1(k)F (k + 1,k)x(k/k)} (n × n) · (n × 1) 2n2 − n

Total B DTV = (62n3 + 9n2 − 23n)/6

+ (16M3 − 3M2 − M)/6 + n2 M+ 2nM + 2nM2 + (n2 + 3n)ρ/2

Table 13Decentralized time invariant Kalman filter/Lainiotis filter.

Matrix operation Matrix dimensions Calculation burden

Local levelbi(k + 1) = H T

i R−1i zi(k + 1) (n × M) · (M × 1) 2nM − n

Central levelF P (k/k) (n × n) · (n × n) 2n3 − n2

F P (k/k)F T (n × n) · (n × n) n3 + 0.5n2 − 0.5nsymmetric

W (k) ≡ F P (k/k)F T + Q (n × n) + (n × n) 0.5n2 + 0.5nsymmetric

W −1(k) (n × n) (16n3 − 3n2 − n)/6W −1(k) + ∑ρ

i=1 Bi (n × n) + (n × n) 0.5n2 + 0.5nsymmetric

P (k + 1/k + 1) = [W −1(k) + ∑ρi=1 Bi ]−1 (n × n) (16n3 − 3n2 − n)/6∑ρ

i=1 bi(k + 1) (n × 1) + · · · + (n × 1) n(ρ − 1)

W −1(k)F (n × n) · (n × n) 2n3 − n2

W −1(k)F x(k/k) (n × n) · (n × 1) 2n2 − n∑ρi=1 bi(k + 1) + W −1(k)F x(k/k) (n × 1) + (n × 1) n

x(k + 1/k + 1) = P (k + 1/k + 1){∑ρi=1 bi(k + 1) + W −1(k)F x(k/k)} (n × n) · (n × 1) 2n2 − n

Total B DTI = 2nM + nρ + (62n3 + 15n2 − 17n)/6

Table 14Decentralized steady state Kalman filter/Lainiotis filter.

Matrix operation Matrix dimensions Calculation burden

Local leveldi(k + 1) = P e H T

i R−1i zi(k + 1) (n × M) · (M × 1) 2nM − n

Central level∑ρi=1 di(k + 1) (n × 1) + · · · + (n × 1) n(ρ − 1)

Assx(k/k) (n × n) · (n × 1) 2n2 − nx(k + 1/k + 1) = Assx(k/k) + ∑ρ

i=1 di(k + 1) (n × 1) + (n × 1) n

Total B DSS = 2n2 − 2n + 2nM + nρ

N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452 451

x(k + 1/k + 1)

= F (k + 1,k)x(k/k) − P (k + 1/k)H T (k + 1)

× [H(k + 1)P (k + 1/k)H T (k + 1) + R(k + 1)

]−1

× H(k + 1)F (k + 1,k)x(k/k) + P (k + 1/k)H T (k + 1)

× [H(k + 1)P (k + 1/k)H T (k + 1) + R(k + 1)

]−1z(k + 1)

= P (k + 1/k)P−1(k + 1/k)F (k + 1,k)x(k/k)

− P (k + 1/k)H T (k + 1)[

H(k + 1)P (k + 1/k)H T (k + 1)

+ R(k + 1)]−1

H(k + 1)P (k + 1/k)P−1(k + 1/k)

× F (k + 1,k)x(k/k) + P (k + 1/k)H T (k + 1)

× [H(k + 1)P (k + 1/k)H T (k + 1) + R(k + 1)

]−1z(k + 1)

= {P (k + 1/k) − P (k + 1/k)H T (k + 1)

[H(k + 1)P (k + 1/k)

× H T (k + 1) + R(k + 1)]−1

H(k + 1)P (k + 1/k)}

× P−1(k + 1/k)F (k + 1,k)x(k/k) + P (k + 1/k)H T (k + 1)

× [H(k + 1)P (k + 1/k)H T (k + 1) + R(k + 1)

]−1z(k + 1)

(A.2)

Using the matrix inversion lemma and (A.1) the last equationgives:

x(k + 1/k + 1)

= [P−1(k + 1/k) + H T (k + 1)R−1(k + 1)H(k + 1)

]−1

× P−1(k + 1/k)F (k + 1,k)x(k/k) + P (k + 1/k)H T (k + 1)

× [H(k + 1)P (k + 1/k)H T (k + 1) + R(k + 1)

]−1z(k + 1)

= P (k + 1/k + 1)P−1(k + 1/k)F (k + 1,k)x(k/k)

+ P (k + 1/k)H T (k + 1)[

H(k + 1)P (k + 1/k)H T (k + 1)

+ R(k + 1)]−1

z(k + 1) (A.3)

Moreover, the non-singularity of the matrices R(k + 1), P (k + 1/k)

and (A.1) allow us to write:

P (k + 1/k)H T (k + 1)[

H(k + 1)P (k + 1/k)H T (k + 1)

+ R(k + 1)]−1

= [H T (k + 1)R−1(k + 1)H(k + 1) + P−1(k + 1/k)

]−1

× H T (k + 1)R−1(k + 1)

= P (k + 1/k + 1)H T (k + 1)R−1(k + 1) (A.4)

By (A.4) Eq. (A.3) is written

x(k + 1/k + 1) = P (k + 1/k + 1)P−1(k + 1/k)F (k + 1,k)x(k/k)

+ P (k + 1/k + 1)H T (k + 1)R−1(k + 1)z(k + 1)

= P (k + 1/k + 1){

P−1(k + 1/k)F (k + 1,k)x(k/k)

+ H T (k + 1)R−1(k + 1)z(k + 1)}

and by (10) the proof of (25) is complete.

Appendix B. Per recursion calculation burdens ofKalman/Lainiotis filters

The calculation burden BCTV of centralized time varying Kalman

filter/Lainiotis filter is computed by (24)–(25) and shown in Ta-ble 9.

The calculation burden BCTI of centralized time invariant Kalman

filter/Lainiotis filter is computed by (26)–(27) and shown in Ta-ble 10.

The calculation burden BCSS of centralized steady state Kalman

filter/Lainiotis filter is computed by (31) and shown in Table 11.The calculation burden B D

TV of decentralized time varyingKalman filter/Lainiotis filter includes the burden of local levelcomputed by (36)–(37) and the burden of central level computedby (38)–(39) and is shown in Table 12.

The calculation burden B DTI of decentralized time invariant

Kalman filter/Lainiotis filter includes the burden of local levelcomputed by (40) and the burden of central level computedby (41)–(42) and is shown in Table 13.

The calculation burden B DSS of decentralized steady state Kalman

filter/Lainiotis filter includes the burden of local level computedby (44) and the burden of central level computed by (45) and isshown in Table 14.

References

[1] R.E. Kalman, A new approach to linear filtering and prediction problems, Trans.ASME: J. Basic Eng. 82 (1960) 34–45.

[2] D.G. Lainiotis, Partitioned linear estimation algorithms: Discrete case, IEEETrans. Automat. Control AC-20 (1975) 255–257.

[3] R. Olfati-Saber, Distributed Kalman filters with embedded consensus filters, in:44th IEEE Conference on Decision and Control, Seville, Spain, December 2005,pp. 8179–8184.

[4] H. Medeiros, J. Park, A.C. Kak, Distributed object tracking using a cluster-basedKalman filter in wireless camera networks, IEEE Trans. Spec. Topics Signal Pro-cess. 2 (4) (August 2008) 448–463.

[5] R. Olfati-Saber, R.M. Murray, Consensus problems in networks of agents withswitching topology and time-delays, IEEE Trans. Automat. Control 49 (9)(September 2004) 1520–1533.

[6] Ruggero Carli, Alessandro Chiuso, Luca Schenato, Sandro Zampieri, DistributedKalman filtering based on consensus strategies, IEEE J. Sel. Areas Com-mun. 26 (4) (May 2008) 622–632.

[7] A.T. Kamal, C. Ding, B. Song, J.A. Farrell, A.K. Roy-Chowdhury, A generalizedKalman consensus filter for wide-area video networks, in: 50th IEEE Confer-ence on Decision and Control and European Control Conference (CDC–ECC),Orlando, FL, USA, December 2011, pp. 7863–7869.

[8] J.L. Speyer, Computation and transmission requirements for a decentralizedlinear-quadratic-Gaussian control problem, IEEE Trans. Automat. Control 24 (2)(February 1979) 266–269.

[9] B.S.Y. Rao, H.F. Durrant-Whyte, J.A. Sheen, A fully decentralized multi-sensorsystem for tracking and surveillance, Int. J. Robot. Res. 12 (1) (February 1993)20–44.

[10] V. Delouille, R. Neelamani, R. Baraniuk, Robust distributed estimation in sensornetworks using the embedded polygons algorithm, in: Proceedings of 3rd Int.Symp. Info. Processing Sensor Networks, Berkeley, CA, April 2004, pp. 405–413.

[11] S. Kirti, A. Scaglione, Scalable distributed Kalman filtering through consensus,in: IEEE International Conference on Acoustics, Speech and Signal Processing,April 2008, pp. 2725–2728.

[12] I.D. Schizas, A. Ribeiro, G.B. Giannakis, Consensus in ad hoc WSNs with noisylinks—Part I: Distributed estimation of deterministic signals, IEEE Trans. SignalProcess. 56 (1) (January 2008) 350–364.

[13] I.D. Schizas, G.B. Giannakis, S.I. Roumeliotis, A. Ribeiro, Consensus in ad hocWSNs with noisy links—Part II: Distributed estimation and smoothing of ran-dom signals, IEEE Trans. Signal Process. 56 (4) (April 2008) 1650–1666.

[14] I.D. Schizas, G. Mateos, G.B. Giannakis, Distributed LMS for consensus-basedin-network adaptive processing, IEEE Trans. Signal Process. 57 (6) (June 2009)2365–2382.

[15] J.-J. Xiao, A. Ribeiro, Z.-Q. Luo, G.B. Giannakis, Distributed compression-estimation using wireless sensor networks, IEEE Signal Process. Mag. 23 (4)(July 2006) 27–41.

[16] G. Mateos, I.D. Schizas, G.B. Giannakis, Distributed recursive least-squaresfor consensus-based in-network adaptive estimation, IEEE Trans. Signal Pro-cess. 57 (11) (November 2009) 4583–4588.

[17] Y.M. Zhu, Z.S. You, J. Zhou, K.-S. Zhang, X.R. Li, The optimality for the dis-tributed Kalman filtering fusion with feedback, Automatica 37 (2001) 1489–1493.

[18] Y. Sheng, X. Hu, P. Ramanathan, Distributed particle filter with GMM approx-imation for multiple targets localization and tracking in wireless sensor net-works, in: 4th International Symposium on Information Processing in SensorNetworks, April 2005.

[19] H. Durrant-Whyte, Data fusion in sensor networks, in: 4th International Sym-posium on Information Processing in Sensor Networks, April 2005.

452 N. Assimakis et al. / Digital Signal Processing 23 (2013) 442–452

[20] D.G. Lainiotis, K.N. Plataniotis, C.J. Charalampous, Distributed computing filters:Multisensor marine applications, in: Proceedings of IEEE OCEANS 92, vol. I,1992, pp. 265–270.

[21] D.G. Lainiotis, K.N. Plataniotis, M. Papanikolaou, P. Papaparaskeva, Discrete Ric-cati equation solutions: Distributed algorithms, Math. Probl. Eng. 2 (1996) 319–332.

[22] D.G. Lainiotis, P. Papaparaskeva, Efficient algorithms of clustering adaptive non-linear filters, IEEE Trans. Automat. Control 44 (7) (July 1999) 1454–1459.

[23] K.N. Plataniotis, S.K. Katsikas, D.G. Lainiotis, A.N. Venetsanopoulos, Optimalseismic deconvolution: Distributed algorithms, IEEE Trans. Geosci. RemoteSens. 36 (3) (May 1998) 779–792.

[24] K.N. Plataniotis, D.G. Lainiotis, Multi-sensor estimation: New distributed algo-rithms, Math. Probl. Eng.: Theory Methods Appl. 3 (1996) 27–52.

[25] D.G. Lainiotis, Optimal adaptive estimation: Structure and parameter adapta-tion, IEEE Trans. Automat. Control 16 (1971) 160–170.

[26] D.G. Lainiotis, Partitioning: A unifying framework for adaptive systems I: Esti-mation, IEEE Proc. 64 (1976) 1126–1143.

[27] D.G. Lainiotis, S.K. Katsikas, Linear and nonlinear Lainiotis filters: A survey andcomparative evaluation, in: IFAC Workshop on Expert Systems and Signal Pro-cessing in Marine Automation, Denmark, 1989.

[28] H.R. Hashemipour, S. Roy, A.J. Laub, Decentralized structures for parallelKalman filtering, IEEE Trans. Automat. Control 33 (1988) 88–94.

[29] N.A. Carlson, Federated square root filter for decentralized parallel processes,IEEE Trans. Aerosp. Electron. Syst. 26 (3) (1990) 517–525.

[30] S. Roy, R.A. Iltis, Decentralized linear estimation in correlated measurementnoise, IEEE Trans. Aerosp. Electron. Syst. 27 (6) (1991) 939–941.

[31] U.A. Khan, J.M.F. Moura, Distributing the Kalman filter for large-scale systems,IEEE Trans. Signal Process. 56 (10) (October 2008) 4919–4935.

[32] N. Assimakis, M. Adam, M. Koziri, S. Voliotis, Optimal distributed Kalman andLainiotis filters: Optimal uniform distribution of measurements into local pro-cessors, in: Proceedings of 16th International Workshop on Systems, Signalsand Image Processing (IWSSIP), 2009, pp. 19–24.

[33] N. Assimakis, M. Adam, Discrete time Kalman and Lainiotis filters comparison,Int. J. Math. Anal. 1 (2007) 635–659.

[34] N. Assimakis, D. Lainiotis, S. Katsikas, F. Sanida, A survey of recursive algo-rithms for the solution of the discrete time Riccati equation, Nonlinear Anal. 30(1997) 2409–2420.

[35] B.D.O. Anderson, J.B. Moore, Optimal Filtering, Dover Publications, New York,2005.

[36] D.G. Lainiotis, S.K. Katsikas, S.D. Likothanassis, Optimal seismic deconvolution,Signal Process. 15 (1988) 375–404.

Nicholas Assimakis was born in 1962. He receivedhis Ph.D. degree in Signal Processing from the Depart-ment of Computer Engineering and Informatics of thePolytechnic School of the University of Patras, Greecein 1993. He is currently Associate Professor at theDepartment of Electronics of the Technological Edu-cational Institute of Lamia. His research interests arein digital signal processing, estimation theory, filter-ing, algorithm design and development.

M. Adam received her Ph.D. degree in Mathemat-ics from National Technical University of Athens in2001. Her current position is Assistant Professor at theDepartment of Computer Science and Biomedical In-formatics of the University of Central Greece, whereshe teaches linear algebra, advanced calculus and ap-plied mathematics. Her research interests include lin-ear algebra, numerical linear algebra, spectral analysis,matrix theory and applications in dynamical systems,

control theory, algorithms and statistics.

Maria Koziri received the Dip.Eng. degree in com-puter engineering from the Technical University ofCrete, Greece, in 2003 and the Ph.D. degree from theUniversity of Thessaly, Greece, in 2007. Since 2007she has been in the Department of Computer andCommunication Engineering at University of Thessaly,Greece. Her research interests include video com-pression, scalable video coding, rate-distortion opti-mization, as well as computer architecture. Results

of her research work are published in some of the most well knowninternational conferences in multimedia and signal processing areas, suchas IEEE’s ICME and ICIP.

Stamatis Voliotis was born in Chalkida, Greece, in1963. He honored the degree of Computer Engineer-ing and Informatics from University of Patras, Greecein 1985, the M.Sc. in Electrical Computer Engineer-ing from Syracuse University, USA in 1989, and thePh.D. from University of Patras, Greece in 1990. Cur-rently he is a Professor at Technological EducationalInstitute of Chalkida. His research interests are in thearea of computer automation architecture and net-

work processing, mobile/wireless communications and robotics navigationand control.

Konstantinos Asimakis, born in 1988, is an un-dergraduate student at Computer Engineering andInformatics Department of University of Patras. He iscurrently a researcher at RACTI “Diophantus”. His re-search interests include LTE mobile networks, geneticalgorithms, neural networks, regression algorithmsand natural language processing.