数字滤波器的优化设计浅析201120003025何志会数字滤波器的优化设计浅析摘要当前,在数字信号处理和电子应用技术领域,数字滤波器以其精度高、灵活性好、便于大规模集成等突出优点,占据了至关重要的地位。
按冲击响应持续时间,数字滤波器可分为有限冲击响应(FIR)滤波器和无限冲击响应(IIR)滤波器。
传统的数字滤波器的设计方法有窗函数法、频率采样法和等波动最佳逼近法等。
但是随着时代的发展,应用领域的广泛增加、信号处理要求变高以及计算复杂程度的不断提高,对于数字滤波器软件和硬件的要求也越来越专业、复杂。
因此,数字滤波器的优化设计也显得更加重要。
近年来,国内外对数字滤波器的优化算法进行了较多的研究,提出了很多优化方法和算法,如:人工鱼群算法、粒子群算法、遗传算法、最小P误差法、小波逼近法等。
这些算法大大提高了数字滤波器的应用范围,使结果更加逼近于目标函数。
硬件上,FPGA以其体积小、速度快、重量轻、功耗低、可靠性高、成本低等优点在数字滤波器上得到应用,具有很好的发展前景。
关键词:数字滤波器;优化;算法Optimization design of FIR digital filterAbstractAt present, the digital filter with its high precision, flexibility, ease of large-scale integration and other advantages, occupies a crucial position in the field of digital signal processing and application of technology.According to the duration of the impulse response, digital filter can be divided into finite impulse response (FIR) filters and infinite impulse response (IIR) filter. Traditional methods of digital filter design use window function method, sampling method, frequency fluctuations and the best approximation method. But with the development of the times, a wide range of applications increases, the signal processing requirements of high change and increasing complexity of the calculations for the digital filter software and hardware ,requirements have become more specialized and complex. Therefore, the digital filter design optimization is even more important. In recent years, domestic and international digital filter optimization algorithm for more research, made a lot of optimization methods and algorithms, such as: artificial fish school algorithm, particle swarm optimization, genetic algorithm, the smallest P error method, wavelet approximation method . These algorithms greatly improve the application of digital filters, so that the results more close to the target function. Hardware, FPGA with its small size, fast, light weight, low power consumption, high reliability and low cost have been applied in the digital filter, with good prospects for development.Key words:Digital filter ;Optimization;;algorithm1 研究意义由于数字滤波器审计在实际工程中只能是逼近理想的设计指标,即:主要任务是使滤波器幅频响应与所要求的幅频响应的均方误差最小,因此可以将它看成是一个按某种优化准则求解最优解的优化问题。
而优化是指在给定的制约条件下,求出使目标函数(组)最大或最小的变量组合问题。
从理论上讲,任何确知的制约条件及目标函数的优化问题都存在一组实质解,工程中我们不但关心这组解是否存在,而且关心求解所需的运算时间,因此最优解问题可以根据所需要的求解时间来进行分类。
滤波器的设计包括三个基本步骤:(1)按照实际的任务要求,确定滤波的性能指标。
(2)设计一个因果、稳定的离散线性时不变系统的系统函数)(zH,去逼近这一性能指标。
根据不同的要求可以用FIR系统函数,也可以用IIR系统函数去逼近。
(3)从物理上实现所设计的)(zH,即利用有限精度算法去实现系统函数。
可见,逼近)(zH的效果,直接决定了数字滤波器性能的优劣。
随着计算机技术的快速发展,实践证明,利用优化算法来设计,不仅可以获得满意的效果,而且成本得到很大降低,灵活程度也更好。
因此,本文主要浅析几种现今主要的数字滤波器的优化算法设计。
2 数字滤波器的优化设计表2.1 FIR数字滤波和IIR数字滤波器的比较比较FIR滤波器IIR滤波器性能可以得到严格的线性相位。
但是要提高选择性,所用存储器较多,运算时间长,成本高,时延较大。
用较少的阶数获得很好的选择性,所用存储单元少,运算次数少。
但是相位非线性,选择性越好,相位越趋于非线性。
结构采用非递归结构,系统稳定,预算误差较小。
还可以采用快速傅里叶变换算法等,在同阶条件下,运算速度较快。
采用递归型结构,极点位置必须在单位圆内,以保证系统稳定。
运算过程中采用四舍五入,有时会引起寄生震荡。
设计角度对计算工具要求较高设计和计算的工作量较小,对计算工具要求较低从表2.1可知:FIR和IIR各有特点,所以在设计中应该从实际出发,多方面考虑加以选择。
例如:对于线性相位要求不敏感的场合,如语音通讯等,用IIR 较合适。
对于图像信号处理,数据传输系统等,对线性相位要求较高,用FIR较好。
2.1FIR 滤波器的优化设计FIR 滤波器优化设计应该遵循最优化准则,一般有均方误差最小准则和最大误差最小化准则(也称为加权贝雪夫等纹波逼近)。
2.1.1 粒子群算法1.定义粒子群算法,又称为粒子群优化算法(Particle Swarm Optimization,PSO)是一种新的全局优化算法,算法模拟鸟群飞行觅食的行为,通过鸟之间的集体协作使群体达到最优,PSO 算法属于进化算法的一种,和遗传算法相似,它也是从随机解出发,通过迭代寻找最优解,通过适应度来评价解的品质,但它比遗传算法规则更为简单,它没有遗传算法的“交叉” 和“变异”操作,它通过追随当前搜索到的最优值来寻找全局最优。
这种算法以其实现容易、精度高、收敛快等优点引起了学术界的重视,并且在解决实际问题中展示了其优越性。
2.由均方误差最小准则有:[]∑∑⎰+-==-=-n o t h e rd N n d jw n h n h n h dwe E e ,221022)()()()(21πππ (公式2.1) 要使均方误差2e 最小,则应该使:0)()(=-n h n h d , 10-≤≤N n以一维实数FIR 优化为例:0)(sin )()sin()()(cos )()cos()(1210210102≥⎪⎭⎪⎬⎫⎪⎩⎪⎨⎧⎥⎦⎤⎢⎣⎡-+⎥⎦⎤⎢⎣⎡-=∑∑∑-=-=-=N i p p p R N i p p p R P P P w w H iw i h w w H iw i h a A e ϕϕ (公式2.2)∑-==10P P p a A (公式2.3)3.适应度函数 粒子群优化算法通过适应度来确定粒子当前位置的优劣,所以必须根据实际问题需要来选择适应度函数F,这里选择2e 作为FIR 数字滤波器设计的适应函数,即:2e F = (公式2.4)4.参数的选择(1)权函数)(w H d 的选择:根据不同的设计问题,在不同的频段上选择合适的值,以期获得较好的频率特性。
(2)初始化)0(i a 和)0(i b ,即初始化种群中的粒子:在给定区间]2,2[ 中产生一组随机数作为初始化种群。
(3)设定频率采样点:80到120 (4)设定迭代次数,即指定运算代数,以便寻找到最优粒子。
丢弃其余位置的粒子,由新的随机产生的粒子代替。
这里,我们选择代数为100到250。
5.设计优化步骤(1)根据不同频段要求初始化p a ;(2)设定粒子群优化算法的参数,包括群体大小,参数维数,加权因子;(3)在参数区间内随机初始化群体中各粒子的位置与速度;(4)根据公式2.3计算A,利用公式2.2计算粒子的适应度;(5)根据粒子群建模,更新粒子的位置和速度;(6)多次迭代,达到预先的迭代次数。
6.实验仿真及结果实验运用matlab 进行仿真,实验数据参考文献【1】7.实验结果分析:通过实验结果可以看出:在给定的一定区域内,算法能够很好地逼近给定的目标,获得较好的阻带特性。
但是同时也看到对于有些频率区域会出现局部最优,即出现局部极值点,而且迭代次数较多,速度较慢。
2.1.2 蚁群算法1.定义 蚁群算法(ant colony algorithm, ACA)是模拟蚂蚁觅食时建立巢穴到食物源最短路径的一种新型启发式优化算法,它提供了一种求解复杂优化问题的方法,并且不依赖于问题的领域和种类,具有本质并行、自组织、正反馈以及鲁棒性等优点,广泛地应用于很多学科和领域。
虽然蚁群优化算法的研究只有十几年的时间,但已经显示出其在求解复杂优化问题方面的优越性,在很多领域中的应用价值越来越被人们重视。