《2022年遗传算法数字滤波器设计方案与仿真》由会员分享,可在线阅读,更多相关《2022年遗传算法数字滤波器设计方案与仿真(30页珍藏版)》请在金锄头文库上搜索。
1、个人资料整理仅限学习使用电路优化设计姓名:王邦均学号: 2018020698 学院:信息科学与技术学院任课教师:李老师精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 30 页个人资料整理仅限学习使用第一章数字滤波器1.1 数字滤波器的简介数字滤波器一词出现在60 年代中期。由于电子计算机技术和大规模集成电路的发展,数字滤波器已可用计算机软件实现,也可用大规模集成数字硬件实时实现。滤波器是指用来对输入信号进行滤波的硬件和软件。所谓数字滤波器是一个离散时间系统,按预定的算法,将输入离散时间信号转换为所要求的输出离散时间信号的特定功能的装置。
2、也可以说成是通过一定运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的器件。数字滤波器和模拟滤波器相比,因为信号的形式和实现滤波的方法不同,数字滤波器具有比模拟滤波器精度高、稳定、不要求阻抗匹配等特点。应用数字滤波器处理模拟信号时,首先须对输入模拟信号进行限带、抽样和模数转换。数字滤波器输入信号的抽样率应大于被处理信号带宽的两倍,其频率响应具有以抽样频率为间隔的周期重复特性,且以折叠频率即12 抽样频率点呈镜像对称。为得到模拟信号,数字滤波器处理的输出数字信号须经数模转换、平滑。一般用两种方法来实现数字滤波器:一是采用通用计算机,把滤波器所要完成的运算编程通过计算机来执行,也就是
3、采用计算机软件来实现;二是设计专用的数字处理硬件。1.2 数字滤波器的分类从数字滤波器功能上分类:可分为低通滤波器、高通滤波器、带通滤波器、带阻滤波器。按数字滤波器所处理信号的维数分为一维、二维或多维数字滤波器。一维数字滤波器处理的信号为单变量函数序列,例如时间函数的抽样值。二维或多维数字滤波器处理的信号为两个或多个变量函数序列。例如,二维图像离散信号是平面坐标上的抽样值。根据数字滤波器的实现方法和型式分为三类:递归性数字滤波器,利用递归法实现的输出序列决定于现时的输入序列和过去任意数目的输入与输出序列值;非递归型数字滤波器,应用非递归或直接卷积的实现方法,使现在的输出序列仅是现在和过去的输入
4、序列的函数;快速傅里叶变换=h(n=-y(n-i 滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR 滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。有限长单位冲激响应FIR)滤波器有以下特点:在有限个 n 值处不为零;在|z|0 处收敛,极点全部在z = 0 处因果系统);3)结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中数字滤波器,又名“无限脉冲响应数字滤波器”,或“递归滤波器”。递归滤波器,也就是IIR数字滤波器,顾名思义,具有反馈
5、,一般认为具有无限的脉冲响应。IIR 滤波器有以下几个特点:1)封闭函数IIR 数字滤波器的系统函数可以写成封闭函数的形式。2)IIR 数字滤波器采用递归型结构IIR 数字滤波器采用递归型结构,即结构上带有反馈环路。IIR 滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。3)借助成熟的模拟滤波器的成果IIR 数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要
6、求不高。在设计一个IIR 数字滤波器时,我们根据指标先写出模拟滤波器的公式,然精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 30 页个人资料整理仅限学习使用后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。4)需加相位校准网络IIR 数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。FIR 数字滤波器与 IIR 数字滤波器的区别:1)单位响应IIR 数字滤波器单位响应为无限脉冲序列,而FIR 数字滤波器单位响应为有限的;FIR 滤波器,也就是“非递归滤波器”,没有引入反馈。这种滤波器的脉冲响应是有限的。2)幅
7、频特性IIR 数字滤波器幅频特性精度很高,不是线性相位的,可以应用于对相位信息不敏感的音频信号上; FIR 数字滤波器的幅频特性精度较之于IIR 数字滤波器低,但是线性相位,就是不同频率分量的信号经过FIR 滤波器后他们的时间差不变,这是很好的性质。一般为复函数,所以通常表示为 H(ejw=|H(ejw|e (2-1其中, |H(ejw| 称为幅频特性函数,w)称为相频特性函数。幅频特性表示信号通过该滤波器后各频率成分的衰减情况,而相频特性反映各频率通过滤波器后在时间上的延时情况。一般来说,对于IIR滤波器,相频特性不做要求,而对于有线相位要求的滤波器,一般采用FIR 滤波器来实现。图 2.1
8、-1 低通滤波器的幅值特性图 2.1-1 为低通滤波器的幅值特性,和分别称为通带截止频率和阻带截止频率 。通 带 频 率 范 围为, 在通 带 中 要 求, 阻 带 频 率范 围为,在阻带中要求,从至称为过渡带。通带内所允许的最大衰减 分别为和,分别定义为: (2-2 一般要求:当时, (2-3 当时,2.1.2 数字滤波器的设计方法通过卷积 (convolution来实现的 FIR 滤波器,主要包含有窗口设计法和频率采样法);通过递归 (recursion来实现的 IIR 滤波器,主要包含:脉冲响应不变法和双线性变换法。FIR 滤波器的窗口设计方法主旨是,从时域出发用FIR 滤波器的频率响应
9、来逼近理精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 30 页个人资料整理仅限学习使用 2-4)想的, 用有限长的来逼近无限长的, 最直接的方法是用一个长度为N的窗口函数来截取, 即:;它的频率采样法从频域出发,对理想的频率响应加以等间隔采样。它的最优化设计则是将所有的采样值皆作为变量,以获取最优结果。常用准则是均方误差最小准则和最大误差最小化准则。IIR 滤波器通常的设计方法有两种:先设计一个合适的模拟滤波器,然后变换成满足预定指标的数字滤波器。这种方法很方便,由于模拟的网络综合理论已发展成熟,产生了很多高效率的设计方法,不再受局限
10、;另外即是最优化设计方法,首先确定一种最优准则,然后求此准则下的滤波器的系数ai和 bi,这种设计不需要通过模拟滤波器这一中间环节,也称为直接法。2.2FIR 数字滤波器的典型方法设计最早的 FIR 数字滤波器的设计方法大致分为四类:窗口法、频率采样法、频率变换法、最佳滤波器设计方法。窗口法计算简单,但不易给出好的设计结果。特别是不能很很好地折中过渡带和幅频响应误差之间的矛盾。在其他三种方法基础上发展起来的 FIR 数字滤波器设计方法大致有以下几种: 1)切比雪夫意义下的最佳一致逼近及其改进方法; 2)以 Parks-McClellan理论和 Remez算法为基础的方法; 3)最小二乘法和梯度
11、下降法; 4)改进的频率采样法和非均匀频率采样法。下面简要介绍一下频率采样法:频率采样技术是基于频率采样理论的一种设计方法。一个任意长的序列,对它的频谱进行 N 等分间隔抽样,利用离散傅里叶反变换,可以得到一个N 点有限长序列。这个有限长序列是原序列以N 为周期的周期序列的主值序列,它是原序列的近似,因而它的频率特性也将逼近原序列所对应的频率特性。对于一个理想频响,其对应的单位抽样响应是,对在单位圆上作N 等分间隔抽样得到N 个频率采样值, 2-4)然后以此作为实际 FIR 滤波器的频率特性的抽样值,即令=,0,1, N-1 由可求出滤波器的系统函数和频率响应=z=也可将写成)2-8)2-9)
12、其中是内插函数 式,化简后得 (2-11 给定理想低通滤波器,对在 0 到 2上的 N 个等间隔频率上抽样,通过对样本的内插,得到实际响应。分析实际响应与理想之间的误差,有如下结论:1)在抽样频率上的逼近误差为零;2)其余频率上的逼近误差取决于理想响应的形状,理想响应的轮廓越陡,则逼近误差越大;3)靠近边缘频率的误差较大,带内的的误差较小。频率采样技术目前有两种设计方法,第一种是对逼近误差不加任何限制,称之为朴素设计法。第二种方法则通过改变过渡带的样本值,努力使阻带中的误差最小化,称之为最优化方法。本论文中的基于遗传算法的设计方法就是最优化设计方法之一。2.3IIR数字滤波器的典型方法设计首先
13、说明一下变换与连续信号的拉普拉斯变换、傅里叶变换的关系:平面和平面的映射关系 )如下: 2-12)平面用直角坐标表示 2-13)平面用极坐标表示 2-精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 30 页个人资料整理仅限学习使用14)即:=, 2-14)因而, 2-16)1)与的关系: 平面虚轴)对应于平面单位圆上); 的左半平面)对应于平面单位圆内部); 的右半平面)对应于平面单位圆外部)。2)与的关系: 平面实轴)对应于平面正实轴)常数) 平面平行于实轴的直线)对应于平面始于原点辐角为的辐射线)。由增长到,对应于由增长到,即平面为
14、的 一个 水 平 条 带 相 当 于平 面 辐 角 转 了 一 周 ,因 此每 增 加 一 个 抽 样角 频 率,则相应的增加一个。通过的映射为纽带,可得: 2-17)由于傅里叶变换是拉普拉斯变换在虚轴的特例,即:,因而 2-18)利用模拟滤波器设计IIR 数字滤波器的设计步骤如下: 1)将给定的而数字滤波器的性能指标,按某一变换映射)规则转换成响应的模拟滤波器的性能指标。 2)如果要设计的不是数字低通滤波器,则还需将步骤1)中变换所得到的相应的高通、带通、带阻)模拟滤波器性能指标变换成模拟滤波器的性能指标,这是因为只有模拟低通滤波器才有图形和表格可以利用。 3)用所得到得模拟低通滤波器的性能
15、指标,利用某种模拟滤波器的逼近方法,设计查表求得此模拟低通滤波器的系统函数,以它作为设计数字滤波器的“样本”。 4)利用 1)、2)中的同一变换规则,将此作为“样本”的模拟原型低通滤波器的系统函数,最终变换成所需的而数字各型滤波器的系统函数。其实,利用模拟滤波器来设计数字滤波器,就是要把s 平面映射到 z 平面,使模拟系统函数变换成所需的数字滤波器的系统函数,这种由复变量s 到复变量 z 之间的的映射 变换)关系,必须满足两条基本要求:1)的频率响应要能模仿的频率响应,即s 平面的虚轴必须映射到z 平面的单位圆上,也就是精选学习资料 - - - - - - - - - 名师归纳总结 - - -
16、 - - - -第 8 页,共 30 页个人资料整理仅限学习使用频率轴要对应。 2)因果稳定的应能映射成因果稳定的。也就是 s 平面的左半平面 Res0 必须映射到 z 平面单位圆的内部 |z| 如果令是的拉普拉斯变换,为的变换,利用抽样序列的变换与模拟信号的拉普拉斯变换的关系,即 同样,阶跃响应不变法是使数字滤波器阶跃响应序列模仿模拟滤波器的阶跃响应。将模拟滤波器的阶跃响应加以等间隔的抽样,使正好等于的抽样值。即分别满足:=和,其中T 为抽样周期。冲激响应不变法与阶跃响应不变法是使数字滤波器在时域上模仿模拟滤波器但是它们的缺点是产生频率响应的混叠失真,这是因为从s 平面到 z 平面是多值的映
17、射关系所造成的。双线性变换法就可以克服这一缺点。双线性变换法是使数字滤波器与模拟滤波器的频率响应相似的一种变换方法,为了克服多值映射这一缺点,我们首先把整个s 平面压缩变换到某一中介的平面的一条横带里 宽度为, 即从到),然后再通过标准变换关系将此横带变换到整个 z 平面上去,这样就使s 平面与 z 平面一一对应的关系, 2-21) 2-22)因此,消除了多值变换性由此就消除了频谱混叠现象。下面来介绍下模拟滤波器的数字化方法:设模拟滤波器的系统函数只有单个极点,且假定分母的阶次大于分子的阶次一般都满足这一要求,因为只有这样才相当于一个稳定的模拟系统)。因此可将精选学习资料 - - - - -
18、- - - - 名师归纳总结 - - - - - - -第 9 页,共 30 页个人资料整理仅限学习使用展开称部分分式表达式: 2-23)其相应的冲激响应是的拉普拉斯反变换,即:则: 2-24)其中是连续时间的单位阶跃函数。在冲激响应不变法中,要求数字滤波器的单位抽样响应等于的抽样,即: 2-24)对求变换,即得数字滤波器的系统函数 2-26)或者直接根据求出,其中。 2-27)精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 30 页个人资料整理仅限学习使用第三章遗传算法3.1 遗传算法的概述3.1.1 遗传算法的产生与发展遗传算法
19、GeneticAlgorithm)是一类借鉴生物界的进化规律适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法。它是由美国的J.Holland教授 1974年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。随后经过 20 余年的发展,取得了丰硕的应用成果和理论研究的进展,无论是理论研究还是应用研究都成了十分热门的课题。尤其是遗传算法的应用研究显得格外活跃,不但它的应用领域扩大,而且利用遗传算法进行优化和规则学习的能力也显著提高,同时
20、产业应用方面的研究也在摸索之中。此外一些新的理论和方法在应用研究中亦得到了迅速的发展,这些无疑均给遗传算法增添了新的活力。遗传算法的应用研究已从初期的组合优化求解扩展到了许多更新、更工程化的应用方面。特别是近年来世界范围形成的进化计算热潮,包括组合优化、机器学习、信号处理、自适应控制和人工生命等领域。随着应用领域的扩展,遗传算法的研究出现了几个引人注目的新动向:1)基于遗传算法的机器学习。这一新的研究课题把遗传算法从历来离散的搜索空间优化的搜索算法扩展到具有独特规则的崭新的机器学习算法。这一新的学习机制对于解决人工智能中知识获取和知识优化精炼的瓶颈难题带来了希望。2)遗传算法正日益和神经网络、
21、模糊推理以及混沌理论等其它智能计算方法相互渗透和结合。这对开拓21 世纪中新的智能计算技术将具有重要的意义。3)并行处理的遗传算法的研究十分活跃。这一研究不仅对遗传算法本身的发展,而且对于新一代智能计算机体系结构的研究都是十分重要的。4)遗传算法和另一个称为人工生命的崭新研究领域正不断渗透。所谓人工生命即是用计算机模拟自然界丰富多彩的生命现象,其中生物的自适应、进化和免疫等现象是人工生命的重要研究对象,而遗传算法在这方面将发挥一定的作用。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 30 页个人资料整理仅限学习使用4)遗传算法和进化
22、规划Evolution Programming 简称EP)以及进化策略Evolution Strategy简称 ES )等进化计算理论日益结合。EP和 ES 几乎是和遗传算法同时独立发展起来的,同遗传算法一样,它们也是模拟自然界生物进化机制的智能计算方法,即同遗传算法具有相同之处,也有各自的特点。目前,这三者之间的比较研究和彼此结合的探讨正形成热点。3.1.2 遗传算法的概述遗传算法是从代表问题可能潜在的解集的一个种群开始的,而一个种群则由一定数量的经过了基因编码的个体组成。每个个体实际上是染色体带有特征的实体。染色体作为遗传物质的主要载体,即多个基因的集合,其内部表现为某种基因组合即基因型)
23、,它决定了个体形状的外部表现,如黑头发的特征是由染色体中控制这一特征的某种基因组合决定的。因此,在一开始需要实现从表现型到基因型的映射,即编码工作。由于仿照基因编码的工作很复杂,我们往往将其简化,如二进制编码,初代种群产生之后,按照适者生存和优胜劣汰的原理,逐代演化产生出越来越好的近似解,在每一代,根据问题域中个体的适应度大小选择个体,并借助于自然遗传学的遗传算子进行组合交叉和变异,产生出代表新的解集的种群。这个过程将导致种群像自然进化一样的后生代种群比前代更加适应于环境,末代种群中的最优个体经过解码,可以作为问题近似最优解。3.1.3 遗传算法的特点遗传算法是解决搜索问题的一种通用算法,对于
24、各种通用问题都可以使用。搜索算法的共同特征为:首先组成一组候选解;依据某些适应性条件测算这些候选解的适应度;根据适应度保留某些候选解,放弃其他候选解;对保留的候选解进行某些操作,生成新的候选解。遗传算法还具有以下几方面的特点:1)遗传算法从问题解的串集开始嫂索,而不是从单个解开始。这是遗传算法与传统优化算法的极大区别。传统优化算法是从单个初始值迭代求最优解的;容易误入局部最优解。遗传算法从串集开始搜索,覆盖面大,利于全局择优。2)许多传统搜索算法都是单点搜索算法,容易陷入局部的最优解。遗传算法同时处理群体中的多个个体,即对搜索空间中的多个解进行评估,减少了陷入局部最优解的风险,同时算法本身易于
25、实现并行化。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 30 页个人资料整理仅限学习使用3)遗传算法基本上不用搜索空间的知识或其它辅助信息,而仅用适应度函数值来评估个体,在此基础上进行遗传操作。适应度函数不仅不受连续可微的约束,而且其定义域可以任意设定。这一特点使得遗传算法的应用范围大大扩展。4)遗传算法不是采用确定性规则,而是采用概率的变迁规则来指导他的搜索方向。4)具有自组织、自适应和自学习性。遗传算法利用进化过程获得的信息自行组织搜索时,硬度大的个体具有较高的生存概率并获得更适应环境的基因结构。3.1.4 遗传算法的应用由于
26、遗传算法的整体搜索策略和优化搜索方法在计算是不依赖于梯度信息或其它辅助知识,而只需要影响搜索方向的目标函数和相应的适应度函数,所以遗传算法提供了一种求解复杂系统问题的通用框架,它不依赖于问题的具体领域,对问题的种类有很强的鲁棒性,所以广泛应用于许多科学,下面对遗传算法的一些主要应用领域做以介绍:1)在组合优化中的应用组合优化问题是遗传算法最基本也是最重要的应用领域。所谓组合优化问题是指在离散的、有限的数学结构上,寻找一个满足给定约束条件并使其目标函数达到最大或最小的解。在日常生活中,特别是在工程设计中,有许多这样的问题。最典型的是巡回旅行商问题和背包问题。2)在生产调度问题中的应用在很多情况下
27、,生产调度问题建立起来的数学模型难以精确求解,即使经过一些简化之后可以进行求解,也会因简化得太多而使得求解结果与实际相差甚远。目前,在现实生产中,主要是靠一些经验来进行调度。现在遗传算法已成为解决复杂调度问题的有效工具,在单件生产车间调度、在流水线生产调度、任务分配等方面遗传算法都得到了有效的应用。3)在自动控制中的应用在自动控制领域中,有很多与优化相关的问题需要求解。例如,遗传算法进行航空控制系统的优化、设计空间交会控制器等都显示出在这些领域中应用的可能性。4)在图象处理中的应用图象处理是计算机视觉中的一个重要研究领域,如目前已在模式识别包括汉字识别)、图像恢复、图像边缘特征提取等方面得到了
28、应用。 4)在机器学习领域中的应用基于遗传算法的机器学习是当前遗传算法应用研究的热点,特别是分类器系统,在很多领域中得到了应用。Holland的分类器系统是基于遗传算法及其学习的精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 30 页个人资料整理仅限学习使用一个典型例子,遗传算法部分的主要任务是产生新的分类器,如获取规则集合以预测公司的利润。 Brooker 等对分类器系统和遗传算法进行了更详细的评述。 6)在数据挖掘中的应用数据挖掘是近几年出现的数据库技术,它能够从大型数据库中提取隐含、未知、有潜力、有应用价值的知识和规则。许多数据
29、挖掘问题可看成是搜索问题,数据库可看作是搜索空间,挖掘算法看作是搜索策略。因此,应用遗传算法在数据库中搜索,对随机产生的一组规则进化,直到数据库能被该组规则覆盖,从而挖掘出隐含在数据库中的规则。Sunil已成功地开发了一个基于遗传算法的数据挖掘工具,利用该工具对两个飞机失事数据库进行了数据挖掘实验,结果表明遗传算法是进行数据挖掘的有效方法之一。3.2 遗传算法基本流程操作图 3.2-1 解决实际问题时遗传算法流程图1)编码:是因为遗传算法不能直接处理空间的参数,必须把它们转换成遗传空间的由基因按一定结构组成的染色体或个体。2)初始种群的选取:初始群体中的个体是随机产生的,但遵循两种策略:根据问
30、题固有知识,设法把握最优解所占空间在整个问题空间中的分布范围,然后,在此分布范围内设定初始群体。先随机生成一定数目的个体,然后从中挑出最好的个体精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 30 页个人资料整理仅限学习使用加到初始群体中。这种过程不断迭代,直到初始群体中个体数达到了预先确定的规模。3)收敛准则:由适应度函数决定,适应度函数是表示某一个体对环境的适应能力,也表示该个体繁殖后代的能力。它也被称作评价函数,是用来判断群体智能个的个体的优略程度的指标,它是根据所求问题的目标函数来进行评估的。施加一定的操作,从而实现优胜劣汰的
31、进化过程。从优化搜索的角度而言,遗传操作可使问题的解,一代又一代地优化,并逼进最优解。遗传操作包括以下三个基本遗传算子(genetic operator:选择 (selection;交叉 (crossover;变异 (mutation。这三个遗传算子有如下特点: 个体遗传算子的操作都是在随机扰动情况下进行的。因此,群体中个体向最优解迁移的规则是随机的。需要强调的是,这种随机化操作和传统的随机搜索方法是有区别的。遗传操作进行的高效有向的搜索而不是如一般随机搜索方法所进行的无向搜索。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 30 页
32、个人资料整理仅限学习使用图 3.2-2 遗传过程(1 选择从群体中选择优胜的个体,淘汰劣质个体的操作叫选择。选择算子有时又称为再生算子 (reproduction operator。选择的目的是把优化的个体( 或解 直接遗传到下一代或通过配对交叉产生新的个体再遗传到下一代。选择操作是建立在群体中个体的适应度评估基础上的,目前常用的选择算子有以下几种: 适应度比例方法、随机遍历抽样法、局部选择法、局部选择法。其中轮盘赌选择法 交叉在自然界生物进化过程中起核心作用的是生物遗传基因的重组( 加上变异 。同样,遗传算法中起核心作用的是遗传操作的交叉算子。所谓交叉是指把两个父代个体的部分结构加以替换重组
33、而生成新个体的操作。通过交叉,遗传算法的搜索能力得以飞跃提高。交叉算子根据交叉率将种群中的两个个体随机地交换某些基因,能够产生新的基因组合,期望将有益基因组合在一起。根据编码表示方法的不同,可以有以下的算法:a实值重组 离散重组 中间重组 线性重组 扩展线性重组 二进制交叉 单点交叉 多点交叉 均匀交叉 洗牌交叉 缩小代理交叉 。具体操作是 : 在个体串中随机设定一个交叉点,实行交叉时,该点前或后的两个个体的部分结构进行互换,并生成两个新个体。下面给出了单点交叉的一个例子:个体 A:1 0 0 1 1 1 1 1 0 0 1 0 0 0 新个体个体 B:0 0 1 1 0 0 0 0 0 1
34、1 1 1 1 新个体(3 变异变异算子的基本内容是对群体中的个体串的某些基因座上的基因值作变动。依据个体编码表示方法的不同,可以有以下的算法:a实值变异;b二进制变异。一般来说,变异算子操作的基本步骤如下: a对群中所有个体以事先设定的编译概率判断是否进行变异;b对进行变异的个体随机选择变异位进行变异。遗传算法导引入变异的目的有两个: 一是使遗传算法具有局部的随机搜索能力。当遗传算法通过交叉算子已接近最优解邻域时,利用变异算子的这种局部随机搜索能力可以加速向最优解收敛。显然,此种情况下的变异概率应取较小值,否则接近最优解的积木块会因变异而遭到破坏。二是使遗传算法可维持群体多样性,以防止出现未
35、成熟收敛现象。此时收敛概率应取较大值。遗传算法中,交叉算子因其全局搜索能力而作为主要算子,变异算子因其局部搜索能力而作为辅助算子。遗传算法通过交叉和变异这对相互配合又相互竞争的操作而使其具备兼顾全局和局部的均衡搜索能力。所谓相互配合. 是指当群体在进化中陷于搜索空间中某个超平面而仅靠交叉不能摆脱时,通过变异操作可有助于这种摆脱。所谓相互竞争,是指当通过交叉已形成所期望的积木块时,变异操作有可能破坏这些积木块。如何有效地配合使用交叉和变异操作,是目前遗传算法的一个重要研究内容。基本变异算子是指对群体中的个体码串随机挑选一个或多个基因座并对这些基因座的基因值做变动( 以变异概率 P. 做变动 ,(
36、0 ,1二值码串中的基本变异操作如下: 如图 3.2-3 ,基因位下方标有号的基因发生变异。图 3.2-3 变异图解变异率的选取一般受种群大小、染色体长度等因素的影响,通常选取很小的值,一般取 0.001 0.1 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 17 页,共 30 页个人资料整理仅限学习使用(4 终止条件当最优个体的适应度达到给定的阀值,或者最优个体的适应度和群体适应度不再上升时,或者迭代次数达到预设的代数时,算法终止。预设的代数一般设置为100-400 代。遗传操作的效果和上述三个遗传算子所取的操作概率,编码方法,群体大小,初始
37、群体以及适应度函数的设定密切相关。遗传算法的方法简单归纳,即为:创建一个随机的初始状态,评价适应度、繁殖、下一代、并列计算等。第四章基于遗传算法的数字滤波器的设计与仿真4.1Matlab 软件的概述Matlab 是由美国 mathworks 公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言 , 为用户提供了大量方便实用的处理工具。Ma
38、tlab 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱 2)第二类:理想的零相位FIR 滤波器的幅频特性对于成奇对称,且在此处精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 18 页,共 30 页个人资料整理仅限学习使用幅频特性不为零,对于成偶对称,高通滤波器和带阻滤波器不能用这种滤波器。,N为偶数, (4-2 3)第三类:理想的零相位FIR 滤波器的幅频特性对于=0皆成奇对称,且=0处,幅频特性都为零。,N为奇数, (4-3 4)第四类:理想的零相位FIR 滤波器的
39、幅频特性对于成奇对称,对于成偶对称,且处,幅频特性都为零。,N 为偶数, (4-4 例:用频率采样法设计一个FIR 带通滤波器,技术指标:低阻带边缘频率,低通带边缘频率,通带边缘频率为,高阻带边缘频率,通带最大波动,阻带最小衰减, 采样点数 N=40 。解:首先取采样点数N=40 ,在范围内等间隔采样,采样间隔为, 4-4)设过渡中的值用来表示,则 式中 k 取整。所以, 4-8)由此,可得到频域的N 个采样点的值,=,由公式 3-11)计算出频率响应: 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 19 页,共 30 页个人资料整理仅限学习使用
40、又:4-9)本文就是利用遗传算法寻找合适的过渡带采样值,以使阻带最小衰减取的最大值。遗传算法的具体步骤如下:1)估计参数, 对进行编码;2)初始化种群,假设群体规模染色体)为S,即每代中的个体也是估计参数的个数,为遗传算法的代数,为变异概率,为交叉概率,在遗传算法的每代中,对第个估计参数译码得到一个,并计算出对应的阻带最小衰减,通过下式计算出该估计参数的适应度,即: 4-10)越大说明此最小衰减适应度越大,被保留的可能性越大,否则就会被优解淘汰;3)选择策略,根据达尔文适者生存的进化原理,群体中各个个体为生存而相互争斗,其中适应度高的个体生存下来,而适应度低的个体被淘汰。在这个问题中,我们采用
41、的竞争生存策略是:轮盘赌选择法。这种方法的思路和赌场里面使用的轮盘是一样的,也就是说,转到某一个数据那里出现的概率是相同的。根据你的需要设定轮盘的格子数量,然后随机转动轮盘,可以用随机数来决定是哪一个格。个体的适应度按比例转化成选中概率。表4.2-1 表示了11 个个体适应度、选择概率和累积概率。为了选择个体,需要进行多轮选择。每一轮产生一个 0,1均匀随机数,将该随机数作为选择指针来确定被选个体。如图4.2-1 所示,若第一轮随机数为0.81,则第六个个体被选中,第二轮随机数为0.32,则第二个个体被选中,以此类推,若第3,4,4,6 的随机数分别为0.96,0.01,0.64,0.42 ,
42、则第 9,1,4,3个个体依次被选中。这样经过选择产生的种群有以下个体组成:1,2,3,4,6,9。表 4.2-1 轮盘赌选择法的选择概率计算个体1 2 3 4 4 6 7 8 9 10 11 适应度2.0 1.8 1.6 1.4 1.2 1.0 0.8 0.6 0.4 0.2 0.1 选择概率0.18 0.16 0.14 0.13 0.11 0.09 0.07 0.06 0.03 0.02 0.0 累积概率0.18 0.34 0.49 0.62 0.73 0.82 0.89 0.94 0.98 1.00 1.00 精选学习资料 - - - - - - - - - 名师归纳总结 - - - -
43、 - - -第 20 页,共 30 页个人资料整理仅限学习使用图 4.2-1 轮盘赌选择法按照轮盘赌选择法进行选择操作。计算每个染色体的适度,根据适应度求出第个染色体的累积概率,= 4-11)在 0,1 内 产 生S 个 均 匀 分 布 的 随 机 数,若, 则 染 色 体被 选 中 ; 若,则染色体被选中,从而生成新的种群; 4)交叉操作,以概率选出待配对的个体,当选出的待配对个体是奇数时,自动抛弃最后一个,使待交叉的个体永远是偶数,然后取邻近个体配对,随机产生一个交叉点,在这个交叉点处,实现配对个体的交叉操作;4)变异操作,以概率进行变异操作,设待变异的种群规模S 与每个染色体的编码位数的
44、乘积为n,n 为种群中的基因总个数,生成n 个0,1 之间的随机数,找到这些随机数中小于变异概率的随机数的位置,此位置就是需要变异的染色体的基因在整个种群中的位置,然后对这些基因进行变异操作;6)如果,那么结束算法,否则转至步骤2)。4.2.2 基于遗传算法的FIR 数字滤波器的仿真结果/2。wl=(2*pi/N 。 % 抽样间隔k=0:N-1。T1=0.4。% 查表法得到的过渡值k1=0:floor(N-1/2 。k2=floor(N-1/2+1:N-1 。angH=pi/2-al*(2*pi/N*(k1+0.4,-pi/2+al*(2*pi/N*(N-k2-0.4。wdl=00.3 0.3
45、 0.7 0.7 1。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 21 页,共 30 页个人资料整理仅限学习使用Hrs=zeros(1,4,T1,ones(1,9,T1,zeros(1,9,T1,ones(1,9,T1,zeros(1,4 。Hdk=Hrs.*exp(j*angH 。 % 构成 Hd(kh1=ifft(Hdk,N 。% 傅里叶反变换n=0:1:N-1。h=real(h1.*exp(j*pi*n/N 。 %实际单位脉冲响应db,mag,pha,w=freqz_m2(h,1。plot(w/pi,db;title(频谱特性 。xlab
46、el(频率。ylabel(衰减(dB。axis(0 1 -80 10 grid。图 4.2-2 本例题一般算法的仿真结果T1=0.4,) 通过比较图 4.2-2 和图 4.2-3 仿真结果表明,使用遗传算法得到的滤波器幅度响应曲线明显优于查表法,且寻找到了合适的过渡带采样值,取得更大的阻带最小衰减。而且一般算法的最小衰减险些不满足题目要求。但作为遗传算法因其随机性较大,每次执行结果均有变化,在选取最佳的仿真结果这方面有待发展。4.3 基于遗传算法的 IIR 数字滤波器的设计与仿真4.3.1 基于遗传算法的IIR 数字滤波器的设计IIR 数字滤波器的系统函数可表示为: 4-12 )滤波器的频率响
47、应特性为: 4-13)若设 IIR 滤波器的理想幅频响应为,则 IIR 滤波器频域最小均方差优化设计就是要求在离散频率点上,使所涉及的滤波器的幅频响应与给定的幅频响应的均方误差4-14)为最小,即:4-14)从此可以看出,目标函数E 是增益和滤波器系数的非线性函数。由于共有N 个二阶节,因此E是有4n+1)个未知数的函数。设向量为: 4-16)它表示除以外的其余 4N 个优化变量,这样E 可表示为和的函数,即:4-17)精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 23 页,共 30 页个人资料整理仅限学习使用所以应用遗传算法我们可以首先推导出最
48、佳增益的解读表达式,然后用遗传算法求解滤波器系数。增益的计算,根据公式 4-12)对求偏导并令其为零,则有4-18)因此求出最佳增益为:4-19)由于只考虑幅度误差,所以的正负对结果没有影响。参数区间的确定,为了应用遗传算法,滤波器的每个参数都要用一个有限长的二进制字符串进行编码。因此为了提高参数表示精度,应给出尽可能小的取值范围。由公式若在此范围内,优化结果仍出现了使滤波器不稳定的极点,那么可用其倒数代替该极点,这样可在不改变幅频响应的前提下,保证得到稳定的滤波器。此外,若要求滤波器同时具有最小相移特性,对可做与相同的处理。下面应用例子做以详细解释:例:试设计一个数字低通巴特沃思滤波器。要求
49、通带截止频率,通带最大衰减,阻带起始频率,阻带最小衰减,采样频率。解: 将性能指标带入此表达式,可得 (4-22 由此联立求解,得出 (4-23 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 24 页,共 30 页个人资料整理仅限学习使用因而解出所需滤波器阶数N为 (4-24 取大于此数的整数N=4。 可得系统的 4 个极点为 (4-26 将共轭极点组合起来,可得4-29)实际上,在求出N=4 后,不必求出极点,只要查表即可得到归一化的4 阶巴特沃斯模拟低通滤波器的系统函数为 4-30)在 此 归 一 化 模 拟 低 通 滤 波 器 中 , 用代
50、 替 其 中 的s , 实 际 上 就 是 利 用,即可得到与上述一致的系统函数。4)求数字低通滤波器的系统函数。根据公式 3-26),或者根据公式 3-27),其中来计算。若用遗传算法,由于,则理想低通滤波器的截止频率,阻带起始频率为,设计理想低通滤波器的技术指标如下:精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 25 页,共 30 页个人资料整理仅限学习使用 4-31)遗传算法参数的选择:由于滤波器的阶数为4,则遗传算法中 N=2;初始化种群,假设群体规模 染色体)群体大小,交叉频率,变异概率,适应度的个体生存概率,最大世代数,滤波器参数的编
51、码长度,这样遗传算法中个体的编码长度为。应用遗传算法设计本例题的具体步骤如下:1)编码:为了用遗传算法求解公式4-17)中的非线性优化问题,我们应对优化变量进行适当编码,以形成遗传算法中的个体。设参数表示中的任意一个变量,其取值范围为:, 对该变量用 L 位二进制字符串进行编码,那么二者之间的对应关系为:根据上述方法,对式 4-17)中的向量的每个元素都进行L 位二进制字符串编码,于是向量变为如下二值向量:,其中4-32)这样,我们选择上式中的向量作为遗传算法中的个体。显然,它是对优化参数的二进制字符串编码,其中的第个到第个元素,就是对式 4-17)中优化变量的第 n个元素的编码。2)适应度函
52、数的选择:我们选择式4-14)作为遗传算法中的适应度函数。显然E 值越小,说明该个体对应的滤波器参数其均方误差就越小,那么,该个体就越适应环境。在遗传算法中使用的交叉算子、突变算子和竞争生存策略如上述描述。至此,我们就可以用式 4-19)中的表达式和遗传算法中的非线性优化问题,实现 IIR 数字滤波器的优化设计。下面给出用遗传算法设计IIR 数字滤波器的具体步骤:1)设定遗传算法中的参数,并由式4-20)决定的参数区间中随机初始化第0 代群体中的每个个体;2)由式 4-18)计算;对每个个体进行编码并由式4-17)计算每个个体的适应度;3)让群体中的个体进行生存争斗,优胜劣汰;精选学习资料 -
53、 - - - - - - - - 名师归纳总结 - - - - - - -第 26 页,共 30 页个人资料整理仅限学习使用4)对群体中的个体进行交叉和突变运算,以产生新的一代;4)重复 2)4)步,直至满足精度要求或达到预先设定的世代数;6 ) 对 适 应 度 最 高 的 个 体 编 码 , 从 而 求 出IIR数 字 滤 波 器 的 系 数。4.3.2 基于遗传算法的IIR 数字滤波器的仿真结果*tan(wp/2。 % Prewarp Prototype Passband freqomegas = (2*fs*tan(ws/2。 % Prewarp Prototype Stopband f
54、req% 设计巴特沃斯低通滤波器原型N = ceil(log10(10(Ap/10-1/(10(As/10-1/(2*log10(omegap/omegas 。omega0 = omegap/(10(Ap/10-1(1/(2*N。z,p,k = buttap(N。 % 获取零极点参数p = p*omega0。k = k*omega0N。B = real(poly(z。b0 = k。cs = k*B。ds = real(poly(p。b,a = bilinear(cs,ds,fs。 %双线性变换freqz(b,a,fs。 %绘制结果精选学习资料 - - - - - - - - - 名师归纳总结
55、- - - - - - -第 27 页,共 30 页个人资料整理仅限学习使用图 4.3-1 本例题一般算法的仿真结果:1-4.2 陈小平 , 于盛林 . 遗传算法在FIR 滤波器设计频率抽样法中的应用J. 电子学报 ,2000,10:1-4.3 王 军 伟 , 任 良 超 . 基 于 频 率 采 样 技 术 的FIR数 字 滤 波 器 的 优 化 设 计 J. 仪 器 仪 表 学报 ,2004,S2:23-30.4 黄猛 , 唐琳 , 甄玉 , 张杰 . 基于自适应遗传算法FIR 的数字滤波器的优化设计J. 现代电子技术 ,2018,313(2:1-4.4 唐艳 . 基于改进遗传算法的滤波器优
56、化设计J. 网络出版年期,2009,02(1:1-7. 6 姚建红 , 陈秋影 , 付强等 . 改进遗传算法在滤波器优化配置中的应用J. 化工自动化及仪表,2018,37 C. Wuxi, China: 2003.1202-1220.精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 29 页,共 30 页个人资料整理仅限学习使用12A new method for target detection in hyper spectral imagery based on extended morphological profilesC.China:2003. 3772 3774.s 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 30 页,共 30 页