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{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}\) 表示方向矢量:
其中 \(\{p_m\}_{m=1}^M\) 表示阵元在空间 X 轴上的坐标索引,以及 \(d\) 和 \(w\) 分别表示阵元间隔和信号波长。通常假设 \(d=w/2\),再令 \(z_k = e^{-\mathrm{j}\pi\sin\theta_k}\),则方向矢量可简化为:
其中 \(\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}\):
其中 \(\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}\):
其中 \(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}\):
此外,在后面的讨论中,如无特别说明,下述假设存在:
- 信号相互间不完全相干,则有 \(\mathbf{R}_{\mathrm{s}} \succ \mathbf{O}_{K\times K}\),即 \(\mathrm{rank}\left\{\mathbf{R}_{\mathrm{s}}\right\}=K\)。
- 阵元的间隔均相等,且假设第一个阵元处于空间坐标系原点,则有:
其中 \(\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}=\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}(z_k^{-1})\otimes \mathbf{A}\in\mathbb{C}^{M^2\times K}\) 可表示如下:
其中 \(\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}\),有:
其中 \(f\left(-\mathbf{p}, \mathbf{p}\right)\in\mathbb{N}^{M^2\times 1}\) 表示如下:
读者可尝试自行推导 \(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\) 为对应的特征向量,则有:
当信号相互间不完全相干时,有 \(\mathrm{rank}\left\{\mathbf{R}_{\mathrm{s}}\right\}=K\),此时令:
其中 \(\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}\):
其中 \(\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}\),可得:
从前面的讨论可知,\(f\left(-\mathbf{p}_{\mathrm{ULA}},\mathbf{p}_{\mathrm{ULA}}\right)\) 包含了 \(-M+1\) 到 \(M-1\) 的连续无空洞索引,每个索引将重复出现多次。接下来分别对 \(\mathrm{vec}\left\{\mathbf{G}_{\mathrm{n}}\right\}^H\) 中重复索引对应的元素进行累加,可得到:
其中 \(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 算法支持两种矩阵构造方式:
- 逐元素法:严格依据四阶累积量的数学定义,逐个元素计算 \(\mathrm{cum}\left\{x_i,x_j^*,x_k,x_l^*\right\}\) 并将元素整理成矩阵。
- 矩阵运算法:基于 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}\):
上式的推导利用了如下结果:
将 \(\mathbf{X} = \mathbf{A}\mathbf{S}\) 代入 \(\mathbf{C}\),可得:
在 FOC 的意义下,\(C_4(\mathbf{S})\in\mathbb{C}^{K^2\times K^2}\) 仅有对角线上的 \(K\) 个元素显著非零,设为 \(\left\{c_{i}\right\}_{i=1}^K\),此时可简化上式:
注意到 \(\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。
浙公网安备 33010602011771号