Skip to main content

Localization of acoustic sources using a decentralized particle filter

Abstract

This paper addresses the decentralized localization of an acoustic source in a (wireless) sensor network based on the underlying partial differential equation (PDE). The PDE is transformed into a distributed state-space model and augmented by a source model. Inferring the source state amounts to a non-linear non-Gaussian Bayesian estimation problem for whose solution we implement a decentralized particle filter (PF) operating within and across clusters of sensor nodes. The aggregation of the local posterior distributions from all clusters is achieved via an enhanced version of the maximum consensus algorithm. Numerical simulations illustrate the performance of our scheme.

I Introduction

Background and state of the art

In this paper, we use a physics-based model and a Bayesian approach to develop a decentralized particle filter (PF) for acoustic source localization in a sensor network (SN). In a decentralized PF, the processing is done locally at the sensors without using a fusion center. Thereby, the estimated position is known at every sensor in consequence of this decentralized process.

The problem formulation in this paper is motivated by indoor localization of an acoustic source. A hallway is modeled including basic boundary conditions for windows (membranes) and walls.

The source localization problem has been studied, e.g., in [13], [[4], p. 4089 ff], [[5], p. 746 ff] and [6], all of which use a sequential Bayesian estimator [7] to infer the source position states from observations using multiple sensors. These papers build on a state-space transition equation describing the global source state trajectory over time and the measurement equation between these states and the measurements. The underlying model of the physical process is modeled in the measurement equation. A decentralized approach aims at identifying global source states that are common to all decentralized units. Each decentralized unit typically consists of a sensor and a Bayesian estimator associated with the sensor's neighborhood.

A different approach consists of incorporating the partial differential equation (PDE) describing the dynamics of the physical process. In source tracking applications, this implies that the field itself becomes part of the state, which thus is distributed over all space. For instance, the acoustic wave field is described by a hyperbolic PDE for pressure and hence the state vector comprises the spatio-temporal pressure field. This approach is used in (ocean) acoustic models [8, 9] and geophysical models [[4], p. 4089 ff], [1013]. For localization, the model is augmented with a source model providing a relation between global source states, e.g., position, and distributed field states, i.e., pressure.

Our approach belongs to the realm of the second approach. The novel aspects include the formulation of a source model suitable for distributed processing, the design of a distributed particle for the estimation of the posterior distribution of field and source states, and the development of a modified version of the maximum consensus (MC) algorithm [14] for the maximum a-posteriori (MAP) estimation of the source location. For several loosely connected agents, a consensus algorithm makes the agents to converge to a group decision based on local information.

Contributions and outline

We consider inference problems in space r and time t which are modeled via partial differential equations (PDE) of the form [15, 16]

L { p ( r , t ) } = s ( r , t ) ,
(1a)
B { p ( r , t ) } = 0 ,
(1b)

where L denotes the PDE operator; B the boundary/initial conditions; p(r, t) the quantity of interest, and s(r, t) the source term. If the PDE parameters, the source term, and the boundary/initial conditions are known, determining p(r, t) is the forward problem. In contrast, inverse problems amount to estimating PDE parameters or states like source locations from measurements of p(r, t).

Discretization of (1) and extending to a stochastic process leads to the state transition equation

x k + 1 = g k ( x k , u k , w k ) , k ,
(2)

where k denotes discrete time, x k is the state vector (incorporating samples of p(r, t)), u k is the input vector (here corresponding to the sources), w k is a random noise vector (process noise), and g k is the state transition mapping. The state transition equation is complemented by the measurement equation

y k = h k ( x k , u k , v k ) .
(3)

Here, y k is the observation, v k denotes the measurement noise, and the mapping h k characterizes the measurement. Taken together, (2) and (3) constitute the state-space model, see Section II and [17].

In the Gaussian case, Bayesian estimation based on the state-space model (2), (3) leads to various kinds of Kalman filters [1, 7, 18]. Here, the Bayesian estimator builds on the particle filter (PF) framework due to (i) various possible geometries and (ii) the non-linearity of the state-space model. After discussing a centralized PF for source localization and tracking in Section III, we develop a decentralized implementation of the PF by splitting the nodes of the sensor networks (SN) into clusters. The clustered SN architecture entails a corresponding decomposition of the state-space model, and the decentralized PF performs intra-cluster computation and inter-cluster communication on the decomposed state-space model (see Section IV).

The decentralized PF yields local posterior distributions within each cluster. Localization of the acoustic sources amounts to finding the maxima of the global posterior distribution. To this end, we propose a modified maximum consensus algorithm in Section V. After a summary in Section VI, in Section VII, we describe extensive numerical simulations that illustrate the properties and performance of our source localization method.

II System model

In this section, we develop a state-space model from the PDE of the spatio-temporal acoustic field using the finite difference method (FDM) [15, 19] to obtain a discretization in space and time.

A Forward model--spatio-temporal field

In the following, we consider an acoustic problem characterized by the hyperbolic PDE (scalar wave equation) [16, 19, 20]:

1 c 2 t 2 p ( r , t ) - 2 p ( r , t ) = s ( r , t ) , r Ω ,
(4a)

Here, p(r, t) denotes pressure, ∂ t is the partial derivative with respect to time, 2 the Laplace operator, c the sound speed, s(r, t) is the source, and Ω 2 is the 2-D region of interest. Hereafter, let the initial conditions be

p ( r , t ) = 0 , r Ω , t = 0 ,
(4b)
t p ( r , t ) = 0 , r Ω , t = 0 .
(4c)

From three basic boundary conditions

1 c t p ( r , t ) - p ( r , t ) n = 0 , r Ω 1 ,
(4d)
p ( r , t ) = 0 , r Ω 2 ,
(4e)
t p ( r , t ) = 0 , r Ω 3 ,
(4f)

we use (4d) and (4f) for modeling a hallway. ∂Ω1 is the transparent part of the boundary of Ω (with normal vector n) modeling an infinite domain for the behind uncovered area. The boundary ∂Ω2 (disjoint from ∂Ω1 models windows, whereas ∂Ω3 (disjoint from ∂Ω1 and ∂Ω2) models walls. The choice of these boundary conditions indeed affects the resulting state-space model but does not change the general formulation of the decentralized approach.

B Finite difference method

To obtain a space-time-discrete model, the differential operators are approximated by finite differences, see Figure 1. We assume a rectangular region in two dimensions (i.e., r= (x, y)) and use a spatial sampling set given by the finite square lattice L= { ( i Δ r , j Δ r ) : i = 1 , , I , j = 1 , , J } , where Δ r is the spatial sampling interval. For simplicity, we assume identical sampling intervals in both coordinates, but using different sampling intervals for each coordinate is straightforward (Different sampling intervals influence the accuracy of the field approximation only but not the principal features of the decentralized estimator). For simplicity, we assume that there are R sensors whose locations form a subset R of the lattice L.

Figure 1
figure 1

The FDM model showing the discretization lattice, boundaries, sources, and sensors. L is the discretization lattice, while Ω denotes the area.

For the Laplace operator, we then obtain the discrete approximation

2 p ( i Δ r , j Δ r , t ) 1 Δ r 2 [ p ( ( i 1 ) Δ r , j Δ r , t ) + p ( ( i + 1 ) Δ r , j Δ r , t ) + p ( i Δ r , ( j 1 ) Δ r , t ) + p ( i Δ r , ( j + 1 ) Δ r , t ) 4 p ( i Δ r , j Δ r , t ) ] .

Similarly, for the second-order temporal derivative, we have

t 2 p ( i Δ r , j Δ r , k Δ t ) 1 Δ r 2 [ p ( ( i Δ r , j Δ r , ( k 1 ) Δ t ) 2 p ( i Δ r , j Δ r , k Δ t ) + p ( i Δ r , j Δ r , ( k + 1 ) Δ t ) ] .

Here, k is the discrete time index, and Δ t is the temporal sampling period. It is upper bounded by Δ r /c to ensure numerical stability. The right choice of Δ t is beyond the scope of our paper, so that we refer our reader to [16].

C Forward model

We introduce the auxiliary function q(x, y, t) = ∂ t p(x, y, t) and define the pressure vector p k = vec{P k } with [P k ] ij = p(i Δ r , j Δ r , k Δ t ). The source vector s k and the pressure derivative vector q k are defined similarly. Applying the FDM to (4) then leads to the following linear system of equations:

q k + 1 p k + 1 = Φ 1 1 Φ 1 2 Φ 2 1 I Φ FDM q k p k + Δ t c 2 s k 0 .
(5)

The diagonal matrix Φ11 results from the boundary condition (4d). Its diagonal elements are

[ Φ 1 1 ] i i = 1 - 2 κ for nodes on the boundary  Ω 1 , 1 , else

where κ = c/ Δ r . Also the diagonal matrix

[ Φ 2 1 ] i i = 1 for inner nodes and nodes on the boundary  Ω 1 , 0 nodes on the boundary  Ω 3

depends on the boundary condition (4f). Similarly, the sparse matrix Φ12 stems from (4a) and is given by

[ Φ 1 2 ] i j = - 4 κ 2 , i = j , 2 κ 2 , | i - j | = 1  for nodes on  Ω 1 , κ 2 , | i - j | = 1 | i - j | = I  for inner nodes , 0 else .

D Source model

We assume that there are S sources whose positions form a subset S of the discretization lattice L, i.e., s [ i , j , k ] = l = 1 s s 0 [ k - k l ] δ ( i - i l , j - j l ) , where s0[k] is a known waveform, but the positions (i l , j l ) and activation times k l are unknown. These unknowns are captured via the integer variables n[i, j, k] that describe, for a lattice point (i, j), the time between the source occurrence and the current time instant k, i.e., for the l th source there is n[i l , j l , k] = max{k - k l , 0}. If there is no source at position (i, j), then n[i, j, k] = 0.

Clearly, the source life span satisfies the state transition equation

n [ i , j , k + 1 ] = n [ i , j , k ] + 1 , ( i , j ) S k 0 , else,

where S k = { ( i l , j l ) | k k l } is the set of sources active at time k. Arranging the variables n[i, j, k] into a vector n k similarly to p k , q k , and s k , we obtain

n k + 1 = n k + δ S k ,
(6)

where the elements of δ S k are zero or one depending on whether a source is active at the corresponding position and at time instant k, i.e.,

[ δ S k ] i + ( j - 1 ) I = 1 , ( i , j ) S k , 0 , else .
(7)

Note that the state vector n k has at most S non-zero elements. Using the convention s0[0] = 0, the source vector s k in (5) is rewritten as

s k = s 0 n k ,
(8)

thereby linking the state Equation 6 and the forward model (5).

E Noise model

So far, no process noise has been considered and specified. Since the source function depends on time and space, these are the only quantities that suffer from noise and are modeled in the following: The temporal noise models the perturbation of a source's life span by an additional term in (6), while this is not possible for the spatial perturbation. This is due to the fact that the position of sources is coded into the sub-vector n k by placing its elements. From a practical perspective, this is done by a time-dependent matrix D k which displaces the elements of a vector to other positions (jitter) according to the mapping between grid and sub-vector n k .

Equation 6 becomes

n k + 1 = D k ( n k + δ S k + δ S k n ) .
(9)

Here, n' is a random integer perturbation, is the Hadamard (element-wise) product, and the l th column of the displacement matrix D k is given by el+d(l), with the canonical column unit vector

[ e l ] n = 1 , l = n , 0 , else ,

and a random integer jitter d(l) whose probability mass is concentrated about zero.

Because of linearity, (9) is rewritten as

n k + 1 = D k n k + D k δ S k + D k diag { δ S k } n .
(10)

F Augmented state-space model

We next combine the state-space model (5) with (8) and (10) to obtain an augmented state-space model for the extended state vector

x k = q k p k n k .

This gives the state transition equation

x k + 1 = Φ k x k + Γ k u k + G k n k
(11)

with

Φ k = Φ 1 1 Φ 1 2 0 Δ t I I 0 0 0 D k , Γ k = Δ t c 2 I 0 0 0 0 0 0 0 D k ,
(12)

and

G k = 0 0 D k diag { δ S k } , u k = s 0 [ n k ] 0 δ S k .
(13)

Note that non-linearity is inherent in (11).

To complete the state-space model, the measurement equation is introduced. Since the actual observations are given by noisy samples of the pressure field at the sensor positions ( i l , j l ) R, the measurement equation is

y k = C ̃ x k + v k = C p k + v k ,
(14)

where v k denotes measurement noise and

C ̃ = [ 0 C 0 ] , C = e i 1 + ( j 1 - 1 ) I T e i R + ( j R - 1 ) I T ,

with e l denoting the l th unit vector.

III Bayesian estimation

Our aim is to perform sequential Bayesian estimation of the state vector n k that characterizes the source positions and activation times. n k is one of the state vectors x k in (11). The data y k is specified in (14). A PF approach [7], i.e., a Monte Carlo approach based on importance sampling, is pursued. This approach exploits that our state-space model (11)-(14) is a hidden Markov model (cf. Figure 2), where (11) implies a state transition distribution f(x k |xk-1) and (14) leads to a measurement distribution (likelihood function) f(y k |x k ), which both are assumed known in the following.

Figure 2
figure 2

Hidden Markov model representation of the state-space model.

A Particle filter

To perform Bayesian estimation (e.g., MAP or MMSE) of (part of) the state vector x k given the past observations y 1 : k = [ y 1 T . . . y k T ] T , the posterior distribution f(x k | y1.k) is compute sequentially.

Using the Bayesian theorem and the fact that yk+1and y1:kare statistically independent (due to the Markov chain assumption) given xk+1, we have

f ( x k + 1 | y 1 : k + 1 ) = f ( x k + 1 | y k + 1 , y 1 : k ) (1) = f ( y k + 1 | x k + 1 , y 1 : k ) f ( x k + 1 | y 1 : k ) f ( y k + 1 | y 1 : k ) (2) = f ( y k + 1 | x k + 1 ) f ( x k + 1 | y 1 : k ) f ( y k + 1 | x k + 1 ) f ( x k + 1 | y 1 : k ) d x k + 1 , (3) (4)
(15)

which is known as the update step. While the measurement PDF f(yk+1|xk+1) in (15) is known, f (xk+1|y1:k) needs to be computed via the so-called prediction step,

f ( x k + 1 | y 1 : k ) = f ( x k + 1 | x k ) f ( x k | y 1 : k ) d x k .
(16)

Here, the transition PDF f (xk+1|x k ) is known and f (x k | y1:k) has been computed in the previous time step.

Since the integral in (16) typically is infeasible, it is usually approximated using a Monte Carlo technique known as importance sampling. The approximate sequential computation of the posterior distribution f (x k | y1:k) based on importance sampling using the transition PDF f (x k | xk-1) as importance (or, proposal) distribution q(x k ) leads to the particle filter. Here, the desired PDFs are approximated in terms of particles, i.e., samples x k l and associated weights ω k l , hence

f ( x k | y 1 : k ) l = 1 L ω k [ l ] δ x k - x k [ l ] ,
(17)

where L is the number of particles. The new samples for the subsequent time instant are generated using the proposal distribution

q ( x k + 1 ) = f ( x k + 1 | x k = x k [ l ] ) ,

where for the generation of each new particle x k + 1 [ l ] , the previous particle x k l is chosen randomly with probability ω k l . Sampling from q(xk+1) can be achieved by generating a noise realization w k [ l ] and invoking the state transition Equation 11, i.e.,

x k + 1 [ l ] = Φ k [ l ] x k [ l ] + Γ k [ l ] u k [ l ] + G k [ l ] n k [ l ] .
(18)

u k [ l ] can be computed from the particle x k l according to (13). The dependency of the matrices on k issues from spatial noise.

The unnormalized weight for each new particle is

ω ̃ k + 1 [ l ] = ω k [ l ] f ( y k + 1 | x k + 1 [ l ] ) = ω k [ l ] f v ( y k + 1 - C ̃ x k + 1 [ l ] ) ,
(19)

where f v (v k ) is the distribution of the measurement noise and we used the measurement Equation 14. For i.i.d. Gaussian measurement noise with variance σ v 2

ω ̃ k + 1 [ l ] = ω k [ l ] exp - 1 2 σ v 2 y k + 1 - C ̃ x k + 1 [ l ] 2 .

Once all unnormalized weights have been obtained, the actual weights are computed via the normalization ω k + 1 [ l ] = ω ̃ k + 1 [ l ] l = 1 M ω ̃ k + 1 [ l ] . Particle filters suffer from a general problem termed sample degeneracy, i.e., after sometime only few particles have non-negligible weights. This problem is circumvented using resampling [21]. With sampling importance resampling (SIR), new samples are drawn from the distribution l = 1 L ω k [ l ] δ x k - x k [ l ] and all weights are identical, i.e., ω k [ l ] =1L.

To obtain initial particles x 0 l , samples of the state vector are needed. S random realizations of source positions and activation times are generated according to the prior distributions. Then, we apply the noise-free version of the state-space model (11) kstart times, i.e.,

x 0 [ l ] = Φ k start 0 0 n 0 [ l ] + = 0 k start - 1 Φ k start - 1 - Γ u [ l ] ,
(20)

where n 0 [ l ] and u [ l ] are determined by the realizations of the source parameters (cf. (13) and Section II-D). The random variable kstart denotes the time duration between source occurrence and activation of the estimator.

B Source localization

Using (17), the posterior PDF of n k (i.e., the last IJ elements of x k ) is approximated as

f ( n k | y 1 : k ) l = 1 L ω k [ l ] δ n k - n k [ l ] .
(21)

(Note that n k contains all information about position and activation time of the sources.)

The probability P { S k | y 1 : k } for sources to be active at the coordinate set S k at time k is obtained via marginalization:

P { S k | y 1 : k } = l Λ k ω k [ l ] , Λ k = l : Q ( n k [ l ] ) = δ S k .
(22)

Here, the function Q : IJ {0, 1} sets all entries of n k [ l ] to 1 which are unequal to 0. In the case of one source and a SIR PF with w k [ l ] =1L, the probability for a source at position (i, j) at time k is approximately obtained as

P s ( i , j , k ) = P { source at  ( i , j , k ) | y 1 : k } = L i , j , k L ,
(23)

where Li,j,kis the number of particles for which [ n k [ l ] ] i + ( j - 1 ) I >0.

IV Decentralized scheme

The particle filter developed in the previous section is centralized in nature since it requires all pressure measurements and the observation modalities described by the globally assembled likelihood function and operates on the full state vector x k in a fusion center. Additionally, the computed estimates are inherently unknown on the individual sensor nodes. In a SN context, such constraints are undesirable since they imply a large communication overhead to collect the measured data, a high computational effort due to the high-dimensional state vector, a feedback to the sensor nodes to spread the estimates, and a central knowledge of measurement noise. Therefore, a decentralized scheme that distributes the data collection and computational costs among several clusters of sensor nodes is developed. This is achieved by splitting the state-space model (11), (14) into lower-dimensional sub-models (each corresponding to a cluster), cf. with [22, 23]. Due to the sparsity of the state-space matrices Φ and Γ, these sub-models are only loosely coupled, thus a decentralized PF that requires little communication between the clusters can be developed.

A SN clusters and partitioned state-space model

We start with partitioning the region of interest Ω into M disjoint subregions Ω(m). The sampling lattice corresponding to each subregion is given by L ( m ) =L Ω ( m ) with its boundary nodes L ( m ) , see Figure 3. The sensors within each subregion form clusters, denoted by R ( m ) =R Ω ( m ) L ( m ) . To each subregion, we associate a subset of elements of the state vector x k given by

Figure 3
figure 3

Vertices collected in 2 clusters L ( ) , their boundary sets L ( ) and neighbor sets N ( ) .

x k [ m ] = q k ( m ) p k ( m ) n k ( m )
(24)

where

p k ( m ) = [ p ( i Δ r , j Δ r , k Δ t ) ] ( i , j ) L ( m )

and the superscsript (m)refers to region m.

Except for Φ12, all of the blocks in the state-space matrices Φ k and Γ k are diagonal or zero (cf. (12)). Thus, there is no coupling between the sub-vectors p k ( m ) from different subregions and similarly for the sub-vector q k ( m ) . Coupling between state vectors from different regions, induced by the non-diagonal structure of Φ12, is between the sub-vectors q k ( m ) in one subregion and the sub-vectors p k ( m ) in the adjacent subregions (in fact, this coupling is limited to samples at the boundaries of the subregions). The same applies for the sub-vectors n k ( m ) due to the spatial noise. This gives

x k + 1 ( m ) = Φ k ( m ) x k ( m ) + ξ k ( m ) (1) + Γ k ( m ) u k ( m ) + γ k ( m ) (2) + G k ( m ) n k ( m ) , (3) y k ( m ) = C ( m ) p k ( m ) + v k ( m ) . (4) (5)
(25)

This coupling Equation 25 is only possible for the time-independent part of these matrices. However, for uncorrelated noise between clusters, the time-dependent part, i.e., D k , is calculated separately according to Section II-E on every cluster at each time step, see below.

The coupling terms between neighboring subregions are given by

ξ k ( m ) = m N ( m ) T k ( m , m ) x k ( m ) ,
(26)

with

T k ( m , m ) = 0 Φ 1 2 ( m , m ) 0 0 0 0 0 D k ( m , m ) ,
(27)

and, analogously,

γ k ( m ) = m N ( m ) R k ( m , m ) u k ( m ) ,
(28)

with

R k ( m , m ) = 0 0 0 0 0 0 0 0 D k ( m , m ) .
(29)

Here, N ( m ) is the set of subregions adjacent to Ω(m), and Φ 1 2 ( m , m ) is obtained from Φ12 by extracting the rows and columns corresponding to L ( m ) and L ( m ) . The off-diagonals of Φ12 are extremely sparsely populated; in fact, (26) contains only few non-zero terms corresponding to adjacent pressure samples and the change of sources from one to another cluster. D k ( m , m ) is generated from every cluster m' such that the composition of all submatrices D k ( m ) and D k ( m , m ) equals D k . From a practical perspective, elements of D k ( m ) are calculated separately on every cluster by means of spatial noise with additional triggering of a message to neighbor clusters whenever a source hop (migration) from one cluster to another is detected (this takes over the purpose of D k ( m , m ) and supersedes (28)). Furthermore, the coupling term ξ k ( m ) means that pressure samples at subregion boundaries are exchanged between neighboring clusters in order to compute the finite differences.

Boundary conditions do not play a role in the decomposition step as long as (i) they do not depend on adjacent neighbors and (ii) their numerical solution fits into (5). In the first situation, an additional term Φ 1 1 ( m , m ) or Φ 2 1 ( m , m ) arises in matrix. T k ( m , m ) .

B Decentralized particle filter

For the decentralized PF, we need to distribute the sampling (particle generation) step and the weight computation step. Based on the local particles and weights, each cluster can then compute posterior source probabilities in a similar manner as in Section III-B.

1) Particle Generation: Sub-particles x k [ l , m ] within cluster R ( m ) are generated according to (25), cf. also (18),

x k + 1 [ l , m ] = Φ k ( m ) x k [ l , m ] + ξ k [ l , m ] (1) + Γ k ( m ) u k [ l , m ] + γ k [ l , m ] (2) + G k [ l , m ] n k [ l , m ] . (3) (4)
(30)

Here, x k [ l , m ] is a randomly chosen previous particle and n k [ l , m ] is a (local) noise vector realization. Furthermore, ξ k [ l , m ] = m N ( m ) T k ( m , m ) x k [ l , m ] and ξ k [ l , m ] = m N ( m ) R k ( m , m ) u k [ l , m ] , respectively. In order to compute the latter, only elements of x k [ l , m ] that correspond to pressure samples from the boundaries of adjacent subregions are exchanged, and in the event of source hopping from one to another cluster, a message is sent.

2) Weights: Assuming independent measurement noise in the individual subregions, i.e., f v ( v k ) = m = 1 M f v ( m ) ( v k ( m ) ) , the weight update (19) is computed in each cluster as

ω ̃ k + 1 [ l ] = ω k [ l ] m = 1 M ω ̄ k [ l , m ] ,
(31)

where the partial weights

ω ̄ k [ l , m ] = f v ( m ) ( y k + 1 ( m ) - C ̃ ( m ) x k + 1 [ l , m ] )

are computed within each cluster and then are shared among all clusters to obtain the final unnormalized weight [24] and [25] are treating the issue of computation of the global factorizable likelihood by means of distributed protocols. If these take longer than the time span between two estimator iterations, the particle filter converts to a particle predictor.

3) (Re)sampling: A remaining problem with the decentralized PF is that the sampling (particle generation) step (30) requires that the clusters pick local particles x k [ l , m ] m = 1, ..., M, that correspond to the same global particle x k l . This choice is made at random according to the weights ω k l . The same problem occurs for the resampling procedure. Since a central random number generator whose output is distributed to each cluster incurs a large communication overhead, we propose to use identical pseudo-number generators in all clusters and initialize those with the same seed, thereby ensuring that all clusters perform the same (re)sampling (cf. with [24] and [26]).

V Decentralized source localization

The PF yields the posterior PDF of the sources' position and life span. To obtain the current MAP position estimates

( î k , ĵ k ) = arg max ( i , j ) L P s ( i , j , k ) ,
(32)

the maximum and the maximizing state of the posterior PDF Ps(i, j, k) in (23) must be found. In the decentralized scheme, each cluster disposes only of the local posterior PDF for the state sub-vector x k ( m ) . To find the global maximizing state, each cluster determines the local maximizing state and afterward the clusters use a distributed consensus protocol to determine the global maximum. For simplicity, this procedure is here developed for one source.

For the centralized PF, the posterior probability for a source to be active at time k at position (i, j) is given by (23). In the decentralized case, each cluster determines a similar probability according to

P s ( m ) ( i , j , k ) = L i , j , k ( m ) L , ( i , j ) L ( m ) , 0 , else,

where L i , j , k ( m ) denotes the number of particles x k [ l , m ] for which [ n k [ l , m ] ] i + ( j - 1 ) I >0. Since the probabilities P s ( m ) ( i , j , k ) have disjoint support, the maximization underlying the MAP estimates (32) is

P k , max = max ( i , j ) L P s ( i , j , k ) = max m P k , max ( m )

with

P k , max ( m ) = max ( i , j ) L ( m ) P s ( m ) ( i , j , k ) .
(33)

While the local maxima with regard to L ( m ) can be determined within each cluster, the global maximization with regard to m requires communication between the clusters. Since sharing the local maxima among all clusters via broadcast transmissions requires a large coordinated transmission, we compute the global maximum via the maximum consensus (MC) algorithm [14]. For the MC algorithm, we assume that only neighboring clusters communicate with each other. Thus, each cluster sends to the adjacent clusters a message which contains the local maximum and the position for which the local maximum is achieved. In the subsequent steps, each cluster compares the incoming "maximum" messages with their current estimate of the global position and retain the most likely and its associated position. In the next iteration, this message will be sent to the neighboring clusters.

Denote the current estimate of the maximum Pk,maxfor cluster m by P ^ k , max ( m ) and let ( î k ( m ) , ĵ k ( m ) ) be the associated position estimate (initially, P ^ k , max ( m ) = P k , max ( m ) ) . In our MC algorithm, termed argumentum-maximi consensus (AMC), at time instant k, each cluster performs the following steps:

  1. 1)

    Send a message containing the estimates P ^ k , max ( m ) and ( î k ( m ) , ĵ k ( m ) ) to the neighbor clusters N ( m ) .

  2. 2)

    Receive corresponding messages from the neighbor cluster, if a neighbor m N ( m ) remains silent, then P ^ k , max ( m ) = P ^ k - 1 , max ( m ) .

  3. 3)

    Update the maximum probability and position as

    P ^ k + 1 , max ( m ) = P ^ k , max ( m 0 ) , ( î k + 1 ( m ) , ĵ k + 1 ( m ) ) = ( î k ( m 0 ) , ĵ k ( m 0 ) ) ,

with m 0 =arg max m { m } N ( m ) P k , max ( m ) .

  1. 4)

    If P ^ k + 1 , max ( m ) P ^ k , max ( m ) to go 1), otherwise go to 2).

When the maximum is fixed, all clusters converge to the true maximum after some iterations (depending on the diameter of the cluster communication graph). Here, the position of the maximum moves as the distributed PF evolves and the AMC will then allow the clusters to jointly track the maximum.

VI Algorithm summary

A Dimensions and trade-offs

Since we are estimating the 2-D position and activation time for each of the S sources, the number of unknowns equals 3S. This is relevant for the choice of the number of particles, cf. [4]. For the calculation of the forward model (state transition), however, the dimension of the state vector x k is relevant which equals 3IJ. In the decentralized case, the computational complexity of the forward model is distributed across all clusters.

We now face the behavior of a high number of clusters. Generally, the volume of a polytope (cluster) L ( m ) with edge lengths e i (m) in a d-dimensional lattice L d is given by | L ( m ) |= i = 1 d e i ( m ) while its (d - 1)-dimensional surface equals | L ( m ) |=2 j = 1 d j i = 1 d e i ( m ) .

Generally, the dimension per cluster of the equation system to be calculated is 3 | L ( m ) | which, in comparison, equals in the centralized case 3|L|.

In our 2-D problem, let the lattice L be partitioned into M = MiMj clusters of same size, Mi clusters in i-direction and Mj clusters in j-direction. Then, e1 = I/Mi and e2 = J/Mj. Furthermore, the volume | L ( m ) |=IJ M i M j . When M → ∞, then the dimension of the equation system, which specifies the amount of computation, becomes in O ( 1 M ) [27]. Thus the computational effort per cluster decreases when the number of clusters increases. On the other hand, an increasing number of clusters leads to a larger number of boundaries and hence to a larger communication overhead (i.e., message exchange between adjacent clusters).

Algorithm 1: Global initialization

generate priors X 0 ;                             // Equation (20)

decompose X 0 to { X 0 ( m ) } ;               // Equation (24)

choose seed s0 (Section IV-B3);

for m = 1 to M parallel do

DD-SIR-PF( X 0 ( m ) , s0) of cluster m;

Algorithm 2: DD-SIR-PF(): Decentralized distributed SIR particle filter of cluster m

input : X 0 ( m ) , s0

k ← 1;

wait while no signal sensed and no wake-up call;

send wake-up call to other clusters;

while estimating do

observe: y k ( m )

W ̄ k ( m ) , X k ( m ) S I ( X k - 1 ( m ) , y k ( m ) ) ;

transmit W ̄ k ( m ) , P k ( m ) , P ^ k - 1 , max ( m ) , S ^ k - 1 ( m ) ;

wait until reception from other clusters;

W k , X k ( m )

modify ( W ̄ k 1 , W ̄ k M , X k ( m ) , P k ( N ( m ) ) )

calculate P ^ k , max ( m ) , S ^ k ( m ) ;                                 // Equation (33)

X k ( m ) resampling( W k , X k ( m ) , s0);

W k ( m ) { 1 L } = 1 L ;

kk + 1;

B Communication between clusters

The variables that are broadcast by cluster m are summarized by the set

W ̄ k ( m ) , P k ( m ) , μ k ( i , m ) , P ^ k , max ( m ) , S ^ k ( m ) .
(34)

The first subset W ̄ k ( m ) = w ̄ k [ 1 , m ] , , w ̄ k [ L , m ] collects the local PF weights, while P k ( m ) = [ p k [ l , m ] ] i + ( j - 1 ) I | ( i , j ) L ( m ) l = 1 L collects all pressure sub-state particles on the boundary. The third, μ k ( i , m ) , signifies a message about sources which migrate across boundaries from one cluster to another. Every message includes the new location and the current time duration since the occurrence of the sources. The last two terms stem from the AMC algorithm where S ^ k ( m ) = ( î k ( m ) , ĵ k ( m ) ) .

Note that the cardinality of (34) which is a measure of the amount of transmission per cluster is given by the sum

L ( W ̄ k ( m )  to all clusters ) + | L ( m ) | L ( P k ( m )  to adjacent clusters ) + 2 M ( P ^ k , max ( m )  and  S ^ k ( m )  to adjacent clusters )

Here, the μ k ( i , m ) messages are disregarded. The amount of transmission in the decentralized case to adjacent neighbors for Mi → ∞ and Mj → ∞ is in O ( 1 M i ) and O ( 1 M j ) , respectively. The transmission of weights is in O ( M ) for M → ∞, while the overall communication load is in O ( M 2 ) .

Note that there is no approximation compared to the centralized method and thus neither source coding nor approximations reducing the weight communication have been considered. For the communication of the weights, either the graph needs to be fully connected or the clusters need to act as relay. A summary is drawn in Table 1.

Table 1 Necessary message exchange

C Algorithm

The algorithm of the decentralized and distributed SIR PF together with the AMC is drawn in Algorithms 1-4. Compare it with that one in [28] and note that the for-loop can be parallelized.

The joint setup of the computational nodes is shown in Algorithm 1 which consists of the calculation of the priors and the synchronization of the pseudo-random generator. Subsequently, each individual PF is launched (Algorithm 2). Two important sub-routines are plotted in their own tableaus:

  • Algorithm 3 calculates particles and sends messages when a source jumps over to another cluster.

  • Algorithm 4 adds states from the neighbor clusters according to (25) and calculates the overall weight (31).

Algorithm 3: SI(): sample importance part

Input: X k - 1 ( m ) , y k ( m )

output: W ̄ k ( m ) , X k ( m )

for i = 1 to L do

Draw x k [ l , m ] ~f ( x k ( m ) | x k - 1 ( m ) ) ;

if source(s) cross(es) boundary then

send message to adjacent cluster

ω ̄ k [ l , m ] f ( y k ( m ) | x k [ l , m ] ) ;

Algorithm 4: modify(): contribution of the neighbors. T(m)is a mapping from neighbors' pressure sub-states to the own sub-states with T ( m ) P k ( N ( m ) ) assembles to { ξ k [ l , m ] } l = 1 L .

input: W ̄ k 1 , , W ̄ k M , X k ( m ) , P k ( N ( m ) )

output: W k , X k ( m )

X k ( m ) X k ( m ) + T ( m ) P k ( N ( m ) ) ;                     // Equation (27)

W ^ k W ̄ k 1 W ̄ k M ;                                 // Equation (31)

normalize W ^ k ;

VII Simulations

In this section, we present simulations illustrating the performance of the proposed Algorithms 1-4. The configuration used in the simulations is shown in Figure 4 with parameters in Table 2 (N { μ , σ 2 } denotes the Gaussian distribution with mean μ and variance σ2). In particular, we used M = 5 subregions Ω(m)corresponding to 5 clusters each with 2 sensors. We considered a single source located in Ω(3) at the lattice point (i0, j0) = (25, 25); it is modeled by choosing the source function as s0[n] = s0(n Δ t ) where s0(t) is a time-shifted Ricker wavelet. A Ricker wavelet [29] is defined by the negative second derivative of a Gaussian function such that

Figure 4
figure 4

Simulation setup comprising sensors, a single source, and SN cluster structure.

Table 2 Parameters for simulated hallway
ricker ( t ) = 1 - 2 π 2 ν 2 t 2 exp - π 2 ν 2 t 2 .
(35)

Here, ν is approximately the peak frequency. A Ricker wavelet shifted by 16.7 ms with ν = 60 Hz is used, i.e. s0(t) = ricker(t - 16.7 ms), see Figure 5. The acoustic pressure field is simulated using the FDM introduced in Section II. A snapshot of the field at time k = 160 is shown in Figure 6.

Figure 5
figure 5

Ricker wavelet shifted by 16.7 ms with ν = 60 Hz (a) in the time domain and (b) its Fourier transform.

Figure 6
figure 6

Pressure field from finite difference modeling after 41,750 time steps (corresponding to estimation time k = 160).

The parameters used in the decentralized PF are summarized in Table 3 (U { a , b } represents a discrete uniform PDF with support [a, b]). For the fixed source position, we used a discrete uniform distribution on the 50 × 50 lattice. The spatio-temporal noise and the observation noise are drawn from a Gaussian distribution. The PF is initialized at time k = 0, and the source is assumed to become active at time instant k < 0. The maximum value of the random variable kstart is a prior and is proportional to the maximal possible time duration between source arise and first detection (cf. (20)). Larger values of kstart necessitate a larger number of particles to cover the time interval [-kstart, 0] and thus to achieve the same approximation accuracy.

Table 3 PF parameters

A Estimation of posterior PDF

For the centralized PF, Figure 7a shows an example of the posterior PDF P s (i, j, k) for the source position obtained with the centralized particle filter at time instant k = 160 (cf. (23)). For comparison, Figure 7b shows the result obtained with the decentralized PF, i.e., the composition m = 1 5 P s ( m ) ( i , j , k ) of the local posterior PDF obtained by each cluster. It is seen that the centralized and the decentralized PF obtain similar results, and both yield a posterior PDF which is well concentrated about the true position (i0, j0) = (25, 25) of the source.

Figure 7
figure 7

Posterior source position PDF P s ( i , j , k ) at time k = 160 obtained with (a) centralized and (b) decentralized PF.

Figure 8a, b shows the MAP and MMSE of the source's i coordinate and j coordinate, respectively. The MAP estimates ( î k , ĵ k ) are given by (32); the MMSE estimates ( î k MMSE , ĵ s k MMSE ) are obtained as conditional means of the source coordinates obtained with the conditional posterior PMF P s (i, j, k) for given k. Since the prior of the source location is a discrete uniform distribution, MMSE estimates at k = 0 equal ( î k MMSE , ĵ s k MMSE ) = ( I 2 , J 2 ) = ( 2 5 , 2 5 ) . Hence, in this specific case, the MMSE estimates outperform the MAP estimates for small k. After a certain number of PF iterations (around k > 6), however, the MAP estimates match the true source position better than the MMSE estimates. The variance of P s (i, j, k) for any given k (which can be interpreted as MMSE) is shown in Figure 9 and corroborates that for small-to-medium k, the i coordinate estimate is more reliable; this can be attributed to the specific sensor arrangements which favors better i-resolution (cf. Figure 4).

Figure 8
figure 8

MAP and MMSE estimate of the i and j coordinate of the source (note that the lines of the centralized and decentralized MMSE estimations are close together).

Figure 9
figure 9

Variance of posterior distribution P s ( i , j , k ) with respect to i and j coordinates.

B Decentralized MAP source localization

This subsection illustrates the decentralized source localization using the AMC algorithm proposed in Section V (simulation setup unchanged). Recall that with AMC, each cluster has estimates P ^ k , max ( m ) of the MAP probability and ( î k ( m ) , ĵ k ( m ) ) of the associated position. Figure 10a shows the local MAP probabilities P k , max ( m ) (cf. (33)) for all five clusters; clearly, only the third cluster builds up a distinguished maximum over time, which indicates that the source is located within Ω(3).

Figure 10
figure 10

Local (a) MAP probabilities P k , m a x ( m ) in comparison with (b) MAP probability estimates P ^ k , m a x ( m ) obtained by the individual clusters using the AMC algorithm. In the latter case, the maximum time difference between two lines equals two.

All clusters track the global MAP probability, Figures 10b and 11, and eventually agree on the source position provided by cluster 3 whose behavior over time resembles the global estimates using the centralized PF (cf. Figure 8a, b).

Figure 11
figure 11

Source coordinate estimates of the individual clusters.

After about 6 iterations, the PF achieves a localization accuracy on the order of the lattice spacing Δ r . These estimates could be further improved (with higher computational complexity) by refining the discretization lattice and increasing the number of particles.

VIII Conclusions

We proposed a scheme for the localization of multiple acoustic sources in a sensor network (SN). The method uses an augmented non-linear non-Gaussian state-space model for the acoustic field and on a particle filter (PF) for sequential Bayesian estimation of source positions. This state-space representation for the wave equation gives additional prior physical knowledge and incorporates perturbations and distortion like echoes, thereby resulting in improved estimation accuracy. In addition to the source positions, our PF implicitly provides an estimate of the acoustic field itself. We further developed a decentralized PF in which the computational complexity is distributed over several clusters of the SN. The decentralized PF exploits the sparsity of the matrices involved in the state-space model. In fact, the loose coupling between the components of the state vector allows separate and parallel computation of equation sub-systems of much smaller dimension in each cluster heads. To determine the global MAP estimate of the position of a source, we proposed an argumentum-maximi-consensus algorithm in which the clusters exchange their best MAP probability and source position.

References

  1. Ristic B, Arulampalam S, Gordon N: Beyond the Kalman Filter: Particle Filters for Tracking Applications, (Artech House, Boston). 2004.

    MATH  Google Scholar 

  2. Hlinka O, Djuric P, Hlawatsch F: Time-space-sequential distributed particle filtering with low-rate communications. Proceedings 43rd Asilomar Conference on Signals, Systems, and Computers, (Pacific Grove, CA) 2009.

    Google Scholar 

  3. Hlinka O, Slučiak O, Hlawatsch F, Djurić PM, Rupp M: Likelihood consensus: Principles and application to distributed particle filtering. Proceeding 44th Asilomar Conference on Signals, Systems, and Computers, (Pacific Grove, CA) 2010.

    Google Scholar 

  4. van Leeuwen P: Particle filtering in geophysical systems. Mon Weather Rev 2009, 137: 4089. 10.1175/2009MWR2835.1

    Article  Google Scholar 

  5. Yardim C, Gerstoft P, Hodgkiss WS: Tracking of geoacoustic parameters using kalman and particle filters. J Acoust Soc Am 2009, 125: 746. 10.1121/1.3050280

    Article  Google Scholar 

  6. Ihler A, Fisher J III, Moses R, Willsky A: Nonparametric belief propagation for self-localization of sensor networks. Sel Areas Commun, IEEE J 2005, 23(4):809-819.

    Article  Google Scholar 

  7. Kay S: Fundamentals of Statistical Signal Processing, Estimation Theory. Volume 1. Pearson Education, New Jersey; 1993.

    MATH  Google Scholar 

  8. Xaver F, Mecklenbräuker CF, Gerstoft P, Matz G: Distributed state and field estimation using a particle filter. Proceeding 44th Asilomar Conference on Signals, Systems, and Computers, (Pacific Grove, CA) 2010.

    Google Scholar 

  9. Candy J, Sullivan E: Model-based identification: An adaptive approach to ocean-acoustic processing. Oceanic Eng IEEE J 2002, 21(3):273-289.

    Article  Google Scholar 

  10. Rossi L, Krishnamachari B, Kuo C: Distributed parameter estimation for monitoring diffusion phenomena using physical models. IEEE Communications Society Conference on Sensor and Ad Hoc Communications and Networks (SECON) 2004.

    Google Scholar 

  11. Zhao T, Nehorai A: Distributed sequential Bayesian estimation of a diffusive source in wireless sensor networks. IEEE Trans Signal Process 2007, 55(4):1511.

    Article  MathSciNet  Google Scholar 

  12. Sawo F: Nonlinear state and parameter estimation of spatially distributed systems. In Ph.D. dissertation. Universität Karlsruhe; 2009.

    Google Scholar 

  13. Sawo F, Huber M, Hanebeck U: Parameter identification and reconstruction for distributed phenomena based on hybrid density filter. Information Fusion, 2007 10th International Conference on 2007, 1-8.

    Chapter  Google Scholar 

  14. Bauso D, Giarré L, Pesenti R: Non-linear protocols for optimal distributed consensus in networks of dynamic agents. Sys Control Lett 2006, 55(11):918-928. 10.1016/j.sysconle.2006.06.005

    Article  MathSciNet  MATH  Google Scholar 

  15. Tarantola A: Inverse Problem Theory and Methods for Model Parameter Estimation, (Society for Industrial and Applied mathematics, Philadelphia. 2005.

    Book  MATH  Google Scholar 

  16. Jensen F, Kuperman W, Porter M, Schmidt H: Computational ocean acoustics. American Institute of Physics Press, New York; 1994.

    MATH  Google Scholar 

  17. Kailath T: Linear Systems. Prentice-Hall, New Jersey; 1980.

    MATH  Google Scholar 

  18. Doucet A, Godsill S, Andrieu C: On sequential monte carlo sampling methods for bayesian filtering. Stat Comput 2000, 10(3):197-208. 10.1023/A:1008935410038

    Article  Google Scholar 

  19. Mattheij R, Rienstra S, ten Thije Boonkkamp J: Partial Differential Equations: Modeling, Analysis, Computation. Society for Industrial and Applied mathematics, Philadelphia; 2005.

    Book  MATH  Google Scholar 

  20. Zhdanov M: Geophysical Inverse Theory and Regularization Problems. Elsevier Science Ltd, Amsterdam; 2002.

    Google Scholar 

  21. Hol JD, Schön TB, Gustafsson F: On resampling algorithms for particle filters. Nonlinear Statistical Signal Processing Workshop, 2006 IEEE, Sept., Ed. IEEE 2006, 79-82.

    Chapter  Google Scholar 

  22. Sawo F, Roberts K, Hanebeck U: Bayesian estimation of distributed phenomena using discretized representations of partial differential equations. 3rd International Conference on Informatics in Control, Automation and Robotics (ICINCO) 2006, 16-23.

    Google Scholar 

  23. Sawo F, Klumpp V, Hanebeck U: Simultaneous state and parameter estimation of distributed-parameter physical systems based on sliced gaussian mixture filter. Information Fusion, 2008 11th International Conference on 2008, 1-8.

    Google Scholar 

  24. Farahmand S, Roumeliotis S, Giannakis G: Particle filter adaptation for distributed sensors via set membership. Acoustics Speech and Signal Processing (ICASSP), 2010 IEEE International Conference on. IEEE 2010, 3374-3377.

    Chapter  Google Scholar 

  25. Oreshkin B, Coates M: Asynchronous distributed particle filter via decentralized evaluation of gaussian products. In Proceedings of the Sixth International Conference of Information Fusion. IEEE, Edinburgh, Scotland; 2010.

    Google Scholar 

  26. Coates M: Distributed particle filters for sensor networks. In Proceedings of the 3rd international symposium on Information Processing in Sensor Networks. ACM; 2004:99-107.

    Google Scholar 

  27. Knuth D: Big omicron and big omega and big theta. ACM Sigact News 1976, 8(2):18-24. 10.1145/1008328.1008329

    Article  Google Scholar 

  28. Arulampalam M, Maskell S, Gordon N, Clapp T: A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking. IEEE Trans. Signal Process 2002, 50(2):174-188. 10.1109/78.978374

    Article  Google Scholar 

  29. Ryan H: A choice of wavelets. CSEG Recorder 1994.

    Google Scholar 

Download references

Acknowledgements

This work is funded by Grant ICT08-44 of "Wiener Wissenschafts-, Forschungs-und Technologiefonds" (WWTF). This work in part was previously presented at the Asilomar Conference on Signals, Systems and Computers, Pacific Grove, CA, Nov. 2010.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Florian Xaver.

Additional information

Competing interests

The authors declare that they have no competing interests.

Authors’ original submitted files for images

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Reprints and permissions

About this article

Cite this article

Xaver, F., Matz, G., Gerstoft, P. et al. Localization of acoustic sources using a decentralized particle filter. J Wireless Com Network 2011, 94 (2011). https://doi.org/10.1186/1687-1499-2011-94

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/1687-1499-2011-94

Keywords