基于遗传算法的PID控制器参数优化与仿真研究

更新时间:2024-06-04 09:45:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

摘要

工程实际中,应用最为广泛的调节控制规律为比例、积分、微分控制,简称PID控制。PID控制自出现后,以其结构简单、稳定性好、鲁棒性好、可靠性高而广泛应用于工业过程控制领域。比例、积分、微分的组合决定了PID控制效果,决定了系统能否高效可靠地运行。常规方法整定PID控制器参数后仍然需看情况进一步调节。随着控制要求的提高,多次手动调节不满足期望,因此参数优化日益成为迫切需要。

遗传算法是一种基于生物进化理论的全局搜索优化方法。本文介绍了遗传算法的基本原理、算法框架等基本知识,并利用算法解决PID参数优化问题。通过MATLAB对一阶纯滞后系统、二阶滞后系统、三阶系统进行参数优化仿真,证明了优化后有更好的动态特性和控制效果,验证了遗传算法的有效性。

关键词:PID控制;遗传算法;参数优化;MATLAB仿真

I

Abstract

In the practical engineering, the most widely used control law is proportional integral differential control,PID control for short. It has been widely used in industrial process control system because of its single algorithm, good robustness and high reliability since it appeared. The combination of PID parameters determines whether industrial equipments run efficiently and stably.The conventional methods always need further adjustments. But with the improvement of control requirements, manual regulation for many times doesn't meet expectations. So the optimization of parameters is an increasingly urgent need.

Genetic algorithm is a new optimizing searching mechod based on biology evolutionary theory. This paper introduces the basic principle of Genetic algorithm, the framework of Genetic algorithm,and applies Genetic algorithm to solve the problem of parameters optimization. The simulations on the first-order lag system, the second-order lag system, the third-order system prove the genetic algorithm better dynamic characteristics and control effects, and verify the effectiveness of the genetic algorithm.

KEY WORDS:PID control;Genetic algorithm;Parameter optimization;Matlab

simulation

II

目录

0 前言 ...........................................................................................................................................1 1 绪论 ...........................................................................................................................................2 1.1 选题背景与研究现状 ..................................................................................................2 1.2 选题的目的和意义 ........................................................................................................2 1.3 研究方案和预期结果 ..................................................................................................2 1.4 论文结构 .............................................................................................................................3 2 PID控制理论 ........................................................................................................................4 2.1 PID控制 ..............................................................................................................................4 2.2 模拟PID控制 ..................................................................................................................4 2.3 数字PID控制 ..................................................................................................................5 2.3.1 位置式PID控制器 ..................................................................................................6 2.3.2 增量式PID控制器 ..................................................................................................7 2.4 PID控制的性能指标 ....................................................................................................7 3 PID参数的整定 ..................................................................................................................8 3.1常规整定方法 ...................................................................................................................8 3.1.1 理论计算整定法 .........................................................................................................8 3.1.2 工程整定法 ....................................................................................................................8 3.1.3 最佳整定法 ....................................................................................................................9 3.1.4 经验法 ..............................................................................................................................9 3.2 智能整定方法 ..................................................................................................................9 3.2.1 基于模糊控制的PID参数整定法 .................................................................10

3.2.2 基于神经网络的PID参数整定法 .................................................................10 3.2.3 基于遗传算法的 PID 参数整定法 ..............................................................10 3.2.4 基于免疫算法的 PID 参数整定法 .............................................................. 11 4 遗传算法 ...............................................................................................................................13 4.1 遗传算法的原理 ...........................................................................................................13 4.2 遗传算法的描述 ...........................................................................................................13 4.2.1 遗传算法有效性的理论基础 ............................................................................13 4.2.2 遗传算法的基本内容 ............................................................................................13 4.2.3 遗传算法的运算过程 ............................................................................................19 4.3 遗传算法的特点和应用 ...........................................................................................20 5 基于遗传算法的PID参数优化 ...............................................................................22 5.1 常规PID参数整定 ......................................................................................................22 5.2 基于遗传算法的PID参数优化介绍 ................................................................23 5.2.1 参数优化原理 ............................................................................................................23 5.2.2 参数优化步骤 ............................................................................................................23 5.3 一阶滞后系统的PID参数整定 ...........................................................................25 5.3.1 常规法整定 ..................................................................................................................25 5.3.2 基于遗传算法的PID参数优化 ......................................................................26 5.4 二阶系统滞后系统的PID参数整定.................................................................31 5.5 三阶系统的PID参数整定 ......................................................................................33 5.5.1 常规法整定 ..................................................................................................................33 5.5.2 基于遗传算法的PID参数优化 ......................................................................34

6 技术经济分析 ....................................................................................................................38 7 结论 .........................................................................................................................................39 致谢 ..............................................................................................................................................40 参考文献 ...................................................................................................................................41 附录A 译文 .............................................................................................................................43 附录B 原文 .............................................................................................................................45 附录C 程序 .............................................................................................................................48

辽宁工程技术大学毕业设计(论文)

0 前言

PID控制是过程控制中广泛应用的一种控制方法。比例、积分、微分的组合决定了PID控制效果,决定了系统能否高效可靠地运行。PID参数整定方法随着PID的大量应用也不断更新。工程上经常使用工程整定法、反应曲线法等,在按照经验公式整定出参数后只需微调即可获得满意的控制性能。但是随着控制要求的不断提高,被控对象越来越复杂,使用常规PID整定方法整定PID参数难以取得令人满意效果,因此PID控制器参数的优化成为人们关注的问题, 它直接影响控制效果的好坏, 并和系统的安全、经济运行有着密不可分的关系。因此,有效的PID参数优化方法已成为迫切的需要。

遗传算法是一种不需要任何初始信息便可以寻求全局最优解的、高效的优化组合方法。它不受问题性质(如连续性、可导性)的限制,具有全局寻忧能力,往往能够得到较好的优化效果,满足人们的控制要求,因此对于遗传算法的研究和应用具有十分广泛的意义。

1

基于遗传算法的PID控制器参数优化与仿真研究

1 绪论

1.1 选题背景与研究现状

PID控制是过程控制中广泛应用的一种控制。PID控制器早在30年代末期就已出现,问世至今以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。经过多年来的不断更新换代,PID控制得到了长足的发展。特别是近年来,随着计算机技术的飞速发展,发生了由模拟PID控制到数字PID控制的重大转变。与此同时还涌现出了许多新型PID控制算法和控制方式,在工业过程控制中获得广泛应用。

工业控制中的PID控制器主要依靠比例、积分、微分三个系数的线性组合来取得较为令人满意的控制效果,因此参数的整定成为是否能够令人满意的关键步骤[1]。PID参数整定是一个典型的多参数优化组合问题,早前常用Z-N 整定法、继电器反馈整定法、幅值相角裕度整定法等进行参数整定,基本上可以获得较为令人满意的效果。

但是随着被控对象越来越复杂,控制要求越来越高,常规的整定方法难以满足要求。由此发展出一系列智能PID参数整定方法:基于模糊控制的 PID 参数整定方法、基于神经网络的 PID 参数整定方法、基于遗传算法的 PID 参数整定方法、基于免疫算法的 PID 参数整定方法等。

遗传算法是一种具有全局寻忧能力的方法,它有着独特的特点,广泛应用于各种领域。目前一些专家学者都致力于分析研究基于遗传算法的PID控制器参数优化。很多参考文献都己经证实基于遗传算法的PID控制器参数优化整定优于传统的整定方法。

1.2 选题的目的和意义

本设计是应用遗传算法来进行PID参数的优化工作。遗传算法是利用达尔文提出的优胜略汰的生物进化原理,通过模拟生物进化过程来进行寻优的算法。遗传算法是一种具有全局寻优能力的算法,能够取得利用常规方法整定的参数所得不到的效果,满足较高的控制要求,对于有较高要求的控制过程得心应手,能够有效的降低生产的成本,提升经济效益。

1.3 研究方案和预期结果

研究方案:本文将以遗传算法为优化方法,通过理解和掌握基本遗传算法的原理、算法框架等,采用改进后的遗传算法整定PID控制器参数,使用MATLAB编程与仿真,与常规PID整定参数的仿真结果相比较,以验证在不同背景下遗传算法优化PID控制器参数的

2

辽宁工程技术大学毕业设计(论文)

有效性。

预期结果:研究PID参数优化设计方法,利用基本遗传算法作为启发,用改进后的遗传算法来尽量克服基本遗传算法的一些弊端,使用遗传算法的框架,整定出在不同背景下优于常规PID整定方法整出的参数,获得良好的控制效果。并通过仿真证明遗传算法是PID参数优化的一种行之有效的方法。

1.4 论文结构

本论文的结构主要包括:

第一章:绪论。 介绍选题的背景和研究现状,选题的目的和意义,研究的内容及预期目标。

第二章:PID控制理论。介绍PID控制理论的相关内容,如PID控制原理,各个部分的作用,PID控制器等,作为入门的了解。

第三章:PID参数整定。粗略介绍了PID参数整定的常规方法和智能化方法的原理,并着重介绍遗传算法整定PID参数的内容。

第四章:遗传算法。主要介绍遗传算法的基本原理、思想,遗传算法的算法框架,遗传算法的内容和应用,作为利用遗传算法的学习内容。

第五章:基于遗传算法的PID参数优化。本章主要介绍了常规整定方法Z-N法的应用,以及运用遗传算法的过程。并通过对不同系统的仿真证明算法的有效性。

第六章:技术经济分析。主要从技术、经济效益方面分析了遗传算法整定PID控制器参数的实现和作用。

第七章:结论。对设计全文的研究和试验进行总结,并得出相关结论。

3

基于遗传算法的PID控制器参数优化与仿真研究

2 PID控制理论

2.1 PID控制

PID(Proportional Integral Differential)控制是比例、积分、微分控制的简称。在生产过程自动控制的发展历程中,PID控制是历史最久、生命力最强的基本控制方式。当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,也适合用PID控制技术。PID控制,实际中也有PI和PD控制,就是根据系统的误差,利用系统的比例、积分、微分三个环节的不同组合计算出控制量来进行控制的。PID 控制由于它自身的优点,仍然是应用最广泛的基本控制方式,目前 90%以上的控制回路仍采用 PID 控制器[2]。PID控制主要包括模拟PID控制和数字PID控制。

2.2 模拟PID控制

PID控制器是一种线性调节器,这种调节器是将系统的给定值r与实际输出值y构成的控制偏差e?r-y的比例、积分、微分,通过线性组合构成控制量,所以简称PID控制器。

连续控制系统中的模拟PID控制规律为

u(t)?Kp[e(t)?1tde(t) (2-1) e(t)?TD?0Tidt式中Kp—比例系数

Ti—积分时间常数 TD—微分时间常数

将上面式子换成传递函数形式, 得:

U(s)1?Kp(1??TDs) (2-2) E(s)TiS模拟PID控制系统的原理框图如下图所示。

分别介绍比例调节器、积分调节器、微分调节器的作用[3]

1)比例调节器:比例调节器对偏差是即时反应的,偏差一旦出现,调节器立即产生控制作用,使输出量朝减小偏差的方向变化,控制作用的强弱取决于比例系数Kp。比例调节器虽然简单快速,但是对系统的响应存在静差。可通过增大Kp值来减小稳定误差并提高系统的动态稳定速度,但是如果取值过大,将可能导致系统不稳定;太小会导致控制精度降低,响应速度减慢,系统的物理特性变坏。

4

辽宁工程技术大学毕业设计(论文)

比例 r(t) 积分 被控 对象 y(t) 一 微分

图2-1 模拟PID控制系统的原理框图 Fig.2-1 The diagram of continuous PID control system

2)积分调节器:在积分控制中,控制器的输出与输入误差信号的积分成正比关系。对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的即有差系统。为了消除稳态误差,在控制器中必须引入“积分项”。只要控制系统中存在误差,积分信号就会发挥作用以消除误差,直到误差为零,积分作用才会停止。积分时间常数Ti决定了积分作用的强弱。Ti大,则积分作用弱,反之强。增大Ti将减慢系统消除静态误差的过程,但是可以减小超调,提高稳定性。引入积分环节的代价是降低系统的快速性。

3)微分调节器:在微分控制中,控制器的输出与输入误差信号的变化率成正比关系。自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳,其原因是由于存在有较大惯性环节或有滞后环节,具有抑制误差的作用,其变化总是落后于误差的变化。解决的办法是使抑制误差的作用“超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是说,在控制器中仅引入“比例项”往往是不够的,比例项的作用仅是放大误差的幅值,为了能够加快控制过程,需要加入微分环节来预测偏差变化的趋势。微分环节的加入将有助于减少超调,克服振荡,改善系统的动态性能。

2.3 数字PID控制

随着微型计算机技术的发展和可靠性的不断提高,计算机参与工业控制不仅成为现实,而且日益广泛的深入到控制技术的各个领域,PID控制技术和微机技术的结合,便形成了数字PID控制技术。过去的PID控制器通过硬件模拟实现,但随着微型计算机的出现,

5

基于遗传算法的PID控制器参数优化与仿真研究

特别是现代嵌入式微处理器的大量应用,原先PID控制器中由硬件实现的功能都可以用软件来代替实现,从而形成了数字PID算法,实现了由模拟PID控制器到数字PID控制器的转变。

与模拟PID的控制比较,数字PID控制有其独特的优势,可通过计算机程序来对被控对象进行采样控制,可解决模拟PID控制器的各种问题,经过修改可得到较完善的数字PID控制算法[3]。

2.3.1 位置式PID控制器

利用外接矩形法进行数值积分,一阶后向差分进行数值微分,当选定采样周期为T时有

Tu(k)?Kp[e(k)?Tiu(k)—采样时刻k时的输出值; e(k)—采样时刻k时的偏差值;

?e(j)?j?1kTD(e(k)?e(k?1))] (2-3) Te(k-1)—采样时刻k-1时的偏差值;

u(k)为全量输出,它对应于被控对象的执行机构第k次采样时刻应该到达的位置,因此该式子被称为PID位置型控制算式。

这种算法的缺点是:计算时要对 e (k)进行累加,所以每次输出均与过去的状态有关;一旦计算机出现故障使得 u(k)的大幅度变化,必会引起执行机构的大幅度变化,这种情况往往是生产实践中不允许的;有些执行机构(如步进电机)要求控制器的输出为增量形式,在这些情况下,位置式PID控制器都不能使用。

u(t) D/A 执行机构 被控对象 r(k) r(k) PID位置算法 一 y(k) r(k) y(t)

图2-2 位置式PID控制系统的原理框图 Fig.2-2 The diagram of position type PID control system

6

辽宁工程技术大学毕业设计(论文)

2.3.2 增量式PID控制器

数字PID的偏差经过运算后,如果执行机构需控制量的增量,则数字PID控制算式为相邻两次釆样时刻的位置差,如式

?u(k)?u(k)?u(k?1)

?Kp[e(k)?e(k?1)?TTe(k)?D(e(k)?2e(k?1)?e(k?2))] (2-4) TiT该式子称为增量型PID控制算式。还可以写成递推式PID控制算式:

u(k)?u(k?1)?Kp[e(k)?e(k?1)?TTe(k)?D(e(k)?2e(k?1)?e(k?2))] TiT增量型算式具有以下优点:1)计算机只输出控制增量,即执行机构的变化部分,因

而误动作影响小

2)在k时刻的输出u(k),只需用到此时刻的偏差e(k)以

及前一时刻、前两时刻的偏差e(k-1)、e(k-2)和前一次的输出值u(k-1),这大大节约了内存和计算时间 3)在进行手动-自动切换时,控制量冲击小,能够较平滑

的过渡

2.4 PID控制的性能指标

衡量PID控制系统性能优劣的性能指标主要包含上升时间、调节时间、超调量和稳态误差等 [4]。

1)上升时间为系统的实际输出从正常输出的10%上升至正常输出的90%所用的时间。 2)调节时间为系统的实际输出能够稳定在正常输出的5%所用的时间。

3)系统的超调量为系统的实际输出最大值和系统实际输出正常值的差与系统输出正常值的比值。

4)稳定误差为系统达到稳态时输出值与系统实际输出正常值的差值。 以上参数直接反映了系统的动态特性和稳态性能,是衡量控制作用的指标。

7

基于遗传算法的PID控制器参数优化与仿真研究

3 PID参数的整定

通过设置和调整PID参数即可实现PID参数的整定,使被控对象的变化过程的品质提高,PID参数整定结果的优劣直接影响系统的控制质量以及控制系统的鲁棒性。其核心就是根据控制特性来调整控制器的Kp,Ki,Kd三个参数。目前整定PID参数的方法可大致可分为常规法和智能整定方法。

3.1常规整定方法

常规整定PID参数的框图如下[5]

PID控制比例 器 r(t) 积分 被控 对象 y(t) 一 微分

图3-1 常规PID控制原理框图

Fig.3-1 The diagram of Conventional PID control system

3.1.1 理论计算整定法

理论计算整定方法主要根据系统的数学模型,采用控制理论中的根轨迹法、频率特性法、对数频率特性法、扩充频率特性法等,经过理论计算确定调节器的参数。这种方法不仅计算繁琐,而且过分依赖数学模型,得到的计算数据还要通过工程实践进行调整和修改。因此,除具有理论指导意义外,工程实践较少采用。

3.1.2 工程整定法

它主要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。PID控制器参数的工程整定方法主要有临界比例法、反应曲线法和衰减法。三种方法各有其特点,其共同点都是通过试验,然后按照工程经验公式对控制器参数进行整定。但无论采用哪一种方法所得到的控制器参数,都需要在实际运行中进行最

8

辽宁工程技术大学毕业设计(论文)

后调整与完善。

临界比例度法就是一种常用的方法。利用该方法进行PID控制器参数整定步骤如下: 1) 首先预选择一个足够短的采样周期让系统工作

2) 仅加入比例控制环节,直到系统对输入的阶跃信号响应出现临界振荡的情况,记下这时的比例放大系数和临界振荡周期

3) 在一定的控制度下通过公式计算得到PID控制器的各个参数

3.1.3 最佳整定法

它主要是基于计算机的参数最优整定,针对特定的系统建立数学模型,利用数值解法按照一定的性能指标进行优化。其性能主要指标有ISE,IAE,IATE等。数值优化法较传统的经验整定方法有明显的优越性,然而它需要建立较为精确的数学模型,并且要求解空间连续可微,且优化过程极易陷入局部最优解。

3.1.4 经验法

无论哪一种工程整定方法所得到的调节器参数,都需要在系统的实际运行中,针对实际的过渡过程曲线进行适当地调整与完善。经验准则为“看曲线,调参数”。

1)比例度越大,放大系数Kp越小,过渡过程越平缓,稳态误差越大;反之,过渡过程震荡越激烈,稳态误差越小;若比例度过小,则可能导致发散振荡。

2)积分时间Ti越大,积分作用越弱,过渡过程越平缓,消除稳态误差越慢;反之,过渡过程振荡越激烈,消除稳态误差越快。

3)微分时间Td越大,微分作用越强,过渡过程趋于稳定,最大偏差越小;但是Td过大,则会加过渡过程的波动程度。

3.2 智能整定方法

PID控制器广泛应用于工业控制系统中,其设计与参数整定已经非常成熟,可应用在多数系统中,即使被控对象的参数和数学模型未知时,也可通过经验设定和现场整定。PID参数整定困难的原因在于不能从系统全局考虑。

工程整定法是从被控系统稳定的角度出发,而理论设计法只保证了满足系统的频域或某一特性的要求。在实际的设计中, PID控制参数需要反复调整才能获得满意的效果, 实际工业应用系统常常具有非线性、高阶及时变等复杂系统特性,使用常规PID很难得到甚至难以达到预期的效果,会出现整定效果差,性能水平低,对环境影响的抗干扰能力差,因此需改进算法。这样就产生了智能化整定方法。

9

基于遗传算法的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

辽宁工程技术大学毕业设计(论文)

5)便于遗传算法与经典优化方法的混合使用 6)便于设计针对问题的专门知识的知识型遗传算子 7)便于处理复杂的决策变量约束条件

c 符号编码方法

符号编码法是指个体染色体编码串中的基因值取自一个无数值含义、而只有代码含义的符号集如{A,B,C?}。

符号编码的优点是:1)符合有意义积术块编码原则

2)便于在遗传算法中利用所求解问题的专门知识 3)便于遗传算法与相关近似算法之间的混合使用

但对于使用符号编码方法的遗传算法,一般需要认真设计交叉、变异等遗传运算的操作方法,以满足问题的各种约束条件,这样才能提高算法的搜索性能。

综上所述,不同的编码方法具有不同的特点,真正有效的编码设计应根据各编码方法的特点,并结合实际问题和编码与遗传操作的关系来确定。 2)适应度函数

类似于生物学家使用适应度这个术语来度量某个物种对于生存环境的适应程度,在遗传算法中使用适应度这个概念来度量群体中各个个体在优化计算中有可能达到或者接近于或者有助于找到最优解的优良程度。适应度高的个体遗传到下一代的概率就大,反之则较小。度量个体适应度的函数就称为适应度函数。

遗传算法仅使用所求问题的目标函数值就可得到下一步的有关搜索信息。而对目标函数值的使用是通过评价个体的适应度来体现的。评价个体的适应度的一般过程是:首先对个体编码串进行解码处理后,可得到个体表现型;其次由个体表现型可计算出对应个体的目标函数值;最后根据最优化问题的类型,由目标函数值按一定的转换规则求出个体适应度。适应度函数基本上有以下三种[10]: a 直接法

以待求解的目标函数的转化为适应度函数,即: 若目标函数为最大化问题,有

Fit(f(t))?f(t) (4-3)

若目标函数为最小化问题,有

Fit(f(t))??f(t) (4-4)

15

基于遗传算法的PID控制器参数优化与仿真研究

这种适应度函数简单直观,但存在两个问题:其一是可能不满足常用的轮盘赌选择中概率非负的要求;其二是某些待求解的函数在函数值分布上相差很大,由此得到的平均适应度可能不利于体现种群的平均性能,从而影响算法的性能。 b 界限构造法 若目标函数为最小问题,则 ?0,其他Fit(f(x))???Cmax?f(x),f(x)?Cmax 若目标函数为最大问题,则 (4-5) ?f(x)?Cmin,f(x)?CminFit(f(x))???0,其他 (4-6) 式子中Cmin,Cmax分别为f(x)的最小和最大估计值。 这种方法是对第一种方法的改进,但有时存在界限值预先估计困难,从而不可能精确的问题。 c 保守估计法 若目标函数为最小问题 Fit(f(x))?1,c?0,c?f(x)?01?c?f(x) (4-7) 若目标函数为最大问题 Fit(f(x))?1,c?0,c?f(x)?01?c?f(x) (4-8) 这种方法与第二种方法类似,为目标函数界限的保守估计值。 在遗传算法运行不同阶段,有时还需对个体的适应度进行适当的缩放调整即适应度定标。常用的定标方法有:线性定标、乘幂定标、指数定标。 3)遗传算子 遗传操作的三个基本算子分别是选择算子、交叉算子和变异算子。 a 选择算子 遗传算法使用选择算子来进行优胜略汰操作:适应度较高的个体被遗传到下一代群体的概率较大;适应度较低的个体被遗传到下一代群体的概率较小;选择操作就是用来确定如何从父代群体中按照某种方法选取哪些个体遗传到下一代群体中的一种遗传运算。选择16

辽宁工程技术大学毕业设计(论文)

操作是建立在对个体的适应度进行评价的基础之上。选择操作的目的是为了避免基因缺失、提高全局收敛性和计算效率。 1) 比例选择 当使用比例选择算子进行操作时,如果个体适应度值越大则群体中的个体被选中的概率就越高。假设某群体规模M,其中的某个个体i适应度值大小为Fi,那么个体i 被选中的概率大小为 : Pis?FiM ?Fi?1,?i?1,2...M?i (4-9) 由于是随机操作的原因,这种选择方法的选择误差比较大,有时甚至连适应度较高的个体也选择不上。如果某个体的个体适应度值过大,也有可能使算法过早收敛,致使运算后期算法的效率降低,搜索速度减慢。 2) 最优保存策略 当前群体中适应度最高的个体不参与交叉和变异运算,而用它代替本代群体中经过交叉、变异等遗传操作后所产生的适应度最低的个体[17]。 在遗传算法运行过程中,通过对个体的进行交叉、变异等遗传操作会不断产生新的个体。随着群体进化会不断产生优良个体。但是由于操作的随机性,有可能破坏当前群体中适应度最好的个体,会降低群体的平均适应度,且对遗传算法的运行效率、收敛性都有不利的影响,可以采用最优保存策略,避免这种不良影响。 其他的还有确定式采样选择,无放回随机选择,无放回余数随机选择,排序选择和随机联赛选择等。 b 交叉算子 两个相互配对的染色体按照某种方式相互交换其部分基因,从而形成两个新的个体。交叉运算是区别于其他进化算法的重要特征,在遗传算法中起着关键作用,是产生新个体的主要方法。交叉时首先对种群中的个体进行随机配对,以交叉概率决定是否进行交叉。其次在配对个体中随机设定交叉处,配对个体彼此交换部分信息。 1)单点交叉 在个体编码串中只随机设置一个交叉点,然后在该点相互交换两个配对个体的部分染色体。例如从群体中取两个个体, 其中冒号表示交叉点位置。 A: 1 0 1 :1 1 0

17

基于遗传算法的PID控制器参数优化与仿真研究

B: 1 1 1 :0 0 1 交叉后形成新的个体

A’:1 0 1 : 0 0 1 B’:1 1 1 : 1 1 0

单点交叉的重要特点是:若相邻的基因座之间的关系能够提供较好的个体性状和较高适应度的个体适应度的话,则这种单点交叉操作破坏这种个体性状和降低个体适应度的可能性最小。

2)双点交叉和多点交叉

双点交叉和多点交叉是指在编码串中设置两个或多个交叉点,然后再进行部分基因交换。但是一般不太使用多点交叉算子,它有可能破坏一些好的模式。随着交叉点数的增多,个体结构被破坏的可能性也逐渐增大,这样很难有效地保存较好的模式,从而影响遗传算法的性能。

3)均匀交叉

均匀交叉是将种群中的个体部分按照相同概率进行交叉变换,然后获得两个新个体。 4)算数交叉

算数交叉是指将两个个体的线性组合而产生两个新的个体。为了能够进行线性组合运算,算数交叉的操作对象一般是由浮点数编码所表示的个体。

c 变异算子

变异是对群体中的个体串的某些基因座上的基因值作变动。在群体中所有个体的串范围内随机的确定基因座,以变异概率来对这些基因座的基因值用该基因座的其它等位基因来代替。变异运算只是产生新个体的辅助方法,但它也是必不可少的一个运算步骤,它决定了遗传算法的局部搜索能力,维持群体的多样性,以防止出现早熟收敛现象。交叉算子与变异算子的相互配合,共同完成对搜索空间的全局搜索和局部搜索,从而使得遗传算法能够以良好的搜索性能完成最优化问题的寻优过程。常使用基本位变异,即对个体编码串中以变异概率Pm随机指定的某一位或者某几位基因值做变异运算。 如原个体A:1 0 1 0 1 1 新个体 :A’:1 0 1 0 1 0

其他变异操作方法包括均匀变异,边界变异,非均匀变异,高斯变异等。

4)运行参数 主要有个体编码串长度L、群体大小M、交叉概率Pc、变异概率Pm,终止代数G等。

a 个体编码串长度 L

18

辽宁工程技术大学毕业设计(论文)

使用二进制编码来表示个体时,L 的选取与所求问题的求解精度有关;使用浮点数编码来表示个体时,L与被优化的变量的个数相等;使用符号编码来表示个体时,L由问题的编码方式决定。

b 群体规模 M

定义群体中个体的数目,群体规模的确定受遗传操作中选择操作的影响很大。群体规模越大,群体中个体的多样性越高,算法陷入局部最优解的危险性越小,所以从群体的多样性考虑,群体规模应较大。但是群体规模太大则计算量增加会影响法效能,由于大多数适应度不高的个体会被淘汰,这会影响种群的形成,从而影响交叉操作。另一方面,群体规模太小,会使遗传算法的搜索空间分布范围有限,因而搜索有可能停止在未成熟阶段,引起未成熟现象,所以必须保持群体的多样性,群体规模不能太小。一般在实际应用中群体个体数取值范围为20—100。

c 交叉概率Pc

定义操作中个体产生交叉的概率。因为交叉是遗传算法中产生新个体的主要方法,所以交叉概率一般应取较大值。但若取值过大,又会破坏群体的优良模式,对进化运算反而不利;若取值过小,产生新个体的速度又较慢。一般建议取值范围是0.4—0.99,也可以使用自适应思想确定交叉概率。

d 变异概率Pm

定义每次遗传操作中个体产生变异的概率。变异概率取值过大,虽能产生出较多的新个体,但有可能破坏很多较好的模式,使遗传算法的性能近似于随机搜索法的性能;若取值太小,则变异产生新个体的能力和抑制早熟现象的能力较差。一般建议的取值范围为0.0001—0.1,也可以使用自适应思想确定变异概率。

e 迭代终止条件

经典的方法是设终止代数G,遗传算法运行到指定的进化代数之后就停止运行。一般取值范围是100—1000。但遗传算法是随机的,到达最大迭代次数不一定是最优解。现在的方法是大多利用某种判定准则,当判定种群已经进化成熟且不在有进化趋势时就可以终止算法的运行。

4.2.3 遗传算法的运算过程

步骤1、初始化 通过初始化从种群中随机选取M个个体产生初始群体P(0),设置进化代数计数器t以及最大进化代数G;

19

基于遗传算法的PID控制器参数优化与仿真研究

步骤2、个体评价 根据适应度函数计算种群P(0)各个个体适应度值。 步骤3、选择运算 选择合适的选择算子并作用于种群。 步骤4、交叉运算 选择合适的交叉算子并作用于种群。

步骤5、变异运算 选择合适的变异方法并作用于种群。群体P(t)经过选择、交叉、变异运算之后得到下一代群体P(t+1)。

步骤6、终止条件判断 若t?G,则t?t?1,转到步骤2;若.t?G,则以进化过程所得的具有最大适应度的个体作为最优解输出,终止计算。其计算框架如下图所示

开始群体P(t)个体评价选择运算交叉运算变异运算群体P(t+1)是否满足终止条件Y结束N

图4—1 遗传算法的框架

Fig.4-1 The framework of genetic algorithm

4.3 遗传算法的特点和应用

遗传算法是一类可用于复杂系统优化计算的鲁棒搜索算法,具有以下特点:

1) 遗传算法以决策变量的编码作为运算对象,使得我们在优化计算过程中可以借鉴生物学中染色体和基因等概念,可以模仿自然界中生物的遗传和进化等机理,也使得我们方便

20

辽宁工程技术大学毕业设计(论文)

使用遗传操作算子。

2) 遗传算法直接以目标函数数值作为搜索信息。只需要适应度函数值就可确定进一步的搜索方向和搜索范围,无需目标函数的导数值等其他信息,可以提高搜索效率。 3) 遗传算法同时使用多个搜索点的搜索信息,具有隐含的并行性。

4) 遗传算法使用概率搜索技术,从而增加了搜索过程的灵活性,虽然概率性会产生适应度不高的个体,但是实践和理论都已经证明了在一定条件下遗传算法总是收敛的。

遗传算法提供了一种求解复杂系统优化问题的通用框架,具有很强的鲁棒性,广泛应用于很多学科,如函数优化、组合优化、生产调度、自动控制、机器人学、图像处理、人工生命、遗传编程、机器学习等。

21

基于遗传算法的PID控制器参数优化与仿真研究

5 基于遗传算法的PID参数优化

本章节中,将通过对一阶滞后系统、二阶滞后系统和三阶系统的PID控制器参数进行优化与仿真,用以说明遗传算法在PID参数优化方面应用的有效性。

5.1 常规PID参数整定

自从Z-N法在1942年被提出后,经过多年的发展,在系统控制事件中被接受为标准

[18]

针对于一阶滞后系统的模型

G(s)?Ke??sTs?1,Z-N法给出了经验公式,我们可以按照经验

公式进行PID参数的设置,而后只需微调即可得到较好的控制效果。经验公式如下表所示:

表5-1 经验公式 Tab.5-1 Empirical formula

控制器类型 P PI PID

Kp

Ti

?

Td 0 0

T?

0.9T?

1.2T K?? 0.32?

0.5?

对于阶跃响应可以出现等幅振荡的系统来说,可按照下面的步骤进行PID参数整定: 1)将积分增益和微分增益减少到0,只使用比例调节;

2)从0开始逐渐增大Kp到阶跃响应出现等幅振荡,记下此时的比例增益Kcr; 3)通过图形,记下此时的等幅振荡的周期长度Pcr;

在得出以上参数后,用下表所示经验公式用来整定PID参数。

表5-2 经验公式 Tab.5-2 Empirical formula

控制器类型 P PI PID

Kp

Ti ?

Td 0 0

0.5Kcr 0.45Kcr

0.6Kcr

Pcr 1.2Pcr 2Pcr 8其中 Kcr是出现等幅振荡时的比例调节器的增益

22

辽宁工程技术大学毕业设计(论文)

Pcr是出现等幅振荡时的振荡周期

5.2 基于遗传算法的PID参数优化介绍

5.2.1 参数优化原理

PID控制器参数优化是基于控制策略

u(t)?Kpe(t)?Kdtde(t)?Ki?e(t)dt (5-1)

0dt下,利用遗传算法对PID参数[Kp,Kd,Ki]进行寻优操作,并找到最优参数[Kp,Kd,Ki]使得设定的指标函数

J?f(Kp,Kd,Ki)到达最优解。

5.2.2 参数优化步骤

PID参数寻优过程总体上是根据遗传算法的算法框架来的,主要包括: 1)确定参数与编码方式

首先根据实际情况确定[Kp,Kd,Ki]参数的大概范围,然后根据实际问题进行编码。若使用二进制编码,则进一步建立二进制数与每个参数之间的对应关系,然后再将二进制数连接起来,形成的长二进制串即为可进行操作运算的对象。

2)初始种群的建立

由于要通过编程实现整个过程的参数选取与整定,故而需要使用计算机来随机生成初始种群。若使用二进制编码,则使用二进制编码在0-1之间随机生成一定规模的随机数,然后按照四舍五入的规则规定生成随机数0—0.500之间的数代表0,而0.500—1.000之间的数代表1,并且需根据系统复杂程度定义种群规模。

3)确定适应度函数

适应度是指优化计算中群体中各个个体接近最优解的优良程度。遗传算法在搜索时基本不利用外部信息,仅以适应度函数为依据,利用种群中每个个体的适应度值来进行搜索。因此,适应度函数的选取至关重要,直接影响到遗传算法的收敛速度以及能否找到最优解。 常用的性能指标[19]:

a 误差积分

IE??e(t)dt0? (5-2)

b 绝对误差积分

IAE??e(t)dt0? (5-3)

23

基于遗传算法的PID控制器参数优化与仿真研究

该性能指标是一种容易应用的指标,达到其最佳性能时,表明系统具有适当的阻尼和令人满意的瞬态响应,因此系统将有较快的输出响应,但是超调量略大。

c 平方误差积分

(5-4) 这种性能指标着重权衡大的偏差,在大的起始偏差时有迅速减小偏差的倾向,因此系统响应速度快,有振荡,超调量大,稳定性较差。

d 时间乘绝对误差积分

0ISE??e2(t)dt? (5-5)

这是绝对误差积分指标的一种改进,它对阶跃响应的起始的大的偏差考虑较少,而是着重权衡瞬间响应后期的偏差,该指标的特点是瞬态响应超调量小,振荡有足够阻尼

e 时间乘平方误差积分

0ITAE??te(t)dt? (5-6)

这种性能指标是着重考虑瞬态响应后期出现的误差,较少考虑响应中大的起始误差。

0ITSE??te2(t)dt?对抑制大的误差,ISE比IAE好;而抑制小误差,IAE比ISE好;ITAE能够较好的抑制长时间存在的误差。因此,ISE指标对应的系统响应,其最大动态偏差较小,调节时间较长;与ITAE指标对应的系统响应调节时间短,但最大动态偏差大。误差积分指标往往与其他积分指标并用,很少作为系统整定的单一指标。选择不同的指标表示对系统不同的性能要求侧重。

4)选择遗传算子

选择算子一般采用比例选择算子:通过适应度函数来求各个个体的适应度,然后计算每个个体的复制概率,下代复制个体的个数即为复制概率与上代群体数相乘。复制概率大的个体将会以更大的概率被保留下来,而复制概率小的个体则逐渐将被淘汰。交叉操作和变异操作是影响遗传算法行为和性能的重要因素。在遗传算法中,交叉操作是新个体产生的主要原因,一般要求交叉算子适量的大。而变异算子可以提高局部寻优能力,但是过高有可能会破坏接近最优的个体,一般要求变异算子要适当地小一些。 综上所述,利用遗传算法的进行PID参数优化的具体步骤如下: 1)确定每个参数的大致范围,编码; 2)随机产生M个个体构成初始种群P(0);

3)将种群中的各个个体解码成相对应的参数值,用此参数来求适应度函数; 4)应用复制、交叉和变异算子对种群P(t)进行遗传操作,产生下一代群体。 5)重复步骤3)、4),直至满足收敛条件。

24

辽宁工程技术大学毕业设计(论文)

遗传算法流程图如图所示:

开始待优化参数Kp,Ki,Kd编码初始种群计算适配值Y满足条件?N遗传操作(复制、交叉、变异)新种群解码得到优化后的Kp,Ki,Kd寻优结束

图5—1 算法流程图 Fig.5-1 Algorithm flow chart

5.3 一阶滞后系统的PID参数整定

工业上的被控对象多为一阶或二阶系统,现在特假设某系统为一阶滞后系统,传递函数现在假设为

G(s)?1e?80s60s?1

现在利用已存在方法对其进行PID参数整定。

5.3.1 常规法整定

观察传递函数后,利用Z—N法对其进行参数整定。根据表4-1所给的数据,得到

T?60s ,K?1,??80s。根据公式,调节器选用PID调节器[20],则根据表中公式得:

25

基于遗传算法的PID控制器参数优化与仿真研究

Kp?1.2T???1.2?60?0.980

Ki?KpTiKp2??0.9?0.00562?80

Kd?KpTd?0.5Kp??0.5?0.9?80?36利用上述参数,在MATLAB中进行阶跃响应的仿真,得到其响应曲线如下图:

1.41.210.80.60.40.20050010001500200025003000

图5-2 阶跃响应曲线 Fig.5-2 The step response curve

5.3.2 基于遗传算法的PID参数优化

按照前面所述的遗传算法流程,进行以下工作

[21]

1)确定范围和编码 根据Z-N法整定的参数知道其大概取值范围,经过考虑,决定使用二进制编码,二进制编码位数为10位,则三个参数组成长达30位的二进制字符串,其中前十位是KP ,中间十位是Kd ,后十位是Ki。其中KP取值范围是[0,2],Kd的取值范围是[0,50],Ki的取值范围是[0,1]。

2)生成初始种群 设置群体大小为50。

3)解码并确定适应度函数值 由于采用二进制编码方式,有固定的解码套路,方式是:

x?Umin?(Umax?Umin)*X2n?1 (5-7)

其中n是二进制编码位数,X为二进制表示的十进制数,[Umin,Umax]是其实数取值范围。 在程序中采用平方误差积分

J??e2(t)dt0?作为最优指标,为了尽量消除响应在前面

26

辽宁工程技术大学毕业设计(论文)

的震荡,减小调节时间,采用惩罚功能,当出现前一时刻的输出大于后一时刻时,将两者差值e'(t)再次加入最优指标[22],此时最优指标为 J??e2(t)?100e'(t)dt,由于遗传算

?0??法中按照最大化方向搜索,而最优参数应该使得最优指标最小,于是选取最优指标的倒数

f?1J

为适应度函数,即

程序实现如下:for i=1:1:P Ji(i)=error(i)^2; B=B+Ji(i); if i>1

erry(i)=y(i)-y(i-1); if erry(i)<0

B=B+100*abs(erry(i)); end end

end BsJ=B;

而对应于误差的计算中,就要求先求系统的输出,在遗传算法中,是使用离散方法计算

10.2835z?4?80sG(s)?eG(z)?y(k)的。60s?1z?0.7165 利用z变化,由于系统函数为 离散化后得

程序实现为:ts=20;

sys=tf(1,[60 1],'inputdelay',80); dsys=c2d(sys,ts,'z'); [num,den]=tfdata(dsys,'v');

运行后可得num[1]=0,num[2]=0.2835;den[1]=1,den[2]=-0.7165;

Y(z)0.2835z?4?G(z)??5?1num(2)zU(z)?Y(z)?den(2)zY(z) U(z)z?0.7165由得:改写为差分方程可得:y(k)??den(2)*y(k?1)?num(2)*u(k?5) 程序:u_1=0.0;u_2=0.0;u_3=0; u_4=0;u_5=0;y_1=0;

27

基于遗传算法的PID控制器参数优化与仿真研究

y(k)=-den(2)*y_1+num(2)*u_5; u_5=u_4;u_4=u_3;u_3=u_2; u_2=u_1;u_1=u(k);y_1=y(k);

4)设置遗传算子 遗传算子要遵守一定的原则:交叉算子要适量的大,变异算子要适量的小。

a 在遗传算法中选择采用比例选择策略,选择概率与个体适应度成正比,下代复制个体的个数为复制概率与上代字符串个数相乘。复制概率小的个体将逐渐被淘汰。同时为了尽量保证接近最优的个体被保留,特别使用了最优保持策略,将上一代适应度最高的个体代替适应度最低的个体。 程序实现:fi_sum=sum(fi);

fi_Size=(Oderfi/fi_sum)*Size; fi_S=floor(fi_Size);

kk=1;

for i=1:1:Size for j=1:1:fi_S(i)

TempE(kk,:)=E(Indexfi(i),:); kk=kk+1; end end

b 交叉操作是产生新个体的主要操作,在这里交叉算子选择要尽量大,Pc?0.8,采用单点交叉策略。 程序如下:pc=0.80;

n=ceil(30*rand);

for i=1:2:(Size-1)

temp=rand;

if pc>temp

for j=n:1:30 TempE(i,j)=E(i+1,j);

TempE(i+1,j)=E(i,j);

28

辽宁工程技术大学毕业设计(论文)

end end end

c 变异操作可以增加局部灵活性,但是变异概率过高,会破坏个体的稳定性,又会在一定程度上影响算法的收敛性能,所以不能过高。全局考虑后,决定采用自适应变异概率,

Pm?0.1?[1:1:Size]?0.07Size,即变异概率与适应度有关,适应度越小,变异概率

越大[23]。

程序如下:pm=0.1-(1:1:Size)*(0.07)/Size; for i=1:1:Size for j=1:1:3*CodeL; temp=rand; if pm>temp if TempE(i,j)==0 TempE(i,j)=1; else

TempE(i,j)=0; end end end end

5)设置终止条件 在本遗传算法中以进化代数作为终止条件。设置终止代数G?100,只要进化代数到达100代,算法自动停止,输出结果。 对程序执行,得到Kp?0.4516,

Kd?10.8016, Ki?0.0049

J?7.5410

得出最优指标J的优化过程和优化后阶跃响应过程曲线:

29

基于遗传算法的PID控制器参数优化与仿真研究

500450400350300BestJ25020015010050002040Times6080100

图5-3 最优指标J优化曲线

Fig.5-3 The optimization curve of the optimal indicator J

10.90.80.70.6Ideal position signalPosition signal tracking yd,y0.50.40.30.20.10 050010001500Time(s)200025003000

图5-4 阶跃响应曲线 Fig.5-4 The step response curve

将常规整定与遗传算法整定的图形放在一起可得:对于这个一阶滞后系统,常规法整定的调节时间大约是800s,而利用遗传算法整定后调节时间大概是600s,而且由图形可以看出,在反应的前期,采用遗传算法整定的参数会使得反应曲线更为平滑,可以获得更好的控制效果。所以,我们可以看出基于遗传算法的PID参数整定在一阶滞后系统中是有效的。

30

辽宁工程技术大学毕业设计(论文)

1.41.210.80.60.40.20050010001500200025003000

图5-5 混合阶跃响应曲线 Fig.5-5 The hybrid step response curve

5.4 二阶系统滞后系统的PID参数整定

设系统的传递函数是G(s)?2e?15s

(20s?1)(5s?1)1)确定范围和编码 使用10位二进制编码,其中前十位是Kp ,中间十位是Kd ,后十

位是Ki。其中Kp取值范围是[0,1],Kd的取值范围是[0,10],Ki的取值范围是[0,1]。 2)生成初始种群 设置群体大小为50。

3)解码并确定适应度函数值 在程序中采用时间乘绝对误差积分 ITAE??te(t)dt作

0?为最优指标,为了抑制超调,采用惩罚功能:一旦出现超调,将超调加入最优指标,此时最优指标为 J??te(t)?100e(t)dt。

0?程序实现:for i=1:1:P

Ji(i)=timef(i)*abs(error(i)); B=B+Ji(i); if i>1

erry(i)=y(i)-y(i-1); if erry(i)<0

B=B+100*abs(erry(i)); end end

end BsJ=B;

31

基于遗传算法的PID控制器参数优化与仿真研究

由于遗传算法中按照最大化方向搜索,而最优参数应该使得最优指标最小,于是选取

1最优指标的倒数为适应度函数,即f?。

J由于系统函数为 G(s)?2e?15s 离散化后得

(20s?1)(5s?1)0.1685z?4?0.1112z?5G(z)?

1?1.147z?1?0.2865z?2程序为:ts=5;

sys=tf(2,[100 25 1],’inputdelay’,15); dsys=c2d(sys,ts,'z')

[num,den]=tfdata(dsys,'v')

运行后可得num(1)=0,num(2)=0.1685,num(3)=0.1112;

den(1)=1,den(2)=-1.1467,den(3)=0.2865;

Y(z)0.1685z?4?0.1112z?5由得: ?G(z)??1?2U(z)1?1.147z?0.2865z差分方程为

y(k)??den(2)*y(k?1)?den(3)*y(k?2)?num(2)*u(k?4)?num(3)*u(k?5)

程序实现为:u_1=0.0;u_2=0.0;u_3=0; u_4=0;u_5=0;y_1=0;y_2=0;

y(k)=-den(2)*y_1-den(3)*y_2+num(2)*u_4+num(3)*u_5; u_5=u_4;u_4=u_3;u_3=u_2;

u_2=u_1;u_1=u(k);y_2=y1;y_1=y(k);

4)设置遗传算子 采用单点交叉,Pc?0.8;采用自适应变异概率,

Pm?0.1?[1:1:Size]?0.07Size。

5)设置终止条件 在本遗传算法中以进化代数作为终止条件。设置终止代数G?100,只要进化代数到达100代,算法自动停止,输出结果[24]

对程序进行执行后,得:Kp?0.3666,Kd?3.0205,Ki?0.0108,J?193.1111 最优指标J的优化曲线及优化后阶跃响应曲线:

32

辽宁工程技术大学毕业设计(论文)

260250240230BestJ22021020019002040Times6080100

图5-6 最优指标J优化曲线

Fig.5-6 The optimization curve of the optimal indicator

1.41.210.8Ideal position signalPosition signal tracking yd,y0.60.40.20 0100200Time(s)300400500

图5-7 阶跃响应曲线 Fig.5-7 The step response curve

由阶跃响应曲线可以看出,系统的超调量大概为3%,调节时间为90s,控制性能良好。由此可见遗传算法整定二阶滞后环节PID参数是有效的。

5.5 三阶系统的PID参数整定

设系统的传递函数是G(s)?400

s(s?10)(s?20)5.5.1 常规法整定

其整定方法如前面内容所示,要利用Z-N法第二种情况。

33

基于遗传算法的PID控制器参数优化与仿真研究

利用Z-N法的步骤可以的到Kcr?15,Pcr?0.5所以利用表4-2所给的经验公式可得:

Kp?0.6Kcr?0.6?15?9 ,Kd?KpTd?KpTi2KpPcrKpPcr8?9?0.5?0.5625 8Ki?

??2?9?36 利用所得数据,在MATLAB中进行仿真,结果如图所示: 0.51.61.41.210.80.60.40.20012345

图5-8 阶跃响应曲线 Fig.5-8 The step response curve

5.5.2 基于遗传算法的PID参数优化

1)确定范围和编码 根据Z-N法整定的参数知道其大概取值范围,使用10位二进制编

码,其中前十位是Kp ,中间十位是Kd ,后十位是Ki。其中Kp取值范围是[0,20],Kd的

取值范围是[0,1],Ki的取值范围是[0,50]。 2)生成初始种群 设置群体大小为50。

3)解码并确定适应度函数值 在程序中采用时间乘绝对误差积分 ITAE??te(t)dt作

0?为最优指标,为了抑制超调,采用惩罚功能,一旦出现超调,将超调加入最优指标,此时最优指标为 J??te(t)?15e(t)dt。

0?程序实现:for i=1:1:P

Ji(i)=timef(i)*abs(error(i)); B=B+Ji(i); if i>1

34

本文来源:https://www.bwwdw.com/article/vqm6.html

Top