基于反向学习的粒子群算法对线性相位低通FIR 滤波器的优化
2015-06-13吴志健周炫余
邵 鹏,吴志健,周炫余
(1.武汉大学 软件工程国家重点实验室,武汉430072;2.武汉大学 计算机学院,武汉430072)
0 引 言
数字滤波器是数字信号处理系统中的重要组成部分。根据脉冲响应的长度,数字滤波器可以分为无限冲激响应(IIR)型和有限冲激响应(FIR)型。IIR 型数字滤波器可利用模拟滤波器进行设计,实现方法简单,但由于其在相频特性控制上是非线性相位,应用范围狭窄。FIR 型滤波器的相位是严格线性的,并且FIR 结构是非递归的,因此不存在稳定性问题。由于FIR 具有的这些特点,其应用越来越多。因此,设计高性能的FIR 数字滤波器显得尤为重要。
传统FIR 数字滤波器的设计方法有窗函数法[1]和频率抽样法[2-3]。这些方法都是近似的逼近理想滤波器的频率特征。频率抽样法和窗函数法简单易行,但不易精确地确定其通带和阻带的边界频率,并且都只能收敛于局部最优。近年来,学者们提出了使用演化算法,如模拟退火法(Simulated annealing algorithm,SAA)[4-5]、遗传算法(Genetic algorithm,GA)[6-7]、粒子群优化算法(Particle swarm optimization,PSO)[8-11]等进行数字滤波器设计并取得了很好的效果。但SA 算法采用了随机策略,运算量大[4];GA 是一种全局优化算法,但采用了选择、交叉和变异等操作,运算量大、收敛速度慢[6];PSO 算法也是一种全局优化算法,具有参数少、实现简单、收敛速度快等优点[11],这对设计性能高的数字滤波器有很大的帮助。因此,本文将一种改进的粒子群算法应用于FIR 型数字滤波器的设计中,并通过仿真试验证明采用该算法所设计的滤波器有较好的滤波效果。