DOA算法1:MUSIC算法(一)

本文深入探讨了经典MUSIC算法,包括其两个阶段的详细步骤,以及算法在现实情况下的挑战与应对策略。MUSIC算法基于信号子空间和噪声子空间的正交性,用于估计波达角(DOA)。在实际应用中,由于噪声特征值的不等性和信号数量的不确定性,算法的实施需估计相关矩阵并处理数据快照,以寻找信号的峰值来确定DOA。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


注:本博文为本人阅读论文、文章后的原创笔记,未经授权不允许任何转载或商用行为,否则一经发现本人保留追责权利。有问题可留言联系,欢迎指摘批评,共同进步!!!

一、 经典MUSIC算法

MUSIC算法全称为:MUltiple Signal Classification.是波达角(DOA)估计问题中使用最广泛的算法之一。

1.1 算法介绍(第一阶段)

模型选用加性噪声模型:
x = S α + n . S = [ s ( ϕ 1 )   s ( ϕ 2 )   ⋯   ,   s ( ϕ M ) ] , α = [ α 1 ,   α 2   ⋯   α M ] T . \begin{aligned} &\bm{x = S \alpha + n}. \\ &\mathbf{S = [s(\phi_1)\ s(\phi_2)\ \cdots,\ s(\phi_M)]}, \\ &\bm{\alpha = [\alpha_1,\ \alpha_2\ \cdots\ \alpha_M]^T}. \end{aligned} x=Sα+n.S=[s(ϕ1) s(ϕ2) , s(ϕM)],α=[α1, α2  αM]T.

  1. s ( ϕ i ) \mathbf{s(\phi_i)} s(ϕi) N × 1 N\times1 N×1大小的矩阵: s ( ϕ i ) = [ s ( ϕ i 1 )   s ( ϕ i 2 )   ⋯   s ( ϕ i N ) ] T \mathbf{s(\phi_i)}=[s(\phi_{i1})\ s(\phi_{i2})\ \cdots\ s(\phi_{iN})]^T s(ϕi)=[s(ϕi1) s(ϕi2)  s(ϕiN)]T,代表第i个信号的转向矢量(steering vector),也可理解为第i个信号在接收阵列N个元素上产生的效果。因此矩阵 S \mathbf{S} S N × M N\times M N×M大小的矩阵,表示入射信号;
  2. α i \bm{\alpha_i} αi 1 × N 1\times N 1×N大小的矩阵: α i = [ α i 1   α i 2   ⋯   α i N ] \bm{\alpha_i} = [\alpha_{i1}\ \alpha_{i2}\ \cdots\ \alpha_{iN}] αi=[αi1 αi2  αiN],代表信道特征。因此矩阵 α \bm{\alpha} α M × N M \times N M×N大小的矩阵.

假设不同信号之间互不相关。计算矩阵 x \mathbf{x} x的相关矩阵 R \mathbf{R} R
R = E [ x x H ] , = E [ S α α H S H ] + E [ n n H ] , = S A S H + σ 2 I , = R s + σ 2 I , \begin{aligned} \mathbf{R}&=E[\mathbf{xx}^H], \\ &=E[\mathbf{S} \bm{\alpha \alpha}^H \mathbf{S}^H]+E[\mathbf{nn}^H], \\ &= \mathbf{SAS}^H+\sigma^2\mathbf{I}, \\ &=\mathbf{R_s}+\sigma^2 \mathbf{I,} \end{aligned} R=E[xxH],=E[SααHSH]+E[nnH],=SASH+σ2I,=Rs+σ2I,
其中:
R s = S A S H A = α α H = [ E [ ∣ α 1 ∣ 2 ] 0 ⋯ 0 0 E [ ∣ α 2 ∣ 2 ] ⋯ 0 0 0 ⋯ E [ ∣ α M ∣ 2 ] ] . \begin{aligned} \mathbf{R_s} &= \mathbf{SAS}^H \\ \mathbf{A} &= \bm{\alpha \alpha}^H \\ &= \begin{bmatrix} E[|\alpha_1|^2]& 0& \cdots& 0\\ 0& E[|\alpha_2|^2]& \cdots& 0\\ 0& 0& \cdots& E[|\alpha_M|^2] \end{bmatrix}. \end{aligned} RsA=SASH=ααH=E[α12]000E[α22]000E[αM2].

  • 矩阵 A \mathbf{A} A是一个对角阵,其中的0元素是因为 E [ α i ⋅ α j ] = 0. ( i ≠ j ) E[\bm{\alpha_i \cdot \alpha_j}]=0.(i \ne j) E[αiαj]=0.(i=j)表示不同信号之间互不相关。
  • S \mathbf{S} S N × M N \times M N×M大小的矩阵。 A \mathbf{A} A M × M M \times M M×M大小的方阵。由此可以得到, R s \mathbf{R_s} Rs N × N N \times N N×N 大小的方阵,且秩为M。

因为 R s \mathbf{R_s} Rs不是满秩的,所以它有 ( N − M ) (N-M) (NM)个特征向量对应于0特征值。我们就设 q m \mathbf{q_m} qm为这样的特征向量之一, q m \mathbf{q_m} qm N × 1 N \times 1 N×1大小的列矩阵。由此可以得到如下结果:
R s q m = S A S H q m = 0 , ⇒ q m H S A S H q m = 0 , ⇒ S H q m = 0 \begin{aligned} \mathbf{R_s q_m} &= \mathbf{SAS}^H \mathbf{q_m} = 0, \\ \Rightarrow \mathbf{q_m}^H\mathbf{SAS}^H \mathbf{q_m} &= 0, \\ \Rightarrow \mathbf{S}^H \mathbf{q_m} &= 0 \end{aligned} RsqmqmHSASHqmSHqm=SASHqm=0,=0,=0

MUSIC算法的基础:
S H q m = 0 \mathbf{S}^H \mathbf{q_m} = 0 SHqm=0这一结果可得:矩阵 R s \mathbf{R_s} Rs的所有对应于0特征值的 ( N − M ) (N-M) (NM)个特征向量( q m \mathbf{q_m} qm)与所有 M M M个信号转向矢量(signal steering vector)都正交

设定:矩阵 Q n \mathbf{Q_n} Qn由这些特征向量 q m \mathbf{q_m} qm组成, Q n \mathbf{Q_n} Qn就是 N × ( N − M ) N \times (N-M) N×(NM)大小的矩阵。MUSIC算法所需计算的功率谱表达如下:
P M U S I C ( ϕ ) = 1 ∑ m = 1 N − M ∣ s H ( ϕ ) q m ∣ 2 = 1 s H ( ϕ ) Q n Q n H s ( ϕ ) = 1 ∣ ∣ Q n H   s ( ϕ ) ∣ ∣ 2 \begin{aligned} P_{MUSIC}(\phi)&=\frac{1}{\sum_{m=1}^{N-M}|\mathbf{s}^H(\phi) \mathbf{q_m}|^2}\\ &=\frac{1}{\mathbf{s}^H(\phi)\mathbf{Q_nQ_n}^H\mathbf{s(\phi)}} \\ &=\frac{1}{||\bm{Q_n}^H\ s(\phi)||^2} \end{aligned} PMUSIC(ϕ)=m=1NMsH(ϕ)qm21=sH(ϕ)QnQnHs(ϕ)1=QnH s(ϕ)21

注意到, Q n \mathbf{Q_n} Qn是由 q m \mathbf{q_m} qm组成的,因此矩阵 Q n \mathbf{Q_n} Qn与信号旋转矢量 s ( ϕ ) \mathbf{s(\phi)} s(ϕ)也是正交的,即 ϕ \phi ϕ是一个波达角时, Q n H   s ( ϕ ) = 0 \bm{Q_n}^H\ s(\phi)=0 QnH s(ϕ)=0,这表现在 P M U S I C P_{MUSIC} PMUSIC谱线上就是一个波峰(因为分母为0)因此波达角的估计体现在功率谱上就是M个最大的峰值对应的 ϕ \phi ϕ.

1.2 算法介绍(第二阶段)

在上述MUSIC算法中有一缺陷:在现实情况下,信号的协方差矩阵 R s \mathbf{R_s} Rs不可知,我们最多可以估计矩阵 R \mathbf{R} R(含噪声),此二者的关键联系点就是:特征向量矩阵 Q n \mathbf{Q_n} Qn是相同的,下面就证明这一点。

对于任意的 q m ∈ Q \mathbf{q_m}\in\mathbf{Q} qmQ ( Q \mathbf{Q} Q是矩阵 R s \mathbf{R_s} Rs所有特征向量组成的矩阵,形状是 N × N N \times N N×N大小的方阵)我们有:
R s q m = λ q m ⇒   R q m = R s q m + σ 2 I q m , = ( λ m + σ 2 ) q m , \begin{aligned} \mathbf{R_sq_m}&=\mathbf{\lambda q_m} \\ \Rightarrow\ \mathbf{Rq_m} &= \mathbf{R_s q_m}+\sigma^2\mathbf{Iq_m}, \\ &=(\lambda_m+\sigma^2)\mathbf{q_m}, \end{aligned} Rsqm Rqm=λqm=Rsqm+σ2Iqm,=(λm+σ2)qm,

由此可见,矩阵 R s \mathbf{R_s} Rs的特征向量也同样是矩阵 R \mathbf{R} R的特征向量,只不过特征值从原来的 λ \lambda λ变成了 ( λ + σ 2 ) (\lambda+\sigma^2) (λ+σ2)。注意,如前所述,矩阵 R s \mathbf{R_s} Rs ( N − M ) (N-M) (NM)个对应于0特征值的特征向量,它们的 λ = 0 \lambda=0 λ=0,对应到矩阵 R \mathbf{R} R中,特征值 λ + σ 2 = σ 2 \lambda+\sigma^2=\sigma^2 λ+σ2=σ2,也一共有 ( N − M ) (N-M) (NM)

用矩阵 R s \mathbf{R_s} Rs N N N个特征向量组成一个 N × N N \times N N×N大小的对角阵 Λ \bm{\Lambda} Λ,可得:
R s Q = Q Λ ⇒ R s = Q Λ Q H . \begin{aligned} \mathbf{R_sQ} &= \mathbf{Q \Lambda} \\ \Rightarrow \mathbf{R_s} &= \mathbf{Q \Lambda Q}^H. \end{aligned} RsQRs=QΛ=QΛQH.
Λ = [ λ 1 0 ⋯ 0 0 ⋯ 0 0 λ 2 ⋯ 0 0 ⋯ 0 ⋮ ⋮ ⋱ ⋮ ⋮ ⋮ ⋮ 0 0 ⋯ λ M 0 ⋯ 0 0 0 ⋯ 0 0 ⋯ 0 ⋮ ⋮ ⋮ ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ 0 0 ⋯ 0 ] \begin{aligned} \mathbf{\Lambda} &= \begin{bmatrix} \lambda_1 & 0 & \cdots & 0 & 0 & \cdots & 0\\ 0 & \lambda_2 & \cdots & 0 & 0 & \cdots & 0\\ \vdots & \vdots & \ddots & \vdots & \vdots & \vdots & \vdots\\ 0 & 0 & \cdots & \lambda_M & 0 & \cdots & 0\\ 0 & 0 & \cdots & 0 & 0 & \cdots & 0\\ \vdots & \vdots & \vdots & \vdots & \vdots & \ddots & \vdots\\ 0 & 0 & \cdots & 0 & 0 & \cdots & 0 \end{bmatrix} \end{aligned} Λ=λ100000λ200000λM000000000000

同理,对于矩阵 R \mathbf{R} R可得:
R = Q [ Λ + σ 2 I ] Q H = Q [ λ 1 + σ 2 0 ⋯ 0 0 ⋯ 0 0 λ 2 + σ 2 ⋯ 0 0 ⋯ 0 ⋮ ⋮ ⋱ ⋮ ⋮ ⋮ ⋮ 0 0 ⋯ λ M + σ 2 0 ⋯ 0 0 0 ⋯ 0 σ 2 ⋯ 0 ⋮ ⋮ ⋮ ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ 0 0 ⋯ σ 2 ] Q H \begin{aligned} \mathbf{R} &= \mathbf{Q[\Lambda} + \sigma^2\mathbf{I]Q}^H \\ &= \mathbf{Q} \begin{bmatrix} \lambda_1+\sigma^2 & 0 & \cdots & 0 & 0 & \cdots & 0\\ 0 & \lambda_2+\sigma^2 & \cdots & 0 & 0 & \cdots & 0\\ \vdots & \vdots & \ddots & \vdots & \vdots & \vdots & \vdots\\ 0 & 0 & \cdots & \lambda_M+\sigma^2 & 0 & \cdots & 0\\ 0 & 0 & \cdots & 0 & \sigma^2 & \cdots & 0\\ \vdots & \vdots & \vdots & \vdots & \vdots & \ddots & \vdots\\ 0 & 0 & \cdots & 0 & 0 & \cdots & \sigma^2 \end{bmatrix} \mathbf{Q}^H \end{aligned} R=Q[Λ+σ2I]QH=Qλ1+σ200000λ2+σ200000λM+σ200000σ200000σ2QH

依据特征分解,我们可以将矩阵 Q \mathbf{Q} Q分解成信号矩阵 Q s \mathbf{Q_s} Qs(矩阵 Q \mathbf{Q} Q的前M列,对应M个信号特征值)和噪声特征向量矩阵 Q n \mathbf{Q_n} Qn(矩阵 Q \mathbf{Q} Q的后 ( N − M ) (N-M) (NM)列,对应 ( N − M ) (N-M) (NM)个噪声特征值 σ 2 \sigma^2 σ2)

  1. 矩阵 Q s \mathbf{Q_s} Qs定义了信号子空间
  2. 矩阵 Q n \mathbf{Q_n} Qn定义了噪声子空间

注意到:矩阵 Q n \mathbf{Q_n} Qn与矩阵 R s \mathbf{R_s} Rs对应于0特征值的特征向量所组成的矩阵完全相同(就是这个矩阵)。表明,矩阵 R \mathbf{R} R和矩阵 R s \mathbf{R_s} Rs有完全相同的特征向量矩阵。

1.3 对MUSIC算法的几点观察

  1. 在以上理论中,矩阵 R \mathbf{R} R的最小的几个特征值都是噪声特征值,等于 σ 2 \sigma^2 σ2,这样一来就可以区分信号和噪声特征值了:找出几个小的、相等的特征值,这就是噪声特征值,其余的是信号特征值
  2. Q s ⊥ Q n \mathbf{Q_s}\perp \mathbf{Q_n} QsQn

依据上述两点,我们可以得出MUSIC算法的前提/基础
所有的噪声特征值与信号转向矢量都正交
P M U S I C ( ϕ ) = 1 ∑ m = M + 1 N ∣ q m s ( ϕ ) ∣ 2 = 1 s H ( ϕ ) Q n Q n H s ( ϕ ) , \begin{aligned} P_{MUSIC}(\phi)&=\frac{1}{\sum_{m=M+1}^{N}|\mathbf{q_m} \mathbf{s(\phi)}|^2}\\ &=\frac{1}{\mathbf{s}^H(\phi)\mathbf{Q_nQ_n}^H\mathbf{s(\phi)}}, \end{aligned} PMUSIC(ϕ)=m=M+1Nqms(ϕ)21=sH(ϕ)QnQnHs(ϕ)1,

式中 q m \mathbf{q_m} qm ( N − M ) (N-M) (NM)个噪声特征矩阵中的一个。如果 ϕ \phi ϕ就是信号的DOA之一,那么 s ( ϕ ) ⊥ q m \mathbf{s(\phi)} \perp \mathbf{q_m} s(ϕ)qm所以 P M U S I C P_{MUSIC} PMUSIC的分母就恒等于0。因此,DOA就是 P M U S I C P_{MUSIC} PMUSIC几个峰值

二、现实情况下的MUSIC算法

2.1 现实与理论的差距

  • 难点1:相关矩阵 R \mathbf{R} R是未知的,它必须从接收信号中估计得来。而这项估计采用的是在多个数据快照(snapshots of data)中取平均值的方法:
    R = 1 K ∑ k = 1 K x k x k H , \mathbf{R} = \frac{1}{K}\sum_{k=1}^{K}{\mathbf{x_k}\mathbf{x_k}^H}, R=K1k=1KxkxkH,
    在参考文献[2]中,作者表明,快照数量 K > 2 N K>2N K>2N,信噪比最佳能达到3dB.

  • 难点2:使用估计出来的协方差矩阵 R R R会使得噪声的特征值不再相等了(原本理想情况下噪声特征值就是 σ 2 \sigma^2 σ2

  • 难点3:在现实情况下,特征值更趋向于一个连续体(continuum),信号和噪声特征值的区分不再明显了

  • 难点4:如果信号的数量( M M M)未知,那么就不容易确定哪些特征值是相等的(至少在理论上是对应相等的,它们代表噪声空间)

2.2 在现实情况下使用MUSIC算法的步骤

  1. 依据式 R = 1 K ∑ k = 1 K x k x k H \mathbf{R} = \frac{1}{K}\sum_{k=1}^{K}{\mathbf{x_k}\mathbf{x_k}^H} R=K1k=1KxkxkH来估计出相关矩阵 R \mathbf{R} R,并找到其特征分解: R = Q Λ Q H \mathbf{R=Q\Lambda Q}^H R=QΛQH

  2. 将矩阵 Q \mathbf{Q} Q进行分解,得到矩阵 Q n \mathbf{Q_n} Qn,它对应于矩阵 Q \mathbf{Q} Q ( N − M ) (N-M) (NM)最小(不一定相等)的特征值,表示噪声空间。

  3. 得到 P M U S I C ( ϕ ) P_{MUSIC}(\phi) PMUSIC(ϕ)并绘制图像

  4. M M M个信号角度就是 P M U S I C ( ϕ ) P_{MUSIC}(\phi) PMUSIC(ϕ)函数的 M M M个峰值的横坐标值

参考文献(仅写文章的标题,以做记录)

[1]. Direction of Arrival Estimation
[2]. Rapid convergence rate in adaptive arrays

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值