APP下载

基于小生境混沌免疫算法的PID参数优化

2013-12-14鲍克胡旭东向忠

电气自动化 2013年4期
关键词:小生境适应度遗传算法

鲍克,胡旭东,向忠

(浙江理工大学 机械与自动控制学院,浙江 杭州 310018)

0 引言

PID控制器具有结构简单、鲁棒性好、可靠性高等优点,被广泛应用于各种工业对象和过程[1-2]。PID参数的优化是 PID控制中的关键问题,控制参数的优劣直接影响控制效果的好坏,并与系统的稳定、经济运行息息相关[3]。随着工业技术的发展,被控对象日趋复杂,部分被控对象具有大滞后、非线性、无法建立精确数学模型等特点,利用传统方法很难获取最优或次优的PID参数组合。

随着人工智能技术和自动控制领域的相互渗透,各种先进PID参数优化方法层出不穷,许多PID控制器融合了模糊控制、神经网络技术、专家系统、遗传算法等智能技术,这给PID参数优化的研究注入了新的活力[4-5]。然而,模糊控制技术存在精度不高的缺点,神经网络训练周期较长,遗传算法容易陷入局部最优[6-7]。

本文结合小生境机制、混沌细搜索和人工免疫算法,提出了一种基于小生境混沌免疫算法的PID参数优化方法,并通过仿真实例验证了该方法的有效性。

1 PID控制原理

PID控制器是一种线性控制器,它根据给定值和实际输出值构成控制偏差,将偏差的比例、积分和微分通过线性组合构成控制量对被控对象进行控制。

依据PID控制原理,调节kp、ki、kd3个参数,就可以改变控制量。在采用免疫算法对PID参数进行优化时,可将控制器的性能指标作为目标优化函数,视为抗原,而将参数 kp、ki、kd作为优化问题的解,视为抗体,其原理如图1所示。

图1 基于小生境混沌免疫算法的PID控制系统原理框图

2 小生境混沌免疫算法

2.1 混沌细搜索

混沌是非线性系统中普遍存在的一种复杂现象,混沌运动具有随机性,遍历性和对初值高度敏感的特点,它能在一定范围内按其自身规律不重复地遍历所有状态[8-9]。将混沌动力学特性与免疫算法结合起来,利用免疫算法进行全局粗搜索得到次优解后,再利用混沌算法在次优解周围进行细搜索,能够加强算法的局部寻优能力。

本文采用 Logistic方程产生混沌变量。Logistic映射形式如下:

式中Xn代表经过n次混沌迭代后的混沌变量,其中0<X0<1;当μ=4时,Logistic映射处于完全混沌状态,其混沌空间为(0,1)。

由于混沌变量的变化范围为(0,1),而PID参数不一定在此范围内,因此在进行混沌细搜索前需要将PID参数由解空间映射至混沌空间。设 kp的取值范围[kpmin,kpmax],混沌变量为 X1,n;ki的取值范围[kimin,kimax],混沌变量为 X2,n;kd的取值范围[kdmin,kdmax],混沌变量为 X3,n,则映射方程如下:

混沌细搜索结束后,再次通过映射方程将新一代混沌变量由混沌空间映射至解空间。

2.2 小生境机制

小生境机制运用到优化问题的主要思想是:当两个个体的海明距离小于预先设定的小生境距离L时,认为这两个个体距离过近并对其中适应度低的个体进行惩罚。

本算法中,将上一代抗体中适应度最高的n个抗体,与当前代抗体混合,计算任意两个抗体间的海明距离,若计算结果小于小生境距离,则对适应度低的抗体施加一个惩罚系数,待全部抗体的计算完成后,剔除适应度最低的n个抗体。抗体间的海明距离可由下式计算:

式中 d(v,w)表示抗体 v和抗体 w的海明距离;kvp、kvi、kid分别代表抗体v的比例、积分、微分三个参数。

小生境距离L的选取与解空间的范围有关。解空间的范围越大,L也越大。根据这种思想,设计如下小生境距离计算公式:

式中[kpmin,kpmax]、[kimin,kimax]、[kdmin,kdmax]分别表示 kp、ki、kd的取值范围,λ∈(0,1)。

公式(4)给出了小生境距离L的选取依据,通过λ可自由调整小生境机制对算法的影响。当λ取值越大,小生境距离L也越大,更多的抗体对处于小生境距离内,受到惩罚的抗体增加。此时,抗体群保持抗体多样性的能力较强,但收敛速度较慢。当λ取值减小时,处于小生境距离内的抗体对减少,抗体群的收敛速度加快。因此,一般可在算法运行的前期,设定较大的λ值,保持抗体多样性;在算法运行的后期,可逐步减小λ,保证算法的快速收敛。

在小生境机制的实现过程中,将上一代适应度最高的数个抗体与当前代混合,这在本质上实现了精英保留,可有效防止抗体群在进化过程中丢失最优抗体,因而引入小生境机制后的免疫算法无需再另行实现精英保留策略。

2.3 基于抗体浓度的人工免疫算法

人工免疫算法与遗传算法的核心区别在于选择复制策略,人工免疫算法依据抗体适应度和浓度两个方面对抗体进行复制操作,对抗体质量的评价更为全面,减小了算法过早收敛的可能。

人工免疫算法中,抗体相似度、浓度、期望繁殖率、选择复制率概念如下:

在给定抗体群中,若抗体v和抗体w满足公式(5),则称抗体v与抗体w相似。式中fv和fw分别为抗体v和抗体w的适应度;ε称为抗体相似度阈值。越接近于0,抗体v和抗体w相似度越高。

在给定抗体群中,与抗体 v相似的抗体的个数(计入抗体 v自身)称为抗体v的浓度,记为cv。

在给定抗体群中,抗体 v的期望繁殖率 ev可由公式(6)表示。式中,β是反映期望繁殖率中抗体适应度和浓度相对重要性的一个可变参数。

在给定抗体群中,抗体v被选择复制的概率psv可由公式(7)表示。式中m表示种群规模。

交叉算子和变异算子是影响免疫算法行为和性能的关键因素之一,对算法收敛性有直接影响。为了保证算法的快速收敛和抗体群的多样性,对于适应度高于群体平均适应度的抗体,可采用较小的pc和pm;对于适应度低于群体平均适应度的抗体,可采用较大的pc和pm。本算法在变异操作中采用如下自适应变异概率:

式中fv表示抗体v的适应度,fmax表示当前抗体群的最大适应度,γ为变异系数,可自由调整。

选用误差绝对时间积分性能指标作为参数选择的目标函数。为了防止控制能量过大,在目标函数中加入控制输入的平方项,为了避免超调,在产生超调时将超调量作为目标函数的一项。

式中e(t)为系统误差,u(t)为控制器输出,tr为上升时间,w1,w2,w3,w4为权值,ey(t)=y(t)-y(t-1)。

抗体适应度与目标函数值一般通过下式转化:

但是公式(10)无法避免数值计算带来的舍入误差和计算溢出。为了提高算法的计算精度,可对抗体适应度函数作如下改进:

式中c为一固定系数,一般取为10n(n为正整数),δ为一极小的正实数。

2.4 小生境混沌免疫算法流程

(1)随机生成m个抗体,组成初始抗体群,设置进化代数 t=1。

(2)依公式计算各个抗体的适应度fk(k=1,2,…,m),根据适应度对抗体进行降序排序,记忆前h个抗体为q'(t),记忆前n个抗体为p'(t)。

(3)依公式(2)将q'(t)中的h个抗体转化至混沌空间。

(4)依公式(1)分别对h组混沌变量进行迭代,将迭代所得的混沌变量转化为PID参数,计算其适应度,若混沌迭代所得抗体的适应度大于原抗体的适应度,则替代。循环执行本步骤10次,

(5)依公式(5)计算各抗体的抗体相似度及抗体浓度。

(6)依公式(6)计算各抗体的期望繁殖率,依公式(7)计算各抗体的选择概率,根据选择概率利用“轮盘赌法”对抗体群执行选择和复制操作。

(7)对抗体群执行交叉操作。

(8)依公式(8)计算各抗体的变异率,对抗体群执行变异操作。

(9)将上一步得到的m个抗体和p'(t)中的n个抗体合并,得到一个含有m+n个抗体的新抗体群,依据公式(3)计算任意两个抗体的海明距离。当<L时,比较抗体 v和抗体 w的适应度大小,对其中适应度低的抗体施加一个惩罚系数p。

(10)依据新的适应度对这m+n个抗体进行降序排列,取前m个抗体作为新一代抗体群,记忆前h个抗体为q'(t),记忆前n个抗体为p'(t)。

(11)令t=t+1,若 t≤NC,则返回3);否则,输出最优 PID参数,算法结束。

3 仿真及分析

3.1 仿真对象选取与参数设定

仿真实验以HHS-2箱式电阻炉数学模型为对象,在MATLAB2011a上进行。HHS-2箱式电阻炉的数学模型如下:

设定 kp的取值范围为[0,1],ki的取值范围为[0,1],kd的取值范围为[0,10],种群规模 m=0,最大进化代数 NC=150,交叉概率 pc=0.7,变异系数 γ =2.5,λ =0.1,c=1 000,惩罚系数 p=0.5,采用实数编码,以单位阶跃信号为输入。

采用带有精英保留策略的遗传算法和人工免疫算法作为对比对象,其变异概率pm=0.1,其余参数设置与小生境混沌免疫算法相同。

图2 的单位阶跃曲线图

3.2 仿真结果及分析

表1列出了三种算法下的阶跃响应系统性能指标,其中,NCIA表示小生境混沌免疫算法,调整时间的允许误差范围为2%,由于小生境混沌免疫算法无超调,故不统计其上升时间。图2为的单位阶跃响应曲线,图 3为目标函数的优化曲线。分析表1和图2可知,小生境混沌免疫算法下系统的调节时间ts、超调量Mp较 SGA、AIA 大幅下降,系统拥有更好的动态性能。分析图3可知,小生境混沌免疫算法和AIA都具备快速寻优能力,GA的寻优速度明显慢于两者。综上所述,基于小生境混沌免疫算法的PID控制器具有更好的控制效果。

图3 目标函数的优化曲线

表1 的阶跃响应系统性能指标

4 结束语

本文在免疫算法中引入小生境机制和混沌细搜索机制,提出了一种基于小生境混沌免疫算法的PID参数优化方法。仿真结果表明,利用小生境混沌免疫算法设计的PID控制器可以有效地提高控制性能,其控制效果优于遗传算法和人工免疫算法下的PID控制器。

[1]李凌宇,郭贵法,许锦标.基于模拟退火遗传算法的PID参数整定与优化[J].广东工业大学学报,2010,27(2):80-83.

[2]肖理庆,邵晓根,张亮,等.利用改进遗传算法优化 PID参数[J].计算机工程与应用,2010,46(1):200-202.

[3]刘函,刘丁.基于支持向量机的参数自整定 PID非线性系统控制[J].控制理论与应用,2008,25(3):468-474.

[4]盛孟刚,黄辉先.基于矢量距免疫遗传算法的PID参数整定[J].计算机工程与应用,2009,45(12):212-213.

[5]P.Cominos,N.Munro.PID controllers:recent tuning methods and design to specification[J].IEE Proceedings - Control Theory and Applications,2002,149(1):46-53.

[6]李丽香,彭海朋,王向东,等.基于混沌蚂蚁群算法的PID控制器的参数整定[J].仪器仪表学报,2006,27(9):1104-1106.

[7]伍铁斌,成运,周桃云,等.基于混沌遗传算法的PID参数优化[J].计算机仿真,2009,26(5):202-204.

[8]何宏,钱锋.基于免疫网络调节机理的混沌超变异免疫算法[J].系统仿真学报,2008,20(11):2810-2813.

[9]郭子龙,王孙安.三种混沌免疫优化组合算法性能之比较研究[J].系统仿真学报,2005,17(2):307-309.

猜你喜欢

小生境适应度遗传算法
改进的自适应复制、交叉和突变遗传算法
喀斯特小生境与植物物种多样性的关系
——以贵阳花溪公园为例
一种基于改进适应度的多机器人协作策略
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于遗传算法和LS-SVM的财务危机预测
基于小生境遗传算法的相控阵雷达任务调度
基于空调导风板成型工艺的Kriging模型适应度研究
软件发布规划的遗传算法实现与解释
基于改进的遗传算法的模糊聚类算法
适应值共享小生境遗传算法实现与性能比较分析