APP下载

数字滤波器性能指标优化中FIR的设计与仿真研究

2016-09-25顾绮芳

无线互联科技 2016年15期
关键词:幅频特性阻带遗传算法

顾绮芳

(无锡城市职业技术学院,江苏 无锡 214000)

数字滤波器性能指标优化中FIR的设计与仿真研究

顾绮芳

(无锡城市职业技术学院,江苏无锡214000)

数字滤波器,通俗来讲,就是一种算法或者装置,一般情况下由数字乘法器、加法器和延时单元3部分构成。对数字滤波器的设计方法研究已有20年的历史,目前其正处于稳定发展时期。遗传算法等优化算法的利用,在优化数字滤波器的性能指标以及仿真实现FIR数字滤波器方面进行得如火如荼。这种基于生物界自然选择和进化机制发展的算法具有并行度高、随机、自适应搜索等特点,当前在组合优化、生产调度、自动控制、图像处理、机器学习、数据挖掘等各个方面均有所应用。正如人们所理解的,数字信号处理就是从噪声中寻找有用的信号,恰巧这也是寻找最优解的过程。可以说,在数字滤波器设计方面,遗传算法是一个大胆的尝试。所以,文章针对数字滤波器性能指标优化中FIR的设计与仿真进行了研究。

数字滤波器;性能指标;FIR;设计仿真

数字滤波器的主要工作原理就是使信号频谱产生变化,运算所输入的离散信号的数字代码,具有精度高、可靠性强、可程控改变、集成方便以及应用范围广等特点。尤其是对语言、图像、生物信号处理等方面。然而在设计技术方面,其却跟不上科学的发展步伐。因此,一种类似于达尔文进化论的遗传算法诞生,并且在数字滤波器的设计中已经有所应用。这种算法实际上是仿照生态环境中的生物遗传和进化而逐渐衍变出来的一种算法,具有自适应、全局优化、概率搜索的特点,可以帮助人们解决复杂系统优化的问题。

1 数字滤波器的典型方法设计

1.1数字滤波器的设计要求

在日常工作中所使用的数字滤波器大都为选频滤波器,其频响特性函数H(ejω)属于一种复函数,一般表示如下:

在公式(1)中,|H(ejω)|是幅频特性函数,说明信号经过滤波器后各频率成分的衰减问题;θ(ω)是相频特性函数,主要反映各频率经过滤波器后在时间上相关延时问题。

图1为低通滤波器的幅值特性,ωp和ωs分别称为通带截止频率和阻带截止频率。通带频率范围为0≤ω≤ωp,在通带中要求1-δ1<ωs≤1,阻带频率范围为ωs<ω≤π,在阻带中要求,从ωp至ωs称为过渡带。通带内所允许的最大衰减(dB)和阻带内所允许的最小衰减(dB)分别为αp和αs,分别定义为:

一般要求:

图1 低通滤波器的幅值特性

1.2数字滤波器的设计方法

数字滤波器的设计方法有很多,其中有一种兼具窗口设计法和频率采样法的卷积(convolution)的FIR滤波器。

FIR滤波器(Finite Impulse Response,FIR)的窗口设计方法主要通过自时域出发利用其频率响应来缩小与理想的)距离, 可以通过利用一个长度为N的窗口函数ω(n)来截取hd(n),即:hd(n)=ω(n)hd(n)来达到用有限长的h (n)来逼近无限长的hd(n)的目的;其频率采样法从频域出发,对理想的频率响应)再进行等间隔采样)|2kπ/ N=Hd(k)。把所有的采样值都作为变量是其最优化设计原理,进而达到获得最优结果的目的。一般情况下,采用均方误差最小准则和最大误差最小化准则。

2 基于遗传算法的数字滤波器的设计与仿真

2.1MATLAB软件的概述

矩阵实验室(Matrix Laboratory,MATLAB)诞生在美

矩阵构成了MATLAB的基本数据,MATLAB中的指令表达式和在数学、工程领域方面应用基本是一致的,用户可以借助效率非常高的数值计算及符号计算功能来处理繁琐的数学运算分析;此外,MATLAB还可以利用其自带的图形处理功能来达到使计算结果和编程可视化的目的;MATLAB相对来说是比较容易掌握的,用户界面简洁明了,类似于数学表达式的语言都降低了用户学习的难度;信号处理和通信等工具箱等功能为用户提供了许多便捷的工具,扩大了工具内容和种类。

MATLAB在信号处理、图像处理、通讯、财务以及计算生物学等方面都有所应用,可见其应用面之广。而且具有专用MATLAB函数集的附加工具箱提高了MATLAB的工作空间,对于那些特定的问题处理起来更加方便。

2.2基于遗传算法的FIR数字滤波器的设计与仿真

2.2.1基于遗传算法的FIR数字滤波器的设计

首先讨论一下4种线性相位滤波器的特点:

第一类,如果相位为零较为理想,那么FIR滤波器的幅频特性对于ω=0,π,2π皆成偶对称。

H(k)=H(N-k),N为奇数,h(n)=h(N-1-n)(5)

第二类,对于符合理想的零相位FIR滤波器的幅频特性对ω=π为奇对称,且幅频特性非零,对ω=0,2π为偶对称的过滤器,高通滤波器和带阻滤波器不予采用。

第三类,当零相位FIR滤波器的幅频特性对ω=0,π,2π都为奇对称,同时ω=0,π,2π情况下,幅频特性均是零。

第四类,理想的零相位FIR滤波器的幅频特性对于ω=0,2π成奇对称,对于ω=π成偶对称,且ω=0,2π处,幅频特性都为零。

H(k)=H(N-k),H(0)=0,N为偶数,h(n)=-h(N-1-n)

(8)

例:用频率采样法设计一个FIR带通滤波器,技术指标:低阻带边缘频率ω1s=0.2π,低通带边缘频率ω1p=0.3π,通带边缘频率ω2p=0.7π,高阻带边缘频率ω2s=0.8π,通带最大波动AP=0.3dB,阻带最小衰减As=40dB,采样点数N=40。

设过渡中的值用T1来表示,则Hk=T1,k=5, 15, 25, 35 (10)

因为是带通滤波器且N=40为偶数,所以为第四类线性滤波器。

对于线性相位滤波器的对称脉冲响应,有

式中k取整。

所以,

本文就是利用遗传算法寻找合适的过渡带采样值,以使阻带最小衰减取的最大值。

遗传算法的具体步骤如下:

(1)估计参数0<T1<1,对T1进行编码;

(2)初始化种群,假设群体规模(染色体)为S,即每代中的个体也是估计参数的个数,G为遗传算法的代数,Pm为变异概率,Pc为交叉概率,在遗传算法的每i代中,对第j个估计参数译码得到一个T1,并计算出对应的阻带最小衰减Asij,通过下式计算出该估计参数的适应度fij,即:

fij越大说明此最小衰减Asij适应度越大,被保留的可能性越大,否则就会被优解淘汰;

(3)选择策略方面,由达尔文适者生存的进化论可以知道在一个群体中经常出现为了生存而打斗的现象,往往适应能力强的取胜。针对这个情况,采用轮盘赌选择法作为生存策略。

此法与赌场所用的轮盘有一样的原理,即遇到每一个数据都具有相同的概率。可以按照自己需要来设置轮盘格子数,再随机旋转转盘,用这个随机结果代表是哪一个格子。个体的适应能力按比例换算为选中的概率。表1中分别显示了11个个体的适应度、选择概率和累积概率。可通过多次重复试验来进行个体选择。每次试验可产生一个[0, 1]随机数,把这个随机数当成选择指针以确定选择哪个个体。如图2所示,若第一轮随机数为0.81,则第六个个体被选中,第二轮随机数为0.32,则第二个个体被选中,以此类推,若第3,4,5,6的随机数分别为0.96,0.01,0.65,0.42,则第9,1,5,3个个体依次被选中。这样经过选择产生的种群由以下个体组成:1,2,3,5,6,9。

表1 轮盘赌选择法的选择概率计算

图2 轮盘赌选择法

按照轮盘赌选择法进行选择操作。计算每个染色体的适度fij,根据适应度求出第j个染色体的累积概率qi,

在[0,1]内产生S个均匀分布的随机数r,若r≤qi,则染色体 x1被选中;若qk-1<r≤qk(2≤k≤N),则染色体xk被选中,从而生成新的种群;

(4)交叉操作,按照概率pc挑选出将要配对的个体,如果待配对个体是奇数,就自动去掉最后那个,以保证待交叉的个体是偶数,再与邻近个体配对,然后得到一个随机交叉点,在此点进行配对个体的交叉操作;

(5)变异操作,概率pm为依据,先假设等待变异的种群规模S和每一个染色体的编码位数相乘之后等于n,这里的n就是指基因总数,会得到n个[0,1]间的随机数,然后寻找随机数中小于变异概率的数的具体位置,这就是待变异的染色体的基因的位置,变异操作就可以进行;

(6)如果i=G,那么结束算法,否则转至步骤(2)。

2.2.2基于遗传算法的FIR数字滤波器的仿真结果

对比分析图3和图4的仿真结果可以发现,滤波器幅度响应曲线由遗传算法绘出的比查表法要好,也得到了合适的过渡带采样值,以得到更大的阻带最小的衰减。加之普通算法的最小衰减是达不到题目要求的。然而遗传算法的随机性大,执行结果每次都不相同,因此如何选择最优仿真结果需要进一步研究。

(1)用一般算法实现FIR滤波器的程序代码及仿真结果:

图3 本例题一般算法的仿真结果(T1=0.5,As=40.0129dB )

(2)本题基于遗传算法设计的仿真结果

图4 本例题遗传算法的仿真结果(T1=0.5378, As=42.7316dB)

3 结语

这种基于生物界自然选择和进化机制发展的算法具有并行度高、随机、自适应搜索等特点。当前在组合优化、生产调度、自动控制、图像处理、机器学习、数据挖掘等各个方面均有所应用。一直以来,在滤波器的设计中如何运用遗传算法,如何优化滤波器都是非常热门的研究话题。随着科学计算水平的不断提高,可编程逻辑器越来越多地被应用在滤波器的设计中,这也为滤波器的硬件提供了一条新思路。

虽然相较于其他算法,遗传算法结构比较简单,但是在解决一些问题时,存在不容易选择群体大小、交叉变异概率等问题,而且搜索效率并不理想。随机性大可以是优势也可以是劣势,因为根据其进行的最优选择也是随机的,不可能每次都得到最优解。针对这个问题,还需要进行更深层次的研究。

[1]甘明刚,潘峰,蔡涛.基于协调粒子群算法的无限冲激响应滤波器优化设计[J].兵工学报,2010(10):1398-1402.

[2]贾金锁,高梅国,韩月秋.遗传算法在海杂波产生中的应用[J].北京理工大学学报,2004(5):446-449.

[3]梁天,周晖,谢静,等.无线传感器网络的多目标覆盖控制策略[J].传感技术学报,2010(7):994-999.

[4]邹娟,贾世杰,曾洁.基于遗传算法的FIR滤波器设计[J].大连交通大学学报,2010(4):22-25.

[5]余静,吴乐南,靳一.基于量子粒子群优化的数字冲击滤波器自动设计[J].东南大学学报(自然科学版),2012(2):224-228.

[6]赵瑞杰.二维FIR数字滤波器优化设计理论与二维优化设计算法研究[D].济南:山东大学,2012.

[7]李鸿,曾喆昭,周云飞.基于神经网络并行算法的海尔伯特变换器优化设计[J].湖南师范大学自然科学学报,2005(3):40-44.

[8]田树耀.圆度误差的最小二乘法、最小包容区域法和最优函数法评定精度之比较[J].计量技术,2008(7):63-65.

[9]张林家.基于Pareto遗传算法的多目标优化[J].鞍山师范学院学报,2008(4):22-24.

Study on FIR design and simulation of digital flter performance index optimization

Gu Qifang
(Wuxi City College of Vocational Technology, Wuxi 214000, China)

Digital filter is a kind of algorithm or device in terms of popularity, which is composed of three parts: digital multiplier,adder and the delay unit generally. Study on the design method of digital flter has a history of 20 years, which is currently in a stable development period. The use of genetic algorithm in optimization algorithm for optimal performance index and simulation of FIR digital flter area is developing rapidly. This kind of algorithm based on the development of natural selection and evolution has the advantages of high degree of parallelism, random, adaptive search, etc. Which is currently applied to combination optimization, production scheduling,automatic control, image processing, machine learning, data mining and other aspects. As we all know, the digital signal processing is to fnd the useful signal in the noise, which is just the process to fnd the optimum solution. It can be said that in the design of digital flter,genetic algorithm is a bold attempt. Therefore, the design and simulation of performance index optimization of digital flter in FIR were studied in the article.

digital flter; performance index; FIR; design and simulation

无锡城市职业技术学院教改课题;项目名称:高职校企合作人才培养与就业一体化研究—以计算机应用技术专业为例;项目编号:WXCY-2014-JG-015。

顾绮芳(1980— ),女,江苏无锡,硕士,讲师;研究方向:计算机仿真,图像处理技术。国的mathworks公司,在科学计算、可视化及交互式程序设计等技术含量高的计算环境的背景下,可以通过一个视窗把数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等许多功能集中体现,MATLAB在必须进行有效数值计算的领域发挥着日益重要的作用,而且避免了像C语言,Fortran语言等传统非交互式程序设计语言的编辑模式,是国际科学计算软件的领头羊。

猜你喜欢

幅频特性阻带遗传算法
心电图机幅频特性检定结果的分析
基于自适应遗传算法的CSAMT一维反演
一种改进的最大信杂比MTD滤波器设计算法
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于遗传算法和LS-SVM的财务危机预测
基于改进的遗传算法的模糊聚类算法
基于MSP430的自动幅频特性测试系统
开口磁芯的高频电流传感器幅频特性研究
一种基于互补环缝谐振器抑制SSN的新方法
工程车辆油气悬架参数化建模与幅频特性分析