3.1 Tracking algorithm
In this subsection, we shall present the main IPDAACF algorithm, with its two versions (IPDAACF ^{l}, l=1,2), depending on the choice of the “ β ”parameters: for l=1, one assumes target perceivability (IPDAACF^{1}) and for l=2 target existence (IPDAACF^{2}). The algorithm has the following form:
$$\begin{array}{*{20}l} \xi_{i}(tt)&=\xi_{i}(tt1)+L_{i}(t)\tilde{z}_{i}(t), \\ \xi_{i}(t+1t)&=F\mathcal{C}(\xi_{i}(tt)), \end{array} $$
(9)
i=1,…,N, where ξ_{
i
} is an estimate of x generated by the ith node, \(\tilde {z}_{i}(t)= \sum _{j=1}^{m_{i}(t)} \beta ^{[l]}_{i,j}(t) \tilde {z}_{i,j}(t), \tilde {z}_{i,j}(t)=z_{i,j}(t)H_{i} \xi _{i}(tt1)\), l=1,2, \(\mathcal {C}(\cdot)\) is a single step consensus operator
$$ \mathcal{C}(\xi_{i}(tt)) = \sum_{j\in \mathcal{J}_{i}} c_{ij}(t)\xi_{j}(tt), $$
(10)
where c_{
ij
}(t), i,j=1,…,N, are (generally) time varying weights, such that N×N matrix C(t)=[c_{
ij
}(t)] (consensus matrix) is rowstochastic for all t, and
$$ L_{i}(t)=P_{i}(tt1)H_{i}^{T}S_{i}(t)^{1} $$
(11)
is the local Kalman gain obtained from (1) and (2), using
$$ {{}{\begin{aligned} P_{i}(tt) &= P_{i}(tt1)& \\ & \quad +\left[\beta^{[l]}_{i,0}(t)1\right]L_{i}(t)S_{i}(t)L_{i}(t)^{T}+\tilde{P}_{i}(t,t), \\ \tilde{P}_{i}(t,t)&=L_{i}(t)\! \left[\sum_{j=1}^{m_{i}(t)} \beta^{[l]}_{i,j}(t) \tilde{z}_{i,j}(t) \tilde{z}_{i,j}(t)^{T} \! \! \tilde{z}_{i}(t) \tilde{z}_{i}(t)^{T}\! \right]\! L_{i}(t)^{T}, \\ P_{i}(t+1t) &= F P_{i}(tt) F^{T}+G Q G^{T}, \\ S_{i}(t)&=H_{i} P_{i}(tt1) H_{i}^{T}+R_{i}. \end{aligned}}} $$
(12)
The above algorithm follows structurally the consensusbased overlapping estimation algorithm proposed in [12]. Instead of the local estimators of Luenberger type from [12], we have here trackers of PDA type [10]. The algorithm contains two main parts:

The filtering part, in which the local measurements are processed

The prediction part, in which the agreement between the nodes is enforced through a convex combination of the estimates communicated by the neighboring nodes \(\mathcal {C}(\xi _{i}(tt))\).
Obviously, the algorithm requires only the exchange of state estimates (size n×1). The choice of l in \(\beta ^{[l]}_{i,j}(t)\) results from a predefined setting. For l=1, one obtains the estimation scheme resulting directly from the PDAF [10], while for l=2, the algorithm follows the existencebased PDAF from [15] and becomes more capable of coping with high level of clutter and possible target occlusions (typical for camera networks  see, e.g., [27] for a general discussion).
The choice of the consensus matrix C(t) can be based, in general, on different principles, including the wellknown standard Metropolis weights (see, e.g., [28] and the references therein) and optimization procedures providing the fastest convergence to consensus [29, 30]. However, in the above context (limited FoV, clutter, target occlusions), such approaches provide insufficient tracking accuracy of the proposed algorithm in realtime applications. One should bear in mind that we have, in the context of the proposed algorithm, the socalled “running consensus” [31, 32], consisting of an inseparable pair estimation algorithm  consensus algorithm, each possessing its own dynamics. It would be possible, in principle, to formulate the problem of defining the consensus matrix in a theoretically unified way, including both the estimation algorithm and the consensus scheme; however, such methodologies can hardly provide results applicable in real time. In order to provide a practically efficient solution, the next subsection contains a presentation of a distributed adaptation applicable in real time, aiming at providing adequate timevarying consensus weights in (10), using the locally available realizations of the βparameters, in accordance with the basic principles of the IPDA methodology.
3.2 Distributed adaptation strategy
Distributed adaptation strategy represents the core element of the IPDAACF algorithm. In the context of the scenario considered in this paper, we follow the basic line of thought from [2, 3, 12] and construct a novelimproved fully distributed adaptation procedure generating C(t) in (10), dynamically giving more importance to the nodes with higher probability of receiving targetoriginated measurements, enabling, at the same time, fast information flow through the network. In the sequel, we shall first give a short outline of the original adaptive scheme from [2], and then, we shall present the general adaptation strategy for the tracking algorithm presented above.
1) Basic adaptation scheme: no clutter
The distributed adaptive tracking algorithm ACF in [2] has been derived from [12]; it requires additional internode communication of \(\beta ^{[1]}_{i,0}(t) \in \{0,1 \}\) that are available locally (indicators of measurement availability at time t). Using this information, each node computes \(\mathcal {J}_{i}\) scalars \(\chi ^{i}_{j}(t)\), representing observation histories of the neighboring nodes. The nonnormalized consensus gains are given by \(c_{ij}^{\chi }(t) = c_{ij}^{\chi }(0) k^{\chi ^{i}_{j}(t)},\) for \(\chi ^{i}_{j}(t)\geq 0,\) and \( c_{ij}^{\chi }(t) = c_{ij}^{\chi }(\infty)\left (c_{ij}^{\chi }(\infty)c_{ij}^{\chi }(0)\right)k^{\chi ^{i}_{j}(t)},\) for \( \chi ^{i}_{j}(t) \leq 0\), where \(c_{ij}^{\chi }(0)\) are the initial values and \(c_{ij}^{\chi }(\infty)\) the desired final values; parameter k∈(0,1] determines the rate of change of \(c_{ij}^{\chi }(t)\). The normalized consensus gains, ensuring row stochasticity, are obtained from \(c_{ij}(t)=\frac {c_{ij}^{\chi }(t)}{\sum _{j\in {\mathcal {J}}_{i}} c_{ij}^{\chi }(t)}\), when \( j \not \in \mathcal {J}_{i}\), c_{
ij
}(t)=0. It has been found that the resulting ACF algorithm from [2] outperforms KCF from [6].
2) General adaptation strategy
The adaptation procedure proposed in this paper essentially extends and modifies the basic adaptation scheme from [2] in two principal directions: (1) instead of binary indicators of target presence, we utilize real numbers \(\beta _{i,0}^{[l]}(t)\) defined by (6) or (8) since they reflect the uncertainty of obtaining a targetoriginated measurement; (2) in order to enable fast diffusion of the target state estimates throughout the network, the adaptation scheme incorporates its own, specially designed dynamics.
Formally, we introduce the node importance vector ω(t)=(ω_{1}(t),…,ω_{
N
}(t))^{T}, generated by the following recursion:
$$ \omega(t+1) = \alpha A \omega(t) + \gamma(t+1), $$
(13)
which starts from ω(0)=(ω_{1}(0),…,ω_{
N
}(0))^{T}=(0,…,0)^{T}, where γ(t)=(γ_{1}(t),…,γ_{
N
}(t))^{T}, \(\gamma _{i}(t)=1\beta _{i,0}^{[l]}(t)\), A=(I+A_{adj})_{rs}, where A_{adj} represents the adjacency matrix of the underlying network graph, and Y=(X)_{rs} denotes, for N×N matrices X and Y, that Y is obtained from X in such a way that the elements of its rows are divided by the corresponding rowsums, while α>0 is a sufficiently small real number. Using the node importance vector, the elements of the consensus matrix C(t) are given by
$$ c_{ij}(t)=\frac{\omega_{j}(t)}{\sum_{j\in {\mathcal{J}}_{i}} \omega_{j}(t)} $$
(14)
for \(j \in \mathcal {J}_{i}\); c_{
ij
}(t)=0 otherwise.
The algorithm requires that each node receives at each t real numbers ω_{
j
}(t) from its neighbors. It is obvious that the recursion (13) is implementable in a distributed way, having in mind that locally
$$ \omega_{i}(t+1) = \frac{\alpha}{1+\nu_{i}} \sum_{j\in {\mathcal{J}}_{i}} \omega_{j}(t) + \gamma_{i}(t+1), $$
(15)
where ν_{
i
} is the number of nonzero elements of ith row of A_{adj}.
The input vector γ(t+1) in (13) reflects the current networkwide perceivability, i.e., its elements represent the local probabilities of getting targetoriginated measurements (in the case of no clutter, γ_{
i
}(t) is a binary random variable, equal to one when the target is observed, and to zero otherwise [2]). It can be considered that γ_{
i
}(t) provides a direct measure of “quality” of the current estimate of the ith node, obtained after the local filtering phase (prior to the application of the consensus scheme). Namely, when a target is successfully being tracked and ith node receives measurement from it, \(\beta _{i,j}^{[l]}(t)\) connected to that measurement has high values (close to one), while all the other \(\beta _{i,j}^{[l]}(t)\) are generally small, as well as \(\beta _{i,0}^{[l]}(t)\) (close to zero). On the other hand, if the ith node does not receive measurement from the target, all \(\beta _{i,j}^{[l]}(t)\) will be generally close to zero and \(\beta _{i,0}^{[l]}(t)\) close to one. Obviously, the difference between the choices l=1 and l=2 lies in the fact that in the second case, the resulting tracking algorithm is less sensitive to the availability of measurements than in the case when l=1; this choice is well adapted to the high level of clutter and to the targets that are temporarily not perceivable (as stated above). Another choice for γ_{
i
}(t) could be \(\gamma _{i}(t)=\max _{j=1, \ldots, m_{i}(t)}\beta _{i,j}^{[l]}(t)\), which yielded in our experiments the results comparable to those obtained by the above formulated algorithm.
The role of the first term at the right hand side of (13) containing αA is to enable fast decentralized diffusion of the local state estimates throughout the whole network. Under the standard assumption that the graph \(\mathcal {G}\) has a center node (a node from which all the nodes are reachable), matrix A has one simple eigenvalue at one, while the remaining ones are inside the unit circle. In this case, we have that A^{k} converges, when k→∞, to a constant matrix with equal rows composed of positive elements. This means, having in mind (13), that all the nodes will have asymptotically positive values ω_{
i
}(∞), i=1,…,N. The multiplying constant α defines the memory length of the algorithm; obviously, for α<1, the recursion (13) is asymptotically stable. The chosen value of α should be small, in order to be able to efficiently exploit current measurements, and large enough, in order to sufficiently smooth out stochastic variations in the random sequence {γ(t)}.
In order to better clarify the basic effects of choosing α and A, consider w.l.o.g. the situation in which γ(t+1)=γ^{[1]}, where \(\gamma _{1}^{[1]} \approx 1\) and the remaining \(\gamma _{i}^{[1]} \approx 0\), i=2,…,N. The asymptotic response of (13) to such an input signal is given by
$$ {\lim}_{t \to \infty} \omega(t+1)= {\lim}_{T \to \infty} \sum_{t=0}^{T} (\alpha A)^{t} \gamma^{[1]}. $$
(16)
Having in mind (16) and (14), there are now two main possibilities: (1) the rows of C(∞) with c_{i1}≠0 contain, in fact, c_{i1}≈1, while the remaining elements are of the order of magnitude of α; (2) the rows of C(∞) with c_{i1}=0 contain the nonzero elements having different order of magnitude, depending on graph topology, irrespective of α. In the first case, the convex combination from (9) will give the highest emphasis to the neighbors observing the target with high probability, while in the second, node priorities result from the given graph. In the first case, we have prompt reaction for small α, while in the second, diffusion rate of the state estimates is maximized. In our experiments, we adopted α to be around 0.05.
Asymptotic properties of the proposed adaptation scheme capture the perceivability history in a more efficient way than the original scheme from [2]. For example, in the cases when two nodes have the same γ_{
i
}, the first term at the right hand side of (15) gives more weight to the node that previously received information, coming more likely from the nodes that had observed the target (see the example below and the simulation results).
The proposed algorithm is summarized in Algorithm 1.
Example. In order to demonstrate clearly the positive effect of introducing specially designed dynamics into the original adaptive scheme from ACF, we shall consider the following simple illustrative example of a sensor network with the ring topology and N=6 nodes, where each node is connected to 2 neighboring nodes and only the first node observes the target; there are no false measurements. The adaptation parameters have been chosen as \(c_{ij}^{\chi }(\infty)=1\), \(c_{ij}^{\chi }(0)=0.01\), k=0.2 (original adaptive scheme from [2]), and α=0.03, \(\beta ^{[l]}_{i,0}(t)=0\) if the ith node observes the target at time instant t and \(\beta ^{[l]}_{i,0}(t)=1\) otherwise (the proposed general adaptation strategy). Figure 2 shows the time evolution of the resulting nonzero consensus weights connected to the original scheme (ACF_{1}) and the proposed algorithm (ACF_{2}). It can be seen that the main difference between the algorithms is in the consensus weights connected to the nodes that do not have measuring nodes in their neighborhoods. The original algorithm assigns equal consensus weights in the consensus matrix rows connected to these nodes (3rd, 4th, and 5th row in Fig. 2a), while the proposed general algorithm gives more weight to the nodes that are closer to the measuring node (3rd, 4th, and 5th row in Fig. 2b), enabling better information flow through the network which, in turn, allows faster convergence and better tracking.
Remark 1
The exposed methodology for distributed adaptive generation of the consensus weights in (10) is mainly motivated by the idea to exploit the locally available “ β ”parameters in order to assign higher importance to the nodes with higher probabilities of getting targetoriginated measurements; it has no other direct connection with the main state estimation algorithm based on the PDAF. Therefore, it is easy to conclude that the results of this section can be readily used in the context of any nonlinear estimation algorithm, provided an estimate of the probabilities contained in the “ β ”parameters is available. In this sense, it is straightforward to construct adaptive algorithms based, e.g., on the extended Kalman filter (like in [8]), on the unscented Kalman filter, and particle filters. It is also possible to apply the proposed methodology within the framework of the MLPDA method applicable in real time [20–25]. The adaptation strategy should again cope mainly with the limited FoVs (or sensing ranges).