This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Online Expectation-Maximization Based Frequency and Phase Consensus in Distributed Phased Arrays

Mohammed Rashid,  , and Jeffrey A. Nanzer Manuscript received 2022.This work has been submitted to the IEEE for possible publication. Copyright may be transferred without notice, after which this version may no longer be accessible.This work was supported in part by the Office of Naval Research under grant number N00014-20-1-2389. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the Office of Naval Research. (Corresponding author: Jeffrey A. Nanzer.)The authors are with the Electrical and Computer Engineering Department, Michigan State University, East Lansing, MI 48824 (e-mail: [email protected], [email protected]).
Abstract

Distributed phased arrays are comprised of separate, smaller antenna systems that coordinate with each other to support coherent beamforming towards a destination. However, due to the frequency drift and phase jitter of the oscillators on each node, as well as the frequency and phase estimation errors induced at the nodes in the process of synchronization, there exists a decoherence that degrades the beamforming process. To this end, a decentralized frequency and phase consensus (DFPC) algorithm was proposed in prior work for undirected networks in which the nodes locally share their frequencies and phases with their neighboring nodes to reach a synchronized state. Kalman filtering (KF) was also integrated with DFPC, and the resulting KF-DFPC showed significant reduction in the total residual phase error upon convergence. One limitation of DFPC-based algorithms is that, due to relying on the average consensus protocol which requires undirected networks, they do not converge for directed networks. Since directed networks can be more easily implemented in practice, we propose in this paper a push-sum based frequency and phase consensus (Ps\text{P}_{\text{s}}FPC) algorithm which converges for such networks. The residual phase error of Ps\text{P}_{\text{s}}FPC upon convergence is theoretically derived in this work. Kalman filtering is also integrated with Ps\text{P}_{\text{s}}FPC and the resulting KF-Ps\text{P}_{\text{s}}FPC algorithm shows significant reduction in the residual phase error upon convergence. Another limitation of KF-DFPC is that it assumes that the model parameters, i.e., the measurement noise and innovation noise covariance matrices, are known in KF. Since they may not be known in practice, we develop an online expectation maximization (EM) based algorithm that iteratively computes the maximum likelihood (ML) estimate of the unknown matrices in an online manner. EM is integrated with KF-Ps\text{P}_{\text{s}}FPC and the resulting algorithm is referred to as the EM-KF-Ps\text{P}_{\text{s}}FPC algorithm. Simulation results are included where the performance of the proposed Ps\text{P}_{\text{s}}FPC-based algorithms is analyzed for different distributed phased arrays and is compared to the DFPC-based algorithms and the earlier proposed hybrid consensus on measurement and consensus on information (HCMCI) algorithm.

Index Terms:
Distributed Phased Arrays, Frequency and Phase Consensus, Kalman Filtering, Oscillator Frequency Drift and Phase Noise, Online Expectation Maximization, Push-Sum Algorithm.

I Introduction

Modern advancements in wireless technologies have enabled more reliable communications between separate wireless systems, and as a result, several new applications involving distributed systems have emerged over recent years. These include distributed beamforming systems [1], distributed automotive radars [2, 3], and distributed massive MIMO systems [4], among others. The underlying antenna array technology in all these applications is a distributed phased array (a.k.a. distributed antenna arrays, virtual antenna arrays, or coherent distributed arrays). A distributed phased array is essentially a network of multiple spatially distributed and mutually independent antenna systems that are wirelessly coordinated at the wavelength level to coherently transmit and receive the radio frequency signals [5]. Thus, compared to the classical analog or digital phased arrays where all the antennas are mounted together on a single-platform, coherently distributed phased array architectures brings in significantly better spatial diversity, higher directivity, improved signal to noise ratio at the destination, greater resistance to failures and interference, reconfigurable capabilities for the dynamic environments, and ease of scalability.

In single-platform phased arrays, it is common that all antennas and their transceiver chains are driven by a universal local oscillator to assure the synchronized state of the array, whereas in distributed phased arrays, each antenna system has its own local oscillator in its transceiver chain. Thus, in a free-running state in which these oscillators are not locked to any reference signal, they undergo random frequency drift and phase jitter which results in decoherence of the signals emitted by the nodes. While reference signals from systems such as global positioning system (GPS) satellites can be used to synchronize these oscillators across the array provided that the nodes are equipped with the GPS receivers [6], it is not always the case that GPS is available or reliable. Alternatively, these nodes can also be synchronized by wirelessly transmitting the reference signals from the destination system; several such methods have been proposed that include single or multiple bit feedback methods [7, 8], or retrodirective synchronization [9]. However, since these approaches rely on the feedback from the target destination, they are essentially closed-loop, and cannot steer beams to arbitrary directions. These closed-loop methods are thus only suitable for the wireless communication applications where such feedback from the target destination is feasible. Recently, open-loop synchronization methods have also been proposed [10, 11, 12, 1], in which the nodes communicate with each other to synchronize their oscillators without using any feedback from the destination. Since the destination need not be an active system, open-loop distributed phased arrays can also be used for radar and remote sensing applications.

In an open-loop distributed phased array, the electrical states (i.e., the frequencies and phases) of the nodes can be synchronized by either using a centralized approach or a decentralized approach. In [12, 1, 13, 14], a centralized open-loop distributed phased array was used in which nodes are classified as either a primary node or a secondary node. The primary node transmits a reference signal to the secondary ones which is used to synchronize their electrical states across the array. However, this architecture is susceptible to the primary node’s failure, and given the limited communication resources, it is also not scalable. On the other hand, in decentralized (i.e., distributed) open-loop distributed phased array systems, there is no such classification of the nodes as either the primary or secondary nodes. Therein, the nodes communicate with their neighboring nodes and iteratively share their measurements to update their electrical state, until synchronization is achieved across the array. Based on this approach, a decentralized frequency and phase consensus (DFPC) algorithm was proposed in [11] wherein the nodes update these parameters in each iteration by computing a weighted average of the shared values using the average consensus algorithm [15]. Kalman filtering was also integrated with the DFPC algorithm which further reduced the residual phase error upon convergence. The synchronization and convergence performances of the KF-DFPC algorithm were also compared to the DFPC algorithm, the diffusion least mean square (DLMS) algorithm [16], the Kalman consensus information filter (KCIF) algorithm [17], and the diffusion Kalman filtering (DKF) algorithm [18, 19], where it was shown that KF-DFPC outperforms DFPC and DLMS in terms of reducing the residual phase error, and that for the same residual phase error, KF-DFPC converges faster that the DFPC, KCIF, and DKF algorithms which makes it more favorable when the latency in achieving the synchronized state is undesirable or when low-powered nodes are used in the distributed phased array.

However, there are two major limitations of the above algorithms which are as follows. First, these algorithms require bidirectional (undirected) communication links between the nodes, whereas in practice due to the large spatial separation between the nodes, the dynamic changes in their environments, and their limited communication ranges, there may exist unidirectional (directed) communication links between them. The traditional average consensus algorithm [15] does not converge for directed networks because the algorithm requires that the weighting matrix of the network be doubly-stochastic (i.e., both its rows and columns must sum to one), whereas for the directed networks, it is usually a column stochastic matrix. Secondly, the above algorithms, in particular, the KF-DFPC algorithm of [11], assume that the statistical knowledge of the frequency drifts and phase jitters of the oscillators as well as that of the frequency and phase estimation errors are known a priori. Specifically, it is assumed that the innovation noise and the measurement noise covariance matrices in the state transition model and the observation model for the Kalman filtering algorithm are known to the nodes, however in practice this is not always possible since the operational dynamics of the oscillators are influenced by several factors, such as the changes in their operating temperatures and the power supply voltages [20], aging of the oscillators [21, 22], and noise induced by their electronic components [23]. Furthermore, the statistics of the frequency and phase estimation errors are estimated from the observed estimates at the nodes where their accuracies are influenced by the signal to noise ratio (SNR) of the observed signals and the numbers of samples collected per observation period. Thus, the noise covariance matrices are generally unknown to the nodes and must be estimated for Kalman filtering.

A push-sum method [24] based decentralized frequency synchronization algorithm was proposed in [25] for the directed networks of distributed phased array. The authors assumed a specific class of the nodes in which the frequencies are only incremented in discrete frequency steps, which limits the frequency resolution of the nodes and increases the residual phase error of the algorithm. In this paper, we consider a more advanced class of nodes, e.g., USRP based nodes as used in [1], for which such frequency quantization errors are negligible. Furthermore, unlike the work in [25], we consider both frequency and phase synchronization of the nodes in distributed phased array, both of which are necessary for distributed beamforming. The contributions of this article are summarized as follows.

  • We consider the same signal model for the nodes as assumed in [11] in which the oscillators induced offset errors, such as the frequency drifts, the phase drifts, and the phase jitters are included and modeled using the practical statistics. Due to these added offsets, the exact frequencies and phases are unknown to the nodes and must estimated from the observed signals. Thus, we also include the frequency and phase estimation errors in our signal model. However, in this paper, we consider directed communication links between the nodes, i.e., if a node transmits an information to another node, it may not hear back from it. For such networks, we propose a push-sum algorithm based decentralized joint frequency and phase consensus algorithm for the directed networks in distributed phased array, which is referred to herein as the Ps\text{P}_{\text{s}}FPC algorithm. Note that our proposed Ps\text{P}_{\text{s}}FPC algorithm is not a direct extension of the push-sum based frequency synchronization algorithm of [25], in fact it is a modified version where the estimated frequencies and phases of the nodes are included and has to be multiplied by the weighting factor from the previous iteration before computing the temporary variables (see Eqn. (II-A) below). This step is required to recover the temporary variables from the previous iteration taking into account the fact that the updated frequency and phases from each iteration of Ps\text{P}_{\text{s}}FPC undergo a state transition due to the random drifts and jitter in between the update intervals.

  • The residual phase error of the Ps\text{P}_{\text{s}}FPC algorithm is also theoretically derived to analyze the contributing factors for the residual decoherence between the nodes upon its convergence. It is observed that the phase error depends on the network algebraic connectivity (i.e., the modulus of the second largest eigenvalue λ2\lambda_{2} of the weighting matrix) which decreases with the increase in the number of nodes in distributed phased array or with the increase in the connectivity between the nodes. Simulation results are also included where the residual phase errors of Ps\text{P}_{\text{s}}FPC are analyzed in the context of these theoretical results for different distributed phased array networks.

  • In distributed phased arrays, the electrical states of the nodes are updated with smaller update intervals, usually on the order of milli-second (ms), to avoid large oscillator drifts [26] and to correct the residual phase errors due to the platform vibrations [27]. However, it was shown in [11] that at such update intervals, the residual phase error of a consensus algorithm is usually higher when no filtering is used at the nodes, which deters an accurate coherent operation. Kalman filtering (KF) is a popular algorithm that provides the optimal minimum mean squared error (MMSE) estimates of the unknown quantities when their states transitioning model follows the first-order Markov process, and the observations are a linear function of the states. Thus, we integrate KF with Ps\text{P}_{\text{s}}FPC to improve the residual phase errors for the directed networks of distributed phased array. Furthermore, in contrast to [11], we assume in this work that the measurement noise and innovation noise covariance matrices are unknown for the KF, and thus we derive an online expectation-maximization (EM) algorithm [28] to compute their maximum likelihood (ML) estimates from the observed measurements. The online EM algorithm is integrated with KF and Ps\text{P}_{\text{s}}FPC, and the resulting algorithm is referred to herein as the EM-KF-Ps\text{P}_{\text{s}}FPC algorithm. The computational complexity analysis of EM-KF-Ps\text{P}_{\text{s}}FPC is also included at the end of Section III where it is shown that our proposed online EM algorithm has the same computational complexity as that of KF, and notably for the moderately connected large arrays, using the EM and KF algorithms does not increase the overall computational complexity of the Ps\text{P}_{\text{s}}FPC algorithm.

  • Simulations results are included where the residual phase errors and the convergence speeds of the proposed Ps\text{P}_{\text{s}}FPC and EM-KF-Ps\text{P}_{\text{s}}FPC algorithms are analyzed by varying the number of nodes in the array and the connectivity between the nodes. Furthermore, our online EM algorithm is also integrated with the KF-DFPC algorithm of [11] and the performance of the resulting EM-KF-DFPC is also compared to the EM-KF-Ps\text{P}_{\text{s}}FPC algorithm and the HCMCI algorithm of [29].

Rest of this article is organized as follows. Section II describes the signal model of the nodes, the proposed Ps\text{P}_{\text{s}}FPC algorithm, and theoretically analyzes the residual phase error of Ps\text{P}_{\text{s}}FPC upon its convergence. Simulation results are also included therein to analyze the synchronization performance of Ps\text{P}_{\text{s}}FPC. The KF algorithm and the online EM algorithm are derived in Section III where these algorithms are integrated with the Ps\text{P}_{\text{s}}FPC algorithm to improve the synchronization between the nodes. The performance of EM-KF-Ps\text{P}_{\text{s}}FPC is analyzed through simulations and is also compared to EM-KF-DFPC for the undirected networks. To this end, the initialization of both the EM and KF algorithms are also described in Section III and the computational complexity analysis of the overall algorithm is also performed.

Notations: A lower case small letter (x)(x) is used to represent a signal or scalar, and a lower case bold small letter (𝐱)(\mathbf{x}) is used to denote a vector. An upper case bold capital letter (𝐗)(\mathbf{X}) represents a matrix. The transpose and inverse operations on a matrix are indicated by the superscripts (.)T(.)^{T} and (.)1(.)^{-1}, respectively. The notations |𝐗||\mathbf{X}| and tr{𝐗}\{\mathbf{X}\} are used for the determinant and trace of a matrix 𝐗\mathbf{X}, respectively. A normal probability distribution on a random vector 𝐱\mathbf{x} is denoted by 𝒩(𝝁,𝚺)\mathcal{N}(\bm{\mu},\mathbf{\Sigma}) in which 𝝁\bm{\mu} indicates the mean and 𝚺\mathbf{\Sigma} represents the covariance matrix of the distribution. The expectation of 𝐱\mathbf{x} with respect to the probability distribution on 𝐱\mathbf{x} is represented by 𝔼[𝐱]\mathbb{E}[\mathbf{x}]. For ease of notation, a set {𝐱n(1),𝐱n(2),,𝐱n(k)}\left\{\mathbf{x}_{n}(1),\mathbf{x}_{n}(2),\ldots,\mathbf{x}_{n}(k)\right\} is written in compact form as 𝐱n1:k\mathbf{x}^{1:k}_{n}. 𝟏\mathbf{1} is a column vector of all 11s. Finally, a diagonal matrix created with the elements in vector 𝐱\mathbf{x} is denoted by 𝐗=diag{𝐱}\mathbf{X}=\operatorname{diag}\{\mathbf{x}\}, and an N×NN\times N identity matrix is indicated by 𝐈N\mathbf{I}_{N}.

II Frequency and Phase Synchronization in Distributed Phased Array with Directed Communication Links

Consider a distributed phased array made up of NN spatially distributed antenna nodes that are coordinating with each other to perform a coherent operation toward the destination. We assume that due to the large spatial separation between the nodes and their limited communication ranges, the communication links between the nodes are unidirectional across the entire array. Thus we model this array network by a directed graph 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}) in which 𝒱={1,2,,N}\mathcal{V}=\{1,2,\ldots,N\} represents the set of vertices (antenna nodes), and ={(n,m):n,m𝒱}\mathcal{E}=\{(n,m)\colon n,m\in\mathcal{V}\} is the set of all directed edges (unidirectional communication links) in the array. Let the signal generated by the nn-th node in the kk-th iteration be given by sn(t)=ej(2πfn(k)t+θn(k))s_{n}(t)=e^{j\left(2\pi f_{n}(k)t+\theta_{n}(k)\right)} for t[(k1)T,kT]t\in[(k-1)T,kT], where TT is the signal duration, and k{1,2,}k\in\{1,2,\ldots\}. The parameters fn(k)f_{n}(k) and θn(k)\theta_{n}(k) represent the frequency and phase of the nn-th node in the kk-th iteration, respectively. In a decentralized consensus averaging algorithm, the nodes iteratively exchange their frequencies and phases with their neighboring nodes and update these parameters by computing a weighted average of the shared values until convergence is achieved (i.e. these parameters are synchronized across the array). Due to the frequency drift and phase jitter of the oscillator, the frequency and phase of the nn-th node in the kk-th iteration can be written as

fn(k)\displaystyle f_{n}(k) =fn(k1)+δfn\displaystyle=f_{n}(k-1)+\delta f_{n}
θn(k)\displaystyle\theta_{n}(k) =θn(k1)+δθnf+δθn,\displaystyle=\theta_{n}(k-1)+\delta\theta^{f}_{n}+\delta\theta_{n}, (1)

in which δfn\delta f_{n} is the frequency drift of the oscillator at the nn-th node which we assume is normally distributed as 𝒩(0,σf2)\mathcal{N}\left(0,\sigma^{2}_{f}\right) with σf\sigma_{f} representing the Allan deviation (ADEV) metric of the oscillator. The ADEV is modeled as σf=fcβ1T+β2T\sigma_{f}=f_{c}\sqrt{\frac{\beta_{1}}{T}+\beta_{2}T} in which the oscillator’s design parameters β1\beta_{1} and β2\beta_{2} are set as β1=β2=5×1019\beta_{1}=\beta_{2}=5\times 10^{-19} which represent a quartz crystal oscillator [30, 11]. The phase error δθnf\delta\theta^{f}_{n} in (II) represents the phase offset due to the temporal variation of the frequency drift δfn\delta f_{n} between the update intervals which is δθnf=πTδfn\delta\theta^{f}_{n}=-\pi T\delta f_{n} as shown in [11]. Finally, δθn\delta\theta_{n} in (II) represents the phase offset due to the phase jitter of the oscillator at the nn-th node. It is modeled as δθn𝒩(0,σθ)\delta\theta_{n}\sim\mathcal{N}(0,\sigma_{\theta}) in which σθ=2×10A/10\sigma_{\theta}=\sqrt{2\times 10^{A/10}} and AA is the integrated phase noise power of the oscillator which is obtained from its phase noise profile. Herein, we set A=53.46A=-53.46 dB that models a typical high phase noise voltage controlled oscillator [26, 11]. We assume that the frequency transitioning process in (II) begins with the initial value fn(0)𝒩(fc,σ2)f_{n}(0)\sim\mathcal{N}(f_{c},\sigma^{2}) in which fcf_{c} is the carrier frequency and σ=104fc\sigma=10^{-4}f_{c} denotes a crystal clock accuracy of 100100 parts per million (ppm), whereas the phase transitioning process starts with θn(0)𝒰(0,2π)\theta_{n}(0)\sim\mathcal{U}(0,2\pi) which represents the hardware induced initial phase offset of the oscillator.

Due to the above dynamics of the oscillators, the nodes need to estimate their frequencies and phases in each iteration before updating them, and thus the estimated frequency and phase of the nn-th node in the kk-th iteration are given by

f^n(k)=fn(k)+εf\displaystyle\hat{f}_{n}(k)=f_{n}(k)+\varepsilon_{f}
θ^n(k)=θn(k)+εθ,\displaystyle\hat{\theta}_{n}(k)=\theta_{n}(k)+\varepsilon_{\theta}, (2)

in which the frequency estimation error εf\varepsilon_{f} and the phase estimation error εθ\varepsilon_{\theta} are both normally distributed with zero mean and standard deviation σfm\sigma^{m}_{f} and σθm\sigma^{m}_{\theta}, respectively. Since the focus of this work is on evaluating the synchronization performance of the algorithms, we set these standard deviations equal to their Cramer Rao lower bounds (CRLBs) as σfm=fc6(2π)2L3SNR\sigma^{m}_{f}=f_{c}\sqrt{\frac{6}{(2\pi)^{2}L^{3}\text{SNR}}} and σθm=2L1SNR\sigma^{m}_{\theta}=\frac{2L^{-1}}{\text{SNR}} [31]. In these equations, L=TfsL=Tf_{s} is the number of received signal samples collected over the time duration of length TT with sampling frequency fsf_{s}, and SNR represents the signal to noise ratio of the signals.

Refer to caption
Refer to caption
Refer to caption
Figure 1: Frequency errors in ppm for all the NN nodes in the array vs. Ps\text{P}_{\text{s}}FPC iterations for c=0.2c=0.2 and when (a)(a) N=20N=20 and SNR=0\text{SNR}=0 dB (b)(b) N=100N=100 and SNR=0\text{SNR}=0 dB, and (c)(c) N=100N=100 and SNR=30\text{SNR}=30 dB.
Refer to caption
Refer to caption
Refer to caption
Figure 2: Phase errors in degrees for all the NN nodes in the array vs. Ps\text{P}_{\text{s}}FPC iterations for c=0.2c=0.2 and when (a)(a) N=20N=20 and SNR=0\text{SNR}=0 dB (b)(b) N=100N=100 and SNR=0\text{SNR}=0 dB, and (c)(c) N=100N=100 and SNR=30\text{SNR}=30 dB.

II-A Push-Sum Frequency and Phase Consensus Algorithm

We consider a directed array network of NN nodes described by a directed graph 𝒢=(𝒱,)\mathcal{G}=(\mathcal{V},\mathcal{E}) as before, whereas the (n,m)(n,m)-th edge in \mathcal{E} is assigned herein a weight wm,nw_{m,n}. We assume that 𝒢\mathcal{G} represents a strongly connected directed graph, i.e., there exists at least one directed path from any node nn to any node mm in the graph with nmn\neq m. Furthermore, it is assumed that the nn-th node in the network knows its in-neighbor set χnin{v𝒱:wn,v>0}\chi^{in}_{n}\triangleq\{v\in\mathcal{V}:w_{n,v}>0\} and its out-neighbor set χnout{v𝒱:wv,n>0}\chi^{out}_{n}\triangleq\{v\in\mathcal{V}:w_{v,n}>0\}. The proposed algorithm is based on the push-sum consensus algorithm [24, 25], and is referred to herein as the push-sum frequency and phase consensus (Ps\text{P}_{\text{s}}FPC) algorithm. In the Ps\text{P}_{\text{s}}FPC algorithm, the nn-th node maintains three temporary variables in the kk-th iteration, i.e., xnf(k)x^{f}_{n}(k), xnθ(k)x^{\theta}_{n}(k), and sn(k)s_{n}(k), which are updated as follows.

xnf(k)\displaystyle x^{f}_{n}(k) =mχninwn,mf^m(k)sm(k1)\displaystyle=\sum_{m\in\chi^{in}_{n}}w_{n,m}\hat{f}_{m}(k)s_{m}(k-1)
xnθ(k)\displaystyle x^{\theta}_{n}(k) =mχninwn,mθ^m(k)sm(k1)\displaystyle=\sum_{m\in\chi^{in}_{n}}w_{n,m}\hat{\theta}_{m}(k)s_{m}(k-1)
sn(k)\displaystyle s_{n}(k) =mχninwn,msm(k1),\displaystyle=\sum_{m\in\chi^{in}_{n}}w_{n,m}s_{m}(k-1), (3)

where sn(0)=1s_{n}(0)=1 and the weight wn,m1dmoutw_{n,m}\triangleq\frac{1}{d^{out}_{m}} if mχninm\in\chi^{in}_{n} and is 0 otherwise. The parameter dmoutd^{out}_{m} is the out-degree of node mm which can be found by computing the cardinality of the set χmout\chi^{out}_{m}. These weights make the N×NN\times N weighting matrix 𝐖=[wn,m]\mathbf{W}=[w_{n,m}] a column stochastic matrix that supports an average consensus [32]. The parameters f^m(k)\hat{f}_{m}(k) and θ^m(k)\hat{\theta}_{m}(k) represent the estimated frequency and phase of the mm-th node in the kk-th iteration, and they are multiplied by the weighting factor sm(k1)s_{m}(k-1) from the previous iteration. This multiplication is required to recover the temporary variables xnf(k1)x^{f}_{n}(k-1) and xnθ(k1)x^{\theta}_{n}(k-1) taking into account the fact that at the beginning of each iteration, the nodes observe only the estimated frequencies and phases after their updated values in the previous iteration are influenced by the oscillator drifts and the phase jitters. The updated frequency and phase of the nn-th node in the kk-th iteration are computed by

fn(k)\displaystyle f_{n}(k) =xnf(k)sn(k)\displaystyle=\frac{x^{f}_{n}(k)}{s_{n}(k)}
θn(k)\displaystyle\theta_{n}(k) =xnθ(k)sn(k),\displaystyle=\frac{x^{\theta}_{n}(k)}{s_{n}(k)}, (4)

The above steps are repeated iteratively at each node until the algorithm converges. The pseudo-code of the Ps\text{P}_{\text{s}}FPC algorithm is provided in Algorithm 1.

Input: k=0k=0, define sn(0)=1s_{n}(0)=1 for all n=1,2,,Nn=1,2,\ldots,N.
while convergence criterion is not met do
       k=k+1k=k+1
For each node nn:
  1. a)

     

    Use the observed f^m(k)\hat{f}_{m}(k) and θ^m(k)\hat{\theta}_{m}(k) for all mχninm\in\chi^{in}_{n} and

update xnf(k)x^{f}_{n}(k), xnθ(k)x^{\theta}_{n}(k), and sn(k)s_{n}(k) using (II-A).
  • b)

     

    Update fn(k)f_{n}(k) and θn(k)\theta_{n}(k) using (II-A).

  • end while
    Output: fn(k)f_{n}(k) and θn(k)\theta_{n}(k) for all n=1,2,,Nn=1,2,\ldots,N
    Algorithm 1 Ps\text{P}_{\text{s}}FPC Algorithm

    II-B Residual Phase Error Analysis

    Herein, we theoretically analyze the residual phase errors of the nodes upon the convergence of the Ps\text{P}_{\text{s}}FPC algorithm. To this end, let at the II-th iteration, the estimated frequencies and phases of the nodes be written in the short-hand vector form as 𝐳^(I)=𝐳(I1)+𝐞I\hat{\mathbf{z}}(I)=\mathbf{z}(I-1)+\mathbf{e}_{I} in which 𝐳{𝐟,𝜽}\mathbf{z}\in\{\mathbf{f},\bm{\theta}\} and 𝐞I𝒩(𝟎,σe2𝐈N)\mathbf{e}_{I}\sim\mathcal{N}\left(\mathbf{0},\sigma^{2}_{e}\mathbf{I}_{N}\right). Note that by using (II) and (II), it can be seen that when 𝐳=𝐟\mathbf{z}=\mathbf{f} then the error variance is σe2=σf2+(σfm)2\sigma^{2}_{e}=\sigma^{2}_{f}+\left(\sigma^{m}_{f}\right)^{2}, and when 𝐳=𝜽\mathbf{z}=\bm{\theta} then the variance is σe2=π2T2σf2+(σθm)2+σθ2\sigma^{2}_{e}=\pi^{2}T^{2}\sigma^{2}_{f}+\left(\sigma^{m}_{\theta}\right)^{2}+\sigma^{2}_{\theta}. Thus, at the II-th iteration, the temporary variables in (II-A) can be alternatively written as

    xnz(I)\displaystyle x^{z}_{n}(I) =[𝐖(𝐳^(I)𝐬(I1))]n\displaystyle=\left[\mathbf{W}\left(\hat{\mathbf{z}}(I)\odot\mathbf{s}(I-1)\right)\right]_{n}
    sn(I)\displaystyle s_{n}(I) =[𝐖𝐬(I1)]n,\displaystyle=\left[\mathbf{W}\mathbf{s}(I-1)\right]_{n}, (5)

    where \odot is the Hadamard product between the two vectors, and the operation [.]n[.]_{n} selects the nn-th element of the resulting vector. Inserting 𝐳^(I)\hat{\mathbf{z}}(I) in (II-B) and using backward recursion, it can be reduced as follows

    xnz(I)=[𝐖(𝐳(I1)𝐬(I1))+𝐖(𝐞I𝐬(I1))]n\displaystyle x^{z}_{n}(I)=\left[\mathbf{W}\left({\mathbf{z}}(I-1)\odot\mathbf{s}(I-1)\right)+\mathbf{W}\left(\mathbf{e}_{I}\odot\mathbf{s}(I-1)\right)\right]_{n}
    =[𝐖I(𝐳(0)𝐬(0))+i=1I𝐖i(𝐞I(i1)𝐬(Ii))]n\displaystyle=\left[\mathbf{W}^{I}\left({\mathbf{z}}(0)\odot\mathbf{s}(0)\right)+\sum^{I}_{i=1}\mathbf{W}^{i}\left(\mathbf{e}_{I-(i-1)}\odot\mathbf{s}(I-i)\right)\right]_{n}

    Similarly we have sn(I)=[𝐖I𝐬(0)]ns_{n}(I)=\left[\mathbf{W}^{I}\mathbf{s}(0)\right]_{n}. For a column stochastic matrix 𝐖\mathbf{W}, it is shown in [33] that as II\rightarrow\infty, 𝐖I=𝝅𝟏T\mathbf{W}^{I}=\bm{\pi}\mathbf{1}^{T} where 𝝅>0\bm{\pi}>0 is the stationary distribution of the random process with transition matrix 𝐖\mathbf{W} that satisfies 𝐖𝝅=𝝅\mathbf{W}\bm{\pi}=\bm{\pi} with 𝟏T𝝅=1\mathbf{1}^{T}\bm{\pi}=1. Thus from (II-A), the updated frequency or phase of node nn at the II-th iteration can be written in the shorthand form as

    zn(I)=\displaystyle z_{n}(I)=
    1πnN[𝐖I(𝐳(0)𝐬(0))+i=1I𝐖i(𝐞I(i1)𝐬(Ii))]n,\displaystyle\frac{1}{\pi_{n}N}\left[\mathbf{W}^{I}\left({\mathbf{z}}(0)\odot\mathbf{s}(0)\right)+\sum^{I}_{i=1}\mathbf{W}^{i}\left(\mathbf{e}_{I-(i-1)}\odot\mathbf{s}(I-i)\right)\right]_{n}, (7)

    where to get (II-B) we set 𝐬(0)=𝟏\mathbf{s}(0)=\mathbf{1} (as in Section II-A) that gives for a large II, sn(I)=𝐖I𝐬(0)=πnNs_{n}(I)=\mathbf{W}^{I}\mathbf{s}(0)=\pi_{n}N in which πn\pi_{n} is the nn-th element of 𝝅\bm{\pi}. Similarly, for larger II, the first summand in (II-B) reduces to 1Nn=1Nzn(0)\frac{1}{N}\sum^{N}_{n=1}z_{n}(0), i.e., it gives the average of the initial frequencies and phases of the nodes, whereas the second summand in (II-B) represents the residual total phase error due to the frequency and phase offset errors induced at the nodes in every iteration. To quantify this residual phase error for node nn after II iterations, we find the variance of the following term

    1πnN[i=1I(𝐖i𝝅𝟏T)(𝐞I(i1)𝐬(Ii))]n\displaystyle\frac{1}{\pi_{n}N}\left[\sum^{I}_{i=1}\left(\mathbf{W}^{i}-\bm{\pi}\mathbf{1}^{T}\right)\left(\mathbf{e}_{I-(i-1)}\odot\mathbf{s}(I-i)\right)\right]_{n}
    =1πnN[i=1I(𝐖𝝅𝟏T)i(𝐞I(i1)𝐬(Ii))]n\displaystyle=\frac{1}{\pi_{n}N}\left[\sum^{I}_{i=1}\left(\mathbf{W}-\bm{\pi}\mathbf{1}^{T}\right)^{i}\left(\mathbf{e}_{I-(i-1)}\odot\mathbf{s}(I-i)\right)\right]_{n} (8)

    where to get the second equality in the above equation, we used the following two facts. Firstly, a column stochastic 𝐖\mathbf{W} implies that 𝟏T𝐖i=𝟏\mathbf{1}^{T}\mathbf{W}^{i}=\mathbf{1}, and secondly, we have (𝐈N𝝅𝟏T)i=(𝐈N𝝅𝟏T)\left(\mathbf{I}_{N}-\bm{\pi}\mathbf{1}^{T}\right)^{i}=\left(\mathbf{I}_{N}-\bm{\pi}\mathbf{1}^{T}\right) as it is a projection matrix. Now let λ2\lambda_{2} be the modulus of the second largest eigenvalue of the mixing matrix 𝐖\mathbf{W}. Then it can be conveniently shown in a few steps that λ2i𝐈N(𝐖𝝅𝟏T)i\lambda^{i}_{2}\mathbf{I}_{N}-\left(\mathbf{W}-\bm{\pi}\mathbf{1}^{T}\right)^{i} is a positive semi-definite matrix. Thus, using this identity along with assuming that the frequency and phase offset errors induced at the nodes in every iteration are mutually independent across the array, the variance of the residual phase error for node nn can be solved as

    σn,residual2\displaystyle\sigma^{2}_{n,\text{residual}} =σe2|πnN|2i=1Iλ22i|sn(Ii)|2,\displaystyle=\frac{\sigma^{2}_{e}}{|\pi_{n}N|^{2}}\sum^{I}_{i=1}\lambda^{2i}_{2}|s_{n}(I-i)|^{2}, (9)

    Since for large II, the scalars sn(I)πnNs_{n}(I)\rightarrow\pi_{n}N, it implies that we can write the phase error in (9) as σn,residual2=σe2i=1Iλ22i+C\sigma^{2}_{n,\text{residual}}=\sigma^{2}_{e}\sum^{I^{{}^{\prime}}}_{i=1}\lambda^{2i}_{2}+C where the constant CC is close to zero for the larger arrays. Consequently, for sparsely connected arrays, λ2\lambda_{2} is close to 11 and i=1Iλ22i1\sum^{I}_{i=1}\lambda^{2i}_{2}\gg 1 which results in a higher residual phase error, but as the connectivity increases, λ20\lambda_{2}\rightarrow 0 and the residual phase error decreases. This variation in the total phase error as a function of the change in the array connectivity is illustrated through simulations in Section III-E.

    II-C Simulation Results

    For validation purposes, we examine the frequency and phase synchronization performances of the proposed Ps\text{P}_{\text{s}}FPC algorithm through simulations. To this end, we consider an array network of NN nodes that is randomly generated with connectivity cc between the nodes. The parameter cc is defined as the total number of existing connection in the generated network divided by the total number of all possible connections N2(N1)\frac{N}{2}(N-1). Thus, c[0,1]c\in[0,1] where a smaller value of cc implies a sparsely connected array network with a few connections per node, and a larger value of cc defines a highly connected array network with many connections per node. The average number of connections per node in a network is given by D=c(N1)D=c(N-1). The carrier frequency of the nodes is chosen in this analysis to be fc=1f_{c}=1 GHz, and the sampling frequency is set to fs=10f_{s}=10 MHz throughout this paper. As the update interval for distributed phased arrays is usually on the order of ms, we set T=0.1T=0.1 ms for all the simulated cases in this paper.

    Figs. 1 and 2 show the frequencies and phases for all the NN nodes in the array relative to their average values vs. the number of iteration of the Ps\text{P}_{\text{s}}FPC algorithm from a single trial, when a moderately connected array network with connectivity c=0.2c=0.2 is generated for the different number of nodes NN in the array. The SNR of the observed signals is either set as 0 dB or 3030 dB. These figures show that with the increase in the number of iterations, both frequencies and phases of the nodes converge to the average of their initial values for all the considered cases. The residual error upon convergence results from the oscillators’ frequency drifts and phase jitters, as well as the frequency and phase estimation errors induced at the nodes. Thus, when the SNR increases to 3030 dB for N=100N=100 nodes, it is observed that the residual error also decreases significantly upon the convergence due to the decrease in the estimation errors.

    Refer to caption
    Figure 3: Standard deviation of the total phase errors of the Ps\text{P}_{\text{s}}FPC and DFPC algorithms vs. the connectivity cc in the array for different NN values when SNR=30=30 dB is assumed.
    Refer to caption
    Figure 4: Standard deviation of the total phase errors of the Ps\text{P}_{\text{s}}FPC and DFPC algorithms vs. the number of iterations for different NN and cc values when SNR=30=30 dB is assumed.

    Now let the total residual phase error of node nn be denoted by δϕn=2πδfnT+2πεfT+δθnf+δθn+εθ\delta\phi_{n}=2\pi\delta f_{n}T+2\pi\varepsilon_{f}T+\delta\theta^{f}_{n}+\delta\theta_{n}+\varepsilon_{\theta}. Thus, in Fig. 4, we plot the standard deviation of the total phase errors δϕn\delta\phi_{n} for all the NN nodes in the array for the Ps\text{P}_{\text{s}}FPC algorithm by varying the connectivity cc between the nodes and the number of nodes NN in the array, and when SNR=30=30 dB is assumed. For the comparison, we generate the bidirectional array networks for each cc and NN values and show the standard deviation of the total phase error of the DFPC algorithm proposed in [11] for such array networks. Note that the standard deviation of the DFPC-based algorithms in this work provides the lower bounds on the standard deviation of the total phase error of the Ps\text{P}_{\text{s}}FPC-based algorithms, and the slight increase in the phase error of the Ps\text{P}_{\text{s}}FPC-based algorithms as compared to the DFPC-based algorithms is due to the decrease in the number of connection per node in the directed networks which effects the accuracy of the local averages computed per node throughout the network as expected. For this figure, both Ps\text{P}_{\text{s}}FPC and DFPC algorithms were run for 100100 iterations and the final standard deviations of the total phase errors were averaged over 10310^{3} trials The center of each point in the error bar plot is the average value of the samples and the length of the bar defines the standard deviation around the average value. It is observed that for each NN value, as the connectivity cc between the nodes increases then the total phase error of the Ps\text{P}_{\text{s}}FPC and DFPC algorithms decreases proportionately. Furthermore, an increase in the number of nodes NN in the array, for a given cc value, also decreases the total phase errors of both algorithms. As discussed in the previous subsection, the decrease in the residual phase error of Ps\text{P}_{\text{s}}FPC with the increase in the cc or NN values is because the network algebraic connectivity λ2\lambda_{2} decreases which in turn reduces the residual phase of Ps\text{P}_{\text{s}}FPC. The residual phase error of DFPC is also a function of λ2\lambda_{2} as shown in [11] and thus the same trend is observed for the DFPC algorithm as well.

    Finally, in Fig. 4, we compare the convergence speeds of the Ps\text{P}_{\text{s}}FPC and DFPC algorithms by plotting the standard deviation of the total phase error vs. the number of iteration of the algorithms when the two different NN and cc values are assumed and the SNR is set to 3030 dB. It is observed that either when NN increases from 2020 to 100100 for a given cc value, or when cc increases from 0.20.2 to 0.50.5 for a given NN value, the Ps\text{P}_{\text{s}}FPC algorithm converges faster. Specifically, for N=20N=20 and c=0.2c=0.2, Ps\text{P}_{\text{s}}FPC converges in 3232 iterations, but for this NN value, when cc increases to 0.50.5, Ps\text{P}_{\text{s}}FPC converges in about 1111 iterations. Moreover, for c=0.5c=0.5 and N=100N=100 nodes, Ps\text{P}_{\text{s}}FPC converges in about 55 iterations. This is because as either cc or NN increases then the average number of connections per node in the network, i.e., the DD value, increases which in turn quickly stabilizes the local averages computed at the nodes. Although the same trend is also observed for the DFPC algorithm in all the considered cases in this figure, particularly it is observed that the Ps\text{P}_{\text{s}}FPC algorithm converges faster than the DFPC algorithm in all cases. This is because the network is bidirectional for the DFPC algorithm, and as such there are more connections per node in the network which in turn delays the convergence of the local averages computed at the nodes. Note that the Ps\text{P}_{\text{s}}FPC algorithm can be deployed for a bidirectional network as well, in which case it results in the same synchronization and convergence performance as that of the DFPC algorithm; however, the DFPC algorithm does not converge in case of directed networks due to its dependence on the average consensus algorithm [15] as discussed before. In practice, since the failure of a link may not be easily detectable, this means that the Ps\text{P}_{\text{s}}FPC algorithm is a preferred choice over the DFPC algorithm.

    III Mitigating Residual Phase Errors with Online Expectation-Maximization and Kalman Filtering

    In order to reduce the residual phase error of the Ps\text{P}_{\text{s}}FPC algorithm, we propose to use Kalman filtering (KF) at the nodes that computes the MMSE estimates of the frequencies and phases in each iteration to mitigate the offset errors. KF is applicable in scenarios where the state transitioning model follows a first-order Markov process, and the observations are a linear function of the unobserved state [34]. KF has been used for the time synchronization between the nodes in [35, 36], and for the frequency and phase synchronizations between the nodes in a distributed antenna arrays in [11]. However, an implicit assumption in using KF with the synchronization algorithms in [35, 36, 11] is that the innovation noise and the measurement noise covariance matrices are known to the Kalman filter. As discussed in Section I, these matrices are usually unknown and must be estimated for the KF algorithm. Thus, in this section, we propose to use an online expectation-maximization (EM) algorithm [28] that iteratively computes the maximum likelihood estimates of these noise matrices for Kalman filtering. The EM algorithm is integrated with the KF and Ps\text{P}_{\text{s}}FPC algorithms, and the resulting algorithm is referred to herein as EM-KF-Ps\text{P}_{\text{s}}FPC. Note that our proposed EM algorithm iteratively computes the ML estimates in an online fashion wherein the estimates are updated instantaneously as the new measurements are recorded. On the other hand, the EM algorithm of [37] assumes a batch mode technique in which a batch of measurements are recorded a priori, and then the EM algorithm is run iteratively on that set of measurements until its convergence. This batch-mode EM algorithm is not applicable in our considered synchronization problem wherein we want to update the nodes in an online manner to avoid larger oscillators drifts and to simultaneously perform the coherent operation during the synchronized interval. Similarly, a variational Bayes (VB) method based hybrid consensus on measurement and consensus on information (VB-HCMCI) algorithm was also proposed in [38], wherein the unknown noise matrices are estimated in an online manner using VB; however, this VB-based algorithm additionally requires a consensus on measurements and a consensus on the predicted information between the nodes at each time instant to result in an improved performance, and they also need to perform multiple iterations at each time instant for the VB’s convergence which makes them computationally more expensive than EM-KF-Ps\text{P}_{\text{s}}FPC. We note that performing multiple iterations at each time instant increases the update interval of the nodes in a practical distributed phased array system which is not favorable to avoid the decoherence between the nodes due to the larger oscillator drifts. Furthermore, these VB-based algorithms are developed for the undirected networks using the average consensus algorithm [15], and thus do not converge for the directed ones.

    Now, to develop the EM and KF algorithms, we start with describing the temporal variation of the frequencies and phases of the nodes via a state-space model as follows.

    III-A State-Space Model

    To write the state-space equation for the nn-th node, let at the kk-th time instant its state vector be given by 𝐱n(k)=[fn(k),θn(k)]T\mathbf{x}_{n}(k)=[f_{n}(k),\theta_{n}(k)]^{T} in which fn(k)f_{n}(k) and θn(k)\theta_{n}(k) represent its frequency and phase, respectively. Using the frequency drift and phase jitter models as described in Section II, the state-space equation for the nn-th node is written as

    𝐱n(k)=𝐱n(k1)+𝐮n,\mathbf{x}_{n}(k)=\mathbf{x}_{n}(k-1)+\mathbf{u}_{n}, (10)

    in which the innovation noise vector is defined as 𝐮n=[δfn,δθnf+δθn]T\mathbf{u}_{n}=[\delta f_{n},\delta\theta^{f}_{n}+\delta\theta_{n}]^{T}, and we assume that 𝐮n\mathbf{u}_{n} is normally distributed with zero mean and the correlation matrix 𝐐n\mathbf{Q}_{n} which is given by

    𝐐n=𝔼[𝐮n𝐮nT]=[σf2πTσf2πTσf2π2T2σf2+σθ2],\mathbf{Q}_{n}=\mathbb{E}[\mathbf{u}_{n}\mathbf{u}^{T}_{n}]=\left[\begin{matrix}\sigma^{2}_{f}&&-\pi T\sigma^{2}_{f}\\ -\pi T\sigma^{2}_{f}&&\pi^{2}T^{2}\sigma^{2}_{f}+\sigma^{2}_{\theta}\end{matrix}\right], (11)

    Next to write the observation equation, let the frequency and phase estimates of the signal for the nn-th node be written in the vector form as 𝐲n(k)=[f^n(k),θ^n(k)]T\mathbf{y}_{n}(k)=\left[\hat{f}_{n}(k),\hat{\theta}_{n}(k)\right]^{T}, then in terms of the estimation errors, this observation vector is defined as

    𝐲n(k)=𝐱n(k)+𝐯n,\mathbf{y}_{n}(k)=\mathbf{x}_{n}(k)+\mathbf{v}_{n}, (12)

    in which the measurement noise vector 𝐯n\mathbf{v}_{n} is given by 𝐯n=[εf,εθ]T\mathbf{v}_{n}=\left[\varepsilon_{f},\varepsilon_{\theta}\right]^{T} in which εf\varepsilon_{f} and εθ\varepsilon_{\theta} denote the frequency and phase estimation errors, respectively. We assume that 𝐯n\mathbf{v}_{n} is also normally distributed with zero mean and the correlation matrix 𝚺n\bm{\Sigma}_{n} which is given by

    𝚺n=𝔼[𝐯n𝐯nT]=[(σfm)200(σθm)2],\bm{\Sigma}_{n}=\mathbb{E}[\mathbf{v}_{n}\mathbf{v}^{T}_{n}]=\left[\begin{matrix}\left(\sigma^{m}_{f}\right)^{2}&&0\\ 0&&\left(\sigma^{m}_{\theta}\right)^{2}\end{matrix}\right], (13)

    in which the standard deviations σfm\sigma^{m}_{f} and σθm\sigma^{m}_{\theta} define the marginal distributions on the frequency and phase estimation errors, respectively.

    In the above state-space model in (10) and (12), the measurement noise vector 𝐯n\mathbf{v}_{n} is independent of the state vector 𝐱n(k)\mathbf{x}_{n}(k) and the innovation noise vector 𝐮n\mathbf{u}_{n}, thus the state vector estimate at each time instant can be easily obtained by using Kalman filtering as described below.

    III-B Kalman Filtering

    Kalman filtering is an online estimation algorithm that estimates the state vector 𝐱n(k)\mathbf{x}_{n}(k) of the nn-th node at the current time instant kk by using all the observations up to the present time. This process involves sequentially computing the prediction-update step and the time-update step at each time instant. To this end, let the state vector estimate of the nn-th node at time instant k1k-1 be given by the vector 𝐦n,k1(k1)\mathbf{m}_{n,k-1}(k-1) whereas its error covariance matrix is defined by the matrix 𝐕n,k1(k1)\mathbf{V}_{n,k-1}(k-1). As annotated in the subscripts, these parameters in KF are computed by using the observations up to time k1k-1. Thus, in the prediction-update step at time instant kk, we use the linear transformation in (10) and predict the new state vector estimate and the corresponding error covariance matrix as follows

    𝐦n,k1(k)\displaystyle\mathbf{m}_{n,k-1}(k) =𝐦n,k1(k1)\displaystyle=\mathbf{m}_{n,k-1}(k-1)
    𝐕n,k1(k)\displaystyle\mathbf{V}_{n,k-1}(k) =𝐕n,k1(k1)+𝐐n,\displaystyle=\mathbf{V}_{n,k-1}(k-1)+\mathbf{Q}_{n}, (14)

    In the time-update step, an a priori normal distribution is assumed on the state vector 𝐱n(k)\mathbf{x}_{n}(k) where its mean and covariance are set equal to the predicted estimate vector and the error covariance matrix in (III-B), respectively. This a priori distribution is then used to compute the a posteriori mean and covariance of the state vector given the current observation 𝐲n(k)\mathbf{y}_{n}(k) by using

    𝐦n,k(k)\displaystyle\mathbf{m}_{n,k}(k) =𝐦n,k1(k)+𝐊n(k)(𝐲n(k)𝐦n,k1(k))\displaystyle=\mathbf{m}_{n,k-1}(k)+\mathbf{K}_{n}(k)\left(\mathbf{y}_{n}(k)-\mathbf{m}_{n,k-1}(k)\right)
    𝐕n,k(k)\displaystyle\mathbf{V}_{n,k}(k) =𝐕n,k1(k)𝐊n(k)𝐕n,k1(k),\displaystyle=\mathbf{V}_{n,k-1}(k)-\mathbf{K}_{n}(k)\mathbf{V}_{n,k-1}(k), (15)

    where the Kalman gain matrix 𝐊n(k)\mathbf{K}_{n}(k) is given by

    𝐊n(k)=𝐕n,k1(k)(𝐕n,k1(k)+𝚺n)1,\mathbf{K}_{n}(k)=\mathbf{V}_{n,k-1}(k)\left(\mathbf{V}_{n,k-1}(k)+\bm{\Sigma}_{n}\right)^{-1}, (16)

    The mean vector 𝐦n,k(k)\mathbf{m}_{n,k}(k) in (15) gives the MMSE estimate of the state vector at time instant kk and the matrix 𝐕n,k(k)\mathbf{V}_{n,k}(k) defines its error covariance matrix. These means and covariances of the state vectors are used in the EM algorithm derived below to compute the maximization step in every iteration.

    III-C Online Expectation-Maximization Algorithm

    The prediction update and time update steps of KF in (III-B) and (15) assume that the innovation noise covariance matrix 𝐐n\mathbf{Q}_{n} and the measurement noise covariance matrix 𝚺n\bm{\Sigma}_{n} are known a priori. As discussed earlier, these model parameters are unknown in practice and must be estimated for Kalman filtering. Let 𝚯={𝐐n,𝚺n}\bm{\Theta}=\{\mathbf{Q}_{n},\bm{\Sigma}_{n}\} denote the set of these model parameters, then given all the instantaneous observations of the node nn up to the present time KK as denoted by 𝐲n1:K\mathbf{y}^{1:K}_{n}, the marginal log-likelihood of 𝚯\bm{\Theta} is written as

    (𝚯)=ln𝐱n1:Kp(𝐲n1:K,𝐱n1:K;𝚯)\displaystyle\ell(\bm{\Theta})=\ln\sum_{\mathbf{x}^{1:K}_{n}}p\left(\mathbf{y}^{1:K}_{n},\mathbf{x}^{1:K}_{n};\bm{\Theta}\right)
    =ln𝐱n1:Kk=1K[p(𝐲n(k)|𝐱n(k);𝚺n)p(𝐱n(k)|𝐱n(k1);𝐐n)],\displaystyle=\ln\sum_{\mathbf{x}^{1:K}_{n}}\prod^{K}_{k=1}\left[p\left(\mathbf{y}_{n}(k)|\mathbf{x}_{n}(k);\bm{\Sigma}_{n}\right)p\left(\mathbf{x}_{n}(k)|\mathbf{x}_{n}(k-1);\mathbf{Q}_{n}\right)\right], (17)

    where the conditional distributions in (III-C) can be easily found from (10) and (12) by shifting the distributions of the noise vectors to the given state vectors. Note that due to the normally distributed conditional distributions and due to the log of the summation in (III-C), the above objective function is a non-concave function of 𝚯\bm{\Theta}, and directly maximizing it with respect to 𝚯\bm{\Theta} does not provide a closed-form solution for estimating 𝐐n\mathbf{Q}_{n} and 𝚺n\bm{\Sigma}_{n}. An expectation-maximization (EM) algorithm [39, 28] is an iterative algorithm that often results in the closed-form update equations for the unknown parameters and maximizes the marginal log-likelihood function in every iteration until convergence to its local maximum or saddle point [40]. An EM algorithm starts with an initial estimate of the unknown parameters, thus if 𝚯(l1)\bm{\Theta}^{(l-1)} is the estimate at its (l1)(l-1)-st iteration, in the ll-th iteration it computes an expectation step (E-step) and a maximization step (M-step). In the E-step, it computes the expectation of the complete data log-likelihood function using the estimate of 𝚯\bm{\Theta} from the previous iteration as follows.

    Ln(𝚯;𝚯(l1))=𝔼[lnp(𝐲n1:K,𝐱n1:K;𝚯)|𝐲n1:K,𝚯(l1)],\displaystyle L_{n}\left(\bm{\Theta};\bm{\Theta}^{(l-1)}\right)=\mathbb{E}\left[\ln p\left(\mathbf{y}^{1:K}_{n},\mathbf{x}^{1:K}_{n};\bm{\Theta}\right)\big{|}\mathbf{y}^{1:K}_{n},\bm{\Theta}^{(l-1)}\right], (18)

    where the expectation in (18) is a conditional expectation given the observations 𝐲n1:K\mathbf{y}^{1:K}_{n} and the estimate 𝚯(l1)\bm{\Theta}^{(l-1)}. In the M-step, it maximizes this objective function with respect to 𝚯\bm{\Theta} to get its new estimate by solving

    𝚯(l)=argmax𝚯Ln(𝚯;𝚯(l1)),\displaystyle\bm{\Theta}^{(l)}=\operatorname*{arg\,max}_{\bm{\Theta}}L_{n}\left(\bm{\Theta};\bm{\Theta}^{(l-1)}\right), (19)

    The above E-step and M-step are repeated iteratively until the convergence is achieved. The EM algorithm in (18) and (19) describes a batch-mode EM algorithm that is proposed in [39, 37] where first the entire data set up to the time instant KK is collected, and then the algorithm is run iteratively on this data set until convergence is achieved. This batch-mode EM algorithm is applicable in cases where the cost of collecting the entire data set at once is affordable, whereas in our synchronization task due to the oscillators instantaneous frequency drifts and phase jitters, we aim to instantaneously estimate 𝚯\bm{\Theta} and update the frequencies and phases of the nodes in every iteration to synchronize these parameters across the array.

    To instantaneously estimate 𝚯\bm{\Theta} from the observed data, an online version of the EM algorithm is proposed in [28, 41] where the E-step in (18) is replaced by a stochastic approximation step in the kk-th iteration as follows.

    Ln,k\displaystyle L_{n,k} (𝚯;𝚯(k1))=Ln,k1(𝚯;𝚯(k1))+γk{n,k(𝚯;𝚯(k1))Ln,k1(𝚯;𝚯(k1))},\displaystyle\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right)=L_{n,k-1}\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right)+\gamma_{k}\left\{\ell_{n,k}\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right)-L_{n,k-1}\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right)\right\}, (20)

    where γk\gamma_{k} is a smoothing factor, and we define

    n,k(𝚯;𝚯(k1))\displaystyle\ell_{n,k}\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right) =𝔼[lnp(𝐲n(k),𝐱n(k),𝐱n(k1);𝚯)|𝐲n1:k,𝚯(k1)].\displaystyle=\mathbb{E}\left[\ln p\left(\mathbf{y}_{n}(k),\mathbf{x}_{n}(k),\mathbf{x}_{n}(k-1);\bm{\Theta}\right)\big{|}\mathbf{y}^{1:k}_{n},\bm{\Theta}^{(k-1)}\right]. (21)

    Note that the iteration index in the E-step in (20) is the same as the time index due to the online nature of the algorithm. Assuming a constant smoothing factor with γk=1α\gamma_{k}=1-\alpha, where α\alpha can be optimized on an initial dataset [41], the E-step in (20) can be written in compact form as

    Ln,k(𝚯;𝚯(k1))\displaystyle L_{n,k}\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right) =αLn,k1(𝚯;𝚯(k1))+(1α)n,k(𝚯;𝚯(k1))\displaystyle=\alpha L_{n,k-1}\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right)+(1-\alpha)\ell_{n,k}\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right)
    =(1α)j=1kαkjn,j(𝚯;𝚯(j1)).\displaystyle=(1-\alpha)\sum^{k}_{j=1}\alpha^{k-j}\ell_{n,j}\left(\bm{\Theta};\bm{\Theta}^{(j-1)}\right). (22)
    Ln,k(𝚯;𝚯(k1))=(1α)2j=1kαkj[ln|𝐐n|+ln[(σfm)2(σθm)2]+tr{𝐐n1(𝚪j,jn𝚪j,j1n\displaystyle L_{n,k}\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right)=-\frac{(1-\alpha)}{2}\sum^{k}_{j=1}\alpha^{k-j}\left[\ln|\mathbf{Q}_{n}|+\ln\left[\left(\sigma^{m}_{f}\right)^{2}\left(\sigma^{m}_{\theta}\right)^{2}\right]+\text{tr}\left\{\mathbf{Q}_{n}^{-1}\left(\bm{\Gamma}^{n}_{j,j}-\bm{\Gamma}^{n}_{j,j-1}-\right.\right.\right.
    (𝚪j,j1n)T+𝚪j1,j1n)}+(σfm)2(|f^n(j)|22f^n(j)mn,jf(j)+γj,1n)\displaystyle\left.\left.\left.\left(\bm{\Gamma}^{n}_{j,j-1}\right)^{T}+\bm{\Gamma}^{n}_{j-1,j-1}\right)\right\}+\left(\sigma^{m}_{f}\right)^{-2}\left(|\hat{f}_{n}(j)|^{2}-2\hat{f}_{n}(j)m^{f}_{n,j}(j)+\gamma^{n}_{j,1}\right)\right.
    +(σθm)2(|θ^n(j)|22θ^n(j)mn,jθ(j)+γj,2n)]+const.\displaystyle\left.+\left(\sigma^{m}_{\theta}\right)^{-2}\left(|\hat{\theta}_{n}(j)|^{2}-2\hat{\theta}_{n}(j)m^{\theta}_{n,j}(j)+\gamma^{n}_{j,2}\right)\right]+\text{const.} (23)

    In the M-step of the online EM algorithm, we maximize the objective function in (III-C) with respect to 𝚯\bm{\Theta} as in (19).

    Now we describe the computation of the auxiliary function in (III-C) as follows. By using the conditional distributions from (10), (12), and (III-C), this function can be computed as shown in (III-C), in which mn,kf(k)m^{f}_{n,k}(k) and mn,kθ(k)m^{\theta}_{n,k}(k) are the first and second element of the vector 𝐦n,k(k)\mathbf{m}_{n,k}(k), respectively, and the scalars γk,1n\gamma^{n}_{k,1} and γk,2n\gamma^{n}_{k,2} define the (1,1)(1,1)-th and (2,2)(2,2)-th indexed elements of the matrix 𝚪k,kn\bm{\Gamma}^{n}_{k,k}, respectively. The correlation matrices 𝚪k1,k1n\bm{\Gamma}^{n}_{k-1,k-1}, 𝚪k,kn\bm{\Gamma}^{n}_{k,k}, 𝚪k,k1n\bm{\Gamma}^{n}_{k,k-1}, and the mean vector 𝐦n,k(k)\mathbf{m}_{n,k}(k) in (III-C), in iteration kk, are defined in the following. To begin, the matrix 𝚪k1,k1n\bm{\Gamma}^{n}_{k-1,k-1} is defined by

    𝚪k1,k1n\displaystyle\bm{\Gamma}^{n}_{k-1,k-1} 𝔼[𝐱n(k1)𝐱nT(k1)|𝐲n1:k,𝚯(k1)]\displaystyle\triangleq\mathbb{E}\left[\mathbf{x}_{n}(k-1)\mathbf{x}^{T}_{n}(k-1)\big{|}\mathbf{y}^{1:k}_{n},\bm{\Theta}^{(k-1)}\right]
    =𝐕n,k(k1)+𝐦n,k(k1)𝐦n,kT(k1),\displaystyle=\mathbf{V}_{n,k}(k-1)+\mathbf{m}_{n,k}(k-1)\mathbf{m}^{T}_{n,k}(k-1), (24)

    where by using the fixed-point Kalman smoothing equations from [34], we get the covariance matrix 𝐕n,k(k1)\mathbf{V}_{n,k}(k-1) as

    𝐕n,k(k1)\displaystyle\mathbf{V}_{n,k}(k-1) =𝐕n,k1(k1)+𝐔k1n(𝐕n,k(k)𝐕n,k1(k))(𝐔k1n)T,\displaystyle=\mathbf{V}_{n,k-1}(k-1)+\mathbf{U}^{n}_{k-1}\left(\mathbf{V}_{n,k}(k)-\mathbf{V}_{n,k-1}(k)\right)\left(\mathbf{U}^{n}_{k-1}\right)^{T}, (25)

    in which

    𝐔k1n\displaystyle\mathbf{U}^{n}_{k-1} 𝐕n,k1(k1)(𝐕n,k1(k))1,\displaystyle\triangleq\mathbf{V}_{n,k-1}(k-1)\left(\mathbf{V}_{n,k-1}(k)\right)^{-1}, (26)

    and we get the mean 𝐦n,k(k1)\mathbf{m}_{n,k}(k-1) in (III-C) as

    𝐦n,k(k1)\displaystyle\mathbf{m}_{n,k}(k-1) =𝐦n,k1(k1)+𝐔k1n(𝐦n,k(k)𝐦n,k1(k)).\displaystyle=\mathbf{m}_{n,k-1}(k-1)+\mathbf{U}^{n}_{k-1}\left(\mathbf{m}_{n,k}(k)-\mathbf{m}_{n,k-1}(k)\right). (27)

    Similarly, the correlation matrix 𝚪k,k1n\bm{\Gamma}^{n}_{k,k-1} in (III-C) is defined as

    𝚪k,k1n\displaystyle\bm{\Gamma}^{n}_{k,k-1} 𝔼[𝐱n(k)𝐱nT(k1)|𝐲n1:k,𝚯(k1)]\displaystyle\triangleq\mathbb{E}\left[\mathbf{x}_{n}(k)\mathbf{x}^{T}_{n}(k-1)\big{|}\mathbf{y}^{1:k}_{n},\bm{\Theta}^{(k-1)}\right]
    =𝐦n,k(k)𝐦n,kT(k1)+𝐕n,k(k)(𝐔k1n)T,\displaystyle=\mathbf{m}_{n,k}(k)\mathbf{m}^{T}_{n,k}(k-1)+\mathbf{V}_{n,k}(k)\left(\mathbf{U}^{n}_{k-1}\right)^{T}, (28)

    and the correlation matrix 𝚪k,kn\bm{\Gamma}^{n}_{k,k} in (III-C) is given by using the Kalman filtering time-update equations as

    𝚪k,kn\displaystyle\bm{\Gamma}^{n}_{k,k} 𝔼[𝐱n(k)𝐱nT(k)|𝐲n1:k,𝚯(k1)]\displaystyle\triangleq\mathbb{E}\left[\mathbf{x}_{n}(k)\mathbf{x}^{T}_{n}(k)\big{|}\mathbf{y}^{1:k}_{n},\bm{\Theta}^{(k-1)}\right]
    =𝐕n,k(k)+𝐦n,k(k)𝐦n,kT(k),\displaystyle=\mathbf{V}_{n,k}(k)+\mathbf{m}_{n,k}(k)\mathbf{m}^{T}_{n,k}(k), (29)

    where 𝐕n,k(k)\mathbf{V}_{n,k}(k) and 𝐦n,k(k)\mathbf{m}_{n,k}(k) are defined in (15). In fact, note that all the matrices in (III-C)-(III-C) are computed using the KF prediction-update and time-update equations defined in (III-B) and (15) in Section III-B.

    Next we compute the M-step of the online EM algorithm in which we maximize the auxiliary function in (III-C) to recursively estimate 𝚯={𝐐n,𝚺n}\bm{\Theta}=\{\mathbf{Q}_{n},\bm{\Sigma}_{n}\}. To this end, to estimate 𝐐n\mathbf{Q}_{n}, we take the partial derivative of Ln,k(𝚯;𝚯(k1))L_{n,k}\left(\bm{\Theta};\bm{\Theta}^{(k-1)}\right) with respect to the matrix 𝐐n\mathbf{Q}_{n} and set it equal to zero. We get the estimate of 𝐐n\mathbf{Q}_{n} in the kk-th iteration as

    𝐐n(k)=j=1kαkj(𝚪j,jn𝚪j,j1n(𝚪j,j1n)T+𝚪j1,j1n)j=1kαkj,\displaystyle\mathbf{Q}_{n}^{(k)}=\frac{\sum^{k}_{j=1}\alpha^{k-j}\left(\bm{\Gamma}^{n}_{j,j}-\bm{\Gamma}^{n}_{j,j-1}-\left(\bm{\Gamma}^{n}_{j,j-1}\right)^{T}+\bm{\Gamma}^{n}_{j-1,j-1}\right)}{\sum^{k}_{j=1}\alpha^{k-j}}, (30)

    where to get the recursive form for updating 𝐐n\mathbf{Q}_{n}, we write the numerator in (30) as

    ξ(k)\displaystyle\xi(k) =j=1kαkj(𝚪j,jn𝚪j,j1n(𝚪j,j1n)T+𝚪j1,j1n),\displaystyle=\sum^{k}_{j=1}\alpha^{k-j}\left(\bm{\Gamma}^{n}_{j,j}-\bm{\Gamma}^{n}_{j,j-1}-\left(\bm{\Gamma}^{n}_{j,j-1}\right)^{T}+\bm{\Gamma}^{n}_{j-1,j-1}\right),
    =αξ(k1)+𝚪k,kn𝚪k,k1n(𝚪k,k1n)T+𝚪k1,k1n\displaystyle=\alpha\xi(k-1)+\bm{\Gamma}^{n}_{k,k}-\bm{\Gamma}^{n}_{k,k-1}-\left(\bm{\Gamma}^{n}_{k,k-1}\right)^{T}+\bm{\Gamma}^{n}_{k-1,k-1} (31)

    thus the update equation for 𝐐n\mathbf{Q}_{n} is written as

    𝐐n(k)=\displaystyle\mathbf{Q}_{n}^{(k)}= (αξ(k1)+𝚪k,kn𝚪k,k1n(𝚪k,k1n)T+𝚪k1,k1n)λk,\displaystyle\frac{\left(\alpha\xi(k-1)+\bm{\Gamma}^{n}_{k,k}-\bm{\Gamma}^{n}_{k,k-1}-\left(\bm{\Gamma}^{n}_{k,k-1}\right)^{T}+\bm{\Gamma}^{n}_{k-1,k-1}\right)}{\lambda_{k}}, (32)

    in which λk1αk1α\lambda_{k}\triangleq\frac{1-\alpha^{k}}{1-\alpha} and we set ξ(0)=0\xi(0)=0. Similarly the matrix 𝚺n\bm{\Sigma}_{n} can also be estimated in the M-step through computing the partial derivatives. Since it is a diagonal matrix as shown in (13), it can be easily estimated by recursively estimating its diagonal elements σfm\sigma^{m}_{f} and σθm\sigma^{m}_{\theta} as follows. To estimate σfm\sigma^{m}_{f}, we compute

    (σfm,(k))2\displaystyle\left(\sigma^{m,(k)}_{f}\right)^{2} =αξf(k1)+(|f^n(k)|22f^n(k)mn,kf(k)+γk,1n)λk,\displaystyle=\frac{\alpha\xi^{f}(k-1)+\left(|\hat{f}_{n}(k)|^{2}-2\hat{f}_{n}(k)m^{f}_{n,k}(k)+\gamma^{n}_{k,1}\right)}{\lambda_{k}}, (33)

    where ξf(0)=0\xi^{f}(0)=0, and to estimate σθm\sigma^{m}_{\theta}, we use

    (σθm,(k))2\displaystyle\left(\sigma^{m,(k)}_{\theta}\right)^{2} =αξθ(k1)+(|θ^n(k)|22θ^n(k)mn,kθ(k)+γk,2n)λk,\displaystyle=\frac{\alpha\xi^{\theta}(k-1)+\left(|\hat{\theta}_{n}(k)|^{2}-2\hat{\theta}_{n}(k)m^{\theta}_{n,k}(k)+\gamma^{n}_{k,2}\right)}{\lambda_{k}}, (34)

    where we set ξθ(0)=0\xi^{\theta}(0)=0. Thus, σfm,(k)\sigma^{m,(k)}_{f} and σθm,(k)\sigma^{m,(k)}_{\theta} together define the correlation matrix 𝚺n(k)\bm{\Sigma}_{n}^{(k)} in the kk-th iteration.

    This completes the derivation of the online EM algorithm. For further detail, the pseudo-code of the resulting algorithm which combines EM, KF, and Ps\text{P}_{\text{s}}FPC is given in Algorithm 2.

    Input: k=0k=0, define sn(0)=1s_{n}(0)=1 for each node nn, initialize 𝐦n,0(0)\mathbf{m}_{n,0}(0) and 𝐕n,0(0)\mathbf{V}_{n,0}(0).
    while convergence criterion is not met do
           k=k+1k=k+1
    For each node nn:
    1. a)

       

      Obtain the observation vector 𝐲n(k)=[f^n(k),θ^n(k)]T\mathbf{y}_{n}(k)=\left[\hat{f}_{n}(k),\hat{\theta}_{n}(k)\right]^{T}.

    1. b)

       

      Compute the prediction update step of KF.

           if k=1k=1 then
    1. i.

             

      Run the prediction update of KF by computing

                 𝐦n,k1(k)\mathbf{m}_{n,k-1}(k) and 𝐕n,k1(k)\mathbf{V}_{n,k-1}(k) from (III-B).
          else
    1. i.

             

      Set 𝐦n,k1(k1)=[fn(k1),θn(k1)]T\mathbf{m}_{n,k-1}(k-1)=\left[f_{n}(k-1),\theta_{n}(k-1)\right]^{T}

    and compute 𝐕n,k1(k1)\mathbf{V}_{n,k-1}(k-1) using (35).
  • ii.

           

    Run the prediction update of KF by finding

  •              𝐦n,k1(k)\mathbf{m}_{n,k-1}(k) and 𝐕n,k1(k)\mathbf{V}_{n,k-1}(k) using (III-B).
           end if
  • c)

     

    Run the time update step of KF by computing

  • 𝐦n,k(k)\mathbf{m}_{n,k}(k) and 𝐕n,k(k)\mathbf{V}_{n,k}(k) using (15).
  • d)

     

    Estimate 𝐐n(k)\mathbf{Q}_{n}^{(k)} and 𝚺n(k)\bm{\Sigma}_{n}^{(k)} matrices using (32)-(34).

  • e)

     

    For each mχninm\in\chi^{in}_{n}, let 𝐦m,k(k)[mm,kf(k),mm,kθ(k)]T\mathbf{m}_{m,k}(k)\triangleq\left[m^{f}_{m,k}(k),m^{\theta}_{m,k}(k)\right]^{T},

  •       then update each node nn temporary variables by
    xnf(k)\displaystyle x^{f}_{n}(k) =mχninwn,mmm,kf(k)sm(k1)\displaystyle=\sum_{m\in\chi^{in}_{n}}w_{n,m}m^{f}_{m,k}(k)s_{m}(k-1)
    xnθ(k)\displaystyle x^{\theta}_{n}(k) =mχninwn,mmm,kθ(k)sm(k1)\displaystyle=\sum_{m\in\chi^{in}_{n}}w_{n,m}m^{\theta}_{m,k}(k)s_{m}(k-1)
    sn(k)\displaystyle s_{n}(k) =mχninwn,msm(k1),\displaystyle=\sum_{m\in\chi^{in}_{n}}w_{n,m}s_{m}(k-1),
    Next update fn(k)f_{n}(k) and θn(k)\theta_{n}(k) using
    fn(k)\displaystyle f_{n}(k) =xnf(k)sn(k)\displaystyle=\frac{x^{f}_{n}(k)}{s_{n}(k)}
    θn(k)\displaystyle\theta_{n}(k) =xnθ(k)sn(k),\displaystyle=\frac{x^{\theta}_{n}(k)}{s_{n}(k)},
    end while
    Output: fn(k)f_{n}(k) and θn(k)\theta_{n}(k) for all n=1,2,,Nn=1,2,\ldots,N
    Algorithm 2 EM-KF-Ps\text{P}_{\text{s}}FPC Algorithm

    III-D Discussions

    In this subsection, we begin with describing the initialization of the KF algorithm in each iteration, and then compute the computational complexity of the proposed EM-KF-Ps\text{P}_{\text{s}}FPC algorithm. Note that the initialization of the EM algorithm is included in Section III-E where the simulation results are discussed.

    • a)

      Initialization: To perform the prediction update step of KF in the iteration k=1k=1 of the EM-KF-Ps\text{P}_{\text{s}}FPC algorithm, we define the mean vector 𝐦n,0(0)\mathbf{m}_{n,0}(0) and the covariance matrix 𝐕n,0(0)\mathbf{V}_{n,0}(0) of the nn-th node as 𝐦n,0(0)=[fc,π]T\mathbf{m}_{n,0}(0)=[f_{c},\pi]^{T} and 𝐕n,0(0)=[σ2004π2/12]\mathbf{V}_{n,0}(0)=\left[\begin{matrix}\sigma^{2}&0\\ 0&4\pi^{2}/12\end{matrix}\right]. Next since the posterior distribution on the state vector of node nn is a normal distribution and the means undergo a linear transformation in Step (e) of EM-KF-Ps\text{P}_{\text{s}}FPC algorithm, we initialize the prediction-update step of KF in the k>1k>1 iteration by defining the mean vector from the previous iteration as 𝐦n,k1(k1)=[fn(k1),θn(k1)]T\mathbf{m}_{n,k-1}(k-1)=\left[f_{n}(k-1),\theta_{n}(k-1)\right]^{T} and the covariance matrix 𝐕n,k1(k1)\mathbf{V}_{n,k-1}(k-1) as

      𝐕n,k1(k1)\displaystyle\mathbf{V}_{n,k-1}(k-1) =[mχninηn,mk2νm1,1(k1)|sn(k1)|2mχninηn,mk2νm1,2(k1)|sn(k1)|2mχninηn,mk2νm1,2(k1)|sn(k1)|2mχninηn,mk2νm2,2(k1)|sn(k1)|2],\displaystyle=\left[\begin{matrix}\frac{\sum_{m\in\chi^{in}_{n}}\eta^{k-2}_{n,m}\nu^{1,1}_{m}(k-1)}{|s_{n}(k-1)|^{2}}&\frac{\sum_{m\in\chi^{in}_{n}}\eta^{k-2}_{n,m}\nu^{1,2}_{m}(k-1)}{|s_{n}(k-1)|^{2}}\\ \\ \frac{\sum_{m\in\chi^{in}_{n}}\eta^{k-2}_{n,m}\nu^{1,2}_{m}(k-1)}{|s_{n}(k-1)|^{2}}&\frac{\sum_{m\in\chi^{in}_{n}}\eta^{k-2}_{n,m}\nu^{2,2}_{m}(k-1)}{|s_{n}(k-1)|^{2}}\end{matrix}\right], (35)

      where ηn,mk2|wn,msm(k2)|2\eta^{k-2}_{n,m}\triangleq|w_{n,m}s_{m}(k-2)|^{2} and the components νm1,1(k1)\nu^{1,1}_{m}(k-1), νm1,2(k1)\nu^{1,2}_{m}(k-1), and νm2,2(k1)\nu^{2,2}_{m}(k-1) are the (1,1)(1,1)-th, (1,2)(1,2)-th, and (2,2)(2,2)-th elements, respectively, of the covariance matrix computed at node mm in the (k1)(k-1)-st iteration of KF using (15). Noticeably the proposed EM-KF-Ps\text{P}_{\text{s}}FPC algorithm is a distributed algorithm in which the nodes run the EM and KF algorithms on their own observations, in parallel, and then locally share their MMSE estimates and the error covariances with their neighboring nodes to update the electrical states in step (e)(e) across the array. The shared covariances are used to define the priors at each node for Kalman filtering in step (b)(b).

    • b)

      Computational Complexity: For the nn-th node in the array, the computational complexity of EM-KF-Ps\text{P}_{\text{s}}FPC per iteration is dominated by (II-A), (16), and (26). Equation (II-A) is part of the Ps\text{P}_{\text{s}}FPC algorithm which has the computational complexity of 𝒪(card{χnin})\mathcal{O}(\text{card}\{\chi^{in}_{n}\}), where the notation card{χnin}\text{card}\{\chi^{in}_{n}\} defines the cardinality of the set χnin\chi^{in}_{n}. Equations (16) and (26) are part of the KF and EM algorithms, respectively, which require inverting and then multiplying the 2×22\times 2 matrices. These two equations have the computational complexity of 𝒪(8)\mathcal{O}(8). Now since the KF and EM step in the synchronization algorithm for each node nn can be run in parallel, the computational complexity of the overall EM-KF-Ps\text{P}_{\text{s}}FPC algorithm is 𝒪(card{χnin}+8)\mathcal{O}(\text{card}\{\chi^{in}_{n}\}+8). This shows that for the sparsely connected arrays with card{χnin}8\text{card}\{\chi^{in}_{n}\}\ll 8, the computational complexity is 𝒪(8)\mathcal{O}(8), whereas for the moderately connected large arrays with card{χnin}8\text{card}\{\chi^{in}_{n}\}\gg 8, it can be approximated as 𝒪(card{χnin})\mathcal{O}(\text{card}\{\chi^{in}_{n}\}). Thus, for the moderately connected large arrays, using the EM and KF algorithms result in an improved synchronization performance of Ps\text{P}_{\text{s}}FPC without any additional increase in the computational complexity. This result is the same as was observed for the KF-DFPC algorithm in [11] which was proposed for the bidirectional array networks. Furthermore, we also note that the computational complexity of EM-KF-Ps\text{P}_{\text{s}}FPC is significantly lower than that of the VB-HCMCI algorithm in [38] which not only does additionally require consensus on measurements and consensus on the predicted information at each node that comes at the cost of increase in the bandwidth requirement between the nodes and the increase in the latency for encoding the information, but they also need to perform multiple iterations at each time instant kk and at each node nn for the VB’s convergence, before progressing on to the next time instant k+1k+1.

    Refer to caption
    Figure 5: Standard deviation of the total phase errors of the EM-KF-Ps\text{P}_{\text{s}}FPC and EM-KF-DFPC algorithms vs. the number of iterations for different NN values and for different initialization of EM when c=0.2c=0.2, T=0.1T=0.1 ms, and SNR=30dB=30\text{dB}.
    Refer to caption
    Figure 6: Standard deviation of the total phase errors of the EM-KF-Ps\text{P}_{\text{s}}FPC and EM-KF-DFPC algorithms vs. the number of nodes NN for different cc values when SNR=30=30 dB and T=0.1T=0.1 ms.

    III-E Simulation Results

    In this subsection, we evaluate the frequency and phase synchronization performances of the proposed EM-KF-Ps\text{P}_{\text{s}}FPC algorithm by varying the number of nodes NN in the array and the connectivity cc between the nodes. To this end, we consider different initialization of the online EM algorithm. For the comparison purposes, we plot the performance of the KF-Ps\text{P}_{\text{s}}FPC with known innovation noise and measurement noise covariance matrices and refer to it as the Genie-aided-KF-Ps\text{P}_{\text{s}}FPC. In addition, we also show the performance of KF-Ps\text{P}_{\text{s}}FPC when these noise covariance matrices are not updated over the iterations and the algorithm uses the initially estimated covariance matrices which is referred to herein as the Naive-KF-Ps\text{P}_{\text{s}}FPC algorithm. The carrier frequency of the nodes is chosen as fc=1f_{c}=1 GHz, the sampling frequency is set as fs=10f_{s}=10 MHz, the update interval is T=0.1T=0.1 ms, the SNR=30=30 dB. The results in this section were averaged over 10310^{3} independent trials.

    In Fig. 6, we analyze the convergence properties of the EM-KF-Ps\text{P}_{\text{s}}FPC algorithm by evaluating the standard deviation of the residual phase error vs. the number of iterations for N=20N=20 and 4040 nodes in the array with connectivity c=0.2c=0.2, and for different initialization of the noise covariance matrices (𝐐n\mathbf{Q}_{n} and 𝚺n\bm{\Sigma}_{n}) in the online EM algorithm. For the demonstration purposes, we consider two cases of the initializations for the EM algorithm in EM-KF-Ps\text{P}_{\text{s}}FPC, i.e., case (a)(a) represents a poor initialization of EM with 𝐐n(0)=[σ^f200π2T2σ^f2]\mathbf{Q}_{n}^{(0)}=\left[\begin{matrix}\hat{\sigma}^{2}_{f}&0\\ 0&\pi^{2}T^{2}\hat{\sigma}^{2}_{f}\end{matrix}\right] in which σ^f2=1T\hat{\sigma}^{2}_{f}=\frac{1}{\sqrt{T}}, and with 𝚺n(0)=[103001012]\bm{\Sigma}_{n}^{(0)}=\left[\begin{matrix}10^{3}&0\\ 0&10^{-12}\end{matrix}\right], whereas case (b)(b) represents a good initialization of EM with 𝐐n(0)=𝐐n\mathbf{Q}_{n}^{(0)}=\mathbf{Q}_{n} and 𝚺n(0)=[103001012]\bm{\Sigma}_{n}^{(0)}=\left[\begin{matrix}10^{3}&0\\ 0&10^{-12}\end{matrix}\right]. Note that the initialization in case (a)(a) uses a poor estimate of 𝐐n\mathbf{Q}_{n} that ignores the cross-correlation terms in 𝐐n\mathbf{Q}_{n}, uses an estimate of σf2\sigma^{2}_{f}, and assumes that there is no phase jitter at the nodes with σ^θ=0\hat{\sigma}_{\theta}=0. In contrast, the initialization in case (b)(b) uses the true 𝐐n\mathbf{Q}_{n} matrix. Furthermore, both cases use a poor estimate of 𝚺n\bm{\Sigma}_{n} matrix where the true diagonal elements can be computed using the considered simulation parameters in (13) as (σfm)2=1.52×105\left(\sigma^{m}_{f}\right)^{2}=1.52\times 10^{5} and (σθm)2=4×1012\left(\sigma^{m}_{\theta}\right)^{2}=4\times 10^{-12}. For both of these cases and for both N=20N=20 and 4040 nodes, we evaluate the residual phase error of EM-KF-Ps\text{P}_{\text{s}}FPC vs. the number of iterations and compare it against the Naive-KF-Ps\text{P}_{\text{s}}FPC and the Genie-aided-KF-Ps\text{P}_{\text{s}}FPC as shown in the figure. It is observed that with the case (a)(a) initialization and for both NN values, the Naive-KF-Ps\text{P}_{\text{s}}FPC algorithm although converges faster but results in a higher residual phase error as compared to EM-KF-Ps\text{P}_{\text{s}}FPC. Our EM-KF-Ps\text{P}_{\text{s}}FPC algorithm takes about 5050 to 8080 more iteration to converge when NN varies from 2020 to 4040 nodes, respectively, than the Naive-KF-Ps\text{P}_{\text{s}}FPC algorithm but significantly reduces the residual phase error upon convergence. Note that, in this case, the residual phase error of EM-KF-Ps\text{P}_{\text{s}}FPC is far from the Genie-aided-KF-Ps\text{P}_{\text{s}}FPC for both NN values due to the convergence of EM to the local maximum near the initial estimate as discussed in Section III-C. In contrast, in case (b)(b), where a better initial estimate is available, the Naive-KF-Ps\text{P}_{\text{s}}FPC continues to show a higher residual phase error as compared to EM-KF-Ps\text{P}_{\text{s}}FPC, whereas the EM-KF-Ps\text{P}_{\text{s}}FPC algorithm follows both the convergence speed and the residual phase error of the Genie-aided-KF-Ps\text{P}_{\text{s}}FPC. To summarize, in both cases, EM-KF-Ps\text{P}_{\text{s}}FPC performs better than Naive-KF-Ps\text{P}_{\text{s}}FPC, and in particular with a good initialization of EM, EM-KF-Ps\text{P}_{\text{s}}FPC converges in residual phase error to the Genie-aided-KF-Ps\text{P}_{\text{s}}FPC as expected.

    In Fig. 6, we continue with the case (b)(b) initialization and plot the final standard deviations of the residual phase errors of the EM-KF-Ps\text{P}_{\text{s}}FPC, Naive-KF-Ps\text{P}_{\text{s}}FPC, and Genie-aided-KF-Ps\text{P}_{\text{s}}FPC algorithms after 100100 iterations by varying the number of nodes NN in the array and the connectivity cc between the nodes. It is observed that as the value of cc or NN increases, the performance of all the algorithms improves due to the increase in the average number of connections per node (DD) and a decrease in the network algebraic connectivity (λ2\lambda_{2}) as dicussed before. Moreover, by comparing Figs. 4 and 6, it is observed that Kalman filtering significantly reduces the residual phase error of the consensus-based algorithms and thereby minimizes the decoherence between the nodes. For all the cc and NN values, the EM-KF-Ps\text{P}_{\text{s}}FPC algorithm continues to perform better than the Naive-KF-Ps\text{P}_{\text{s}}FPC algorithm and similar to the Genie-aided-KF-Ps\text{P}_{\text{s}}FPC algorithm. For this figure, we also extended the KF-DFPC algorithm of [11] to integrate the online EM algorithm with it, and thus evaluated the performance of the EM-KF-DFPC algorithm and the Genie-aided-KF-DFPC algorithms. It is observed that for both c=0.2c=0.2 and 0.50.5, and all NN values, EM-KF-DFPC performs similar to Genie-aided-KF-DFPC but better than the EM-KF-Ps\text{P}_{\text{s}}FPC algorithm. This is expected because the DFPC-based algorithms were evaluated using undirected array networks which entails more exchange of information between the nodes as compared to the directed networks which were used for the Ps\text{P}_{\text{s}}FPC-based algorithms. Note that, as mentioned before, the DFPC-based algorithms are only applicable to the undirected array networks with bidirectional links between the nodes, whereas for the directed array networks, they do not converge due to the use of average consensus [15] as the underlying algorithm. However, our proposed Ps\text{P}_{\text{s}}FPC-based algorithms are applicable for the both types of array networks, whereas in the case of undirected networks Ps\text{P}_{\text{s}}FPC-based algorithms results in the same synchronization and convergence performance as the DFPC-based algorithms. Thus, the performances of the DFPC-based algorithms in this work can also be interpreted as the performances of the Ps\text{P}_{\text{s}}FPC-based algorithms for the undirected array networks to drew a comparison of directed vs. undirected array network.

    Finally, Fig. 6 also shows the residual phase error of the HCMCI algorithm of [29] for the undirected array networks with L=1L=1 consensus steps, which is the base algorithm of VB-HCMCI (see Table I in [38]). To this end, we assume here that the noise covariance matrices are known to the HCMCI algorithm, and thus refer to it as the Genie-aided-HCMCI algorithm. It is observed that the Genie-aided-HCMCI performs slightly better than the EM-KF-DFPC (EM-KF-Ps\text{P}_{\text{s}}FPC) algorithm for all the cc and NN values. As discussed earlier, this is because HCMCI-based algorithms additionally need to perform a consensus on the neighboring nodes’ measurements and a consensus on their predicted information matrices in each iteration as compared to the KF-DFPC and KF-Ps\text{P}_{\text{s}}FPC based algorithms which only perform consensus on the MMSE estimates and the error covariances at the neighboring nodes. Hence, the latter ones are computationally less complex and have lower latency in encoding the information and the lower bandwidth requirement for sharing that information between the nodes as compared to the HCMCI-based algorithms.

    IV Conclusions

    We considered the problem of joint frequency and phase synchronization of the nodes in distributed phased arrays. To this end, we included the frequency drift and phase jitter of the oscillator, as well as the frequency and phase estimator errors in our signal model. We considered a more practical case, that is when there exist directed communication links between the nodes in a distributed phased array. A push-sum protocol based frequency and phase consensus algorithm referred to herein as the Ps\text{P}_{\text{s}}FPC algorithm was proposed. Kalman filtering was also integrated with Ps\text{P}_{\text{s}}FPC to propose the KF-Ps\text{P}_{\text{s}}FPC algorithm. KF assumes that the innovation noise and the measurement noise covariance matrices are known which is an impractical assumption. An online EM based algorithm is developed that iteratively computes the ML estimates of these unknown matrices which are then used for KF. The residual phase error of EM upon convergence is defined by the initialization which is expected due to the non-concave structure of the objective function. However, given a good initialization, the proposed EM-KF-Ps\text{P}_{\text{s}}FPC algorithm significantly improves the residual phase error as compared to the Ps\text{P}_{\text{s}}FPC and the Naive-KF-Ps\text{P}_{\text{s}}FPC algorithms, and also shows similar synchronization and convergence performance as that of the Genie-aided-KF-Ps\text{P}_{\text{s}}FPC. The residual phase error and the convergence speed of EM-KF-Ps\text{P}_{\text{s}}FPC improves by increasing the number of nodes in the array and the connectivity between the nodes. Furthermore, the computational complexity of EM-KF-Ps\text{P}_{\text{s}}FPC is lower than that of the HCMCI-based algorithms and is the same as the computational complexity of the KF-Ps\text{P}_{\text{s}}FPC and KF-DFPC algorithms. In particular, for the moderately connected large array, the use of EM and KF doesn’t increase the computational complexity of Ps\text{P}_{\text{s}}FPC.

    References

    • [1] S. M. Ellison, S. R. Mghabghab, and J. A. Nanzer, “Multi-Node Open-Loop Distributed Beamforming Based on Scalable, High-Accuracy Ranging,” IEEE Sensors Journal, vol. 22, no. 2, pp. 1629–1637, 2022.
    • [2] S. Schieler, C. Schneider, C. Andrich, M. Döbereiner, J. Luo, A. Schwind, P. Wendland, R. S. Thomä, and G. Del Galdo, “OFDM Waveform for Distributed Radar Sensing in Automotive Scenarios,” in 2019 16th European Radar Conference (EuRAD), 2019, pp. 225–228.
    • [3] B. Pardhasaradhi and L. R. Cenkeramaddi, “GPS Spoofing Detection and Mitigation for Drones using Distributed Radar Tracking and Fusion,” IEEE Sensors Journal, pp. 1–1, 2022.
    • [4] U. Madhow, D. R. Brown, S. Dasgupta, and R. Mudumbai, “Distributed massive MIMO: Algorithms, architectures and concept systems,” in 2014 Information Theory and Applications Workshop (ITA), 2014, pp. 1–7.
    • [5] J. A. Nanzer, S. R. Mghabghab, S. M. Ellison, and A. Schlegel, “Distributed Phased Arrays: Challenges and Recent Advances,” IEEE Transactions on Microwave Theory and Techniques, vol. 69, no. 11, pp. 4893–4907, 2021.
    • [6] K.-Y. Tu and C.-S. Liao, “Application of ANFIS for Frequency Syntonization Using GPS Carrier-Phase Measurements,” in 2007 IEEE International Frequency Control Symposium Joint with the 21st European Frequency and Time Forum, 2007, pp. 933–936.
    • [7] R. Mudumbai, B. Wild, U. Madhow, and K. Ramch, “Distributed beamforming using 1 bit feedback: From concept to realization,” in in Allerton Conference on Communication, Control, and Computing, 2006.
    • [8] W. Tushar and D. B. Smith, “Distributed transmit beamforming based on a 3-bit feedback system,” in 2010 IEEE 11th International Workshop on Signal Processing Advances in Wireless Communications (SPAWC), 2010, pp. 1–5.
    • [9] B. Peiffer, R. Mudumbai, S. Goguri, A. Kruger, and S. Dasgupta, “Experimental demonstration of retrodirective beamforming from a fully wireless distributed array,” in MILCOM 2016 - 2016 IEEE Military Communications Conference, 2016, pp. 442–447.
    • [10] J. A. Nanzer, R. L. Schmid, T. M. Comberiate, and J. E. Hodkin, “Open-Loop Coherent Distributed Arrays,” IEEE Transactions on Microwave Theory and Techniques, vol. 65, no. 5, pp. 1662–1672, 2017.
    • [11] M. Rashid and J. A. Nanzer, “Frequency and Phase Synchronization in Distributed Antenna Arrays Based on Consensus Averaging and Kalman Filtering,” arXiv preprint arXiv:2201.08931v2, 2022.
    • [12] S. R. Mghabghab and J. A. Nanzer, “Open-Loop Distributed Beamforming Using Wireless Frequency Synchronization,” IEEE Transactions on Microwave Theory and Techniques, vol. 69, no. 1, pp. 896–905, 2021.
    • [13] M. Pontón and A. Suárez, “Stability analysis of wireless coupled-oscillator circuits,” in 2017 IEEE MTT-S International Microwave Symposium (IMS), 2017, pp. 83–86.
    • [14] M. Pontón, A. Herrera, and A. Suárez, “Wireless-Coupled Oscillator Systems With an Injection-Locking Signal,” IEEE Transactions on Microwave Theory and Techniques, vol. 67, no. 2, pp. 642–658, 2019.
    • [15] S. Boyd, P. Diaconis, and L. Xiao, “Fastest Mixing Markov Chain on a Graph,” SIAM Review, vol. 46, no. 4, pp. 667–689, 2004.
    • [16] F. S. Cattivelli and A. H. Sayed, “Diffusion LMS Strategies for Distributed Estimation,” IEEE Transactions on Signal Processing, vol. 58, no. 3, pp. 1035–1048, 2010.
    • [17] R. Olfati-Saber, “Kalman-Consensus Filter : Optimality, stability, and performance,” in Proceedings of the 48h IEEE Conference on Decision and Control (CDC) held jointly with 2009 28th Chinese Control Conference, 2009, pp. 7036–7042.
    • [18] F. S. Cattivelli and A. H. Sayed, “Diffusion Strategies for Distributed Kalman Filtering and Smoothing,” IEEE Transactions on Automatic Control, vol. 55, no. 9, pp. 2069–2084, 2010.
    • [19] D.-J. Xin, L.-F. Shi, and X. Yu, “Distributed Kalman Filter With Faulty/Reliable Sensors Based on Wasserstein Average Consensus,” IEEE Transactions on Circuits and Systems II: Express Briefs, vol. 69, no. 4, pp. 2371–2375, 2022.
    • [20] F. Walls and J.-J. Gagnepain, “Environmental sensitivities of quartz oscillators,” IEEE Transactions on Ultrasonics, Ferroelectrics, and Frequency Control, vol. 39, no. 2, pp. 241–249, 1992.
    • [21] R. Filler and J. Vig, “Long-term aging of oscillators,” IEEE Transactions on Ultrasonics, Ferroelectrics, and Frequency Control, vol. 40, no. 4, pp. 387–394, 1993.
    • [22] S.-y. Wang, B. Neubig, J.-h. Wu, T.-f. Ma, J.-k. Du, and J. Wang, “Extension of the frequency aging model of crystal resonators and oscillators by the Arrhenius factor,” in 2016 Symposium on Piezoelectricity, Acoustic Waves, and Device Applications (SPAWDA), 2016, pp. 269–272.
    • [23] M. Goryachev, S. Galliou, P. Abbe, and V. Komine, “Oscillator frequency stability improvement by means of negative feedback,” IEEE Transactions on Ultrasonics, Ferroelectrics, and Frequency Control, vol. 58, no. 11, pp. 2297–2304, 2011.
    • [24] K. I. Tsianos, S. Lawlor, and M. G. Rabbat, “Push-Sum Distributed Dual Averaging for convex optimization,” in 2012 IEEE 51st IEEE Conference on Decision and Control (CDC), 2012, pp. 5453–5458.
    • [25] H. Ouassal, T. Rocco, M. Yan, and J. A. Nanzer, “Decentralized Frequency Synchronization in Distributed Antenna Arrays With Quantized Frequency States and Communications,” IEEE Transactions on Antennas and Propagation, vol. 68, no. 7, pp. 5280–5288, 2020.
    • [26] S. R. Mghabghab and J. A. Nanzer, “Impact of VCO and PLL Phase Noise on Distributed Beamforming Arrays With Periodic Synchronization,” IEEE Access, vol. 9, pp. 56 578–56 588, 2021.
    • [27] P. Chatterjee and J. A. Nanzer, “A study of coherent gain degradation due to node vibrations in open loop coherent distributed arrays,” in 2017 USNC-URSI Radio Science Meeting (Joint with AP-S Symposium), 2017, pp. 115–116.
    • [28] O. Cappe and E. Moulines, “On-line expectation-maximization algorithm for latent data models,” Journal of the Royal Statistical Society: Series B (Statistical Methodology), vol. 71, no. 3, pp. 593–613, 2009.
    • [29] G. Battistelli, L. Chisci, G. Mugnai, A. Farina, and A. Graziano, “Consensus-Based Linear and Nonlinear Filtering,” IEEE Transactions on Automatic Control, vol. 60, no. 5, pp. 1410–1415, 2015.
    • [30] H. Ouassal, M. Yan, and J. A. Nanzer, “Decentralized Frequency Alignment for Collaborative Beamforming in Distributed Phased Arrays,” IEEE Transactions on Wireless Communications, vol. 20, no. 10, pp. 6269–6281, 2021.
    • [31] M. A. Richards, Fundamentals of Radar Signal Processing.   McGraw-Hill Professional, 2005.
    • [32] P. Rezaienia, B. Gharesifard, T. Linder, and B. Touri, “Push-Sum on Random Graphs: Almost Sure Convergence and Convergence Rate,” IEEE Transactions on Automatic Control, vol. 65, no. 3, pp. 1295–1302, 2020.
    • [33] H. Wang, W. Xu, and J. Lu, “Privacy-Preserving Push-sum Average Consensus Algorithm over Directed Graph Via State Decomposition,” in 2021 3rd International Conference on Industrial Artificial Intelligence (IAI), 2021, pp. 1–6.
    • [34] S. Sarkka, Bayesian Filtering and Smoothing, ser. Institute of Mathematical Statistics Textbooks.   Cambridge University Press, 2013.
    • [35] G. Giorgi, “An Event-Based Kalman Filter for Clock Synchronization,” IEEE Transactions on Instrumentation and Measurement, vol. 64, no. 2, pp. 449–457, 2015.
    • [36] P. Li, H. Gong, J. Peng, and X. Zhu, “Time Synchronization of White Rabbit Network Based on Kalman Filter,” in 2019 3rd International Conference on Electronic Information Technology and Computer Engineering (EITCE), 2019, pp. 572–576.
    • [37] D.-J. Xin and L.-F. Shi, “Kalman Filter for Linear Systems With Unknown Structural Parameters,” IEEE Transactions on Circuits and Systems II: Express Briefs, vol. 69, no. 3, pp. 1852–1856, 2022.
    • [38] X. Dong, G. Battistelli, L. Chisci, and Y. Cai, “An Adaptive Consensus Filter for Distributed State Estimation With Unknown Noise Statistics,” IEEE Signal Processing Letters, vol. 28, pp. 1595–1599, 2021.
    • [39] A. P. Dempster, N. M. Laird, and D. B. Rubin, “Maximum likelihood from incomplete data via the EM algorithm,” Journal of the Royal Statistical Society, Series B, vol. 39, no. 1, pp. 1–38, 1977.
    • [40] C. M. Bishop, Pattern Recognition and Machine Learning (Information Science and Statistics).   Secaucus, NJ, USA: Springer-Verlag New York, Inc., 2006.
    • [41] B. Schwartz, S. Gannot, and E. A. P. Habets, “Online Speech Dereverberation Using Kalman Filter and EM Algorithm,” IEEE/ACM Transactions on Audio, Speech, and Language Processing, vol. 23, no. 2, pp. 394–406, 2015.