chen1li1998

导航

Kronecker 积在 DoA 估计中的应用【上】

引言

  本文主要讨论 Kronecker 积在 DoA 估计中的应用,会涉及 Kronecker 积、Khatri-Rao 积和矩阵向量化的相关性质,具体的性质可查各种矩阵运算的资料书。在此基础上,介绍 Kronecker 积在多种 DoA 算法中的应用,部分算法是针对特殊信号或者特殊阵列。需要注意,本文不会对特殊情况进行过分详细的介绍,以及不会对证明过程进行过分详尽的推导,想了解的可查看论文原文,本文旨在总结与 Kronecker 积相关的结论。此外,本文结论和算法均用 Matlab 代码实现与验证。
  本文关键词包括 DoA 估计,Kronecker 积,Khatri-Rao 积,矩阵向量化,MUSIC 算法,Root-MUSIC 算法,稀疏阵列,准平稳信号,非圆信号,以及四阶累积量。此外,本文的符号标记约定如下:

  • \(\mathbb{N}\)\(\mathbb{C}\)\(\mathbb{R}\) 分别表示整数域,复数域和实数域;
  • \(\mathbf{a}\in\mathbb{C}^{M\times 1}\)\(\mathbf{A}\in\mathbb{C}^{M\times K}\) 分别表示 \(M\times 1\) 的复数向量和 \(M\times K\) 的复数矩阵;
  • \(\otimes\)\(\odot\)\(\mathrm{vec}\{\cdot\}\),以及 \(\mathrm{E}\{\cdot\}\) 分别表示 Kronecker 积,Khatri-Rao 积,向量化以及期望;
  • \(\mathbf{a}^T\)\(\mathbf{a}^H\)\(\mathbf{a}^*\),以及 \(\hat{\mathbf{a}}\) 分别表示 \(\mathbf{a}\) 的转置,共轭转置,共轭,以及估计值;
  • \(\mathbf{0}_M\)\(\mathbf{1}_M\)\(\mathbf{O}_{M\times K}\)\(\mathbf{I}_M\),以及 \(\mathbf{J}_M\) 分别表示 \(M\times 1\) 的全零向量,\(M\times 1\) 的全一向量,\(M\times K\) 的全零矩阵,\(M\times M\) 的单位矩阵,以及 \(M\times M\) 的反单位矩阵。

信号模型

  考虑 \(K\) 个远场窄带信号源分别以 \(\left\{\theta_k\right\}_{k=1}^K\) 的角度入射到 \(M\) 阵元线阵中,其接收向量 \(\mathbf{y}(t)\in\mathbb{C}^{M\times 1}\) 可表示如下:

\[\mathbf{y}(t) = \mathbf{x}(t)+ \mathbf{n}(t)=\mathbf{A}\mathbf{s}(t) + \mathbf{n}(t) \]

其中 \(\mathbf{x}(t)\in\mathbb{C}^{M\times 1}\)\(\mathbf{s}(t)\in\mathbb{C}^{K\times 1}\)\(\mathbf{n}(t)\in\mathbb{C}^{M\times 1}\) 分别表示无噪接收向量,信号向量和噪声向量, \(\mathbf{A} = \left[\mathbf{a}(\theta_1),\cdots,\mathbf{a}(\theta_K)\right]\in\mathbb{C}^{M\times K}\) 表示方向矩阵,以及 \(\mathbf{a}(\theta_k)\in\mathbb{C}^{M\times 1}\) 表示方向矢量:

\[\mathbf{a}(\theta_k) = \left[ e^{-\mathrm{j}2\pi p_1 d\sin\theta_k/w},e^{-\mathrm{j}2\pi p_2 d\sin\theta_k/w},\cdots,e^{-\mathrm{j}2\pi p_M d\sin\theta_k/w} \right]^T \]

其中 \(\{p_m\}_{m=1}^M\) 表示阵元在空间 X 轴上的坐标索引,以及 \(d\)\(w\) 分别表示阵元间隔和信号波长。通常假设 \(d=w/2\),再令 \(z_k = e^{-\mathrm{j}\pi\sin\theta_k}\),则方向矢量可简化为:

\[\mathbf{a}(z_k) = \left[ z_k^{p_1},z_k^{p_2},\cdots,z_k^{p_M} \right]^T= z_k^{\mathbf{p}} \]

其中 \(\mathbf{p} = \left[p_1,p_2,\cdots,p_M\right]^T\in\mathbb{N}^{M\times 1}\) 表示阵元索引向量,且元素递增排列,即 \(p1<p2<\cdots<p_M\)。DoA 估计问题就是从 \(\mathbf{y}(t)\) 中估计得到 \(\left\{\hat{z}_k\right\}_{k=1}^K\)
  进一步,可假设噪声是高斯白噪声,则有 \(\mathbf{n}(t)\sim\mathcal{CN}(\mathbf{0}_M,\sigma_n^2\mathbf{I}_M)\),同时噪声和信号不相关。由此可给出协方差矩阵 \(\mathbf{R}\in\mathbb{C}^{M\times M}\)

\[\begin{aligned} \mathbf{R} &= \mathbf{A}\mathbf{R}_{\mathrm{s}}\mathbf{A}^H+\sigma_n^2\mathbf{I}_M\\ &=\mathbf{A}\mathrm{E}\left\{\mathbf{s}(t)\mathbf{s}^H(t)\right\}\mathbf{A}^H+\sigma_n^2\mathbf{I}_M \end{aligned} \]

其中 \(\mathbf{R}_{\mathrm{s}}=\mathrm{E}\left\{\mathbf{s}(t)\mathbf{s}^H(t)\right\}\in\mathbb{C}^{K\times K}\) 表示信号协方差矩阵。需要注意的是,此处的 \(\mathbf{R}\)\(\mathbf{R}_{\mathrm{s}}\) 分别是 \(\mathbf{y}(t)\)\(\mathbf{s}(t)\) 的自相关矩阵,由于大部分仿真中信号向量 \(\mathbf{s}(t)\) 也假设为不相关的高斯过程,此时可认为 \(\mathbf{y}(t)\) 具有零均值期望,因此其自相关矩阵等同于协方差矩阵。

  在现实情况中,采样数有限,因而用 \(\hat{\mathbf{R}}\in\mathbb{C}^{M\times M}\) 替代 \(\mathbf{R}\)

\[\hat{\mathbf{R}} = \frac{1}{L}\mathbf{Y}\mathbf{Y}^H=\frac{1}{L}\mathbf{X}\mathbf{X}^H+\hat{\mathbf{R}}_{\mathrm{n}}=\mathbf{A}\hat{\mathbf{R}}\mathbf{A}^H+\hat{\mathbf{R}}_{\mathrm{n}} \]

其中 \(L\)\(\hat{\mathbf{R}}_{\mathrm{s}}\in\mathbb{C}^{K\times K}\)\(\hat{\mathbf{R}}_{\mathrm{n}}\in\mathbb{C}^{M\times M}\) 分别表示采样数,采样信号协方差矩阵和采样噪声协方差矩阵,以及 \(\mathbf{Y}=\mathbf{A}\mathbf{S}+\mathbf{N}\in\mathbb{C}^{M\times L}\)\(\mathbf{X}=\mathbf{A}\mathbf{S}\in\mathbb{C}^{M\times L}\)

\[\begin{aligned} \mathbf{Y} &= \left[\mathbf{y}(1),\cdots,\mathbf{y}(L)\right]\\ \mathbf{X} &= \left[\mathbf{x}(1),\cdots,\mathbf{x}(L)\right]\\ \mathbf{S} &= \left[\mathbf{s}(1),\cdots,\mathbf{s}(L)\right]\\ \mathbf{N} &= \left[\mathbf{n}(1),\cdots,\mathbf{n}(L)\right] \end{aligned} \]

  此外,在后面的讨论中,如无特别说明,下述假设存在:

  1. 信号相互间不完全相干,则有 \(\mathbf{R}_{\mathrm{s}} \succ \mathbf{O}_{K\times K}\),即 \(\mathrm{rank}\left\{\mathbf{R}_{\mathrm{s}}\right\}=K\)
  2. 阵元的间隔均相等,且假设第一个阵元处于空间坐标系原点,则有:

\[\mathbf{a}_{\mathrm{ULA}}(z_k) = \left[ 1,z_k,\cdots,z_k^{M-1} \right]^T = z_k^{\mathbf{p}_{\mathrm{ULA}}} \]

其中 \(\mathbf{p}_{\mathrm{ULA}}=\left[0,1,\cdots,M-1\right]^T\)。易证得 \(\mathbf{A}_{\mathrm{ULA}}\) 是 Vandermonde 矩阵。
3. 阵元数大于信源数,即 \(M>K\)。结合均匀线阵的假设,此时易证得 \(\mathbf{A}_{\mathrm{ULA}}\) 是列满秩矩阵,且 \(\mathrm{rank}\left\{\mathbf{A}_{\mathrm{ULA}}\right\}=K\)

Kronecker 积与方向矢量矩阵

  由于 \(\mathbf{a}(z_k) = \mathbf{a}(\theta_k)\),易得:

\[\mathbf{a}(z_k^{-1}) = \mathbf{a}^*(\theta_k)= \mathbf{a}(-\theta_k) \]

进一步,给定方向矩阵 \(\mathbf{A}=\left[\mathbf{a}(z_1),\cdots,\mathbf{a}(z_K)\right]\in\mathbb{C}^{M\times K}\)\(\mathbf{A}^*\otimes \mathbf{A}\in\mathbb{C}^{M^2\times K^2}\) 可表示如下:

\[\mathbf{A}^*\otimes \mathbf{A}=\begin{bmatrix} \mathbf{a}(z_1^{-1})\odot \mathbf{A} & \mathbf{a}(z_2^{-1})\odot \mathbf{A} &\cdots& \mathbf{a}(z_K^{-1})\odot \mathbf{A} \end{bmatrix} \]

其中 \(\mathbf{a}(z_k^{-1})\otimes \mathbf{A}\in\mathbb{C}^{M^2\times K}\) 可表示如下:

\[\begin{aligned} \mathbf{a}(z_k^{-1})\odot \mathbf{A} &= \begin{bmatrix} \mathbf{a}(z_k^{-1})\odot\mathbf{a}(z_1) & \cdots & \mathbf{a}(z_k^{-1})\odot\mathbf{a}(z_K) \end{bmatrix}\\ &= \begin{bmatrix} \mathbf{b}(k,1) & \mathbf{b}(k,2) &\cdots&\mathbf{b}(k,K) \end{bmatrix} \end{aligned} \]

其中 \(\left\{\mathbf{b}(k,j)=\mathbf{a}(z_k^{-1})\odot\mathbf{a}(z_j)\in\mathbb{C}^{M\times K}\right\}_{k,j=1}^K\)

  考虑 \(\mathbf{b}(z_k) = \mathbf{b}(k,k)=\mathbf{a}(z_k^{-1})\odot\mathbf{a}(z_k)\in\mathbb{C}^{M^2\times 1}\),有:

\[\begin{aligned} &\,\mathbf{b}(z_k) =\mathbf{b}(k,k)\\ =&\,\mathbf{a}(z_k^{-1})\odot\mathbf{a}(z_k) = \mathbf{a}(z_k^{-1})\otimes\mathbf{a}(z_k) \\ =&\,z_k^{-\mathbf{p}}\otimes z_k^{\mathbf{p}}=z_k^{f\left(-\mathbf{p}, \mathbf{p}\right)} \end{aligned} \]

其中 \(f\left(-\mathbf{p}, \mathbf{p}\right)\in\mathbb{N}^{M^2\times 1}\) 表示如下:

\[\begin{aligned} f\left(-\mathbf{p}, \mathbf{p}\right) &= \left(-\mathbf{p}\right)\otimes \mathbf{1}_M+\mathbf{1}_M\otimes \mathbf{p}\\ &= \mathrm{vec}\left\{-\mathbf{p}\mathbf{1}_M^T+\mathbf{1}_M\mathbf{p}^T\right\} \end{aligned} \]

读者可尝试自行推导 \(z_k^{-\mathbf{p}}\otimes z_k^{\mathbf{p}}=z_k^{f\left(-\mathbf{p}, \mathbf{p}\right)}\),后文仅提供验证代码。

  通过对比方向矢量 \(\mathbf{b}(z_k)\)\(\mathbf{a}(z_k)\) 的结构可发现,\(\mathbf{b}(z_k)\) 的本质是由阵元索引的线性组合 \(f\left(-\mathbf{p}, \mathbf{p}\right)\) 所决定的。具体而言,\(f\left(-\mathbf{p}, \mathbf{p}\right)\) 的取值范围由 \(p_1-p_M\)\(p_M-p_1\),但由于阵元位置的非均匀性,该范围内并非所有整数索引都连续存在,从而形成空洞(Holes)。同时,部分索引会重复出现,其重复次数称为权重(Weight)。传统子空间算法通常假设阵列是均匀线阵(ULA),此时方向矩阵 \(\mathbf{A}\) 能够保持列满秩。然而,当阵列稀疏或非均匀时,\(\mathbf{p}\)\(f\left(-\mathbf{p}, \mathbf{p}\right)\) 的索引可能不连续,导致方向矩阵 \(\mathbf{A}\) 秩亏缺,传统子空间算法将失效。
  目前,大多数基于 Kronecker 积的 DoA 方法均依赖于 \(f\left(-\mathbf{p}, \mathbf{p}\right)\) 这一特定形式的索引运算。对于均匀线阵(Uniform Linear Array,ULA),\(f\left(-\mathbf{p}_{\mathrm{ULA}},\mathbf{p}_{\mathrm{ULA}}\right)\) 将产生 \(-M+1\)\(M-1\) 的连续无空洞虚拟阵列。对于稀疏阵列(Sparse Array,SA),\(f\left(-\mathbf{p}, \mathbf{p}\right)\) 可生成一个包含 \(M^2\) 个虚拟阵元的扩展阵列,其索引关于原点对称分布;该虚拟阵列通常包含空洞,但在中心区域可能存在一段连续索引,该连续区域的元素个数可能远远大于 \(M\),这对 DoA 估计的分辨率和自由度具有重要影响。

Kronecker 积与 Root-MUSIC 算法

  假设 \(\left\{\lambda_i,\mathbf{u}_i\right\}_{i=1}^M\) 是协方差矩阵 \(\mathbf{R}\) 的特征对,且 \(\left\{\lambda_i\in\mathbb{R}\right\}_{i=1}^M\) 是按照降序排序的特征值,同时 \(\left\{\mathbf{u}_i\in\mathbb{C}^{M\times 1}\right\}_{i=1}^M\) 为对应的特征向量,则有:

\[\mathbf{R} = \sum_{i=1}^M\lambda_i\mathbf{u}_i\mathbf{u}_i^H \]

当信号相互间不完全相干时,有 \(\mathrm{rank}\left\{\mathbf{R}_{\mathrm{s}}\right\}=K\),此时令:

\[\begin{aligned} \mathbf{U}_{\mathrm{s}} = \begin{bmatrix} \mathbf{u}_1 & \mathbf{u}_2 &\cdots & \mathbf{u}_K \end{bmatrix},\,&\boldsymbol{\Lambda}_{\mathrm{s}} = \mathrm{diag}\left\{\lambda_1,\dots,\lambda_K\right\}\\ \mathbf{U}_{\mathrm{n}} = \begin{bmatrix} \mathbf{u}_{K+1} & \mathbf{u}_{K+2} &\cdots & \mathbf{u}_M \end{bmatrix},\,&\boldsymbol{\Lambda}_{\mathrm{n}} = \mathrm{diag}\left\{\lambda_{K+1},\dots,\lambda_M\right\} \end{aligned} \]

其中 \(\mathbf{U}_{\mathrm{s}}\in\mathbb{C}^{M\times K}\)\(\mathbf{U}_{\mathrm{n}}\in\mathbb{C}^{M\times (M-K)}\) 分别表示信号子空间矩阵和噪声子空间矩阵。此时容易证得 \(\mathrm{span}\left\{\mathbf{U}_{\mathrm{s}}\right\}=\mathrm{span}\left\{\mathbf{A}\right\}\),接着可给出 MUSIC 算法的空间谱 \(\left\{P_{\mathrm{MUSIC}}(\theta)\in\mathbb{R}\right\}_{\theta = -\pi/2}^{\pi/2}\)

\[P_{\mathrm{MUSIC}}(\theta) = \mathbf{a}_{\mathrm{ULA}}^H(\theta)\mathbf{U}_{\mathrm{n}}\mathbf{U}_{\mathrm{n}}^H\mathbf{a}_{\mathrm{ULA}}(\theta) = \mathbf{a}_{\mathrm{ULA}}^H(\theta)\mathbf{G}_{\mathrm{n}}\mathbf{a}_{\mathrm{ULA}}(\theta) \]

其中 \(\mathbf{G}_{\mathrm{n}} = \mathbf{U}_{\mathrm{n}}\mathbf{U}_{\mathrm{n}}^H\in\mathbb{C}^{M\times M}\)。此时令 \(z=e^{-\mathrm{j}\pi\sin\theta}\),可得:

\[\begin{aligned} P_{\mathrm{MUSIC}}(z) &= \mathbf{a}_{\mathrm{ULA}}^T(z^{-1})\mathbf{G}_{\mathrm{n}}\mathbf{a}_{\mathrm{ULA}}(z)\\ &=\left[\mathbf{a}_{\mathrm{ULA}}^T(z)\otimes \mathbf{a}_{\mathrm{ULA}}^T(z^{-1}]\right)\mathrm{vec}\left\{\mathbf{G}_{\mathrm{n}}\right\} \\ &=\mathrm{vec}\left\{\mathbf{G}_{\mathrm{n}}\right\}^T\left[\mathbf{a}_{\mathrm{ULA}}(z)\otimes \mathbf{a}_{\mathrm{ULA}}(z^{-1})\right] \\ &=\mathrm{vec}\left\{\mathbf{G}_{\mathrm{n}}\right\}^H\left[\mathbf{a}_{\mathrm{ULA}}(z^{-1})\otimes \mathbf{a}_{\mathrm{ULA}}(z)\right]\\ &= \mathrm{vec}\left\{\mathbf{G}_{\mathrm{n}}\right\}^H \left(z^{-\mathbf{p}_{\mathrm{ULA}}} \otimes z^{\mathbf{p}_{\mathrm{ULA}}}\right)\\ &=\mathrm{vec}\left\{\mathbf{G}_{\mathrm{n}}\right\}^H z^{f\left(-\mathbf{p}_{\mathrm{ULA}},\mathbf{p}_{\mathrm{ULA}}\right)} \end{aligned} \]

从前面的讨论可知,\(f\left(-\mathbf{p}_{\mathrm{ULA}},\mathbf{p}_{\mathrm{ULA}}\right)\) 包含了 \(-M+1\)\(M-1\) 的连续无空洞索引,每个索引将重复出现多次。接下来分别对 \(\mathrm{vec}\left\{\mathbf{G}_{\mathrm{n}}\right\}^H\) 中重复索引对应的元素进行累加,可得到:

\[\begin{aligned} P_{\mathrm{MUSIC}}(z) &= \left[h_{-M+1},\cdots,h_{0},\cdots,h_{M-1}\right]\left[z^{1-M},\cdots,1,\cdots,z^{M-1}\right]^T\\ &=\sum_{i=1-M}^{M-1} h_i z^{i} \end{aligned} \]

其中 \(h_{i}\) 表示索引 \(i\) 对应所有元素的累加和。容易证得,\(h_{i}\)\(\mathbf{G}_{\mathrm{n}}\) 的第 \(i-1+M\) 条对角线元素之和,其中 \(i-1+M=0\) 对应主对角线。最终,令 \(P_{\mathrm{MUSIC}}(z) =0\) 即可转化为一个 \(2M-1\) 阶的多项式求根问题。

Kronecker 积与四阶累积量矩阵

  首先需要指出的是,在四阶累积量(Fourth-Order Cumulant,FOC)框架下,信号过程 \(\mathbf{s}(t)\) 必须满足非高斯特性。这是因为高斯过程的所有三阶及以上累积量恒为零,导致其 FOC 矩阵退化为零矩阵,无法提供有效的统计信息。在之前的推文中可以看出,FOC-MUSIC 算法支持两种矩阵构造方式:

  1. 逐元素法:严格依据四阶累积量的数学定义,逐个元素计算 \(\mathrm{cum}\left\{x_i,x_j^*,x_k,x_l^*\right\}\) 并将元素整理成矩阵。
  2. 矩阵运算法:基于 Khatri-Rao 积和 Kronecker 积的快速近似计算。

其中方案 2 对比方案 1 缺少一部分计算,通过逐元素法构造的 FOC 矩阵更逼近真实意义下的 FOC 矩阵,但本文为了方便讨论,仅讨论方案 2 得出的 FOC 矩阵。
  考虑无噪接收矩阵 \(\mathbf{X}\in\mathbb{C}^{M\times L}\),可得到其 FOC 矩阵 \(\mathbf{C}\in\mathbb{C}^{M^2\times M^2}\)

\[\begin{aligned} \mathbf{C}=C_4\left(\mathbf{X}\right) = &\,\frac{1}{L}\left(\mathbf{X}\odot \mathbf{X}^*\right)\left(\mathbf{X}\odot \mathbf{X}^*\right)^H-\frac{1}{L^2}\left(\mathbf{X}\odot \mathbf{X}^*\right)\mathbf{1}_L\mathbf{1}_L^T\left(\mathbf{X}\odot \mathbf{X}^*\right)^H\\ &\,-\frac{1}{L^2}\left(\mathbf{X}\mathbf{X}^*\right)\otimes \left(\mathbf{X}\mathbf{X}^*\right)^H\\ =&\,\frac{1}{L}\left(\mathbf{X}\odot \mathbf{X}^*\right)\left(\mathbf{X}\odot \mathbf{X}^*\right)^H-\mathrm{vec}\left\{\hat{\mathbf{R}}^*\right\}\mathrm{vec}\left\{\hat{\mathbf{R}}^*\right\}^T\\ &\,-\hat{\mathbf{R}}\otimes \hat{\mathbf{R}} \end{aligned} \]

上式的推导利用了如下结果:

\[\begin{aligned} \mathrm{vec}\left\{\hat{\mathbf{R}}^*\right\} &= \frac{1}{L}\mathrm{vec}\left\{\mathbf{X}^*\mathbf{X}^T\right\}\\ &= \frac{1}{L}\mathrm{vec}\left\{\mathbf{X}^*\mathbf{I}_L\mathbf{X}^T\right\}\\ &=\frac{1}{L}\left(\mathbf{X}\otimes \mathbf{X}^*\right)\mathrm{vec}\left\{\mathbf{I}_L\right\}\\ &=\frac{1}{L}\left(\mathbf{X}\odot \mathbf{X}^*\right)\mathbf{1}_L \end{aligned} \]

  将 \(\mathbf{X} = \mathbf{A}\mathbf{S}\) 代入 \(\mathbf{C}\),可得:

\[\mathbf{C} = C_4\left(\mathbf{X}\right) = \left(\mathbf{A}\otimes \mathbf{A}^*\right)C_4(\mathbf{S})\left(\mathbf{A}\otimes \mathbf{A}^*\right)^H = \mathbf{B}C_4(\mathbf{S})\mathbf{B}^H \]

在 FOC 的意义下,\(C_4(\mathbf{S})\in\mathbb{C}^{K^2\times K^2}\) 仅有对角线上的 \(K\) 个元素显著非零,设为 \(\left\{c_{i}\right\}_{i=1}^K\),此时可简化上式:

\[\mathbf{C} = C_4\left(\mathbf{X}\right)\approx \left(\mathbf{A}\odot\mathbf{A}^*\right)\mathrm{diag}\left\{c_1,\cdots,c_K\right\}\left(\mathbf{A}\odot\mathbf{A}^*\right) \]

注意到 \(\mathbf{A}\odot\mathbf{A}^*\in\mathbb{C}^{M^2\times K}\) 的每一列对应了 \(2M-1\) 连续无空洞虚拟阵列,此时自由度为 \(2M-2\),即 FOC 算法矩阵理论上最多能估计 \(2M-2\) 个信源。此时对 \(\mathbf{C}\) 进行特征值分解,可得到 \(K\) 个较大特征值以及其对应的子空间矩阵 \(\hat{\mathbf{U}}_{\mathbf{cs}}\in\mathbb{C}^{M^2\times K}\)。容易证得 \(\mathbf{A}\odot\mathbf{A}^*\) 大致位于 \(\hat{\mathbf{U}}_{\mathbf{cs}}\) 的空间中,接下来利用传统子空间理论进行空间谱搜索或者求根,即可得到 DoA。

posted on 2025-05-03 09:52  伊比利亚贡丸  阅读(35)  评论(0)    收藏  举报