基于改进FastICA的雷达信号分离方法
2021-02-21王国涛姜秋喜刘方正
王国涛,姜秋喜,刘方正
(国防科技大学电子对抗学院,安徽 合肥 230037)
0 引言
随着LPI雷达信号的广泛应用,战场电磁环境愈来愈密集复杂,给雷达信号的分选带来了极大的威胁。传统的信号分选系统主要利用信号的脉冲重复间隔(PRI)、到达时间(TOA)、到达角(DOA)、载频(CF)以及脉冲宽度(PW)等辐射源描述字(EDW)来完成信号的分选识别,而LPI雷达使用具有宽频带和大时宽的信号,使空间电磁信号在时域大量交叠,频域上跨度增大,受噪声和强信号的影响,弱信号难以被检测出来,密集复杂的电磁环境使得传统算法难以准确地完成信号的分选[1-2]。
独立成分分析技术(independent component analysis, ICA)是一种基于统计数据中寻找内在独立因子或成分的方法。该方法能够在变量和混合系统均未知的情况下,通过对观测信号的分解得到隐藏在其中统计独立的若干变量[3],FastICA算法是其中运行效率较高的一种算法,目前在生物信号处理[4]、语音信号分离[5]、无线通信[6]和数据挖掘[7]等领域都有广泛的应用。传统FastICA算法是基于二阶牛顿迭代方法,进行合理近似的一种算法。为了提高FastICA算法的稳定性,减少迭代次数,近年来许多学者提出了改进的FastICA算法[8-11]。其中文献[11]基于3阶牛顿迭代法提出了改进的FastICA算法,其收敛速度快于传统算法。为了解决基于辐射源描述字的传统信号分选方法难以适应当前复杂电磁环境的问题,本文提出将基于3阶牛顿迭代的改进FastICA算法应用于雷达信号的分离中。首先采用主成分分析(PCA)技术对信号数据进行降维预处理,然后利用改进算法进行循环迭代得到分离矩阵,最后根据分离矩阵提取出独立的雷达信号成分。
1 改进的FastICA算法
FastICA算法需要对信号的非高斯性进行衡量,以确定最大值。目前主要衡量方法有峭度和负熵两大类,由于峭度对野值比较敏感,容易造成大的偏差,所以本文使用负熵作为衡量工具,随机变量x的负熵表达式为:
J(x)=H(x)-H(xgauss)
(1)
J(x)∝{E[G(x)]-E[G(xgauss)]}2
(2)
式(2)中,G(x)是x的非线性函数,常见G函数有3种,详细见文献[3]。
假设x=wTv是待估计的源信号(w是分离矩阵W中列向量,v是经过预处理后的观测矩阵),那么根据非线性规划中Kuhn-Tucke最优化条件,当分离矩阵W=[w1,w2,…,wm]中列向量的二范数为1,即‖wi‖2=1,i=1,2,…,m时,问题就转化为求解最优化模型:
(3)
为求解该公式,建立拉格朗日函数:
L(w,β)=J(w)-β(‖w‖2-1)=
{E[G(wTv)]-E[G(xgauss)]}2+β‖w‖2
(4)
对式(4)求导,得到:
(5)
那么模型(3)的最大值求解问题可以转化为求解下式:
(6)
根据3阶牛顿迭代法[12]:
(7)
xn+1是非线性方程f(x)=0的解,据此求解方程(3),再化简得到改进的FastICA算法的迭代式为:
(8)
2 基于改进FastICA算法的雷达信号盲分离
图1是雷达信号盲源分离的模型,假设有m个相同的传感器任意分布在同一平面上,组成接收阵列。n个独立的雷达源信号s1(t),s2(t),…,sn(t),在空间经过线性混叠后被接收阵列截获,收到的信号为x1(t),x2(t),…,xm(t)。
图1 雷达信号盲源分离模型Fig.1 Blind source separation model of radar signal
混合模型可表示为:
(9)
式(9)中,aij是混合系数,为常数。该模型用矩阵可以表示为:
X=AS
(10)
式(10)中,S=[s1(t),s2(t),…,sn(t)]表示源信号矩阵,X=[x1(t),x2(t),…,xm(t)]表示观测信号矩阵,A∈Rm×n表示混合矩阵。该模型必须具备以下条件[13]:
1) 所有源信号之间是相互统计独立的。
2) 源信号中最多有一个是服从高斯分布的信号。
3) 观测的混合信号个数应不小于源信号的个数,即m≥n。
在以上条件约束下,ICA算法要解决的问题就是:通过求取分离矩阵W,使得通过分离算法Y=WX后,输出的矩阵Y中各分量相互独立。
2.1 基于PCA的数据预处理
在使用FastICA算法前,为了提高运算效率,需要对观测数据进行预处理。主成分分析(PCA)是对数据统计分析,提取数据间的特征,进行数据压缩的经典方法。使用PCA方法可以从一组多维数据中找到冗余度更小的一个子集,对观测数据进行降维,从而提高FastICA算法的效率。假设有一组数据X∈Rm×n,PCA变换过程如下:
1) 去均值。将矩阵X中的每一行减去该行的均值,即:
X←X-E(X)
(11)
2) 求数据的协方差矩阵:
CX=E[XXT]
(12)
式(12)中,CX是数据X的协方差矩阵。
3) 求协方差矩阵的特征值和对应的特征向量,特征值从大到小记为{d1,d2,…,dn},对应的特征向量为{u1,u2,…,un}。
4) 选取最大的m个特征值所对应的特征向量组成矩阵Wh={u1,u2,…,um}。
5) 对矩阵X进行变换:
(13)
式(13)中,V∈Rm×n是经过PCA处理后的数据矩阵。
2.2 算法流程
2.1节中算法过程只估计了一个独立分量,要想分离所有变量则需要多次迭代,而且每次估计出分量后还应对分离矩阵进行处理,去除已分离变量,具体算法流程如下:
1) 数据预处理:对观测信号进行去PCA处理,得到矩阵V=[v1,v2,…,vn]。
2) 初始化分离矩阵W=[w1,w2,…,wn],初始值可以为随机值,但需满足‖wi‖=1,i=1,2,…,n。
3) 根据迭代公式(5),更新wi,得到分离向量。
4) 每次迭代后对wi进行正交和归一化处理,正交化采用对称正交化算法。过程公式如下:
(14)
5) 判断wi是否收敛,若式|wk+1-wk|<ε(本文取ε=10-7,k代表是第k次迭代结果)成立,则wi收敛;否则返回步骤3)继续进行迭代。
6) 若i 为了能够评估改进FastICA算法分离信号的性能,这里选取信号的相似系数来对算法分离效果进行评价。相似系数是描述估计信号与源信号之间相似性的一种参数,定义为: (15) 式(15)中,si(t)为源信号中第i个信号序列,yj(t)为分离得到第j个信号序列。当两信号独立时,ξij=0;当yj(t)=csi(t),c为常数时,即两个信号只是幅度不同时,ξij=1;ξij值越大表示两个信号的一致性越好,算法的分离效果就越好[14]。 实验仿真分两组进行,实验1为连续波信号的分离;实验2为脉冲波信号的分离。分别使用本文中改进的算法和文献[13]中传统算法对信号进行分离实验,并从估计的一致性和算法的收敛性两个方面对实验结果进行分析。 本组实验分析的是连续波环境下的信号分离性能,设置了3组不同调制的连续波雷达信号和1组噪声信号,分别是: 1) 单载频信号(NS): s1=2cos(2πf0t) (16) 式(16)中,载频f0=8×106Hz。 2) 线性调频信号(LFM): s2=cos(2πf0t+kπt2) (17) 式(17)中,f0=107Hz,k=1012。 3) 二相编码信号(BPSK):选取7位巴克码,码元内信号为cos(2πf0t+φ),码元为1时,φ=π;码元为0时,φ=0 ;载频f0=8×106Hz。 4) 高斯白噪声,噪声功率为10 dBW,LFM信号对应的信噪比为-13 dB。 源信号波形如图2所示,图中信号从上至下依次对应为上述列举的信号(1-4)。使用Matlab产生一组随机的5×4的混合矩阵,混合后的信号时域波形如图3所示。 图2 连续波源信号的时域波形Fig.2 The continous source signals 图3 混合信号的时域波形Fig.3 The mixed signals 分别使用两种算法对信号进行分离,图4、图5分别是改进算法和传统算法分离得到的波形图。表1为分离得到信号与源信号之间的相似系数矩阵,表中源信1-4分别代表源信号中对应的信号(1-4),信号1-5分别对应图4、图5中从上至下的5个信号。表2是经过100次实验后总迭代次数的统计表。 图4 改进算法分离信号的时域波形Fig.4 The signals separated by the improved algorithm 图5 传统算法分离信号的时域波形Fig.5 The signals separated by traditional algorithm 表1 分离信号与源信号的相似系数统计表Tab.1 Statistical table of similarity coefficient between separated signal and source signal 估计的一致性方面:从表1中可以看出虽然输入为4组信号,输出为5组信号,但是输出信号中有一组幅度明显远远小于其他组,因此可以认为该信号不存在;从波形图和表1可以看出,改进FastICA算法分离出的信号与源信号非常相近,只是排列顺序与源信号不同,而且某些信号的幅度与对应信号的幅度也有所不同,分离出的信号与源信号的相似度均达到0.999 0以上。通常把分离信号顺序和幅度的不确定性称为盲源分离问题的不确定性,这些对后续信号的参数测量或者分类识别并不影响。而且如果把白噪声看作是强噪声干扰信号,该算法也能正确分离出噪声信号,这对于判断干扰信息也有实际的意义。 算法的收敛性方面:从表2可以看出,改进算法总体上是收敛的,表明算法分离不同调制信号是可行的。同时改进算法虽然偶尔的迭代次数较多,但总体上要少于传统算法,因此收敛性更好。 表2 两种算法总迭代次数统计表Tab.2 Statistics of total iterations of the two algorithms 本组实验分析的是对脉冲信号的分离能力,实验中设置了到达时间相同、宽脉冲覆盖窄脉冲、PRI随机以及噪声干扰等特殊情况,以此检验算法的性能。实验中包含3组脉冲信号和2组连续信号:3组脉冲信号中第一组脉宽(PW)和脉冲重复周期(PRI)固定,第二组PW和PRI随机变化,第三组PW固定,PRI随机;连续信号中一组为BPSK信号,另一组为模拟强高斯白噪声干扰信号。信号参数设置如下: 1) 单载频脉冲:载频f0=8×106Hz;脉冲宽度PW=5 μs,脉冲重复周期PRI=20 μs。 2) 线性调频脉冲:初始频率f0=107Hz,调频斜率k=1 012,PW={6.4,6,4,6,5,8,10,7} μs, PRI={16.4,14.2,12,19,17,20,21.4} μs。 3) 频率编码信号:信号中两个频率分别为f1=6×106Hz,f2=9×106Hz,PW=6 μs,PRI={21,22,24,27,21} μs。 4) 二相编码信号(BPSK):本组信号设置为连续信号,选取序列为{1,1,1,0,0,1,0}的7位巴克码信号,码元内信号载频f0=107Hz。 5) 高斯白噪声:噪声功率为20 dBW,信号2对应的信噪比为-27.3 dB。 源信号波形如图6所示,信号从上至下依次对应列举的信号(1-5)。本实验的混合矩阵由Matlab随机产生,得到的混合信号波形如图7所示,从图中可以看到信号几乎完全被噪声淹没,无法从视频信号中检测出脉冲。 图6 脉冲源信号的时域波形Fig.6 The pulse source signals 图7 混合信号的时域波形Fig.7 The mixed signals 采用两种算法对脉冲信号进行分离,得到的时域波形分别如图8、图9所示。表3为对应的相似系数统计表。表4为本实验进行100次得到的总迭代次数的统计表。 表4 两种算法总迭代次数统计表Tab.4 Statistics of total iterations of the two algorithms 图8 改进算法分离信号的时域波形Fig.8 The signals separated by the improved algorithm 估计的一致性方面:从分离的波形图可以看出,改进算法分离得到的信号与源信号非常接近,只是信号的排列顺序不一致。与实验1类似,表3中源信1-5分别代表源信号中对应的信号(1-5),信号1-5分别对应图8、图9中从上至下的5个信号,表中每行每列中只有一个值为1或者接近于1,其他为0或者接近于0,可见分离得到的信号几乎完整地保留了源信号的所有信息,说明该算法对同时到达、宽脉冲覆盖窄脉冲、PRI随机等脉冲雷达信号具有很好的分离效果,而且当把混合信号中的噪声当作是有意干扰信号时,也能单独分离出来。对比两种算法的相似系数可以看出,改进算法分离效果与传统算法相差不大。 图9 传统算法分离信号的时域波形Fig.9 The signals separated by the traditional algorithm 表3 分离信号与源信号的相似系数统计表Tab.3 Statistical table of similarity coefficient between separated signal and source signal 算法的收敛性方面:改进算法在分离信号时收敛,表明了该算法在雷达系统信号分选中的可行性。与实验1类似,实验中改进算法迭代次数总体较小,收敛速度优于传统算法。 为了进一步验证算法的抗噪性能,在3.2节的实验信号环境下,信噪比设置在-20~5 dB范围内进行蒙特卡洛实验。每隔1 dB进行200次蒙特卡洛实验,得到的仿真结果如图10和图11所示。 图10 相似系数随信噪比变化曲线Fig.10 Variation curve of similarity coefficient with SNR 实验中将源信号对应的最大相似系数进行平均,使用平均相似系数来衡量算法的分离效果。图10为信号的平均相似系数随信噪比变化曲线,图11为算法总迭代次数随信噪比变化曲线。由实验结果可知,即使在较低信噪比条件下,算法仍具有较好分离效果。算法总迭代次数在不同信噪比条件下浮动范围很小,改进算法收敛速度优于改进前算法。 图11 总迭代次数随信噪比变化曲线Fig.11 Variation of iterations number with SNR 综合文中两组实验,总结如下: 1) 算法可以分离不同调制的雷达信号,可以分离出PRI随机变化的雷达信号,较基于辐射源描述字的传统算法有一定的优势。 2) 算法可以实现到达时间相同、宽脉冲覆盖窄脉冲以及强噪声干扰等复杂电磁环境下的雷达信号分选,而且分离出信号的信息与源信号基本相同。 3) 改进算法较传统FastICA算法在分离效果相同的情况下,运算迭代次数更少,具有更快的收敛速度。 本文在深入研究FastICA算法原理的基础上,提出基于改进FastICA算法的雷达信号分离方法。该方法利用了PCA进行数据预处理,降低了数据的维数;进而采用改进的3阶迭代公式进行循环迭代,提取出独立的源信号,达到雷达信号分离的目的。实验结果表明,该方法能够在复杂的电磁环境中有效地分离出源信号,相较于传统FastICA算法,该方法具有更快的收敛速度。这对于雷达侦察系统的信号预分选有一定的参考意义。2.3 算法性能评价指标
3 仿真实验及结果分析
3.1 连续波信号分离实验
3.2 脉冲波信号分离实验
3.3 不同信噪比条件下算法的性能
3.4 实验总结
4 结论