一种基于稀疏贝叶斯学习的离网DOA估计算法
2024-04-02景鑫磊蒋忠进
张 宇,景鑫磊,蒋忠进
(东南大学毫米波全国重点实验室,江苏南京 210096)
0 引 言
基于传感器阵列的信号源定位一直都是雷达探测和无线通信领域研究的重点[1-3]。MUSIC 方法作为最经典的波达方向(DOA)估计算法直到现在仍然被广泛应用,但这种子空间类方法需要大量快拍数的支持,且当信号为相干信号时无法做到准确估计信号源的方位[4-5]。随着压缩感知理论的发展,利用信号源的稀疏性进行信号源定位成为了更为有效的方法[6],相关的DOA 估计算法也得到了重视和发展。例如L1-SVD 算法[7]、OMP 算法[8]以及稀疏贝叶斯学习(Sparse Bayesian Learning,SBL)算法[9]等。
L1-SVD 算法和OMP 算法利用信号源的稀疏性[10],在源参数估计的角度范围内进行网格划分,通过二阶锥规划求解信号源的DOA 估计问题。该类算法的局限性是需要假定信号源方向恰好落在已经划分好的网格上。文献[11]证明了,L1 范数最小化能在单测量向量(Single Measurement Vector, SMV)情况下进行稀疏信号的恢复,且在多测量向量(Multiple Measurement Vector, MMV)情况下基于多快拍观测数据能明显提高稀疏信号恢复的精度。由于真实的信号源方向不一定在方位离散网格上,这类方法会带来较大的网格失配和建模误差,从而降低源方位估计的准确性。
SBL 算法是另一种压缩感知类的参数重构算法,该算法基于贝叶斯推断原理得到信号源参数的最大后验概率并将其用于DOA 估计[12]。SBL 与其他算法相比存在一定优势。首先,L1 范数最小化用于参数精确重构需要满足RIP等特定条件[13]。而SBL 是一种统计优化类算法,不用受到这些条件的约束。然后,SBL 算法的鲁棒性良好,当观测信号为相干信号时仍能保证良好的参数重构性能[14-15]。除此之外,针对数据特征不同的各种观测信号,SBL算法可以选择不同的先验分布来描述其概率分布[16-17]。
文献[18]提出一种离网稀疏贝叶斯学习(OGSBL)算法。该算法对转向矢量进行一阶泰勒展开,有效地减少了建模误差,缓解了网格失配问题。然而该算法在非理想测向环境,即低信噪比、低快拍数的情况下性能有所下降。为了解决这个问题,文献[19]利用噪声子空间和过完备基矩阵之间的关系,改变源信号的平均功率以增强解的稀疏性,提高了估计精度。文献[20]研究了一种离网DOA 估计的根稀疏贝叶斯学习(RSBL)方法。该方法首先在角度域建立粗糙的离散网格,然后利用期望最大化(EM)算法在细化网格的同时进行参数重构,直至重构结果收敛,有效降低了建模误差。文献[21]研究了MIMO 雷达系统中的DOA 估计问题。提出了一种离网SBLMC 算法,使估计精度得到明显提升,但计算复杂度偏高。
本文提出了一种基于稀疏贝叶斯学习的改进离网DOA 估计算法,以解决离网SBL 算法在低信噪比、低快拍下的性能下降问题,此处称之为MOGSBL(modified off-grid SBL)算法。本算法将信号源方位区间进行离散化,得到方位离散网格。为阵列接收信号建立稀疏贝叶斯模型,将网格节点修正量设为模型超参数。采用期望最大化(Expectation Maximization, EM)算法迭代更新网格节点修正量,使更新后的网格节点更接近真实源信号方位。数值实验证明,该算法在低信噪比、低快拍下能明显提升DOA估计性能。
1 离网DOA估计模型
假定K个远场窄带信号sk(t),k= 1,2,…,K入射到M元均匀线阵列上,入射角θ=[θ1,θ2,…,θK]T,载波信号波长为λ,阵元间距d=λ∕2,则t时刻的阵列输出可表示为
其中t=1,…,T,T为快拍数,x(t)=[x1(t),x2(t),…,xM(t)]T,s(t)=[s1(t),s2(t),…,sK(t)],T遵循均值为0、方差为σ2k的复高斯分布。A(θ)=[a(θ1),a(θ2),…,a(θK)]为阵列流型矩阵,为第k个信号的转向矢量且,n(t)=[n1(t),n2(t),…,nM(t)]T为噪声。噪声在不同时刻相互统计独立,且遵循均值为0、方差为的复高斯分布。各阵元间的噪声互不相关,且与源信号不相关。
假设源信号和噪声信号都为平稳信号,则输出向量x(t) 的协方差矩阵可表示为
采样过程中会出现近似误差,文献[22]说明了矢量化协方差矩阵带来的近似误差遵循渐进复高斯分布:
2 离网稀疏贝叶斯学习
2.1 稀疏贝叶斯模型
由式(4),有
式中Δ= diag(δ)。超参数δn可被建模为伽马分布,即
本文中,向量δ中的元素全部初始化为1,向量β中的元素全部初始化为0,ρ作为一个小的正约束超参数一般设置为0.01。
2.2 贝叶斯推理
式中,
EM 算法分为E 步和M 步。重复进行这两步,直到精度达到要求或迭代次数达到最大为止。在E步中,我们希望找到函数的下界或求解期望值:
在M 步中,超参数的估计值可以通过求解优化问题的最大下界值来更新。即
则超参数矢量δ的第n个元素更新值为[14]
2.3 网格更新
传统SBL 方法对真实源方位进行线性逼近。但在更新超参数β时并没有处理线性逼近造成的建模误差,在低信噪比、低快拍数下有效信息减少。传统方法降低误差、提升性能的方式是依靠增加离散网格节点数,这大大增加了计算量,不利于实际应用,也难以适用于非理想测向环境中。本文为了解决这个问题,提出一种新的网格更新方法。将网格点位置视为可变参数,并将网格节点修正量设为模型超参数。推导了超参数β的更新算法,采用期望最大化算法迭代更新网格节点修正量,使更新后的网格点更接近真实源信号方位。
忽略式(14)函数中与β无关的独立项,式子可改写为
为了增加向量β的稀疏性以改善算法在低信噪比、低快拍下的DOA 估计性能,将矩阵Σ重写为。其中ϒ表示矩阵Σ的前N阶方阵,γ是N行1 列的矢量,γ0表示矩阵Σ的主对角线上最后一个元素。式(17)的第二项可以改写为
将式(18)和(19)替换式(17)中,可以得到
式中,
最后将式(20)对β求导并令导数为零,有
当P可逆时,
否则,矢量β的第n个元素更新值为
迭代终止条件为
或达到最大迭代次数时停止迭代,其中δnew表示更新后的矢量δ,δold表示上一次更新的矢量δ,τ为收敛判决门限。
迭代结束以后,得到更新后的网格点如下:
2.4 算法步骤
综上所述,基于本文的MOGSBL算法进行DOA估计的步骤如下:
1)对阵列接收数据的协方差矩阵进行向量化运算,得到列数据向量̂。
2)初始化参数δ,β,设置收敛条件。
3)由式(12)、(13)、(16)、(23)、(24),迭代更新μ、Σ和δ、β;由迭代终止条件判断迭代进程是否继续,若满足条件则退出迭代,若不满足则重复第3步。
4)由式(26)计算θ̂,通过θ̂中非零元素的索引得到源信号的来波方向。
3 数值模拟
本文为了验证MOGSBL 算法的效果,进行了大量的数值仿真实验,并将MOGSBL 算法与L1-SVD 算法、OGSBL 算法和RSBL 算法进行比较。实验所用的测试阵列为10 阵元的均匀直线阵列,信号源方向测试范围是-90°~90°,将方向测试范围内的离散网格间距初始化为1°,即网格离散节点数为181。实验中计算机运行环境为:CPU2.9 GHz,内存16 GHz,MATLAB R2018a。
3.1 DOA估计分辨率
本实验将入射信号的信噪比分别设置为0,10,20 dB,快拍数为100,300,500,共9 种不同情况。为了比较不同算法的DOA 估计分辨率,并考虑真实信号源方向偏离初始化离散网格的情况,将方向设置为-50.25°,-45.31°,0.64°。4 种算法作DOA估计的部分结果展示如图1所示。
图1 对3个信号源进行DOA估计的部分结果
由图1 可见,L1-SVD 和OGSBL 算法分辨率较低,无法有效分辨出角度差为5°左右的两个信号源,RSBL 算法只有在高快拍数时才可以分辨。相比之下,MOGSBL 算法即便在低信噪比、低快拍数的情况下,也可以分辨出这两个相距很近的信号源。此外,随着信噪比的提高和快拍数的增加,MOGSBL算法的DOA估计效果也得到改善。
事实上,L1-SVD 和OGSBL 算法由于其较大的建模误差导致算法的分辨率很低。RSBL 算法避免了建模误差的问题,其参数先验需要强制模型具有较强的稀疏性,过强的噪声会破坏稀疏性导致分辨率降低。而MOGSBL 算法使用新的网格更新方法,减小了建模误差。增强向量β的稀疏性使算法受噪声影响较小,从而使得其在非理想测向环境下的分辨率高于其他3种算法。
能否很好地区分-50.25°和-45.31°这两个相距很近的信号源,是DOA 算法分辨率高低的体现。本文重复蒙特卡洛实验200次,以统计不同信噪比和不同快拍数下4 种算法的分辨率水平,统计结果如表1 所示。表中给出某种DOA 算法成功区分-50.25°和-45.31°信号源的概率,如果概率值为零,则表示成功区分次数为0。
表1 4种算法成功区分信号源概率对比
由表1 可知,MOGSBL 算法在不同信噪比和不同快拍数下区分相距很近信号源的成功率高于其他3种算法,说明MOGSBL 算法在角度分辨率方面具有明显的优势。
3.2 均方根误差
本实验利用均方根误差(RMSE)来比较不同算法的DOA估计精度,RMSE定义为
式中,L表示蒙特卡洛实验的次数,本文中L=200,是第l次蒙特卡洛实验中第k个信号源方向的估计值。
为了研究信噪比与RMSE 的关系,并对比4 种算法的离网DOA 估计性能,本实验将真实信号源方向设置为-40.35°,0.52°,40.13°,即3个信号源方向均偏离初始化网格节点。快拍数为100,信噪比从-5 dB 到20 dB 变化。4 种算法在不同信噪比下的RMSE对比如图2所示。
图2 不同信噪比下的RMSE对比
由图2 可见,随着信噪比的增大,4 种算法的RMSE 均逐渐减小。但MOGSBL 算法的估计精度明显高于L1-SVD 算法、OGSBL 算法和RSBL 算法。且OGSBL 算法、RSBL 算法好于L1-SVD 算法。由此可见,在非理想测向环境下,离网稀疏贝叶斯学习算法具有明显的优势。
为了研究快拍数对RMSE的影响,本实验保持3 个真实信号源方向不变。信噪比为0 dB,快拍数从150到500变化,4种算法在不同快拍数下RMSE的对比如图3所示。
图3 不同快拍数下的RMSE对比
由图3可见,L1-SVD算法的RMSE受快拍数的影响最大,而OGSBL 算法、RSBL 算法和MOGSBL算法受快拍数的影响较小。相比于另外3种算法,MOGSBL 算法在任意快拍数时都具有更高的DOA估计精度。除此之外,OGSBL 算法、RSBL 算法的DOA估计精度明显好于L1-SVD算法。
3.3 离散网格划分对DOA估计性能的影响
除了信噪比和快拍数以外,初始化的离散网格间距也对DOA 估计精度有很大影响。离散网格间距初始化以后,方向测试范围的离散节点数目就被确定,且网格间距越小,网格节点数越大。细密的离散网格可以提高DOA 估计精度,但DOA 估计的计算量会增加。
为了研究网格节点数目与RMSE之间的关系,本实验设置信噪比为0 dB,快拍数为150,不同网格节点数目下4 种算法的均方根误差对比如图4所示。
图4 不同网格节点数下的RMSE对比
由图4可知,随着网格节点数的增加,4种算法DOA 估计的RMSE 都会逐步降低。相比之下,MOGSBL 算法的RMSE 低于OGSBL 算法、RSBL 算法和L1-SVD算法,而RSBL算法优于OGSBL算法,OGSBL算法又优于L1-SVD算法。
为了研究网格节点数目与计算时间之间的关系,本文在保持各种实验条件不变的情况下,统计不同离散网格节点数下4 种算法的计算时间对比如图5所示。
图5 不同网格节点数下的计算时间对比
由图5可知,随着网格节点数的增加,4种算法DOA 估计的计算时间都会逐步增加。其中,MOGSBL 算法在任意离散网格节点数下的计算时间均低于OGSBL、RSBL和L1-SVD算法,而L1-SVD算法耗时明显高于3种离网SBL算法。
4种算法的计算时间列举如表2所示。
表2 不同网格节点数下的计算时间对比s
由表2 可见,离散网格节点数越大,本文MOGSBL 算法在计算时间上的优势越大。当网格节点数为181 时,MOGSBL 算法耗时约为RSBL 算法的68%,约为OGSBL 算法的49%,约为L1-SVD算法的31%。
4 结束语
本文研究了一种改进的离网稀疏贝叶斯学习算法,即MOGSBL 算法,用于信号源DOA 估计。为了检验MOGSBL 算法的性能,本文进行了大量的数值实验,并将MOGSBL 算法的DOA 估计结果与RSBL 算法、OGSBL 算法和L1-SVD 算法进行对比。在角度分辨率的对比实验中发现,在不同信噪比和不同快拍数时,OGSBL 算法和L1-SVD 算法均无法分辨角度差为5°左右的两个信号源,在高快拍数时RSBL 才可以分辨,而MOGSBL 算法则能清晰予以分辨。随着信噪比和快拍数的增加,4 种算法的RMSE 均逐渐减小,但MOGSBL 算法的RMSE 明显低于RSBL 算法、OGSBL 算法和L1-SVD 算法,且RSBL 算法优于OGSBL 算法,OGSBL 算法优于L1-SVD 算法。实验还分析了方向测试范围的离散网格节点数对DOA 估计的影响,发现细密的离散网格可以提高DOA 估计精度,但DOA 估计的计算量会增加。且在任意网格节点数时,相比于RSBL 算法、OGSBL 算法和L1-SVD 算法,本文的MOGSBL算法均具有最低的RMSE和最短的计算时间。