DIY编程器网

标题: 基于模拟退火神经网络的I型FIR数字滤波器设计 [打印本页]

作者: liyf    时间: 2012-1-16 17:30
标题: 基于模拟退火神经网络的I型FIR数字滤波器设计

                      摘要:提出一种基于模拟退火神经网络设计FIR数字滤波器的方法,是对用神经网络设计方法的一种改进。由于线性相位FIR数字滤波器的幅频特性是有限项的傅里叶级数,因此构造了一个三层余弦基神经网络模型,并用模拟退火算法进行了优化,然后给出了高阶滤波器优化设计的实例。仿真表明经优化设计后的滤波器具有更好的性能和更稳定的效果。
  0 引 言
  IIR滤波器不易做成线性相位,FIR滤波器只要满足一定条件就可做成线性相位,而现代图像、语声、数据通信对线性相位的要求是普遍的,因此具有线性相位的FIR数字滤波器得到广泛的发展和应用。
  FIR滤波器有传统的设计方法,如窗函数法、频率采样法、切比雪夫逼近法等;之后也有一些优化设计算法,如Remez交换算法、线性规划算法、加权最小二乘法、递推最小二乘法。虽然这些算法在一定程度上改善了传统方法的局限性,但这些方法自身也存在着一些不足。之后,曾喆昭等人提出了一种基于余弦基神经网络的算法,给出了该算法的收敛条件,并将其应用到高阶多通带FIR滤波器中,用实例说明了该算法在精度、计算速度等方面的优越性。基于这种算法,有人分别将其在数域和维数上做出了推广。
  本文提出的方法,是基于余弦基神经网络设计方法的一种改良,其基本思想首先是使设计频响与理想频响之间的全局误差在通带和阻带范围最小,其次再使用模拟退火算法,以最小阻带衰减为*价函数优化网络权值,使最后的结果朝着最优值靠近。由该方法设计的滤波器,通带和阻带范围无过冲、无波动,且阻带的衰减高,初始条件随机给定,算法速度快,因而是一种有效的设计方法。
  1 I型线性相位FIR滤波器的幅频特性
  若脉冲响应h(n)是实序列,且满足h(n)=h(N-1-n),N为脉冲响应h(n)的长度,并且N为奇数,则有:






  式中:M=(N-1)/2






  网络学习算法方面,也可以采用类似BP网络的学习算法。
  首先定义权值矩阵:






  对Ω在[0,π]范围内均匀取样,共取(N+1)/2=60个样点,即Ωk=πk/59(k=0,1,2,…,59),为了使通带和阻带内无过冲、无波动,在过渡带内取两个点0.78和0.25,于是实际的幅频取样点为Hd(k)=[zeros(1,29),0.25,0.78,ones(1,29)];网络结构取为1×60×1,性能指标设置为J=10-8。






  与例1类似,对Ω在[0,π]范围内均匀取样,共取(N+1)/2=60个样点,即Ωk=πk/59,(k=0,1,2,…,59),同样地,为了使通带和阻带内无过冲,无波动,在过渡带内取两个点0.78和0.25,于是实际的幅频取样点为Hd(k)=[ones(1,17),0.78,0.25,zeros(1,16),0.25,0.78,ones(1,23)];网络结构取为1×60×1,性能指标设置为J=10-8。







  文献[2]中的算法:
  两者相比较可得,虽然在运行时间上本文的算法逊于文献[2]中的算法,但这个运行时间本身也仅0.5 s左右,是可以接受的。在性能上本文的算法得出的结果几乎都在-190 dB左右,而文献E23中算法得出的结果则在-77~-93 dB之间波动,因此可以说用本文的算法可以得到更好、更稳定的最小阻带衰减。
  5 结 语
  本文提出了一种基于经优化算法优化过的神经网络设计FIR滤波器的方法。这一方法的特点是先用类似BP网络的方法调整神经网络权值,再用模拟退火技术进行优化,获取更好的FIR滤波器的脉冲响应,从而完成滤波器的设计。由文中给出的两个范例可以看出,设计滤波器的幅频响应在通带与阻带范围均无过冲现象,衰耗特性好,阻带最小衰减在190 dB以上,通带没有衰减。而且这种方法可以轻松地实现低通、高通、带通、带阻FIR滤波器的设计,程序运行时间均在0.5 s左右,是一种十分有效的设计方法。当然此算法也有改进的余地,比如在算法中过渡带的选取都是0.25和0.78。而事实上,对于不同的幅频特性,过渡点的选取可影响到最终设计的FIR滤波器的性能。通过优化过渡点的位置,可以使FIR滤波器的幅频特性在过渡点处更为平滑,并且有更好的最好阻带衰减。比如在文献[9]中,就有用遗传算法优化过渡点的方法。
            




欢迎光临 DIY编程器网 (http://diybcq.com/) Powered by Discuz! X3.2