当前位置:首页 期刊杂志

基于改进免疫遗传算法的PID参数优化仿真研究

时间:2024-06-19

刘淑荣,李 楠,庞 伟

(1.长春工程学院电气与信息学院,长春 130012; 2.吉林省邮电规划设计院有限公司,长春 130021;3.配电自动化吉林省高校工程研究中心,长春130012)

基于改进免疫遗传算法的PID参数优化仿真研究

刘淑荣1,3,李 楠2,庞 伟1,3

(1.长春工程学院电气与信息学院,长春 130012; 2.吉林省邮电规划设计院有限公司,长春 130021;3.配电自动化吉林省高校工程研究中心,长春130012)

将改进免疫遗传算法与传统PID控制的参数优化进一步结合,利用免疫遗传操作自身的特点,同时引入疫苗的实时更新理念,保证了疫苗的先进性,加速系统对于全局最优解的搜索速度。以锅炉温度为例,经MATLAB-Simulink仿真证明,应用改进免疫遗传算法,对温度PID参数进行优化,使系统具有了更好的控制性能,也保证了锅炉温度的实时控制效果。

改进免疫遗传算法;PID参数优化;锅炉温度;MATLAB-Simulink仿真

0 引言

PID调节器是最早发展起来也是应用最为广泛的一种控制策略。在工业实际应用中,当被控对象的结构和参数不能被完全掌握,或难以建立精确的数学模型时,最常用的就是PID控制,而PID控制效果完全取决于PID参数的整定与优化。

随着计算机技术的发展,一些新的智能算法得到了迅速发展和广泛应用。本文通过对免疫算法和传统遗传算法的综合分析,提出了一种改进的免疫遗传优化算法,并将其应用到PID参数的优化中。该算法借鉴自体免疫的概念,在传统遗传算法的基础上加入自体免疫算子,具有自体免疫及免疫记忆功能,可加快搜索速度,确保快速搜索全局最优解,同时具有保持抗体的多样性及自我调节的功能,避免未成熟收敛,提高全局搜索的能力。以锅炉温度为例,应用改进免疫遗传算法,对锅炉温度PID系统控制参数进行优化整定,使系统具有更好的控制性能。

1 改进免疫遗传算法的基本工作原理[1-3]及实现过程

1.1 改进免疫遗传算法的基本原理[1-3]

免疫遗传算法是在遗传算法的基础上附加以下优化步骤:计算亲和力,计算期望值,构造记忆单元。亲和性的计算包含:抗原和抗体的关系,即解和目标函数的匹配程度;抗体之间的关系,即抗体的浓度,保证了种群的多样性。期望值的计算保证了适用于抗原的相同抗体的过多产生。记忆单元的作用是保存用于防御抗原的一组抗体,与记忆单元相似的抗体将得到抑制。而自体免疫遗传算法是将免疫算子进一步改进,得到自体免疫算子,主要含有:疫苗抽取、种群多样性保持、疫苗接种、自体免疫选择、疫苗更新等几个模块。而自体免疫遗传主要体现在将适应度作为活力的评价标准,将通过免疫遗传操作得到的子代优化适应度与父代比较,如果前者比后者低,则认为子代出现退化,这样就保持父代的适应度,继续下一次操作。而且该改进算法中,引入了疫苗的实时更新理念,从而保证了疫苗的先进性,增强了疫苗的免疫力,同时也加速了系统对于全局最优解的搜索速度。其算法流程图如图1所示。从该流程图可见,免疫遗传算法包含以下几个模块:疫苗抽取、适应度计算、多样性计算及调整、交叉变异、疫苗接种、群体更新等。

1.2 提取疫苗

首先搜索数据库,判断是否有符合条件的最优解和初始群体,若有,调用部分初始群体,并随机生成另一部分群体以保证种群的多样化,然后,从数据库中调用最优解作为抗体,并从中提取疫苗;否则,随机生成初始种群,并将初始种群中适应度值最高的个体作为抗体,提取疫苗。

图1 改进免疫遗传算法流程图

1.3 适应度及亲和性计算

免疫系统通过识别基因类型来产生不同的抗体。抗原和抗体之间的亲和性用适应度fv来描述,本系统中由目标函数的变换得到:

fv=g(S),

(1)

式中:S为目标函数;g(S)为S的单调函数。

抗体和抗体之间的亲和性用亲和力来描述。对于抗体v和抗体w之间的亲和力,计算式如下:

B(v,w)=1/(1+Hv,w),

(2)

式中Hv,w为抗体v和抗体w的欧式空间二次泛数意义下的距离。

(3)

式中抗体v和抗体w的第i项的取值为i=1,2,…M,M是基因总数。

1.4 多样性计算

系统中采用信息墒来定义种群的多样性。假设免疫系统由N个抗体组成,每个抗体有M个基因,每个抗体的每一位gij共有s个字符(k1,k2,…,ks)可供选择(对二进制编码,s=2,只采用0,1两种字符),则N个抗体第j个基因位的信息墒为:

(4)

(5)

(6)

那么,免疫系统的多样性就可用平均信息墒来计算:

(7)

由信息墒的定义可知,H(N)越大,说明种群的多样性越好,在进化初期,种群的信息比较丰富,随进化代数和适应度的不断提高,种群的多样性会逐渐下降,当种群中个体达到一致时,多样度为0。

1.5 多样性判断及调整

设置每代的多样性阈值为:

(8)

式中:00为加速因子;t为当前进化代数;|s|为抗体采用的编码符号集大小(二进制编码,s=2);G为总进化代数。进化过程中,若种群的多样性低于阈值,则需采取措施提高种群的多样性。

从进化种群中随机选择m个个体,对每一个选择的个体进行低多样性的随机互换,直到多样性超过阈值。

1.6 免疫选择

利用免疫的记忆功能,对当前种群中的个体进行检测,若具有最高适应度值的个体优于父代,则应用此个体替代记忆细胞中高适应度值的个体,否则,采用最优保存策略。

1.7 疫苗更新

随着算法的进行,每迭代一次都要判断当前抗原中所提取疫苗的先进性,如果出现新的更优的抗原,则用最优抗原进行疫苗提取,从而保证了每次迭代过程中所用的疫苗都是最优的,保证了疫苗的先进性,增强了疫苗的免疫效力。

具体操作中,针对每一次迭代产生的新种群,根据适应度值的高低进行疫苗的更新,用高适应度值的抗体更新原有的适应度值低的抗体而得到新的更新后的疫苗。

2 基于改进免疫遗传算法的PID参数优化原理[3-4]

由图2可见,锅炉水温PID控制系统由两部分组成,锅炉被控对象和PID参数优化控制器。

图2 改进免疫遗传算法的PID参数优化原理

整个锅炉温度PID控制系统Matlab仿真模型分为两部分:1)利用Matlab2014编制改进免疫遗传算法代码;2)利用Simulink建立仿真模型。其中:

1)编制改进免疫遗传算法代码时,将误差和控制器输出引入到改进免疫遗传算法中的适应度函数计算。系统采用误差绝对值时间积分性能指标作为最小目标函数J[5],为防止控制能量过大,在目标函数中加入控制PID输出的平方项。为防止过长的调节时间,在目标函数中加入调节时间项。取适应度函数为:F=1/J,即适应度函数为最小目标函数的倒数。

最小目标函数如下:

(9)

式中:e(t)为系统误差;u(t)为控制器输出;ts为上升时间;w1,w2,w3为权值。

2)建立仿真模型[6]时,将控制器输出u(t)、误差e(t)及锅炉被控对象温度传递函数一起利用Simulink建立目标函数及锅炉水温传递函数仿真模型,二者通过遗传算法主程序中的Sim函数进行连接,根据系统的运行状态实时反馈并调节PID控制器的参数Ki,Kp,Kd,将每一次迭代优化结果kp,ki,kd变量通过Sim函数传递给Simulink仿真模型,以期待达到控制锅炉水温的实时控制效果,再从Simulink模型及Matlab工作空间中观察优化结果及优化数据。

3 仿真示例分析

现在选取锅炉水温的二阶传递函数[3]如式(10):

(10)

改进免疫遗传算法采用二进制编码,目标函数J中权值w1为0.000 01,w2为0.8,w3为0.01;种群中个体数目80;遗传最大代数18;遗传概率0.85;交叉概率0.87;变异概率0.002。

采用阶跃输入,系统锅炉温度仿真结果如图3所示。

图3 系统锅炉温度仿真结果

系统输出误差曲线如图4所示。

图4 系统输出误差曲线

仿真结果分析:从Matlab的工作空间里可以读出改进免疫遗传算法最终优化PID参数即kp=0.200 0,ki=0.686 3,kd=0.576 5,性能指标J=1.476 5,得到最优输出时,系统输出误差2.676e-5。由图2可以看出采用常规PID算法,系统在7s左右便趋于稳定,而采用改进免疫遗传PID进行控制,系统在4s左右便趋于稳定且无超调。由此可见,采用改进免疫遗传算法优化PID参数,对系统实施控制,跟踪速度快,无超调量,稳态误差很小,弥补了传统PID控制器在调节控制参数上能力的不足,取得了较好的控制效果。

4 结语

将改进免疫遗传算法与传统PID控制的参数优化进一步结合,并利用了免疫遗传操作自身的特点,同时,该改进算法中引入了疫苗的实时更新理念,从而保证了疫苗的先进性,增强了疫苗的免疫力,加速了系统对于全局最优解的搜索速度,也保证了锅炉温度的实时控制效果。

[1] 莫宏伟.人工免疫系统原理与应用[M].哈尔滨:哈尔滨工业大学出版社,2003.

[2] Li YanJun, Wu TieJun.A novel immune algorithm for complex optimization problems[C]// Proceeding of the 5thWord Congress On the Intelligent Control and Automation,GuangChou,P,R,China,2004.

[3] 李玉娜.基于遗传算法的锅炉水温PID控制寻优[J].工业控制计算机,2010(9):59-60.

[4] 李英顺,邓长辉,伦淑娴,等.基于遗传算法的真空感应炉PID温度控制系统[J].人工智技术应用,2003(3):12-15.

[5] 文定都,曾红兵,何玲.基于遗传算法PID参数寻优的电加热炉温度控制系统[J].电气自动化,2008(4):6-8.

[6] 陈淑红.利用SIMULINK和优化工具箱实现PID参数优化[J].现代电子技术,2002(9):57-59.

The Optimization of PID Parameters Based on Improved Immune Genetic Algorithm

LIU Shu-rong,et al.

(SchoolofElectrical&InformationEngineering,ChangchunInstituteofTechnology,Changchun130012,China)

This article utilizes the self characteristics of improved immune genetic operation by combining the improved immune genetic algorithm and traditional PID control parameter optimization,and inputs the real time update of vaccine to ensure the advancement of the vaccine and increase the evolution speed of the system toward the optimal solution.Taking the boiler temperature as an example,proved by MATLAB-Simulink simulation,it shows that the application of this improved immune genetic algorithm not only has a better control performance to optimize PID temperature parameter,but also ensures the real-time control effect of the boiler temperature.

improved immune genetic algorithm;PID parameter optimization;boiler temperature;MATLAB-Simulink simulation

10.3969/j.issn.1009-8984.2016.04.023

2016-09-26

刘淑荣(1970-),女(汉),吉林,副教授,硕士 主要研究智能控制、电气传动及其控制等。

TP18

A

1009-8984(2016)04-0089-03

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!