DOA算法1:MUSIC算法(一)
初尝MUSIC算法
目录
注:本博文为本人阅读论文、文章后的原创笔记,未经授权不允许任何转载或商用行为,否则一经发现本人保留追责权利。有问题可留言联系,欢迎指摘批评,共同进步!!!
一、 经典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.
- 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大小的矩阵,表示入射信号;
- α 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[∣α1∣2]000E[∣α2∣2]0⋯⋯⋯00E[∣αM∣2]⎦⎤.
- 矩阵 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) (N−M)个特征向量对应于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} Rsqm⇒qmHSASHqm⇒SHqm=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) (N−M)个特征向量( 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×(N−M)大小的矩阵。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=1N−M∣sH(ϕ)qm∣21=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} qm∈Q ( 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) (N−M)个对应于0特征值的特征向量,它们的 λ = 0 \lambda=0 λ=0,对应到矩阵 R \mathbf{R} R中,特征值 λ + σ 2 = σ 2 \lambda+\sigma^2=\sigma^2 λ+σ2=σ2,也一共有 ( N − M ) (N-M) (N−M)个
用矩阵 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} RsQ⇒Rs=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} Λ=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡λ10⋮00⋮00λ2⋮00⋮0⋯⋯⋱⋯⋯⋮⋯00⋮λM0⋮000⋮00⋮0⋯⋯⋮⋯⋯⋱⋯00⋮00⋮0⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤
同理,对于矩阵 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+σ20⋮00⋮00λ2+σ2⋮00⋮0⋯⋯⋱⋯⋯⋮⋯00⋮λM+σ20⋮000⋮0σ2⋮0⋯⋯⋮⋯⋯⋱⋯00⋮00⋮σ2⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤QH
依据特征分解,我们可以将矩阵 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) (N−M)列,对应 ( N − M ) (N-M) (N−M)个噪声特征值 σ 2 \sigma^2 σ2)
- 矩阵 Q s \mathbf{Q_s} Qs定义了信号子空间
- 矩阵 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算法的几点观察
- 在以上理论中,矩阵 R \mathbf{R} R的最小的几个特征值都是噪声特征值,等于 σ 2 \sigma^2 σ2,这样一来就可以区分信号和噪声特征值了:找出几个小的、相等的特征值,这就是噪声特征值,其余的是信号特征值;
- Q s ⊥ Q n \mathbf{Q_s}\perp \mathbf{Q_n} Qs⊥Qn
依据上述两点,我们可以得出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+1N∣qms(ϕ)∣21=sH(ϕ)QnQnHs(ϕ)1,
式中 q m \mathbf{q_m} qm是 ( N − M ) (N-M) (N−M)个噪声特征矩阵中的一个。如果 ϕ \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=1∑KxkxkH,
在参考文献[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算法的步骤
-
依据式 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=K1∑k=1KxkxkH来估计出相关矩阵 R \mathbf{R} R,并找到其特征分解: R = Q Λ Q H \mathbf{R=Q\Lambda Q}^H R=QΛQH
-
将矩阵 Q \mathbf{Q} Q进行分解,得到矩阵 Q n \mathbf{Q_n} Qn,它对应于矩阵 Q \mathbf{Q} Q的 ( N − M ) (N-M) (N−M)个最小(不一定相等)的特征值,表示噪声空间。
-
得到 P M U S I C ( ϕ ) P_{MUSIC}(\phi) PMUSIC(ϕ)并绘制图像
-
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
更多推荐


所有评论(0)