Multiple Bayesian Filtering as Message Passing
Giorgio M. Vitetta, Pasquale Di Viesti, Emilio Sirignano, Francesco, Montorsi

TL;DR
This paper introduces a general message passing framework for interconnected Bayesian filters, enabling the development of new filtering algorithms that improve complexity-accuracy tradeoffs in dynamic systems.
Contribution
It proposes a novel method to derive interconnected Bayesian filtering algorithms using graphical models and message passing, exemplified by combining particle and Kalman filters.
Findings
New filtering algorithms outperform marginalized and multiple particle filters in complexity-accuracy tradeoff.
The method effectively integrates different Bayesian filters for complex systems.
Numerical results demonstrate improved efficiency in specific dynamic systems.
Abstract
In this manuscript, a general method for deriving filtering algorithms that involve a network of interconnected Bayesian filters is proposed. This method is based on the idea that the processing accomplished inside each of the Bayesian filters and the interactions between them can be represented as message passing algorithms over a proper graphical model. The usefulness of our method is exemplified by developing new filtering techniques, based on the interconnection of a particle filter and an extended Kalman filter, for conditionally linear Gaussian systems. Numerical results for two specific dynamic systems evidence that the devised algorithms can achieve a better complexity-accuracy tradeoff than marginalized particle filtering and multiple particle filtering.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Multiple Bayesian Filtering as Message Passing
Abstract
In this manuscript, a general method for deriving filtering algorithms that involve a network of interconnected Bayesian filters is proposed. This method is based on the idea that the processing accomplished inside each of the Bayesian filters and the interactions between them can be represented as message passing algorithms over a proper graphical model. The usefulness of our method is exemplified by developing new filtering techniques, based on the interconnection of a particle filter and an extended Kalman filter, for conditionally linear Gaussian systems. Numerical results for two specific dynamic systems evidence that the devised algorithms can achieve a better complexity-accuracy tradeoff than marginalized particle filtering and multiple particle filtering.
[TABLE]
†Dept. of Engineering ”Enzo Ferrari”, University of Modena and Reggio Emilia.
Keywords: Hidden Markov Model, Factor Graph, Particle Filter, Sum-Product Algorithm, Marginalized Particle Filter, Kalman Filter, Multiple Particle Filtering.
I. Introduction
It is well known that Bayesian filtering represents a general recursive solution to the *nonlinear filtering problem *(e.g., see [1, Sect. II, eqs. (3)-(5)]), i.e. to the problem of inferring the posterior distribution of the hidden state of a nonlinear state-space model (SSM). Unluckily, this solution can be put in closed form in few cases [2]. For this reason, various filtering methods generating a functional approximation of the desired posterior pdf have been developed; these can be divided into local and global methods on the basis of the way the posterior probability density function (pdf) is approximated [3], [4]. On the one hand, local techniques, like extended Kalman filtering (EKF) [2], are computationally efficient, but may suffer from error accumulation over time; on the other hand, global techniques, like particle filtering (PF) [5]–[6], may achieve high accuracy at the price, however, of unacceptable complexity and numerical problems when the dimension of the state space becomes large [7]–[9]. These considerations have motivated the investigation of various methods able to achieve high accuracy under given computational constraints. Some of such solutions are based on the idea of combining local and global methods; relevant examples of this approach are represented by: 1) Rao-Blackwellized particle filtering (RBPF; also known as marginalized particle filtering) [10] and other techniques related to it (e.g., see [4]); 2) cascaded architectures based on the joint use of EKF and PF (e.g., see [11]). Note that, in the first case, the state vector is split into two disjoint components, namely, a linear state component and a nonlinear state component; moreover, these are estimated by a bank of Kalman filters and by a particle filter, respectively. In the second case, instead, an extended Kalman filter and a particle filter are run over partially overlapped state vectors. In both cases, however, two heterogeneous filtering methods are combined in a way that the resulting overall algorithm is forward only and, within each of its recursions, both methods are executed only once. Another class of solutions, known as multiple particle filtering (MPF), is based on the idea of partitioning the state vector into multiple substates and running multiple particle filters in parallel, one on each subspace [9], [12]-[15]. The resulting network of particle filters requires the mutual exchange of statistical information (in the form of estimates/predictions of the tracked substates or parametric distributions), so that, within each filter, the unknown portion of the state vector can be integrated out in both weight computation and particle propagation. In principle, MPF can be employed only when the selected substates are separable in the state equation, even if approximate solutions can be devised to circumvent this problem [15]. Moreover, the technical literature about MPF has raised three interesting technical issues that have received limited attention until now. The first issue refers to the possibility of coupling an extended Kalman filter with each particle filter of the network; the former filter should provide the latter one with the statistical information required for integrating out the unknown portion of the state vector (see [14, Par. 3.2]). The second one concerns the use of filters having partially overlapped substates (see [13, Sec.1]). The third (and final) issue, instead, concerns the iterative exchange of statistical information among the interconnected filters of the network. Some work related to the first issue can be found in [16], where the application of MPF to target tracking in a cognitive radar network has been investigated. In this case, however, the proposed solution is based on Rao-Blackwellisation; for this reason, each particle filter of the network is not coupled with a single extended Kalman filter, but with a bank of Kalman filters. The second issue has not been investigated at all, whereas limited attention has been paid to the third one; in fact, the last problem has been investigated only in [12], where a specific iterative method based on game theory has been developed. The need of employing iterative methods in MPF has been also explicitly recognised in [15], but no solution has been developed to meet it.
In this manuscript, we first focus on the general problem of developing filtering algorithms that involve multiple interconnected Bayesian filters; these filters are run over distinct (but not necessarily disjoint) subspaces and can exploit iterative methods in their exchange of statistical information. The solution devised for this problem (and called multiple Bayesian filtering, MBF, since it represents a generalisation of the MPF approach) is based on previous work on the application of factor graph theory to the filtering and smoothing problems [17]–[21]. More specifically, we show that: a) a graphical model can be developed for a network of Bayesian filters by combining multiple factor graphs, each referring to one of the involved filters; b) the pdfs computed by all these filters can be represented as messages passed on such a graphical model. This approach offers various important advantages. In fact, all the expressions of the passed messages can be derived by applying the same rule, namely the so called sum-product algorithm (SPA) [17], [18], to the graphical model devised for the whole network. Moreover, iterative algorithms can be developed in a natural fashion once the cycles contained in this graphical model have been identified and the order according to which messages are passed on them (i.e., the message scheduling) has been established. The usefulness of our approach is exemplified by mainly illustrating its application to a network made of two Bayesian filters. More specifically, we investigate the interconnection of an extended Kalman filter with a particle filter, and develop two new filtering algorithms under the assumption that the considered SSM is conditionally linear Gaussian (CLG). Simulation results for two specific SSMs evidence that the devised algorithms perform similarly or better than RBPF and MPF, but require a smaller computational effort.
The remaining parts of this manuscript are organized as follows. In Section II., after introducing factor graph theory and the SPA, the filtering problem is analysed from a factor graph perspective for a network of multiple interconnected Bayesian filters. In Section III., the tools illustrated in the previous section are applied to a network consisting of an extended Kalman filter interconnected with a particle filter, two new MBF algorithms are derived and their computational complexity is analysed in detail. The developed MBF algorithms are compared with EKF and RBPF, in terms of accuracy and execution time, in Section IV.. Finally, some conclusions are offered in Section V..
II. Graphical Modelling for Multiple Bayesian Filtering
In this paragraph, we illustrate some basic concepts about factor graphs and the computation of the messages passed over them. Then, we derive a graphical model for representing the overall processing accomplished by multiple interconnected Bayesian filters as a message passing on it.
A. Factor Graphs and the Sum-Product Algorithm
A factor graph is a graphical model representing the factorization of any function expressible as a product of factors , each depending on a set of variables In the following, Forney-style factor graphs are considered [17]. This means that the factor graph associated with the function consists of nodes, edges (connecting distinct nodes) and half-edges (connected to a single node only). Moreover, the following rules are employed for its construction: a) every factor is represented by a single node (a rectangle in our pictures); b) every variable is represented by a unique edge or half edge; c) the node representing a factor is connected with the edge (or half-edge) representing the variable if and only if such a factor depends on ; d) an *equality constraint node *(represented by a rectangle labelled by “=”) is used as a branching point when more than two factors are required to share the same variable. For instance, the factorisation of the function
[TABLE]
can be represented through the factor graph shown in Fig. 1.
In this manuscript, factorisable functions represent joint pdfs. It is well known that the marginalization of with respect to one or more of its variables can be usually split into a sequence of simpler marginalizations; our interest in the graph representing is motivated by the fact that the function resulting from each of these marginalizations can be represented as a message (conveying a joint pdf of the variables it depends on) passed along an edge of the graph itself. In this work, the computation of all the messages is based on the SPA (also known as belief propagation). This algorithm can be formulated as follows (e.g., see [17, Sec. IV]): the message emerging from a node, representing a factor , along the edge associated with a variable is expressed by the product of and the messages along all the incoming edges (except that associated with ), integrated over all the involved variables except . Two simple applications of the SPA are illustrated in Fig. 2-a) and in Fig. 2-b), that refer to an equality constraint node and to a function node, respectively (note that, generally speaking, these nodes are connected to edges representing vectors of variables). On the one hand, the message emerging from the equality node shown in Fig. 2-a) is evaluated as
[TABLE]
where and are the two messages entering the node itself (if a single message enters an equality node, the two messages emerging from are simply copies of it) and is the vector of variables all these message refer to. On the other hand, the message emerging from the function node shown Fig. 2-b), that refers to the function depending on the vectors of variables and , is given by
[TABLE]
where denotes the message entering it.
In applying the SPA, it is important to keep in mind that: a) the marginal pdf , referring to the variable only, is expressed by the product of two messages associated with the edge , but coming from opposite directions; b) the half-edge associated with a variable may be thought as carrying a constant message of unit value as incoming message; c) if a marginal pdf is required to be known up to a scale factor, the involved messages can be freely scaled in their computation. The use of the last rules and of those expressed by Eqs. (2) and (3) can be exemplified by taking into consideration again the function (1) (which is assumed now to represent the joint pdf of four continuous random variables) and showing how, thanks to these rules, the marginal pdf can be evaluated in a step-by-step fashion. If the messages , and are defined, applying Eqs. (2)–(3) to the factor graph shown in Fig. 1 leads to the ordered computation of the messages
[TABLE]
[TABLE]
[TABLE]
and
[TABLE]
Then, given the messages (6) and \reflectbox{\vec{\reflectbox{}}}_{5}\left(x_{3}\right) (7), referring to the same edge, but originating from opposite directions, the required marginal is evaluated as
[TABLE]
This result is exact since the graph representing the joint pdf (1) is cycle free, i.e. it does not contain closed paths. When the considered graph does not have this property, the SPA can still be employed (e.g., see [17, Par. III.A] and [18, Sec. V]), but its application leads to iterative message passing algorithms, that, in general, produce approximate results. Moreover, the order according to which messages are passed on a cycle (i.e., the message scheduling) has to be properly selected. Despite this, it is widely accepted that the most important applications of the SPA refer to cyclic graphs [18].
The last important issue related to the application of the SPA is the availability of closed form expressions for the passed messages when, like in the filtering problem investigated in this manuscript, the involved variables are continuous. In the following, the pdfs of all the considered random vectors are Gaussian or are approximated through a set of weighted particles. In the first case, the pdf of a random vector is conveyed by the message
[TABLE]
where and denote the mean and the covariance of , respectively. In the second case, instead, its pdf is conveyed by the message
[TABLE]
where
[TABLE]
represents the th component of the message (10), i.e. the contribution of the th particle and its weight to such a message. Luckily, various closed form results are available for these two types of messages; the few mathematical rules required in the computation of all the messages appearing in our filtering algorithms can be found in Tables I–III of [21, App. A, p. 1534].
B. Graphical Modelling for a Network of Bayesian Filters and
Message Passing on it
In this manuscript, we consider a discrete-time SSM whose dimensional hidden state in the th interval is denoted , and whose state update and measurement models are expressed by
[TABLE]
and
[TABLE]
respectively. Here, () is a time-varying dimensional (dimensional) real function and () the th element of the process (measurement) noise sequence (); this sequence consists of dimensional (dimensional) independent and identically distributed (iid) Gaussian noise vectors, each characterized by a zero mean and a covariance matrix (). Moreover, statistical independence between and is assumed for simplicity. Note that, from a statistical viewpoint, the SSM described by Eqs. (12)–(13) is characterized by the Markov model and the observation model for any .
In the following sections, we focus on the so-called filtering problem, which concerns the evaluation of the posterior pdf at an instant , given a) the initial pdf and b) the -dimensional measurement vector . It is well known that, if the pdf referring to the first observation interval is known, the computation of the posterior (i.e., filtered) pdf for can be accomplished by means of an exact Bayesian recursive procedure, consisting of a measurement update step followed by a time update step. In [21, Sec. III], it is shown that, if this procedure is formulated with reference to the joint pdf (in place of the associated a posteriori pdf ), its th recursion (with ) can be represented as a forward only message passing algorithm over the cycle free factor graph shown in Fig. 3. In the measurement update, the message going out of the equality node is computed as111In the following the acronyms fp, fe, ms and pm are employed in the subscripts of various messages, so that readers can easily understand their meaning; in fact, the messages these acronyms refer to convey a forward prediction, a forward estimate, *measurement *information and pseudo-measurement information, respectively. (see Eq. (2))
[TABLE]
where
[TABLE]
is the message feeding the considered graph. Note that the messages (15) and convey the predicted pdf (i.e., the forward prediction) of computed in the previous (i.e., in the th) recursion and the filtered pdf (i.e., the forward estimate) of computed in the considered recursion, respectively, whereas the message conveys the statistical information provided by the measurement (13).
In the time update, the message that emerges from the function node referring to the pdf is evaluated as (see Eq. (3))
[TABLE]
such a message is equal to (see Eq. (15))
Let us take into consideration now a *network of * interconnected Bayesian filters. In the following, we assume that:
a) All the filters of the network are fed by the same measurement vector (namely, (13)), work in parallel and cooperate in order to estimate the state vector ; in doing so, they can fully share their statistical information.
b) The th filter of the network (with , , , ), denoted Fi, works on a lower dimensional space and, in particular, estimates the portion (having size , with ) of the state vector ; therefore, the substate , representing the portion of not included in , can be considered as a nuisance vector for Fi.
c) The set , collecting the substates estimated by all the filters of the network, covers , but does not necessarily represent a partition of it. In other words, unlike MPF, some overlapping between the substates estimated by different filters is admitted. This means that the filtering algorithm running on the whole network may contain a form of redundancy, since one or more elements of the state vector can be independently estimated by different Bayesian filters.
We are interested in developing recursive filtering algorithms for the whole network of Bayesian filters. The approach we propose to solve this problem consists of the following three steps: S1) building a factor graph that allows us to represent the measurement and time updates accomplished by each filter of the network and its interactions with the other filters as message passing algorithms on it; S2) developing a graphical model for the whole network on the basis of the factor graphs devised in the first step; S3) deriving new filtering methods as message passing algorithms over the whole graphical model obtained in the second step.
Let us focus, now, on step S1. In developing a graphical model for filter Fi, the following considerations must be kept into account:
-
Since the portion of is unknown to Fi (and, consequently, represents a nuisance state), an estimate of its pdf must be provided by the other filters of the network; this allows Fi to integrate out the dependence of its Markov model and of its observation model on .
-
Filter Fi can benefit from the pseudo-measurements computed on the basis of the statistical information provided by the other filters of the network.
As far as the last point is concerned, it is worth pointing out that, in this manuscript, any pseudo-measurement represents a fictitious measurement computed on the basis of the statistical information provided by a filtering algorithm different from the one benefiting from it; despite this, it can be processed as if it was a real measurement, provided that its statistical model is known. In practice, a pseudo-measurement made available to the filter Fi is a dimensional random vector that, similarly as the real measurement (13), can be modelled as222The possible dependence of the pseudo-measurement (17) on the substate is ignored here, for simplicity.
[TABLE]
where is a time-varying dimensional function and is a zero mean dimensional noise vector. The evaluation of these fictitious measurements is often based on the mathematical constraints established by the Markov model of the considered SSM, as shown in the following section, where a specific network of filters is considered.
Based on the considerations illustrated above, the equations describing the measurement/time updates accomplished by Fi in the th recursion of the network can be formulated as follows. At the beginning of this recursion, Fi is fed by the forward prediction
[TABLE]
originating from the previous recursion. In its first step (i.e., in its measurement update), it computes two filtered pdfs (i.e., two forward estimates), the first one based on the measurement (13), the second one on the pseudo-measurement (17). The first filtered pdf is evaluated as (see Eq. (14))
[TABLE]
where
[TABLE]
and are the messages conveying measurement information and a filtered (or predicted) pdf of provided by the other filters, respectively. Similarly, the second filtered pdf is evaluated as (see Eq. (14))
[TABLE]
where333If the pseudo-measurement (17) depends also on , marginalization with respect to this substate is required in the computation of the following message.
[TABLE]
is the message conveying pseudo-measurement information. Then, in its second step (i.e., in its time update), Fi computes the new forward prediction (see Eq. (16))
[TABLE]
where has the same meaning as (see Eq. (20)), but is not necessarily equal to it (since more refined information about could be made available by the other filters of the network after that the message (20) has been computed).
Formulas (19)-(21) and (23) involve only products of pdfs and integrations of products; for this reason, their evaluation can be represented as a forward only message passing over the cycle free factor graph shown in Fig. 4. Note that, if this graph is compared with the one shown in Fig. 3, the following additional elements (identified by blue lines) are found:
-
Five equality nodes - Four of them allow to generate copies of the messages , , and , to be shared with the other filters of the network, whereas the remaining one is involved in the second measurement update of Fi.
-
A block in which the predicted/filtered pdfs , ; , and provided by the other filters of the network are processed - In this block, the messages (with and ) and are computed (see Eqs. (20), (22) and (23)); this block is connected to oriented edges only, i.e. to edges on which the flow of messages is unidirectional.
Given the graphical model represented in Fig. 4, step S2 can be accomplished by adopting the same conceptual approach as [21, Sec. III], where the factor graph on which RBPF and dual RBPF are based is devised by merging two sub-graphs, that refer to distinct substates. For this reason, a graphical model for the whole network of Bayesian filters can be developed by interconnecting distinct factor graphs, each structured like the one shown in that Figure. For instance, if is assumed for simplicity, this procedure results in the graphical model shown in Fig. 5. It is important to note that, in this case, if the substates and estimated by F1 and F2, respectively, do not form a partition of state vector , they share a portion of it; this consists of state variables, that are separately estimated by the two Bayesian filters. The parameter can be considered as the degree of redundancy characterizing the considered network of filters. The presence of redundancy in a filtering algorithm may result in an improvement of estimation accuracy and/or tracking capability; however, this is obtained at the price of an increased complexity with respect to the case in which F1 and F2 are run on disjoint substates.
Once the graphical model for the whole network has been developed, step S3 can be easily accomplished. In fact, recursive filtering algorithms for the considered network can be derived by systematically applying the SPA to its graphical model after that a proper scheduling has been established for the exchange of messages among its Bayesian filters. Moreover, in developing a specific filtering algorithm to be run on a network of Bayesian filters, we must always keep in mind that:
-
Its th recursion is fed by the set of forward predictions , , , , , and generates couples of filtered densities , , , , and new forward predictions , , , , . Moreover, similarly as MPF, a joint filtered density for the whole state is unavailable (unless the substate of one or more of the employed Bayesian filters coincides with ) and multiple filtered/predicted pdfs are available for any substate shared by distinct filters.
-
Specific algorithms are needed to compute the pseudo-measurement and the nuisance substate pdfs in the Fl, Fi block appearing in Fig. 5. These algorithms depend on the considered SSM and on the selected message scheduling; for this reason, a general description of their structure cannot be provided.
-
The graphical model shown in Fig. 5, unlike the one illustrated in Fig. 3, is not cycle free; the presence of cycles is highlighted in the considered figure by showing the flow of messages along one of them. The presence of cycles raises the problems of a) identifying all the messages that can be iteratively refined and b) establishing the order according to which they are computed. Generally speaking, iterative message passing on the graphical model referring to a network of filters involves both the couple of measurement updates and the time update accomplished by all the interconnected filters. In fact, this should allow each Bayesian filter to a) progressively refine the nuisance substate density employed in its measurement/time updates, and b) improve the quality of the pseudo-measurements exploited in its second measurement update. For this reason, if iterations are run, the overall computational complexity of each recursion is multiplied by .
In the following section, a specific application of the general principles illustrated in this paragraph is analysed.
III. Filtering Algorithms Based on the Interconnection of an Extended
Kalman Filter with a Particle Filter
In this section we focus on the development of two new filtering algorithms based on the interconnection of an extended Kalman filter with a particle filter. We first describe the graphical models on which these algorithms are based. Then, we provide a detailed description of the computed messages and their scheduling in a specific case. Finally, we provide a detailed analysis of the computational complexity of the devised algorithms.
A. Graphical Modelling
In this section, we develop new filtering algorithms for the class of conditionally linear Gaussian SSMs [10], [20], [21]; this allows us to partition the state vector in the th interval as , where , () is its *linear *(nonlinear) component (with ). The devised algorithms rely on the following assumptions:
-
They involve two interconnected Bayesian filters, denoted F1 and F2.
-
Filter F2 is a particle filter444In particular, a sequential importance resampling filter is employed [1]. and estimates the nonlinear state component only (so that and ).
-
Filter F1 is an* extended Kalman filter* and works on the whole system state or on the linear state component only. Consequently, in the first case (denoted C.1 in the following), and is empty, and both the interconnected filters estimate the nonlinear state component (for this reason, the corresponding degree of redundancy is ). In the second case (denoted C.2 in the following), instead, and , and the two filters estimate disjoint substates (consequently, ).
This network configuration has been mainly inspired by RBPF. In fact, similarly as RBPF, the filtering techniques we develop are based on the idea of concatenating a local filtering method (EKF) with a global method (PF). However, unlike RBPF, a *single *extended Kalman filter is employed in place of a bank of Kalman filters. It is also worth remembering that, on the one hand, the use of a particle filter interconnected with an extended Kalman filter for tracking disjoint substates has been suggested in [14, Par. 3.2], where, however, no filtering algorithm based on this idea has been derived. On the other hand, a filtering scheme based on the interconnection of the same filters, but working on partially overlapped substates, has been derived in [22], where it has also been successfully applied to inertial navigation.
Based on the graphical model shown in Fig. 5, the factor graph illustrated in Fig. 6 can be drawn for case C.1. It is important to point out that:
-
Filter F1 is based on linearised (and, consequently, approximate) Markov/measurement models of the considered SSM, whereas filter F2 relies on exact models, as explained in more detail below.
-
Since the nuisance substate is empty, no marginalization is required in F1; for this reason, the messages ; (i.e., and ) visible in Fig. 5 do not appear in Fig. 6.
-
The new predicted pdf and the second filtered pdf computed by F2 (i.e., the messages and , respectively) feed the FF1 block, where they are jointly processed to generate the pseudo-measurement message () feeding F1. Similarly, as shown below, the computation of the pseudo-measurement message exploited by F2 (i.e., of the message , ) requires the knowledge of a new predicted pdf that refers, however, to the linear state component only. In our graphical model, the computation of this prediction is accomplished by the FF2 block; this explains why the new predicted pdf () evaluated by F1 and referring to the whole state of the considered SSM, does not feed the FF2 block.
-
Particle resampling with replacement has been included in the portion of the graphical model referring to filter F2. This important task, accomplished after the second measurement update of this filter, does not emerge from the application of the SPA to our graphical model and ensures that the particles emerging from it are all equally likely. Note also that, because of the presence of particle resampling, two versions of the second filtered pdf () become available, one before resampling, the other one after it. As shown in the next paragraph, the second version of this message is exploited in the computation of the pseudo-measurement message ().
In the remaining part of this paragraph, we first provide various details about the filters F1 and F2, and the way pseudo-measurements are computed for each of them; then, we comment on how the factor graph shown in Fig. 6 should be modified if case C.2 is considered.
Filter F1 - Filter F1 is based on the linearized versions of Eqs. (12) and (13), i.e. on the models (e.g., see [2, pp. 194-195])
[TABLE]
and
[TABLE]
respectively; here, , , , and () is the forward prediction (forward estimate) of computed by F1 in its th (th) recursion. Consequently, the approximate models
[TABLE]
and
[TABLE]
appear in the graphical model shown in Fig. 6.
Filter F2 - In developing filter F2, we assume that the portion of Eq. (12) referring to the nonlinear state component (i.e., the last lines of the considered Markov model) and that the observation model (13) can be put in the form (e.g., see [21, eqs. (3)-(4)])
[TABLE]
and
[TABLE]
respectively. In Eq. (28), () is a time-varying dimensional real function ( real matrix) and consists of the last elements of the noise term appearing in Eq. (12) (the covariance matrix of is denoted ); moreover, in Eq. (29), () is a time-varying dimensional real function ( real matrix). This explains why filter F2 is based on the exact pdfs
[TABLE]
and
[TABLE]
that appear in the graphical model shown in Fig. 6.
Computation of the pseudo-measurements for filter F1 - Filter F1 is fed by pseudo-measurement information about the whole state , i.e. about both the substates and . On the one hand, pseudo-measurements about the nonlinear state component are provided by the particles contributing to the filtered pdf () available after particle resampling. On the other hand, pseudo-measurements about the linear state component are evaluated by means of the same method employed by RBPF for this task. This method is based on the idea that the random vector (see [10, Par. II.D, p. 2283, eq. (24a)] and [21, Sec. III, p. 1524, eq. (9)])
[TABLE]
depending on the nonlinear state component only, must equal the sum (see Eq. (28))
[TABLE]
that depends on the linear state component. For this reason, realizations of (32) are computed in the FF1 block on the basis of the messages () and () and are treated as measurements about .
Computation of the pseudo-measurements for filter F2 - The messages feeding FF2 block are employed for: a) generating a pdf of , so that the dependence of the state update and measurement models (i.e., of the densities , (30) and (31), respectively) on this substate can be integrated out; b) computing pseudo-measurement information about . As far as the last point is concerned, the approach we adopt is the same as that developed for dual RBPF in [21, Sec. V, pp. 1528-1529]. Such an approach relies on the Markov model
[TABLE]
referring to the linear state component [20], [21]; in the last expression, () is a time-varying dimensional real function ( real matrix), and consists of the first elements of the noise term appearing in Eq. (12) (the covariance matrix of is denoted , and independence between and is assumed for simplicity). From Eq. (34) it is easily inferred that the random vector
[TABLE]
equals the sum
[TABLE]
that depends on only; for this reason, (35) can be interpreted as a pseudo-measurement about . In this case, the generation of pseudo-measurement information can be summarised as follows. First, pdfs, one for each of the particles conveyed by the message (), are computed for the random vector (35) by exploiting the statistical information about the linear state component made available by F1. Then, each of these pdfs is correlated with the pdf obtained for under the assumption that this vector is expressed by Eq. (36); this procedure results in a set of particle weights, different from those computed on the basis of (29) in the first measurement update of F2.
A graphical model similar to the one shown in Fig. 6 can be easily derived from the general model appearing in Fig. 5 for case C.2 too. The relevant differences with respect to case C.1 can be summarized as follows:
-
Filters F1 and F2 estimate and , respectively; consequently, their nuisance substates are and , respectively.
-
The FF1 block is fed by the predicted/filtered pdfs computed by F2; such pdfs are employed for: a) for providing F1 with a pdf for , so that dependence of the Markov model (see Eq. (34))
[TABLE]
and of the measurement model (31) on this substate can be integrated out; b) generating pseudo-measurement information about the substate only. As far as point a) is concerned, it is also important to point out that the approximate model () on which F1 is based can be derived from Eq. (31) (Eq. (37)) after setting (); here, () denote the prediction (the estimate) of evaluated on the basis of the message () computed by F2. Moreover, since Eqs. (29) and (34) exhibit a linear dependence on , F1 becomes a standard Kalman filter.
The derivation of a specific filtering algorithm based on the graphical models described in this paragraph requires defining the scheduling of the messages passed on them and deriving mathematical expressions for such messages. These issues are investigated in detail in the following paragraph.
B. Message Scheduling and Computation
In this paragraph, a recursive filtering technique, called dual Bayesian filtering (DBF) and based on the graphical model illustrated in Fig. 6, is developed. In each recursion of the DBF technique, F1 is run before F2; moreover, the presence of cycles in the graph on which it is based is accounted for by including a procedure for the iterative computation of the messages passed on them. Our description of the selected scheduling relies on Fig. 7, that refers to the th recursion and to the th iteration accomplished within this recursion (with , , , , where represents the overall number of iterations). It is important to point out that the following changes have been made in Fig. 7 with respect to Fig. 6:
-
A simpler notation has been adopted for the messages to ease reading. In particular, the symbols , , (), () and () represent the messages , , (), () and (), respectively; moreover, the integer parameter appearing in the superscript of some of them represents the iteration index.
-
Blue (red) arrows have been employed to identify Gaussian messages (messages in other forms).
-
The FF2 block is fed by the two filtered pdfs of computed by F1 (i.e., by the messages and ), but not by the predicted pdf , since the last message is useless.
-
The forward prediction feeding F2 is involved in the proposed iterative procedure and may change from iteration to iteration because of resampling (in fact, this may lead to discarding a portion of the particles conveyed by this message); for this reason, its dependence on the iteration index has been explicitly indicated.
-
The same message (namely, ) is employed in F2 for integrating out the dependence of the Markov model (30) and of the measurement model (31) on the linear component .
-
A memory cell (identified by the label ‘D’) has been added to store the last message evaluated in each iteration (i.e., the pseudo-measurement message ), so that it can be made available to F1 at the beginning of the next iteration.
The DBF technique, at the beginning of its th recursion, is fed by the message
[TABLE]
and
[TABLE]
that corresponds to in Fig. 7; here,
[TABLE]
is the th component of , is the th particle predicted in the previous (i.e., in the th) recursion and is its weight. The DBF processes the messages (38) and (39), and the new measurement (29), and generates: a) a couple of filtered densities for both and ; b) the output messages and , having the same functional form as (38) and (39), respectively. The message passing accomplished to achieve these results can be divided in the three consecutive phases listed below.
I - In the first phase, filter F1 accomplishes its first measurement update on the basis of the forward prediction and of the new measurement . This leads to the ordered computation of the messages and .
II - In the second phase, an iterative procedure involving the first measurement update and the time update of F2, and the computation of pseudo-measurements and their exploitation in the second measurement update of each filter is carried out. The th iteration of this procedure can be divided into six consecutive steps and leads to the ordered computation of the following messages: 1) , ; 2) , , ; 3) ; 4) ; 5) ; 6) .
III - In the third phase, the new predictions and are generated by F1 and F2, respectively. This involves the ordered computation of the following messages: , and .
In the remaining part of this paragraph, the expressions of all the messages computed in each of the three phases described above are provided; the derivation of these expressions is sketched in Appendix A.
Phase I - In this phase, the forward prediction (38) feeding filter F1 is merged with the message
[TABLE]
conveying measurement information; the covariance matrix and the mean vector of the last message are evaluated on the basis of the associated precision matrix
[TABLE]
and of the associated transformed mean vector
[TABLE]
respectively, with . This results in the first filtered pdf (see Fig. 7)
[TABLE]
computed by filter F1; here, the covariance matrix and the mean vector are evaluated on the basis of the associated precision matrix
[TABLE]
and of the associated transformed mean vector
[TABLE]
respectively, and .
Phase II - A short description of the six steps accomplished in the th iteration of this phase is provided in the following. As shown below, the elements of the particle set processed by F2 can change from iteration to iteration, even if its cardinality remains the same. In the following, the particle set available* at the beginning* of the th iteration is denoted ; , , , ; note that the initial particle set is , , , (i.e., for any ) and collects the predicted particles conveyed by the message (39).
- Second measurement update in F1 - The second filtered pdf (see Fig. 7)
[TABLE]
is computed by F1 in order to exploit the pseudo-measurement message (evaluated in the previous iteration); since for (note that F1 cannot benefit from pseudo-measurement information at the beginning of the first iteration) and for (see Eq. (77)), it easy to show that
[TABLE]
and
[TABLE]
for , whereas
[TABLE]
and
[TABLE]
for ; here, . Then, the message (49) is marginalized with respect to in the FF2 block; this results in the message
[TABLE]
where and are easily extracted from (52) and (53) for ( (50) and (51) for ), respectively, since consists of the first elements of .
- First measurement update in F2 - This step concerns the computation of the message (see Fig. 7)
[TABLE]
that represents the first filtered pdf computed by F2. The message conveys a set of predicted particles; its th component is given by
[TABLE]
and, consequently, coincides with (40) for only; note also that the same weight is assigned to all the messages for any , since particle resampling is employed in each iteration of this phase (see step 4)). The message (see Fig. 7)
[TABLE]
instead, conveys measurement information, that is the information about provided by (29). In particular, the value
[TABLE]
taken on by the message (57) for represents the measurement-based weight assigned to the th particle ; here,
[TABLE]
[TABLE]
and . From (55), (56) and (58) it is easily inferred that (55) conveys the same set of particles as and that its th component is
[TABLE]
- Computation of the pseudo-measurements for F2 - This step is accomplished in the FF2 block and aims at computing the message ; this conveys the statistical information about that originates from the pseudo-measurement (35) (further details about this message and its meaning are provided in Appendix A). Actually, what is really required in the next step is the value taken on by this message for (with ), because of the Dirac delta function conveyed by the message (61) and appearing in the right-hand side (RHS) of Eq. (68); such a value is
[TABLE]
and represents a new weight to be assigned to , i.e. to the th particle of the set ; here,
[TABLE]
[TABLE]
, , , ,
[TABLE]
[TABLE]
, , , and and ( and ) are extracted from and ( and ), respectively (see Eqs. (45) and (49)), since they refer to the first elements of .
- Second measurement update in F2 - In this step, the weights of the particles forming the set are updated on the basis of the weights computed in the previous step (see Eq. (LABEL:m_pm_x_N_l_ja)). The new weight for the th particle is computed as
[TABLE]
and combines the initial weight (originating from (56)) with the weights (58) and (LABEL:m_pm_x_N_l_ja) related to the measurement (29) and the pseudo-measurement (35), respectively. Note also that the weight (67) is conveyed by the message (see Fig. 7)
[TABLE]
that represents the th component of the message (with ).
Once all the weights are available, their normalization is accomplished; this produces the normalised weights
[TABLE]
where . The particles and their weights represent the* second* filtered pdf of computed by F2 in the th iteration of the considered recursion; consequently, the final filtered pdf evaluated by F2 is represented by the particles ad their weights computed in the last iteration.
Resampling with replacement is now accomplished for the particle set on the basis of the new weights (see Eq. (70)). This entails that the particles and their associated weights are replaced by the new particles , forming the set and having identical weights (all equal to ). Consequently, the effect of resampling can be represented as turning the message (69) into the message
[TABLE]
with .
- Time update in F2 - In this step, the message , conveying the predicted pdf of , is computed using the same method as RBPF (e.g., see [21, Sec. IV, p. 1526]). For this reason, for any , the pdf (see Fig. 7)
[TABLE]
representing a prediction of conditioned on is computed first; here,
[TABLE]
[TABLE]
and . Then, the sample is drawn from the Gaussian function (73) and the weight is assigned to it; these information are conveyed by the th component
[TABLE]
of the message .
- Computation of the pseudo-measurements for F1 - This step is accomplished in the FF1 block and aims at generating the message (see Fig. 7)
[TABLE]
that conveys the pseudo-measurement information exploited by F1 in its second measurement update of the next iteration. The mean vector is evaluated as
[TABLE]
where
[TABLE]
and
[TABLE]
are a dimensional mean vector and a dimensional mean vector, respectively. The covariance matrix , instead, is computed as
[TABLE]
where
[TABLE]
is a covariance matrix,
[TABLE]
is a covariance matrix and
[TABLE]
is cross-covariance matrix. Moreover, , , the covariance matrix and the mean vector are computed on the basis of the associated precision matrix
[TABLE]
and of the associated transformed mean vector
[TABLE]
respectively, and
[TABLE]
The computation of (77) concludes step 6) and, consequently, the th iteration of phase II. Then, if the iteration index is less than , it is increased by one, so that a new iteration can be started by going back to step 1); otherwise, phase III is accomplished.
**Phase III **- In this phase, the message (see Fig. 7)
[TABLE]
conveying the final filtered pdf provided by F1, is computed on the basis of Eqs. (48)–(53) as if a new iteration (corresponding to ) was started. Then, if , the output messages and (i.e., the new predicted densities) are computed; otherwise, DBF processing is over, since the final measurement has been processed. In the first case, the th component of is generated by F1 as (see Fig. 5)
[TABLE]
for , , (see Eq. (56)); this means that the particle set available at the beginning of the next recursion consists of the particles ; , , , . Then, the predicted pdf is computed by F1 as (see Fig. 7)
[TABLE]
where
[TABLE]
and
[TABLE]
This concludes the th recursion of the DBF technique.
The algorithm described above needs a proper initialization. In our work, a (known) Gaussian pdf is assumed for the initial ; for this reason, DBF is initialised by setting for F1 and by sampling the pdf (that results from the marginalization of with respect to ) times in order to generate the initial particle set ; then, the same weight () is assigned to each particle.
All the processing tasks accomplished by the DBF technique are summarized in Algorithm 1. Note also that, at the end of the th recursion, estimates and of and , respectively, can be evaluated as: a) (see our comments following Eq. (70)) or , where consists of the last elements of (see Eq. (88)); b) , where consists of the first elements of .
Following the same line of reasoning, a filtering method similar to DBF can be developed for case C.2, i.e. for the second case considered in the previous paragraph. Details are omitted for space limitations; however, the relevant differences between this method (called simplified DBF, SDBF, in the following) and the DBF technique can be summarised as follows:
-
In phase I, is assumed in computing the first filtered pdf of of , where denotes the prediction of evaluated on the basis of the message (39) provided by F2.
-
In phase II, the message (77) is replaced by
[TABLE]
since the pseudo-measurements computed in the FF1 block refer to the linear state component only; here, and are given by Eqs. (79) and (82), respectively.
- In phase III, is assumed in computing the prediction of , where denotes the estimate of evaluated on the basis of the final filtered pdf computed by F2.
C. Computational complexity
The computational cost of the DBF and SDBF techniques has been carefully assessed in terms of number of floating operations (flops) to be executed in each of their recursions. The general criteria adopted in estimating the computational cost of an algorithm are the same as those illustrated in [15, App. A, p. 5420] and are not repeated here for space limitations. A detailed analysis of the cost required by each task accomplished by the DBF and the SDBF techniques is provided in Appendix B. Our analysis leads to the conclusion that the computational cost of the DBF and of the SDBF are approximately of order and , respectively, with
[TABLE]
and
[TABLE]
Each of the last two expressions has been derived as follows. First, the costs of all the tasks identified in Appendix B have been summed (see Eqs. (112)-(119)); then, the resulting expression has been simplified, keeping only the dominant contributions due to matrix inversions, matrix products and Cholesky decompositions and discarding all the contributions that originate from the evaluation of the matrices (with and ), , and and the functions (with and ), and . Moreover, the complexity of particle resampling has been ignored. A similar approach has been followed for EKF, for RBPF and for the MPF technique described in [9]; their complexities are approximately of order , and , respectively, with
[TABLE]
[TABLE]
and
[TABLE]
note that the symbols appearing in the last formula are the same as those defined in ref. [9]. A detailed derivation of the eqs. (97)-(99) is provided in the Appendices C-E.
It is important to keep in mind that a comparison among the computational costs listed above does not fully account for the gap that can be observed in the execution speed of the corresponding algorithms. In fact, distinct filtering techniques may have substantially smaller memory requirements and, as evidenced by our numerical results, this may influence their overall execution speed. For instance, the DBF/SDBF techniques need to store the state estimates and predictions generated by a single extended Kalman filter, whereas RBPF needs to memorise those computed by a bank of Kalman filters running in parallel. Finally, it is worth stressing that (95) and (96) exhibit a linear dependence on the parameter . Actually, in our computer simulations, has been always selected, since marginal improvements have been obtained by increasing beyond unity.
IV. Numerical Results
In this section we first compare, in terms of accuracy and execution time, the DBF and SDBF techniques with an extended Kalman filter (corresponding to F1 of the DBF technique) and the RBPF technique (corresponding to the combination of F2 of the DBF technique with a bank of Kalman filters) for a specific CLG SSM, denoted SSM #1. This SSM is very similar to the dynamic model described in [21, Par. VII-A, p. 1531], and refers to an agent moving on a plane and whose state is defined as ; here, and (corresponding to and , respectively) represent the agent velocity and its position, respectively (their components are expressed in m/s and in m, respectively). The dynamic models (see [21, eqs. (67)-(68), p. 1531])
[TABLE]
and
[TABLE]
are adopted for the agent velocity and position, respectively; here, is a forgetting factor (), is the sampling interval, and are mutually independent additive white Gaussian noise (AWGN) processes (whose elements are characterized by the covariance matrices and , respectively),
[TABLE]
is the acceleration associated with position/velocity-dependent forces, and are scale factors (both expressed in m/s2), is a *reference distance, * is the versor (i.e., the vector of unit norm) associated with and is a continuous, differentiable and dimensionless function (the parameter represents a reference velocity). Moreover, the measurement model
[TABLE]
is adopted; here, is an AWGN process, whose elements are characterized by the covariance matrix diag.
In our computer simulations, the estimation accuracy of the considered filtering techniques for SSM#1 has been assessed by evaluating two root mean square errors (RMSEs), one for the linear state component, the other for the nonlinear one, over an observation interval lasting ; these are denoted alg (m) and alg (m/s) respectively, where ‘alg’ denotes the algorithm these parameters refer to (note also that DBF is computed on the basis of the estimate of generated by F2, since this was found to be slightly more accurate than that evaluated by F1). Our assessment of computational requirements is based, instead, on comparing (95), (96), (97) and (98), and on assessing the average execution time required by each algorithm over the whole observation interval. Moreover, the following values have been selected for the parameters of SSM#1: , s, m, m, m/s, m/s2, m, m/s2 and m/s (the initial position and the initial velocity have been set to m m and m/s, m/s, respectively). These values ensure that: a) the two components of the position vector are represented by fast and damped oscillations in the observation interval; b) the time variations of the state vector can be accurately tracked by RBPF.
Some numerical results showing the dependence of and on the number of particles () for RBPF, EKF, DBF and SDBF are illustrated in Fig. 8 (simulation results are indicated by markers, whereas continuous lines are drawn to fit them, so facilitating the interpretation of the available data); in this case, has been selected for DBF/SDBF and the range has been considered for . These results show that:
-
The EKF technique is appreciably outperformed by the other three filtering algorithms in terms of both and for any value of ; for instance, EKF (EKF) is about () times larger than DBF (DBF) for .
-
DBF/SDBF perform slightly worse than RBPF for the same value of (for instance, DBF and DBF are about larger than the corresponding quantities evaluated for RBPF).
-
No real improvement in terms of and is found for , if RBPF, DBF or SDBF are employed.
-
The SDBF performs very similarly as DBF; for this reason, in this specific case, the presence of redundancy in the DBF does not allow to achieve a better estimation accuracy.
Despite their similar accuracies, RBPF, DBF and SDBF are characterized by different computational complexities and execution times. This is evidenced by the numerical results appearing in Fig. 9 and showing the dependence of the execution time and the computational complexity on for the considered filtering algorithms. For instance, from these results it is easily inferred that the DBF complexity is about times smaller than that of RBPF for ; however, the gap in terms of execution time is even larger mainly for the reasons illustrated at the end of Paragraph C. (in particular, the execution time for the DBF is approximately 0.61\times smaller than that required by RBPF). Moreover, the results shown in Figs. 8-9 lead to the conclusion that, in the considered scenario, DBF/SDBF achieve a better accuracy-complexity tradeoff than RBPF.
The second SSM considered in this work has been inspired by refs. [12] and [14]. In fact, it refers to a sensor network employing sensors placed on the vertices of a square grid (partitioning a square area whose side is equal to m) and receiving the reference signals radiated, at the same power level and at the same frequency, by independent targets moving on a plane. Each target evolves according to the motion model described by Eqs. (100)-(101) with for any . In this case, the considered SSM (denoted SSM#2 in the following) refers to the whole set of targets and its state vector results from the ordered concatenation of the vectors ; , , , , where , and and represent the th target velocity and the position, respectively. Moreover, the following additional assumptions have been made about this SSM: 1) the process noises and , affecting the th target position and velocity, respectively, are given by and , where is two-dimensional AWGN, representing a random acceleration and having covariance matrix (with , , , ); 2) the measurement acquired by the th sensor (with , , , ) in the -th observation interval is given by
[TABLE]
where the measurement noise is AWGN with variance , denotes the normalised power received by each sensor from any target at a distance from the sensor itself and is the position of the considered sensor; 3) the overall measurement vector results from the ordered concatenation of the measurements ; , , , and, consequently, provides information about the position only; 4) the initial position and the initial velocity of the th target have been randomly selected (with , , , ). As far as the last point is concerned, it is important to mention that, in our computer simulations, distinct targets have been placed in different squares of the partioned area in a random fashion; moreover, the initial velocity of each target has been randomly selected within the interval in order to ensure that the trajectories of distinct targets do not cross each other in the observation interval.
The following values have been selected for the parameters of SSM#2: , m, s, , m/s2, dB, , m, m/s and m/s. Moreover, a number of targets ranging from to has been observed for s.
Our computer simulations for SSM#2 have aimed at evaluating: a) the accuracy achieved by different filtering algorithms in tracking the position of targets; b) the probability that each filtering algorithm diverges in the considered observation interval (this parameter is denoted in the following). In practice, the accuracy achieved in position tracking has been assessed by estimating the RMSE characterizing the whole set ; , , , over each instant of the considered observation interval; note that, if the th target is considered, its position represents the nonlinear component of the associated substate , because of the nonlinear dependence of on it (see Eq. (104)). On the other hand, the probability has been assessed by carefully identifying all the simulation runs in which the tracking of at least one of the targets fails. Moreover, the tracking accuracy and the probability of divergence have been evaluated for the following six filtering techniques: 1) EKF; 2) RBPF; 3) the MPF technique developed in [9] and based on the interconnection of identical particle filters (one for each target); 4) DBF; 5) SDBF; 6) a novel filtering algorithm based on the interconnection of filters and dubbed MBF algorithm (MBFA). The last algorithm involves the interconnection of an extended Kalman filter with particle filters, each representing the filtered/predicted pdfs of a two-dimensional vector through weighted particles. More specifically, the th particle filter estimates the position of the th target (with , , , ); consequently, the degree of redundancy of the MBFA is , i.e. the same as DBF. The computation of the messages passed in the -th recursion of the MFBA is based on the same equations as those derived for DBF; the only modifications are due to the fact that:
-
The measurement update accomplished by the th particle filter of the MBFA requires integrating out the dependence of the measurement vector on the positions ; . This marginalization is accomplished by exploiting the pdfs of the positions ; predicted by the other particle filters. Moreover, the computation of particle weights requires drawing particles from the predicted pdfs of the other filters (see [9, eq. (7), p. 354]).
-
The computation of the pseudo-measurements for the extended Kalman filter requires a particle representation for the whole vector , that results from the ordered concatenation of the vectors ; , , , . In the MBFA, the th particle for is generated by: a) taking the th element of the particle set made available, after resampling, by each of the particle filters (with , , , ); b) concatenating the particles obtained in this way.
In our computer simulations, has been selected for RBPF, DBF and SDBF. Moreover, in the MPF technique and in the MBFA, each of particle filters makes use of particles, where . Note also that: a) the parameter corresponds to the parameter of [9, Sec. III], since is set in MPF (where denotes the number of children generated in the time update step); b) in our simulations, the ratio is always close to for both the MPF technique and the MBFA. These choices ensure that all the algorithms involving PF have comparable execution times; for instance, the execution time of RBPF, MPF and DBF is approximately %, % and % larger, respectively, than that of the MBFA for targets. Despite this, these techniques exhibit different behaviours. In fact, our computer simulations have evidenced that, on the one hand, EKF and SDBF quickly diverge after their initialization and, therefore, are useless in the considered scenario. On the other hand, the RBPF, the MPF and the DBF techniques, and the MBFA achieve similar accuracies in tracking conditions, but are characterized by different probabilities of divergence. This is evidenced by Fig. 10, that shows the dependence of the probability on the overall number of targets. From these results it is easily inferred that, as the number of target increases, the RBPF and the MPF techniques are substantially outperformed by the DBF technique and the MBFA. These results lead to the conclusion that the property of redundancy can play a key role in some applications, since it can substantially reduce the probability of divergence of a filtering algorithm.
V. Conclusions
In this manuscript, the problem of developing filtering algorithms that involve multiple interconnected Bayesian filters running in parallel has been investigated. The devised solution, called multiple Bayesian filtering, is based on the factor graph representation of Bayesian filtering. The application of our graphical approach to a network consisting of two Bayesian filters has been illustrated. Moreover, a specific instance of the proposed approach has been analysed in detail for the case in which the considered SSM is CLG, and the interconnected filters are an extended Kalman filter and a particle filter. Simulation results for two specific SSMs evidence that the devised filtering techniques perform closely to other well known filtering methods, but are appreciably faster or offer a better tracking capability.
Appendix A
In this Appendix, the derivation of the expressions of various messages evaluated in each of the three phases which the DBF technique consists of is sketched.
Phase I - Message (41) conveys the pdf (27); therefore, it can be expressed as . The last formula can be easily put in the equivalent form (41) (see [17, Table 3, p. 1304, Eqs. (III.5) and (III.6)]). Then, substituting eqs. (38) and (41) in the RHS of Eq. (44) and applying formula no. 2 of [21, Table I] yields Eqs. (45)–(47).
Phase II - Step 1) The derivation of the formulas (49), (52) and (53) referring to the message can be considered as a straightforward application of formula no. 2 of [21, Table I], since Eq. (48) has exactly the same structure as Eq. (2), and both and are Gaussian messages.
Step 2) - The expression (58) of the weight can be derived as follows. We first substitute Eq. (31) (conditioned on ) and Eq. (54) in the RHS of Eq. (57); then, the resulting integral is solved by applying formula no. 1 of [21, Table II].
Step 3) - The derivation of the expression (LABEL:m_pm_x_N_l_ja) for the weight is similar to that illustrated for the particle weights originating from the pseudo-measurements in dual RBPF and can be summarised as follows (additional mathematical details can be found in [21, Sec. V, pp. 1528-1529]). Two different Gaussian densities are derived for the random vector (35), conditioned on . The expression of the first density originates from the definition (35) and from the knowledge of the joint pdf of and ; this joint density is obtained from: a) the statistical information provided by the messages and , resulting from the marginalization of (45) and (49), respectively, with respect to ; b) the Markov model (37). This leads to the pdf
[TABLE]
where
[TABLE]
and
[TABLE]
The second pdf of , instead, results from the fact that this vector must equal the sum (36); consequently, it is given by
[TABLE]
Given the pdfs (105) and (108), the message is expressed by their correlation, i.e. it is computed as
[TABLE]
Substituting (105) and (108) in the RHS of the last expression, setting and applying formula no. 4 of [21, Table II] to the evaluation of the resulting integral yields Eq. (LABEL:m_pm_x_N_l_ja); note that (66) and (65) represent the values taken on by (106) and (107), respectively, for .
Step 4) - Formula (69), that refers to the message , is obtained by substituting (61) in the RHS of Eq. (68) and observing that (LABEL:m_pm_x_N_l_ja) represents the value taken on by the message for .
Step 5) Eq. (73) is results from substituting Eqs. (54) and (109) in Eq. (72) and, then, applying formula no. 1 of [21, Table III] to evaluate the resulting integral.
Step 6) - The message (77) results from merging, in the FF1 block, the statistical information about the nonlinear state component conveyed by the message (and, consequently, by its components ; see Eq. (71)) with those provided by the pseudo-measurement (32) about the linear state component. The method employed for processing this pseudo-measurement is the same as that developed for RBPF and can be summarised as follows (additional mathematical details can be found in [21, Sec. IV, p. 1527]):
a) The particles and , conveyed by the messages (71) and (76), respectively, are employed to compute the th realization (87) of the vector (32) according to Eq. (87).
b) The pseudo-measurement (87) is exploited to generate the (particle-dependent) message
[TABLE]
that conveys pseudo-measurement information about ; the covariance matrix and the mean vector of this message are computed on the basis of the precision matrix (85) and the transformed mean vector (86), respectively. Finally, the message (77) results from merging the message (its th component is expressed by Eq. (71)) with the pdfs (see Eq. (110)); the adopted approach is based on the fact that: a) as it can be easily inferred from our previous derivations, the Gaussian message (110) is evaluated under the condition that ; b) the messages and provide complementary information, because they refer to the two different components of the overall state . Consequently, the statistical information conveyed by the sets and can be merged in the joint pdf
[TABLE]
referring to . Then, the message (77) is computed by projecting the pdf (111) onto a single Gaussian pdf having the same *mean *and covariance.
Phase III - The message (91) is computed as follows. Substituting the expressions (26) of and (88) of in the RHS of Eq. (90) and applying formula no. 1 of [21, Table II] to the evaluation of the resulting integral produces Eqs. (91)–(93).
Appendix B Computational complexity of the DBF and SDBF techniques
In this appendix, the computational complexity of the tasks accomplished in a single recursion of the DBF technique is assessed in terms of flops. Moreover, we comment on how the illustrated results can be also exploited to assess the computational complexity of a single recursion of the SDBF technique. In the following, , , , and , and , , and denote the cost due to the evaluation of the matrices , , , and , and of the functions , , and , respectively. Moreover, similarly as [15], it is assumed that the computation of the inverse of any covariance matrix involves a Cholesky decomposition of the matrix itself and the inversion of a lower or upper triangular matrix.
- Filter F1, first measurement update
The overall computational cost of this task is (see Eqs. (42)-(43) and (46)-(47))
[TABLE]
Moreover, we have that: 1) the cost is equal to flops; 2) the cost is equal to flops ( has been already computed at point 1); 3) the cost is equal to flops; 4) the cost is equal to flops. The expressions listed at points 1)-4) can be exploited for the SDBF too; in the last case, however, and must be assumed.
- Filter F2, second measurement update
The overall computational cost of this task is (see Eqs. (52)-(53))
[TABLE]
where the costs and are equal to flops and flops, respectively; if the SDBF is considered, we have that in the last two expressions.
- Filter F2, first measurement update
The overall computational cost of this task is (see Eqs. (58)-(60))
[TABLE]
Moreover, we have that: 1) the cost is equal to flops; 2) the cost is equal to flops (the cost for computing has been already accounted for at point 1)); 3) the cost is equal to flops.
- Filter F2, second measurement update
The overall computational cost of this task is (see Eqs. (67) and (70))
[TABLE]
where the costs and are equal to flops and flops, respectively, and denotes the total cost of the resampling step (that involves a particle set of size ).
- Computation of the pseudo-measurements for filter F2
The overall computational cost of this task is (see Eqs. (LABEL:m_pm_x_N_l_ja)-(66))
[TABLE]
Moreover, we have that: 1) the cost is equal to flops; 2) the cost is equal flops (since the cost for computing has been already accounted for at point 1); 3) the cost is equal to flops; 4) the cost is equal to flops; 5) the cost is equal to flops; 6) the cost is equal to flops (the cost for computing has been already accounted for at point 1); 7) the cost is equal to flops; 8) the cost is equal to flops; 9) the cost is equal to flops (the cost for computing has been already accounted for at point 1)).
- Computation of the pseudo-measurements for filter F1
The overall computational cost of this task is (see Eqs. (79)-(87))
[TABLE]
Moreover, we have that: 1) the cost is equal to flops (the cost for computing has been already accounted for in the time update of filter F2); 2) the cost is equal to flops (the cost for computing has been already accounted for in the time update of filter F2); 3) the cost is equal to flops (the cost for computing has been already accounted for in the time update of filter F2); 4) the cost is equal to flops; 5) the cost is equal to flops; 6) the cost is equal to flops; 7) the cost is equal to flops; 8) the cost is flops.
If the SDBF is considered, the total costs 1)-5) remain unchanged, whereas and in the costs and (see points 7) and 8)); moreover, the cost becomes flops (see point 6)).
- Filter F1, time update
The overall computational cost of this task is (see Eqs. (92)-(93))
[TABLE]
since and have been already computed in the previous time update of filter F2. Moreover, we have that:
- is equal to flops; 2) is equal to flops; 3) is equal to flops; 4) is equal to flops. If the SDBF is considered, is set in the expressions of the costs listed at points 1)-4).
- Filter F2, time update
The overall computational cost of this task is (see Eqs. (74)-(76))
[TABLE]
Moreover, we have that: 1) the cost is equal to flops; 2) the cost is equal to flops ( has been already accounted for at point 1)); 3) the cost is equal to flops.
Appendix C Computational complexity of the EKF technique
In this appendix analysis of EKF complexity is illustrated; the notation is the same as [2, pp. 194-195]. In the following, and , and denote the cost due to the evaluation of the matrices and , and of the functions and , respectively. Moreover, similarly as [15], it is assumed that the computation of the inverse of any covariance matrix involves a Cholesky decomposition of the matrix itself and the inversion of a lower or upper triangular matrix.
- Measurement update
The overall computational cost of this task is
[TABLE]
Moreover, we have that: 1) the cost is equal to flops; 2) is equal to flops; 3) is equal to flops; 4) is equal flops.
- Time update
The overall computational cost of this task is
[TABLE]
where the costs and are equal to flops and flops, respectively.
Appendix D Computational complexity of the RBPF technique
In this appendix a detailed analysis of the RBPF complexity is provided; the adopted notation is the same as [21]. In the following, , and , and , and denote the cost due to the evaluation of the matrices , and , and of the functions , and , respectively. Moreover, similarly as [15], it is assumed that the computation of the inverse of any covariance matrix involves a Cholesky decomposition of the matrix itself and the inversion of a lower or upper triangular matrix.
- Measurement update nonlinear part
The overall computational cost of this task is
[TABLE]
Moreover, we have that: 1) the cost is equal to flops; 2) is equal to flops ( has been already accounted for at point 1)); 3) is equal to flops; 4) is equal to flops; 5) denotes the total cost of the resampling step (that involves a particle set of size ).
- First measurement update linear part
The overall computational cost of this task is
[TABLE]
Moreover, we have that: 1) the cost is equal to flops; 2) is equal to flops; 3) is equal to flops; 4) is equal to flops.
- Second measurement update linear part
The overall computational cost of this task is
[TABLE]
Moreover, we have that: 1) the cost is equal to flops; 2) is equal to flops; 3) is equal to flops.
- Time update nonlinear part
The overall computational cost of this task is
[TABLE]
Moreover, we have that: 1) the cost is equal to flops; 2) is equal to flops ( has been already accounted for at point 1)); 3) is equal to flops.
- Time update linear part
The overall computational cost of this task is
[TABLE]
where the costs and are equal to flops and flops, respectively.
Appendix E Computational complexity of the MPF technique developed in ref.
[9]
In this appendix a detailed analysis of the MPF complexity is illustrated. The notation is the same as [9]. In the following, and denote the cost due to the evaluation of the functions and , respectively. Moreover, similarly as [15], it is assumed that the computation of the inverse of any covariance matrix involves a Cholesky decomposition of the matrix itself and the inversion of a lower or upper triangular matrix.
- Measurement update
The overall computational cost of this task is
[TABLE]
Moreover, we have that: 1) is equal flops; 2) is equal to flops; 3) is equal to flops; 4) denotes the total cost of the resampling step (that involves a particle set of size ).
- Time update
The overall computational cost of this task is
[TABLE]
where the cost is equal to flops.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] M. S. Arulampalam, S. Maskell, N. Gordon and T. Clapp, “A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking”, IEEE Trans. Sig. Proc. , vol. 50, no. 2, pp. 174–188, Feb. 2002.
- 2[2] B. Anderson and J. Moore, Optimal Filtering , Englewood Cliffs, NJ, Prentice-Hall, 1979.
- 3[3] S. Mazuelas, Y. Shen and M. Z. Win, “Belief condensation filtering”, IEEE Trans. Sig. Proc. , vol. 61, no. 18, pp. 4403–4415, Sept. 2013.
- 4[4] V. Smidl and A. Quinn, “Variational Bayesian filtering”, IEEE Trans. Sig. Proc. , vol. 56, no. 10, pp. 5020–5030, Oct. 2008.
- 5[5] A. Doucet, J. F. G. de Freitas and N. J. Gordon, “An introduction to sequential Monte Carlo methods,” in Sequential Monte Carlo Methods in Practice , A. Doucet, J. F. G. de Freitas, and N. J. Gordon, Eds., New York: Springer-Verlag, 2001.
- 6[6] C. Andrieu and A. Doucet, “Particle filtering for partially observed Gaussian state space models”, J. Roy. Statist. Soc.: Ser. B , vol. 64, no. 4, pp. 827–836, 2002.
- 7[7] F. Daum and J. Huang, “Curse of dimensionality and particle filters”, Proc. IEEE Aerospace Conference , vol. 4, Big Sky, MO, 2003, pp. 1979–1993.
- 8[8] T. Bengtsson, P. Bickel, and B. Li, “Curse-of-dimensionality revisited: Collapse of the particle filter in very large scale systems”, Probability and Statistics: Essays in honor of David A. Freedman, vol. 2, pp. 316–334, 2008.
