基于盲源分离的潜艇振动噪声源分离研究∗
2018-11-26丁士轩裴秋秋
万 俊 丁士轩 裴秋秋
(91388部队 湛江 524022)
1 引言
潜艇因其行动隐蔽、毁伤力强,是各国海军作战力量的重要组成部分。目前,声学作为探测水中目标的主要技术手段,决定了潜艇的隐身能力主要取决于潜艇的噪声水平[1]。因此,潜艇噪声对潜艇的生存及其武器装备性能的发挥有重大影响,是潜艇作战效能的重要指标。通过对潜艇进行噪声测试,并开展有针对性的维修改造以降低其噪声水平,提高潜艇的声隐身性,对作战潜艇的安全以及充分发挥其作战效能至关重要。提升潜艇的噪声测试水平是潜艇降噪的重要手段,受到各国海军的高度重视。
2 潜艇航行噪声及其测试分析方法
潜艇的航行辐射噪声主要由机械噪声、螺旋桨噪声和水动力噪声组成[2]。水动力噪声是由潜艇航行中壳体表面与水介质的相对运动产生的噪声。螺旋桨噪声是由螺旋桨在海水中转动所产生的噪声,包括螺旋桨空化噪声、螺旋桨旋转和桨叶振动等所产生的噪声。潜艇内部机械设备的振动通过壳体或者激励壳体振动向海水介质中辐射的噪声称为机械噪声。这些设备种类繁多,主要有用于船舶航行的主机(往复式发动机、汽轮机、柴油机等)以及配套的推进装置(转轴、轴承、减速器等),还有各种辅机(主发电机、变流机、通风机、各种泵等)以及复杂的管路、阀门、齿轮箱等。这些机械在运动过程中产生振动,通过底座或支架传递到船体,从而引起船体振动并向海洋中辐射噪声声波,以这种形式产生的噪声往往含有系统转动频率。大多数情况下,螺旋桨噪声和机械噪声是主要的辐射噪声。而在低速航行状态下,潜艇的机械噪声则是航行辐射噪声的主要来源[3]。
目前,针对潜艇航行辐射噪声的测试主要有单水听器测试系统、矢量水听器测试系统、直线阵测试系统和体积阵测试系统,其获取的噪声数据精度越来越高,但数据的处理及系统的布放操作也越发复杂。单水听器测试系统和矢量水听器测试系统的使用都非常成熟,形成了一整套操作规范;直线阵测试系统则只有少数几个具备潜艇建造能力的国家掌握使用;体积阵测试系统只有美国在位于阿拉斯加的潜艇水下航行固定试验场使用。而针对潜艇艇内振动的测试主要依靠在艇内各个部位安装振动传感器来实时获取潜艇振动数据并加以分析。
对于获取的潜艇振动与噪声的数据处理主要有分部运转消去法、辐射效率测定方法、相关分析方法、谱分析方法、常相干分析方法等传统方法[4],这些方法对潜艇噪声水平的计算以及主要振动噪声源的估计有一定作用,但是在计算效果及实际使用中也存在一定的局限性。在国外舰船噪声源分析领域,多测点、同时基噪声振动综合分析技术被广泛采用,该技术通过增加测试传感器数量,尽可能多地获取舰船辐射噪声和振动测试数据,并通过时间同步系统控制采集舰船噪声和振动数据,利用先进的声学处理系统,对全部测试数据进行同时基处理。在此基础上,采用多种方法综合分析识别噪声源,有效地查明主要噪声源的分布,分离机械噪声、水动力噪声和螺旋桨噪声对辐射噪声的贡献,从而全面获取被测舰船的总体声学性能,评价各项噪声设计指标,并提出下一步噪声控制的方向和目标。因此,如何从获取的数据中对不同噪声源的数据进行分离是一个重要研究内容。
3 盲源分离与独立成分分析
3.1 盲源分离问题描述
盲源分离(Blind Source Separation,BSS)是20世纪90年代兴起的一种新技术,它主要研究如何从一组观测数据中分离出各个源信号,其中各源信号和混合信道的形式是未知的。在低速航行状态下,潜艇航行辐射噪声的主要来源是机械噪声,它是由机械振动通过底座或支架传递到船体,从而引起船体振动并向海洋中辐射噪声声波产生的,潜艇内各主要噪声源设备都是独立工作的,符合盲源分离的应用条件。
独立成分分析(Independent Component Analysis,ICA)是一种典型的盲源分离方法,其实质是在统计独立性的假设下,对多路观测信号进行盲分离,挖掘出隐含在观测信号中的独立源成分[5]。它利用各种成分统计特征的差异,进行不同成分的分离,被广泛用于脑电波、数据挖掘、鸡尾酒会问题等方面的研究[6]。独立成分分析的一般线形模型为
式中:X(t)=[x1(t),x2(t),…,xM(t)]T为M维观测信号向量;S(t)=[s1(t),s2(t),…,sN(t)]T为N维源信号向量,即存在N个独立信号源;A是M×N阶满秩混合矩阵,且N≤M。
独立成分分析的目的就是在信号源S和混合矩阵A均未知的条件下,通过X寻找变换矩阵W,使得X通过W后得到的输出Y是信号源S的估计,即
式中:Y(t)=[y1(t),y2(t),…,yN(t)]T为信号源的估计。理想情况下,当M=N时,W=A-1,Y(t)=S(t)。而一般情况下,由于式(1)中的原始信号S(t)和混合矩阵A都是未知的,因此难以求得其分析解,都是通过一些假设和约束条件,求得一个变换矩阵W,使得经过式(2)得到的输出向量Y(t)是源信号向量S(t)的最优逼近。
3.2 独立成分分析求解算法
由式(2)可知最终计算得到的Y(t)的每一个分量实际是向量S(t)中各源信号的线性组合,而假设各个源信号之间是相互独立的,由中心极限定理,多个独立随机变量的混合信号更趋近于高斯分布,因此,可以使用输出信号Y(t)的非高斯性作为信号之间独立性的度量,ICA问题的求解就转化为使得最终结果Y(t)非高斯性最大化的问题。
统计学上,峭度(kurtosis)是随机变量的四阶累积量,可作为随机变量非高斯性的度量。变量y的峭度kur(ty)定义为
对于高斯分布的变量y,其四阶矩等于3(E {y2})2,因此高斯变量的峭度为零,对于大部分非高斯随机变量,峭度为非零值。而由峭度的计算公式可看出它对野值(outliers)极其敏感,其鲁棒性较差,其他可用于度量非高斯性的量还有互信息与熵。熵(entropy)是信息论的基本概念,也是随机变量不确定性的度量,它的定义为
一组随机变量的相互独立性越强,这组变量的熵值就越大。信息论中指出:在具有相同方差的随机变量中,高斯变量具有最大的熵。因此定义负熵作为一个非负的量值来度量变量的非高斯性:
其中:ygauss是与y具有相同相关矩阵的高斯随机向量,即H(ygauss)为最大熵值。只有当y具有高斯分布时,负熵J(y)才为零。
基于上述非高斯性的度量,许多ICA算法被提出,包括联合逼近对角化特征矩阵算法(Joint Approximative Diagonalization of Eigenmatrix,JADE),随机梯度法[7],等变化自适应算法[8](Equivariant Adaptive Separation Via Independence,EASI),自然梯度法,核独立成分分析[9](Kernel Independent Component Analysis,KICA),不动点算法[10](FastICA,也称快速ICA算法)等。
3.3 FastICA算法
Aapo Hyvarinen在文献[11]中提出了使用高阶累积量来近似负熵的计算方法:
将式中多项式函数y3和y4替换成基于其他的任意非二次函数G,相应的近似变为
式中:ν为零均值单位方差的高斯变量,变量 y也经过了零均值单位方差的标准化预处理。Hyvarinen推荐了两个G(y)函数:
在此基础上Hyvarinen提出了基于负熵的快速不动点算法,其迭代的步骤如下:
1)对观测数据进行中心化使其均值为零,再进行白化预处理,选择要估计的独立成分的个数。
2)令W=(w1,w2,…,wN)T,初始化各向量使其具有单位范数,从中选取某一向量作为初始向量wi。若非提取的第一个独立成分,则通过式(10)减去已提取出的独立成分的投影,以保证每次所估计的都是不同的独立成分。
3)对向量wi更新:
函数g可以使用式(8)和式(9)的导数,也可以选用对应于峭度的四次方函数的导数,则函数g可取以下形式:
4)设置的阈值ε,若 | wiTwi'|-1>ε,则返回步骤3),否则继续计算其他向量w,直至所有独立成分被估计出来。
基于负熵的FastICA算法比其他ICA算法收敛速度快,并且算法中没有学习率或其他需要调整的参数,故算法容易使用,且更加可靠。
4 仿真验算
由于潜艇航行噪声数据属于机密数据,不宜公开,因此本文使用文献[12]中的潜艇振动模拟数据来进行算法的仿真验算,以验证算法的可行性。如图1所示,使用一路正弦信号模拟工频干扰,分别使用一路脉冲信号和锯齿波信号模拟两路不同的机械振动噪声信号,使用一路高斯白噪声信号模拟海洋环境背景噪声。
随机产生一个混合矩阵,将四路信号值组成的矩阵与混合矩阵相乘,即在物理意义上令源信号通过一个响应函数未知的传输信道。得到的结果如图2所示,此时已难以分辨原始信号的特征。使用FastICA算法对随机混合的信号进行计算,得到的结果如图3所示,成功将参与验算的模拟源信号分离出来。
通过模拟数据的仿真验算,FastICA算法能够有效地将各源信号从混合信号中分离出来,然而在分离出的源信号中发现某些信号在时域特征上发生了信号的翻转,同时各源信号的顺序有所改变,这是独立成分分析算法原理造成的,信号间的非高斯性最大化处理难以去除这种翻转现象,但这种现象并没有影响到所估计的各源信号的频域特征。
5 结语
潜艇航行的振动和噪声测试与分析一直是潜艇相关研究领域的热点,尤其是机械振动噪声源的分析。本文提出使用基于独立成分分析的FastICA算法对潜艇航行振动噪声信号进行处理,经过对模拟数据的仿真验算,从无特征的混合信号中分离出了各噪声源信号,验证了算法的可行性。然而在分离出的信号中仍混有少量噪声,不利于后续对其进行频域分析和特征提取,因此如何滤波去噪并保护源信号特征以及使用高速硬件电路实时实现该算法都有待进一步研究。