基于遗传算法的PID参数优化.doc
《基于遗传算法的PID参数优化.doc》由会员分享,可在线阅读,更多相关《基于遗传算法的PID参数优化.doc(37页珍藏版)》请在沃文网上搜索。
1、基于遗传算法的PID参数优化摘 要PID控制器的特点是可靠性能高、算法简单和鲁棒性能好,但是实际工业的生产过程大多是非线性和时变不确定性的,难以建立准确的数学模型,所以常规的PID控制器是不可能达到理想的控制效果。近几年来,模拟生物的进化过程的遗传算法被作为了求解优化问题一种有效手段,渐渐的被引入到控制系统设计中了。GA是采用纯数值计算的方法以及随机进的化策略,它能够有效的处理一些相当困难的问题,使处理过程更具适应性,灵活性,全局性和鲁棒性。它不仅能够提高一些控制系统的设计的品质,而且能够降低许多设计难度。本文对一个二阶系统进行Simulink仿真,根据经验法设置一个PID参数,使得系统阶跃响
2、应能够获得很好的状态。然后,用遗传算法对该系统的PID控制器参数进行优化,两者进行对比,可以看出遗传算法改善了控制系统的动态性能,同时也表明与传统的寻优方法相比遗传算法是一种简单高效的寻优算法。关键词:PID控制器,遗传算法,参数优化PID parameter optimization design based on genetic algorithmAbstract PID controller is characterized by high reliability, the simple algorithm and robust performance, but the actual i
3、ndustrial production process is mostly non-linear and time-varying uncertainty, it is difficult to establish accurate mathematical model, so the conventional PID is impossible to achieve the ideal control effect. In recent years, Genetic algorithm is simulation of biological evolution process that a
4、s an effective means of solving optimization problems, being introduced into the control system design. GA is a pure numerical calculation method and randomized into the strategy, its ability to deal effectively with some very difficult questions, to make the process more adaptability, flexibility,
5、global, and robustness. It can not only improve the quality of some of the control system design, and to reduce the difficulty of design. Simulink simulation of a second order system, according to the method of experience to set up a PID parameters makes the system step response can provide good sta
6、te. Then, the PID controller parameters of the system use genetic algorithm to optimize, both the contrast can be seen that the genetic algorithm to improve the dynamic performance of the control system also shows that compared with the traditional optimization method and genetic algorithm is a simp
7、le and efficient optimization algorithm.Keywords: PID controller, genetic algorithm, parameter optimization 目录摘 要IIIAbstractIV1绪论11.1课题的来源11.2 PID参数优化方法综述11.3课题研究的主要内容82遗传算法102.1遗传算法的简介102.1.1遗传算法的历史和发展102.1.2遗传算法的应用领域112.1.3遗传算法的术语说明122.1.4遗传算法的基本操作122.2遗传算法的基本原理132.3遗传算法的构成要素142.4 遗传算法的基本步骤142.5基于
8、遗传算法的PID参数优化的关键技术处理153遗传算法的MATLAB实现173.1用MATLAB编写遗传算法的总体思想173.2 相关函数的MATLAB实现173.2.1目标函数173.2.2二阶系统的传递函数183.2.3定义输出184 PID参数优化设计及仿真204.1二阶系统的Simulink仿真204.2基于遗传算法的PID参数优化的MATLAB编程步骤214.3二阶系统的MATLAB运行结果21结论24参考文献25致谢28附录(程序清单)2933基于遗传算法的PID参数优化1绪论1.1课题的来源PID控制器的特点是可靠性能高、算法简单和鲁棒性能好,可知在过程控制和运动控制中被广泛使用。
9、但是实际工业的生产过程大多是非线性和时变不确定性的,难以建立准确的数学模型,所以常规的PID控制器是不可能达到理想的控制效果。当控制理论的逐渐建立、完善发展,对过程控制也慢慢的提出了一些新的思路和方法,伴随着生产工艺的不断改进完善,使得过程控制需要达到更高的水平。专家们不仅在探索一些新方法,同时也对传统的PID控制器也做了大量的研究,以便加以改进。由于PID控制器有着它固有的一些优点,从而使得PID控制器继续在今后被大量使用,但是如何继续提高PID算法的能力或利用新发展起来的现代控制理论设计PID算法,已经成为一个诱人的课题。科研人员在该领域做的工作主要有以下两个方面。PID参数自整定 由于受
10、控对象存在着许多不可知因素,如随机扰动、敏感误差、系统时变等,这些不可知因素常常会导致受控对象参数的改变。在一个PID控制反馈回路中,受控对象参数的改变便会造成原来的PID参数控制性能的改变(降低),为了解决这个问题人们提出了PID参数自整定,即随着受控对象的变化PID调节器能进行自我调整和重新设定PID参数,科研人员结合古典控制理论和现代控制理论提出了许多PID参数在线自整定的方法。而其中较为典型的有基于经验的参数自整定、模糊型PID调节器、改进型Ziegler-Nichols临界比例1、基于过程模型辨识的参数自整定等。PID的参数优化 PID的参数的设定并不是一项简单的工作,PID的参数设
11、定的好能使系统具有更好的性能,但是如何使得PID的参数设定的更加完美,这就需要PID的参数优化,它是指根据给定的生产过程模型和一定的控制目标来进行理论计算,从而得到最优的参数,在PID控制应用之前对PID的参数优化,人们就已经作了大量研究工作,也提出了许多种方法,其中如单纯形法,免疫算法,粒子群优化算法,神经网络算法,差分进化算法,遗传算法等2。 本文中是利用遗传算法对一个二阶系统的PID参数进行优化,得到最佳的参数,使得系统性能达到最好。1.2 PID参数优化方法综述作为优化方法之一的遗传算法,有其独特之处,为了加深对其了解,我也了解了其他一些优化方法,下面我变对其中一些做个简要的综述。方法
12、一:Ziegler-Nichols设定方法在早期Ziegler与Nichols(1942)便提出一个调节PID的参数的经验公式1,而这一调节器可以依据一个一阶近似模型,其带有时滞环节,的阶跃响应或或者相应的频率响应的数据来设定。这里设对象模型为: (1-1)式1-1中一阶响应相关的特征参数是K、T、和,这些可以从图1-1的示意图中提取出来,或者从已知的频率响应的数据,即从Nyquist图形上直接求出其剪切频率c和在该点处的幅值A (或增益Kc=1/A),由表1-1中的相应的经验公式求出控制器参数。图1-1 确定参数图表1-1 Ziegler-Nichols参数整定算法控制器类 型根据模型设定根
13、据频率响应设定PPIPID方法二:粒子群优化算法粒子群优化(Particle Swarm Optimization PSO) 算法是最近几年发展起来的一种新型的进化算法( Evolutionary Algorithm EA) 。PSO也是一种进化算法,这与遗传算法极其相似,从随机解中出发,通过一定次数的迭代来寻找一个最优解。同样也通过其适应值来评价相关解的品质大小。因其没有GA的“交叉”和“变异”操作,所以它比遗传算法的规则要简单的多。它则是通过跟随当前得到的最优值从而来找到全局最优值。PSO算法3与其它演化算法也很相似,也是基于群体的,根据群体中对环境的适应度大小将好的个体移到好的区域,但是
14、它不又像其它演化算法那样对个体运用演化算子,而是把每一个个体看成D维搜索空间里的一个无体积的微粒,并以一定的速度在搜索空间内飞行,而其速度则是根据它本身飞行经验和以及同伴们地飞行经验来进行动态的调整。第i个微粒可以表示成Xi=(xi1,xi2,xiD),而它经过的最佳位置(即适应值最好)可表示成Pi=(pi1,pi2,piD),记作Pbest。把群体中每一个微粒所经过的最佳位置的集合记作Gbest。第i个微粒的速度用Vi=(vi1,vi2,viD)来表示。对于每一代,它的第d维(1dD)可以根据下列方程进行相应变化: (1-2)式1-2中表示第i个微粒在第k次迭代时的速度;w是权函数;c1、c
15、2是权因子;rand是随机数,其值在01之间;表示第i个粒子在第k次迭代时的位置。那么粒子i通过飞行会产生新的位置,如图1-2所示,新的位置计算公式是: (1-3)YXVkSk+1SkVpbestVgbestO图1-2 PSO算法方向示意图另外,微粒所拥有的速度Vi不能超过最大速度Vmax。假如当前微粒的速度Vi超过了该维的最大速度Vmax,则该速度被设置为为该维的最大速度Vmax。PSO算法在某种程度上类似于人的思维方式,也就是说,在认知达到一致的过程中,个体总是记住自己的信念,然后才会考虑其同事们的信念。如果发现同事的信念比较好,那么它将会进行适应性的调整。方法三:单纯形法在1947年美国
16、著名的数学家G.B.丹齐克首先提出了单纯形法4。其理论根据是:一个线性规划问题的可行域是一个n维向量空间Rn中的一个多面凸集,若其最优解如果存在,则必在这个凸集的某一个顶点处达到3。其顶点所对应的可行解被称为基本可行解。我们知道单纯形法基本思想是:首先求出一个基本的可行解,接着对它进行相关鉴别,看是不是最优解;如不是,则按照相关的法则转换成另一个改进了的基本可行解,然后再鉴别;如还不是,则继续转换,如此重复进行。因为基本可行解的个数是有限的,所以经过有限次的转换一定能得出问题的最优解,假设问题无最优解也可以用这种方法来判别。依据相关的单纯形法原理,在一些线性规划的问题中,决策变量(控制变量)x
17、1,x2,xn的值被称作为一个解,满足了所有约束条件的解则被称作可行解。能使目标函数获得最大值(或者最小值)的可行解被称作最优解。所以最优解是能够在一整个由约束条件而确定的可行区域中使目标函数获得最大值(或者最小值)。为此可知一个求解线性规划的问题的主要目的是为了获得最优解。最优解最可能出现在以下情况中的一个:1) 最优解存在1个;2) 最优解存在无穷多个;3) 最优解不存在,这只有在以下两种情况才发生,一是不存在可行解,二是各个约束条件并不能阻止目标函数值无限的增大(或向负方向无限的增大)。使用单纯形法解题的一般步骤归纳如下:1) 把线性规划问题的一组约束方程组表达成为一组典范型的方程组,再
18、解出一组基本可行解当作初始的基本可行解。2) 假如不存在基本可行解,意味着约束条件存在矛盾,那么问题无解。3) 若存在基本可行解的话,用初始的基本可行解当作起点,根据可行的性条件和最优性的条件,引入一非基变量来取代某一个基变量,从而找出目标函数值的更加优的另一个基本的可行解。 4) 按照步骤3进行相应的迭代,直到相关的检验数能满足最优性的条件(这时目标函数值不能再改善),也便得到了问题最优解。 5) 假如在迭代的过程中,出现了问题的目标函数值是无界的,那么就终止迭代。 使用单纯形法来求解一些线性规划问题时,约束条件的个数决定了所需要的迭代的次数。当前一般的线性规划的问题都是运用标准的单纯形法软
19、件在计算机上进行求解,对于一个具有108个决策变量以及106个约束条件的线性规划的问题现在可以在计算机上求解了。方法四:差分进化算法差分进化(Differential Evolution - DE)算法是一种采用浮点矢量编码的在连续空间中进行随机搜索的优化算法4。在差分进化算法中,首先由父代个体间的差分矢量构成变异算子;接着按一定的概率,父代个体与变异个体之间进行交叉操作,生成一个试验个体;然后在父代个体和试验个体之间根据适应度的大小进行选择操作,适应度小的保存到下一代群体中去。DE算法的实现步骤如下:1) 初始化 DE算法采用M个D维的浮点矢量作为初始种群,个体矢量表示为 (i=1,2,M)
20、,其中i表示种群中个体的序数,G为当前种群进化代数,在整个寻优过程中种群规模M保持不变,初始种群通常在给定约束边界内部进行随机初始化。2) 变异操作 变异操作用于产生新个体,设xr1,Gxr2,Gxr3,G为当前群体中随机选择的3个互不相同的个体矢量,且ir1r2r3;xbest,G为当前种群中最优个体,则对于当前群体中的每一个个体xi,G(i=1,2,M),基本的DE算法按照如下方法产生新个体为: (1-4)收缩因子=F为(0,1)之间的常数。为了降低用户的参与程度,将,F均取(0,1)之间的随机数。当新个体某一维参数超出边界时,直接用边界值进行替代。3) 交叉操作 为了增加群体的多样性,将
21、新个体vi,G+1和父代个体xi,G进行交叉生成试验个体ui,G=(ui1,G,ui2,G,uiD,G)。设CR为交叉概率,为(0,1)之间的常数;rand为(0,1)之间的随机数;IG为1,M之间的随机整数,IG可以确保ui,G至少有一位是从vi,G+1中获得的,则可得: (1-5)4) 选择操作 比较ui,G和xi,G的适应值,选择适应度小的做为下一代个体xi,G+1,即 (1-6)基于DE算法多目标PID优化设计1) 编码PID控制器中,待优化的参数为Kp,Ti和Td,DE算法采用浮点数编码,可以直接将(Kp,Ti,Td)作为一个个体矢量。DE算法的搜索空间以ZN法获得的参数结果为中心,
22、向两边进行延拓,这样既可以充分利用ZN法的合理内核,又缩小了实际参数的搜索空间。设Kp,Ti,Td为ZN法整定值;,为延拓系数,取=0.3,=5,则可得: (1-7)2) 适应度函数设计PID优化设计的目的是使系统某些性能指标最优,然而,单纯的误差性能指标很难同时满足系统对快速性、稳定性和鲁棒性的要求,因此在适应度函数中引入超调量、上升时间和累计绝对误差指标项。设=(|yp-yref|/yref)100%为系统的超调量,yp和yref分别为输出峰值和输入参考值;tr*为上升时间,将其定义为输出从0第1次达到0.95yref的时间;ek=yk-yref为采样时刻k的输出误差;wj(j=1,2,3
23、)为权重系数。则多目标适应度函数为: (1-8)通过对权重系数的调整,可以改变系统对快速性和稳定性的要求。如系统要求较小的超调,可以适当增大w1;若系统要求快速的动态响应,则可以适当增大w2。3) 算法流程Step1:初始化,设置群体规模M,交叉概率CR,最大迭代次数Gmax,在搜索空间内随机初始化群体矢量。Step2:根据式(1-4)对群体中的每个个体矢量进行变异操作。Step3:根据式(1-5)对群体中的每个个体矢量进行交叉操作。Step4:根据式(1-8)计算个体的适应度,根据式(1-6)对每个个体进行选择操作。Step5:判断最大迭代次数是否达到,若达到,则停止;否则转到Step2。方
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 遗传 算法 PID 参数 优化
