基于遗传算法的PID控制器参数优化与仿真研究
下图为智能化整定PID参数的原理框图。
智能优化算法 Kp Kd Ki PID控制器 被控 积分 对象 比例 r(t) y(t) 一 微分
图3-2 智能PID控制原理框图
Fig.3-2 The diagram of Intelligent PID control system
3.2.1 基于模糊控制的PID参数整定法
模糊 PID 控制是运用模糊控制的基本理论和方法,以系统误差e和误差变化率 ec
为输入,比例、积分、微分三个参数为输出,根据模糊规则进行模糊推理,实现 PID 参数的实时优化;在控制偏差较大时,也可直接对被控对象进行模糊控制。模糊 PID 控制具有鲁棒性强,动态性能好,可用于非线性系统等优点。但模糊 PID 控制需要对控制过程和控制规律有全面的先验知识,并将其提炼为模糊规则。此外,为了消除静差,提高系统稳态性能,通常需要加入一个积分环节进行改进[6]。
3.2.2 基于神经网络的PID参数整定法
在 PID 控制中要想取得理想的控制效果,就必须协调好比例、积分、微分三种控制作用,这种协调不是简单的对每种控制作用进行“线性组合”,而是使它们形成一种既互相配合又相互制约的复杂关系。基于神经网络的 PID 参数整定方法就是利用神经网络可进行任意非线性表达的能力,通过对神经网络加权系数和阈值的不断修正,在线优化比例、积分、微分三个参数,使系统的控制性能始终最优[7]。
3.2.3 基于遗传算法的 PID 参数整定法
PID 参数整定问题的实质是多参量的组合优化,遗传算法作为一种具备全局优化能力
10
辽宁工程技术大学毕业设计(论文)
的随机算法,正是解决这类问题的有效手段。遗传算法是基于自然选择学说和遗传学机理的随机搜索方法,模拟了自然选择、繁殖、遗传和变异等生物学原理。遗传算法无需任何先验知识,只通过适应度函数决定寻优方向,且适应度函数不受连续可微的约束,这一特点使遗传算法具有广阔的应用空间,尤其是在复杂非线性系统的应用。此外,遗传算法还是一种并行搜索算法,这提高了算法的搜索效率。但是遗传算法存在容易陷入局部最优的问题,往往需要融合其他机制或算法加以改进[8]。
3.2.4 基于免疫算法的 PID 参数整定法
针对遗传算法在求解优化问题时易陷入局部最优,出现种群早熟现象的问题,许多学者开始将基于免疫网络学说而提出的免疫算法用于 PID 参数的优化。免疫算法是抽取和反映生物机体免疫系统的反应机制,结合工程应用而描述的一种计算方法。它将优化问题对应于抗原,可行解对应于抗体,以随机生成的初始解群为起始点,循环执行免疫操作,逐步逼近最优解。免疫算法中的选择复制操作由抗体适应度和抗体浓度共同决定,增强了抗体群保持多样性的能力很大程度上克服了遗传算法的早熟现象[9]。
本设计就是选用了基于遗传算法的PID参数整定方法,用遗传算法这一进化算法,来针对不同系统,确定PID控制器的参数。而基于遗传算法的PID参数整定有离线整定和在线整定两种
[10]
。
遗传算法 对象辨识 r(t) e(t) PID控制器 被控对象 y(t) 一
图3-3 离线整定结构框图 Fig.3-3 Off-line setting structure diagram
离线整定是在得到控制对象数学模型的情况下,然后遗传算法通过用计算机模拟系统计算个体适应度进行离线优化,搜索完毕后用得到的最优参数按照PID控制算法计算出控制量输出给实际的控制系统。离线调节需要辨识得到被控对象的数学模型。
11
基于遗传算法的PID控制器参数优化与仿真研究
在线整定是根据系统的实际输出与设定值偏差在线计算个体适应度。由于在优化过程中个体适应度评价一般包含了偏差的积分,这是一个较为耗时的过程,特别是后者,往往需要很长时间。
遗传算法 适应度计算 r(t) e(t) PID控制器 被控对象 y(t) 一
图3-4 在线整定结构框图 Fig.3-4 Online setting structure diagram
离线整定与在线整定相比较来说更具有实际意义,本文就采用离线整定方法,在辨识被控对象模型的基础上,运用遗传算法对PID参数进行整定。目前一些专家学者都致力于分析研究基于遗传算法的PID控制器参数优化,对基于遗传算法的PID控制参数优化的理论研究和实际应用也非常广泛,很多参考文献都己经证实基于遗传算法的PID控制器参数优化整定优于传统的整定方法[11]。虽然使用遗传算法对HD控制器参数优化整定有一定的成效,但还有一些例如局部搜索能力不足等问题都还需要进一步的探讨研究。
12
辽宁工程技术大学毕业设计(论文)
4 遗传算法
遗传算法GA(Genetic Algorithms)是基于生物界遗传机制和生物进化理论的一种自适应概率性全局优化的随机搜索算法[12]。它最早由美国密执安大学的Holland教授提出,起源于60年代对自然和人工在适应系统的研究。70年代时De Jong基于遗传算法的思想在计算机上进行了大量的纯数值函数优化计算实验。在一系列研究工作的基础上,80年代有Goldberg进行归纳总结,形成了遗传算法的基本框架。
4.1 遗传算法的原理
应用遗传算法时首先对参数进行编码,生成一定数量的可能解,形成初始解群。其中每一个解可以是一维或多维矢量,以二进制数串或实数串表示,称染色体,染色体的每一位二进制数或每一个实数值称为基因。与生物一代一代的自然进化过程相类似,通过模拟达尔文的自然界中生物进化中的染色体复制、染色体交叉以及基因突变现象,根据目标适应度函数对后代评估,按照优胜略汰的规则将适应度较高的个体更多的遗传到下一代,适应度低的个体将逐渐被淘汰,重复不断获得更优的群体,直到满足收敛条件,最终将会得到优良的个体,它所对应的表现型将达到或接近问题的最优解[13]。
4.2 遗传算法的描述
基于对自然界中生物遗传和进化机理的模仿,针对不同问题,有许多不同的遗传算子来模仿不同环境的生物遗传特点。这样不同的编码方法和不同的遗传算子就构成了各种不同的遗传算法,但是都有共同点,即通过对生物遗传和进化过程中选择、交叉、变异机理进行模仿,来完成对问题最优解的自适应搜索过程[12]。
4.2.1 遗传算法有效性的理论基础
遗传算法有效性的理论依据为模式定理和积木块假设。模式定理保证了较优模式的样本呈指数级增长,从而满足了寻找最优解的必要条件,即遗传算法存在着寻找全局最优解的可能性。而积木块假设指出,遗传算法具备寻找到全局最优解的能力,即具有低阶、短距、高平均适应度的模式在遗传算子作用下,相互给合,能生成高阶、长距、高平均适应度的模式,最终生成全局最优解[14]。
4.2.2 遗传算法的基本内容
遗传算法主要是由染色体编码、适应度函数、遗传算子以及运行参数等要素组成[15]。 1)染色体编码
13
基于遗传算法的PID控制器参数优化与仿真研究
遗传算法利用一定的编码机制将研究对象编码成为由特定符号按一定顺序排列组成的系统,即把一个问题的可行解从其解空间转换到遗传算法所能处理的搜索空间的转换方法即称为编码。编码是应用遗传算法要解决的首要问题,也是使用遗传算法解决问题时的关键,因为编码的具体方法将决定种群中个体的染色体排列方式,还将决定种群个体的解码方法,并对选择算子、交叉算子和变异算子等遗传算子构成一定影响[16]。对染色体常见的编码方法主要有二进制编码、实数编码和符号编码等[12]。 a 二进制编码
二进制编码是比较常见的编码方式,它使用的编码符号集是由二进制符号0和1所组成的二值符号集{0,1},它所构成的个体基因型是一个二进制编码符号串。二进制编码符号串的长度与所求问题的求解精度有关。
设一参数的取值范围是[Umin,Umax],我们用长度为L的二进制编码符号来表示该参数,则精度为
而相应的解码公式为
??Umax?Umin2L?1 (4-1)
x?Umin?X(Umax?Umin)L2?1 (4-2)
其中X为二进制符号串转化为十进制所得的常数。 二进制编码优点:1)编码解码操作简单易行 2)交叉、变异等操作便于实现 3)符合最小字符集编码原则
4)便于利用模式定理对算法进行理论分析
b 浮点数编码
浮点数编码是指个体的基因值用某一范围内的浮点数来表示,个体的编码长度等于其决策变量的个数。因为这种编码方法使用的是决策变量的真实值,所以浮点数编码又叫做真值编码方法。
浮点数编码的优点:1)适用于在遗传算法中表示范围较大的数
2)适用于精度要求较高的遗传算法 3)便于较大空间的遗传搜索
4)改善了遗传算法的计算复杂性,提高了运算交率
14