基于遗传算法的pid参数的优化 控制策略–‡件/zzh/李树青-基于遗传... ·...

4
100 Technology 技术纵横 AUTOMATION PANORAMA 2013.3 摘要:PID参数的优化过程中,采用常规的整定方法,往往费时且难以 满足控制要求。选取遗传算法来进行参数寻优,该方法是一种不需要任何 初始信息并可以寻求全局最优解的、高效的优化组合方法。通过MATLAB 仿真实验结果表明,该方法可以应用于多数控制系统,并能达到良好的控 制效果。 关键词:遗传算法;PID控制;参数优化 Abstract: PID parameters optimization uses conventional methods for setting, which usually is time-consuming and difficult to meet the requirements of control. Genetic algorithm is adopted to select the parameters optimization, which does not require any initial information and seeks solutions for the global optimum. ATLAB simulation results show that this method can be applied to the majority of control systems, and can achieve good control. Key words: Genetic algorithms; PID control; Parameter optimization Based on Genetic Algorithm Optimization Parameters of the PID Control Strategy 李树青 (柳州柳工叉车有限公司,广西 柳州 545006) 只依赖于适应度函数,不需知道对象的全部信息,这样即使在对 象模型不确定的情况下,它仍可根据对象的输出情况对PID控制 器中的参数进行优化,而且遗传算法的群体优化机制使得它可能 找到全局最优解。 2 PID控制 2.1 PID控制原理 PID控制器本身是一种基于“过去”、“现在”和“未来”信 息估计的简单控制算法。常规PID调节器是一种应用广泛、技术成 熟的控制方法。PID控制的基本思想是将偏差的比例、积分和微分三 参数通过线性组合构成控制器,对被控对象进行控制,采用PID控制 时,系统控制品质的优劣取决于上述三参数的整定。如图1所示。 1 PID控制系统原理框图 PID控制器根据给定值r(t)和实际输出值y(t)构成控制偏差 error(t)=rin(t) – yout(t) (1) 将偏差按比例、积分和微分通过线性组合构成控制量,对被 控对象进行控制,其控制规律为: ) ) ( ) ( 1 ) ( ( ) ( 0 1 dt t derror T dt t error T t error k t u D t p + + = (2) 式中, p k ——比例系数; 1 T ——积分时间常数; D T ——微分 时间常数。 PID控制器各校正环节作用如下: 1)比例环节。及时成比例地反映控制系统的偏差信号, 基于遗传算法的PID参数的优化 控制策略 1 引言 PIDProportional-Intigral-Differential)控制是比例积分微分 控制的简称。在生产过程自动控制的发展历程中,PID控制是历 史最久且生命力最强的基本控制方式之一。其优点主要体现在以 下两个方面:(1)简单实用,易于实现,性能优良。PID控制 器具有简单而固定的形式,原理也不复杂,使用起来很方便,控 制效果也很好。(2)鲁棒性能优良。其控制品质对被控对象特 性的变化不大敏感,在很宽的操作条件范围内都能保持较好的鲁 棒性。由于具有这些优点,PID控制被广泛应用于工业与民用领 域,并取得了很好的经济效果。但PID参数复杂繁琐的参数整定 过程一直困扰着工程技术人员,用经验规则加试凑的方式来调整 PID控制参数,往往费时且难以满足控制要求,因此,研究PID 参数整定技术具有十分重要的工程实践意义。遗传算法(Genetic AlgorithmCA)PID参数的优化整定提供了新的途径。遗传算法 比例环节 积分环节 微分环节 被控对象 给定 e(t) r(t) u(t) + + + f(t) - 文献标识码:B 文章编号:1003-0492(2013)03-0100-04 中图分类号:TP273

Upload: others

Post on 16-Jun-2020

102 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 基于遗传算法的PID参数的优化 控制策略–‡件/zzh/李树青-基于遗传... · (4)基本遗传算法的运行参数:有下述4个运行参数需要提 前设定:

100

Technology 技术纵横

AUTOMATION PANORAMA 2013.3

摘要:在PID参数的优化过程中,采用常规的整定方法,往往费时且难以

满足控制要求。选取遗传算法来进行参数寻优,该方法是一种不需要任何

初始信息并可以寻求全局最优解的、高效的优化组合方法。通过MATLAB

仿真实验结果表明,该方法可以应用于多数控制系统,并能达到良好的控

制效果。

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

Abstract: PID parameters optimization uses conventional methods for setting,

which usually is time-consuming and difficult to meet the requirements of

control. Genetic algorithm is adopted to select the parameters optimization,

which does not require any initial information and seeks solutions for the global

optimum. ATLAB simulation results show that this method can be applied to the

majority of control systems, and can achieve good control.

Key words: Genetic algorithms; PID control; Parameter optimization

Based on Genetic Algorithm Optimization Parameters of the PID Control Strategy

李树青 (柳州柳工叉车有限公司,广西 柳州 545006)

只依赖于适应度函数,不需知道对象的全部信息,这样即使在对

象模型不确定的情况下,它仍可根据对象的输出情况对PID控制

器中的参数进行优化,而且遗传算法的群体优化机制使得它可能

找到全局最优解。

2 PID控制2.1 PID控制原理

PID控制器本身是一种基于“过去”、“现在”和“未来”信

息估计的简单控制算法。常规PID调节器是一种应用广泛、技术成

熟的控制方法。PID控制的基本思想是将偏差的比例、积分和微分三

参数通过线性组合构成控制器,对被控对象进行控制,采用PID控制

时,系统控制品质的优劣取决于上述三参数的整定。如图1所示。

图1 PID控制系统原理框图

PID控制器根据给定值r(t)和实际输出值y(t)构成控制偏差

error(t)=rin(t) – yout(t) (1)

将偏差按比例、积分和微分通过线性组合构成控制量,对被

控对象进行控制,其控制规律为:

)

)()(

1)(()(

01 dttderrorT

dtterrorT

terrorktu Dt

p ++=

(2)

式中, pk ——比例系数; 1T——积分时间常数; DT ——微分

时间常数。

PID控制器各校正环节作用如下:

(1)比例环节。及时成比例地反映控制系统的偏差信号,

基于遗传算法的PID参数的优化控制策略

1 引言PID(Proportional-Intigral-Differential)控制是比例积分微分

控制的简称。在生产过程自动控制的发展历程中,PID控制是历

史最久且生命力最强的基本控制方式之一。其优点主要体现在以

下两个方面:(1)简单实用,易于实现,性能优良。PID控制

器具有简单而固定的形式,原理也不复杂,使用起来很方便,控

制效果也很好。(2)鲁棒性能优良。其控制品质对被控对象特

性的变化不大敏感,在很宽的操作条件范围内都能保持较好的鲁

棒性。由于具有这些优点,PID控制被广泛应用于工业与民用领

域,并取得了很好的经济效果。但PID参数复杂繁琐的参数整定

过程一直困扰着工程技术人员,用经验规则加试凑的方式来调整

PID控制参数,往往费时且难以满足控制要求,因此,研究PID

参数整定技术具有十分重要的工程实践意义。遗传算法(Genetic

Algorithm,CA)为PID参数的优化整定提供了新的途径。遗传算法

比例环节

积分环节

微分环节

被控对象 给定 e(t)

r(t)

u(t) +

+

+

f(t)

-

文献标识码:B 文章编号:1003-0492(2013)03-0100-04 中图分类号:TP273

Page 2: 基于遗传算法的PID参数的优化 控制策略–‡件/zzh/李树青-基于遗传... · (4)基本遗传算法的运行参数:有下述4个运行参数需要提 前设定:

1012013.3 AUTOMATION PANORAMA

偏差一旦产生,控制器立即产生控制作用,以减少偏差。

(2)积分环节。主要用于消除静差,提高系统的无差度。

(3)微分环节。能反映偏差信号的变化趋势,并能在偏差

信号值变大之前,在系统中引入一个有效的早期修正信号,从而

加快系统的动作速度减少调节时间。

3 遗传算法及其对PID整定原理3.1 遗传算法的原理

3.1.1遗传算法概述

遗传算法(Genetic Algorithms,GA)是1962年由美国Michigan

大学的Holland教授提出的模拟自然界遗传机制和生物进化而成的

一种随机并行搜索优化方法。他将“优胜劣汰,适者生存”的生

物进化理论引入优化参数的编码串群体中,按所选择的适应度值

函数并通过遗传中的选择、交叉和变异对个体进行筛选,使适应

度值高的个体被保留下来,组成新的群体,新的群体既继承了上

一代的信息,又优于上一代。这样周而复始,群体中的个体适应

度值不断提高,直至满足一定的条件。

3.1.2 遗传算法的主要特点

(1)遗传算法是对参数的编码进行操作,而非对参数本身;

(2)遗传算法是从许多点开始进行操作,而非局限于一点;

(3)遗传算法是通过目标函数来计算适配值,而不需要其

他推导,从而对问题的依赖性较小;

(4)遗传算法的寻优规则是由概率决定的,而非确定性;

(5)遗传算法在解空间进行高效启发式搜索,而非盲目地

穷举或完全随机搜索;

(6)遗传算法对于待寻优的函数基本无限制,它既不要求函数

连续,也不要求函数可微,既可以是数学解析式所表示的显函数,

又可以是映射矩阵甚至是神经网络的隐函数,因而应用范围较广;

(7)遗传算法具有并行计算的特点,因而可通过大规模并

行计算来提高计算速度;

(8)遗传算法更适合大规模复杂问题的优化;

(9)遗传算法计算简单,功能强。

3.1.3 遗传算法的基本操作

(1)复制(Reproduction Operator)

复制是从一个旧种群中选择生命力强的个体串产生新种群的

过程。根据位串的适配值拷贝,也就是指具有高适配值的位串更有

可能在下一代中产生一个或多个子孙。他模仿了自然现象,应用了

达尔文的适者生存理论。复制操作可以通过随机数方法来实现。若

用计算机程序来实现。此外,还可以通过计算方法实现,其中较典

型的几种方法为适应度比例法、期望值法、排位次法等。

(2)交叉(Crossover Operator)

复制操作能从旧种群中选择出优秀者,但不能创造新的染色

体。而交叉模拟了生物进化过程中的繁殖现象,通过两个染色体

的交换组合,来产生新的优良品种。它的过程为:在匹配池中任

选两个染色体,随机选择一点或多点交换点位置;交换双亲染色

体右边的部分,即可得到两个新的染色体数字串。交换体现了自

然界中信息交换的思想。交叉有一点交叉、多点交叉、还有一致

交叉、顺序交叉和周期交叉。

(3)变异(Mutation Operator)

变异运算用来模拟生物在自然的遗传环境中由于各种偶然因

素引起的基因突变,它以很小的概率随机改变遗传基因(表示染色

体的符号串的某一位)的值。在染色体以二进制编码的系统中,它

随机地将染色体的某一个基因由1变为0,或由0变为1,若只有选

择和交叉,而没有变异,则无法在初始基因组合以外的空间进行

搜索,使进化过程在早期就陷入局部解而进入终止过程,从而影

响解的质量。为了在尽可能大的空间中获得质量较高的优化解,

必须采用变异操作。

3.1.4 遗传算法的构成要素

(1)染色体编码方法:基本遗传算法使用固定长度的二进

制符号来表示群体中的个体,其等位基因是由二值符号集{0,1}所

组成。初始个体的基因值可用均匀分布的随机值来生成。

(2)个体适应度评价:基本遗传算法与个体适应度成正比的

概率来决定当前群体中每个个体遗传到下一代群体中的概率多少。

为正确计算这个概率,要求所有个体的适应度必须为正数或零。应

此,必须先确定由目标函数到个体适应度之间的转换规则。

(3)遗传算子:基本遗传算法使用下述三种遗传算子:

选择运算使用比例选择算子;

交叉运算使用单点交叉算子;

变异运算使用基本位变异算子或均匀变异算子。

(4)基本遗传算法的运行参数:有下述4个运行参数需要提

前设定:

M:群体大小,即群体中所含个体的数量,一般取为

20~100;

G:遗传算法的终止进化代数,一般取为100~500;

cp :交叉概率,一般取为0.4~0.99;

mp :变异概率,一般取为0.0001~0.1。

3.1.5 遗传算法的应用步骤

对于一个需要进行优化的实际问题,一般可按下述步骤构造

遗传算法:

第一步:确定决策变量及各种约束条件,即确定出个体的表

现型X和问题的解空间;

第二步:建立优化模型,即确定出目标函数的类型及数学描

述形式或量化方法;

第三步:确定表示可行解的染色体编码方法,即确定出个体

Page 3: 基于遗传算法的PID参数的优化 控制策略–‡件/zzh/李树青-基于遗传... · (4)基本遗传算法的运行参数:有下述4个运行参数需要提 前设定:

102

Technology 技术纵横

AUTOMATION PANORAMA 2013.3

的基因型x及遗传算法的搜索空间;

第四步:确定解码方法,即确定出由个体基因型x到个体表

现型X的对应关系或转换方法;

第五步:确定个体适应度的量化评价方法,即确定出由目标

函数值f(x)到个体适应度F(x)的转换规则;

第六步:确定遗传算法的有关运行参数,即M,G, cp , mp

等参数。

3.2 遗传算法对PID整定

3.2.1遗传算法对PID整定的原理

遗传算法对PID控制参数的整定,就是在已知控制PID控

制策略为( ) ( ) ( ) ( )dtteKdttdeKteKt IDP ++= / 的情况下,利用遗传算

法对PID控制器参数[ ]dip KKK ,, 进行寻优,寻找合适的控制参数集

[ ]dip KKK ,, ,使给定的性能指标: ( ){ }dip KKKgJ ,,max= 为最优。

实现这一优化寻优过程如下:

(1)参数的确定及表示

首先确定参数范围,该范围一般是由用户给定,然后由精度

的要求,对其进行编码。选取二进制字串来表示每一个参数,并

建立与参数间的关系。再把二进制串连接起来就组成一个长的二

进制字串 ,该字串为遗传算法可以操作的对象。

(2)选取初始种群

因为需要编程来实现各个过程,所以采用计算机随机产生

初始种群。针对二进制编码而言,先产生0~1之间均匀分布的的

随机数,然后规定产生的随机数0~0.5之间代表0,0.5~1之间代表

1。此外,考虑到计算的复杂程度来规定种群的大小。

(3)适配函数的确定

一般的寻优方法在约束条件下可求得满足条件的一组参数,

在设计中从该组参数中寻找一个最好的。衡量一个控制系统的指标

有三个方面:稳定性、准确性和快速性。上升时间反映了系统的快

速性,上升时间越短,控制进行的越快,系统品质也就越好。

如果单纯追求系统的动态特性,得到的参数很可能使控制

信号过大,在实际应用中会因系统中固有的饱和特性而导致系统

不稳定,为了防止控制能量过大,在目标函数中加入控制量。因

此为了使控制效果更好,我们给出了控制量,误差和上升时间作

为约束条件。因为适应函数同目标函数相关,所以目标函数确定

后,直接将其作为适配函数进行参数寻优。最优的控制参数也就

是在满足约束条件下使f(x)最大时,x所对应的控制器参数。

(4)遗传算法的操作

首先利用适应度比例法进行复制。即通过适配函数求适配

值,进而求每个串对应的复制概率。复制概率与每代字串的个数

的乘积为该字串在下一代中应复制的个数。复制概率大的在下一

代中将有较多的子孙,相反则会被淘汰。

其次进行单点交叉,交叉概率为 cp 。从复制后的成员里以 cp

的概率选取字串组成匹配池,交叉的位置也是随机确定的。

最后以概率 mp 进行变异。假如每代有15个字串,每个字串12

位,则共有15×12=180个串位,期望的变异串位数为180×0.100=2

(位),即每代中有俩个串位要由1变为0或又0变为1。

初始种群经过复制,交叉及变异得到新一代种群,该种群经

解码后代入适配函数,观察是否满足约束条件,若不满足,则重

复以上操作直到满足为止。约束条件由具体问题所定,只要各目

标函数在规定范围内,则终止计算。以上操作过程可用图2表示。

图2 遗传算法的流程图

3.2.2遗传算法对PID整定的具体步骤

(1)确定各参数的大致范围和编码长度并编码;

(2)随机产生n个体构成初始种群 ( )0P ;

(3)将种群中各个体解码成对应的参数值,用此参数求代

价函数值J 和适应函数值f,取J=1/f;

(4)应用复制、交叉和变异算子对种群P(t)进行操作,产生

下一代种群P(t+1);

(5)重复步骤(3)和(4),直至参数收敛或达到预定的指标。

4 遗传算法程序设计4.1 基于实数编码遗传算法的PID整定

设被控对象为二阶传递函数:

G(s)= ss 50400

2 +采样时间为1ms,输入指令为一阶跃信号。

为获取满意的过渡过程动态特性,采用误差绝对值时间积

分性能指标作为参数选择的最小目标函数。为了防止控制能量过

参数

编码

种群 1

计算适配值

计算适配值

满足要求

复制

变异

交叉

种群 2

种群 2 > 种群 1

解码

寻优结束

Page 4: 基于遗传算法的PID参数的优化 控制策略–‡件/zzh/李树青-基于遗传... · (4)基本遗传算法的运行参数:有下述4个运行参数需要提 前设定:

1032013.3 AUTOMATION PANORAMA

大,在目标函数中加入控制输入的平方项。选用式3作为参数选取

的最优指标:

() ()( ) stwdttuwtewJ 30

221 ++=

(3)

式3中, ( )te 为系统误差, ( )tu 为控制器输出, st 为上升时间,

321 ,, www 为权值。

为了避免超调,采用了惩罚功能,即一旦产生超调,将超调

量作为最优指标的一项,此时最优指标为:

if e(t)<0

() ( ) ()( ) stwdtteutuwtewJ 30 42

21 +++= (4)

式4中, 3w 为权值,且 ( ) ( ) ( ) ( )tytytyteww ,1,14 −−=>> 为被控对

象输出。取 100,0.2,001.0,999.0 4321 ==== wwww 。

4.2 设计程序并仿真

(1)定义遗传算法中使用的样本个数为30,进化代数为100

代,交叉概率为 90.0=cP ,变异概率为 033.0=mP 。参数 pk 的取值范

围为[0,20], di kk , 的取值范围为[0,1],参照参考文献设计程序

并运行,得到如下结果:

经过100代的进化,获得的优化参数如下:PID整定结果为 pk

= 17.9472, =ik 0.2678 , =dk 0.5689,性能指标是J= 23.8378代价

函数J的优化过程和采用整定后的PID控制阶跃响应如图3和图4。

图3、图4 PID控制阶跃响应图

从图3、4可知,当进化到27代时,已得到最优解,且调节过

程良好。

通过对程序的分析,发现了一些可改进的地方,在程序中,

只是对父代的一个最优解进行了替代保留,并没有把适应度小的

个体(即差的个体)去除,这样,差的个体与好的个体同概率交

叉和变异,减少了下一代出现更优解的可能性。

(2)定义遗传算法中使用的样本个数为30,进化代数为100

代,交叉概率为 90.0=cP ,变异概率为 033.0=mP 。参数 pk 的取值范

围为[0,20], di kk , 的取值范围为[0,1],修改原程序。在对父代

进行适应度排序后,把最好的10个个体进行强制交叉,并把交叉

结果替代最差的10个个体,这样,下一代出现更优解的可能性大

大增加了,收敛速度也大大加快了。

运行修改后的程序,经过100代的进化,获得的优化参数如

下:PID整定结果为 pk = 17.9668, =ik 0.2678 , =dk 0,性能指标

是J= 23.7153代价函数J的优化过程和采用整定后的PID控制阶跃响

应如图5和图6。

图5、图6 运行修改后的程序,PID控制阶跃响应图

从图5、6可知,通过保留的较优个体的增加、较优个体强制

交叉后替代较差个体,系统收敛速度大大增加,得到的最优个体

也更好,在3到5代的遗传后已得到最优解,且不影响调节过程。

5 结语遗传算法操作简单、鲁棒性强、易于并行化,是一种高效的优

化搜索方式。遗传算法具有全局搜索能力,能快速达到全局收敛。

将遗传算法应用于PID控制器的参数寻优。在合理设计相关遗传算

子的前提条件下,可以快速搜索到优化的参数值。经过仿真实验证

明是一种可行的且效率较高的算法,它解决了经典PID控制算法在

实际应用中存在的缺陷,提高了算法的寻优精度和收敛速度。但

是,由于随着自适应遗传算法所处理的数据量的增加,运算时间较

长。减少迭代次数和初始群体数,可以减少运行时间,但又会使所

得结果的精度降低,这也是它的不足之处。故而需要优化程序,使

之收敛速度加快,才能据此减少迭代次数,以保证结果的精度。

参考文献:

[1]陶永华,尹怡欣,葛芦生.新型PID控制及其应用[M].北京:机械工业出版

社,2003.

[2]周明,孙树栋.遗传算法原理及应用[M.北京:国防工业出版社,2002.

[3]刘金琨.先进PID控制及其Matlab仿真[M].北京:电子工业出版社,2003.

[4]陈在平,杜太行.控制系统计算机仿真与CADMatlab语言应用[M].天津:天

津大学出版社,2001.

[5]雷英杰.MATLAB遗传算法工具箱及应用[M].西安:西安电子科技大学出

版社,2005.

[6]玄光男, 程润伟.遗传算法与工程优化[M].北京:清华大学出版社,2004.

[7](美)米凯利维茨(Michalewicz,Z.).演化程序:遗传算法和数据编码的

结合[M].北京:科学出版社,2000.

[8]Mitsuo Gen, RunweiCheng.Genetic Algorithms and Engineering Design[S].

Wiley-IEEE,1997.

作者简介

李树青(1984-)男,湖南人,学士,助理工程师,现就职于

柳州柳工叉车有限公司,主要研究方向为电气、控制系统。