神经网络BP算法在噪声主动控制中的应用
人类生产、生活环境中存在着大量的噪声,对人类健康及环境保护产生了巨大的危害,噪声控制问题越来越引起人们的重视.噪声主动控制(Active Noise Control,即ANC)就是通过某种手段在指定空间实时产生与噪声源在该处噪声幅值相等而相位相反的次级声源,使之与噪声源叠加最终达到消减噪声的目的,它与采用吸声、隔声等方法的被动式降噪有本质上的区别.近年来随着自适应信号处理技术的发展,噪声主动控制在各个领域已经得到了广泛应用.当前噪声主动控制系统最常用的算法是滤波-X最小均方(FLMS)算法,但是由于噪声源的时变性及声学通道的非线性,使系统的稳定性和有效性大大降低[1].
神经网络(Neural Network,即NN)是由大量的人工神经元经广泛并行互连形成的网络系统,用以模拟人类神经系统的结构和功能.由于神经网络可以逼近任意的非线性函数,具有极强的自适应、自学习和自组织能力,采用神经网络控制方法已成为噪声主动控制系统一个新的发展方向.
1 基于神经网络的噪声主动控制系统
噪声主动控制系统原理如图1所示,在管道上游采用初级传感器提取第n时刻的噪声信号x(n),经过ANC控制器产生与噪声信号x(n)等值反相的次级信号y(n),由y(n)驱动扬声器产生次级声源,与噪声源相叠加达到噪声抵消的目的.采用神经网络控制方法设计噪声主动控制系统,其结构如图2所示.x(n)为第n时刻的参考信号,h1(n)为噪声初级通道第n时刻传递函数,h2(n)为误差通道第n时刻的传递函数.x(n)通过噪声初级通道产生期望信号d(n)=x(n)*h1(n)(*表示卷积).同时x(n)输入神经网络控制器输出次级信号y(n),y(n)通过误差通道产生次级声信号s(n)=y(n)*h2(n).系统第n时刻误差信号为e(n)=d(n)+s(n),e(n)反馈给神经网络控制器并不断刷新控制器参数,直至误差信号e(n)达到最小值[2].
2 神经网络BP算法的变异算法
神经网络中利用反向传播(Back Propagation)算法即BP算法来处理误差的BP神经网络应用较为广泛,它的神经元分层排列分别组成输入层、一层或多层的隐层及输出层,每层都有多个神经元且互不连接,每层神经元只接收来自前一层神经元的输入,输入信息经各层变换后最终在输出层输出[3].本文采用三层BP神经网络设计噪声主动控制系统,该网络由输入层、一层隐层及输出层组成,且输出层只有一个神经元,其结构如图3所示.对于BP神经网络定义:n1、n2分别为输入层、隐层的神经元数目;
y(n)、nety(n)为第n时刻输出层神经元的输出和输入;
oj(n)、netoj(n)为第n时刻隐层神经元j的输出和输入, j=1、2,,n2;
xi(n)为第n时刻输入层神经元i的输出,xi(n)=x(n-i+1)i=1、2,,n1;
相关文章
- 2023-04-04基于NX的FANUC系统四轴加工中心后置处理器构建
- 2023-03-22SolidWorks在管路补偿接头系列化设计中的应用
- 2023-05-28锁相红外热成像技术在无损检测领域的应用
- 2021-12-20DSP和FPGA在大尺寸激光数控加工系统中的运用
- 2023-04-12全电子包装秤故障原因分析及策略
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。