首页>>科技 >>内容

下列各种滤波器的结构中哪种不是fir滤波器的基本结构,基于优化神经网络的FIR滤波器的设计方案

发布时间:2023-09-19 12:26:34编辑:温柔的背包来源:

下列各种滤波器的结构中哪种不是fir滤波器的基本结构,基于优化神经网络的FIR滤波器的设计方案

很多朋友对下列各种滤波器的结构中哪种不是fir滤波器的基本结构,基于优化神经网络的FIR滤波器的设计方案不是很了解,每日小编刚好整理了这方面的知识,今天就来带大家一探究竟。

引用

IIR滤波器不容易做成线性相位,FIR滤波器只要满足一定条件就可以做成线性相位。FIR滤波器的传统设计方法有窗函数法、频率采样法、切比雪夫逼近法等。曾等人提出了一种基于余弦基神经网络的算法,给出了算法的收敛条件,并将其应用于高阶多带FIR滤波器。实例表明了该算法在精度和计算速度上的优越性。

基于这种算法,有人分别在数域和维数上对其进行了推广。

本文提出的方法是对基于余弦基神经网络的设计方法的改进。其基本思想是在通带和阻带范围内,使设计频响与理想频响之间的全局误差最小,然后用模拟退火算法以阻带衰减最小为评价函数优化网络权值,使最终结果接近最优值。

用该方法设计的滤波器在通带和阻带范围内无超调和波动,阻带衰减高,初始条件随机,算法速度快,是一种有效的设计方法。

类型1 I线性相位FIR滤波器的幅频特性如果脉冲响应h(n)是实数序列且满足h(n)=h(n-1-n),N是脉冲响应h(N)的长度,N是奇数,则:

很容易看出,这个公式是由(N ^ 1)/2个余弦项叠加而成的函数,并且这个函数在=0,,2处不等于零,所以I型线性相位FIR滤波器可以用作低通滤波器(其中=0,幅度函数不为零),高通滤波器(其中=,幅度函数不为零)和带通滤波器。2余弦基神经网络在网络结构方面,如图1所示,类似于BP网络结构:

输入层和输出层只有一个节点,隐含层有M个节点,每个节点对应的激励函数如下:式中,M=(N-1)/2,则输入层到隐含层的总值为1,隐含层到输出层的权重 0 ~ 0~M分别为A0 ~ AM,所以神经网络的输入/输出关系正好是滤波器的幅值函数网络学习算法的方面,可以采用类似的首先定义权重矩阵:设置性能指标:训练样本数。所以重量修正的公式是:

其中:是学习率。迭代的终止条件可以设定为性能指标J满足一定条件,学习率的选取将直接影响神经网络的稳定性。目前已有人提出其合适的选择范围。比如罗玉雄等人证明了神经网络在满足0 (2/||| c ||| 2)时是稳定的(这里|||| 2表示欧氏范数的平方)。曾等人也提出并证明了当满足0(4/N)时,神经网络是稳定的。3模拟退火算法

由于上述网络学习算法本质上还是一种BP算法,必然会存在BP算法的缺陷,初始值的选取会影响最终结果,容易陷入局部极小。

模拟退火算法与初始值无关,算法得到的解与初始解状态(是算法迭代的起点)无关;模拟退火算法具有渐近收敛性,这在理论上已得到严格证明。当初始温度足够高,降温足够慢,每个温度的采样足够长,最终温度趋于零时,算法最终以概率1收敛到全局最优解。模拟退火算法通过概率判断接受新的状态,这是算法有机会跳出局部最小解,最终趋向全局最优的根本原因。

于是在前面的算法中加入了模拟退火算法,可以弥补上述算法的不足。

模拟退火算法的步骤如下:(1)用生成函数从当前解S中生成一个位于解空间中的新解S’。(2)计算新解对应的目标函数差。这里取阻带衰减最小作为评价函数C(S),从得到的解S可以很容易地得到,所以目标函数差t=C(S ')-C(S);

(3)判断新解是否被接受,其依据是一个接受准则,最常用的接受准则是Metropolis准则。若t0,则接受S'作为新的当前解S;否则,以概率exp(-t/T)接受S'作为新的当前解S。

(4)当新解被确定接受时,用新解代替当前解,同时修正评价函数。此时,当前解实现了一次迭代,可在此基础上开始下一轮试验;当新解被判定为舍弃时,则在原当前解的基础上继续下一轮试验。

将模拟退火融入原算法,其实主要是用原算法来实现模拟退火中第(1)步的产生解S,于是可得到总的算法:

(1)初始化,初始温度T(充分大),初始解状态S(是算法迭代的起点),每个T值的迭代次数L,初始权值W,性能指标J,学习速率,并且设定目标向量(理想幅频响应Hg(k));

(2)对k=1,2,…,L做第(3)(8)步骤;

(3)计算误差E(k),使用权值修正公式:W=W+E(k)C(k)修正权值;

(4)满足性能指标J转步骤(5),否则转步骤(3);

(5)由步骤(4)产生的W得出新解S';

(6)以滤波器的最小阻带衰减为评价函数,计算t,其中t=C(S)-C(S);

(7)若t0,则接受S'作为新的当前解,否则以概率exp(-t/T)接受S'作为新的当前解;

(8)如果满足终止条件,则输出当前解作为最优解,终止条件通常取为连续若干个新解都没有被接受;

(9)减小T,转步骤(2)。当T0时,终止算法。

4 仿真实例

例1:设计一线性相位高通FIR滤波器,其理想幅频特性为:

对在[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)];网络结构取为1601,性能指标设置为J=10-8。

经过计算机仿真得到如图2和图3的仿真图。

例2:设计一线性相位带阻FIR滤波器,其理想幅频特性为:

与例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)];网络结构取为1601,性能指标设置为J=10-8。

经过计算机仿真得到如图4和图5的仿真图。

通过仿真,可以和与文献[2]中的算法相比较。在这里以例1中的情形为例,两种方法各运行10次,取最后得到的最小阻带衰减(单位:dB)和程序的运行时间(单位:s)来比较:

文献[2]中的算法:

两者相比较可得,虽然在运行时间上本文的算法逊于文献[2]中的算法,但这个运行时间本身也仅0.5 s左右,是可以接受的。在性能上本文的算法得出的结果几乎都在-190 dB左右,而文献E23中算法得出的结果则在-77-93 dB之间波动,因此可以说用本文的算法可以得到更好、更稳定的最小阻带衰减。

5 结语

本文方法的特点是先用类似BP网络的方法调整神经网络权值,再用模拟退火技术进行优化,获取更好的FIR滤波器的脉冲响应,从而完成滤波器的设计。由文中给出的两个范例可以看出,设计滤波器的幅频响应在通带与阻带范围均无过冲现象,衰耗特性好,阻带最小衰减在190 dB以上,通带没有衰减。

而且这种方法可以轻松地实现低通、高通、带通、带阻FIR滤波器的设计,程序运行时间均在0.5 s左右,是一种十分有效的设计方法。

以上知识分享希望能够帮助到大家!