当前位置:首页 >> 机械/仪表 >>

基于免疫粒子群优化算法的增量式PID控制


您的论文得到两院院士关注
文章编号 :1008-0570(2010)04-1-0233-03

软件天地

基于免疫粒子群优化算法的增量式 PID 控制
Increment PID Controller Based on Immunity Particle Swarm Optimization Algorithm

/>(西安文理学院)

张 伟

ZHANG Wei
摘要 : 基 于 粒 子 群 优 化 算 法 的 收 敛 速 度 快 简 单 易 实 现 的 特 点 和 免 疫 算 法 的 免 疫 记 忆 、 免 疫 自 我 调 节 和 多 峰 值 收 敛 的 特 点 , 本 文 设 计 出 免 疫 粒 子 群 算 法 , 并 将 其 应 用 于 PID 控 制 器 中 。 仿 真 结 果 表 明 , 免 疫 粒 子 群 优 化 算 法 适 用 于 增 量 式 PID 控 制 , 并 且 基 于 免 疫 粒 子 群 优 化 算 法 的 增 量 式 PID 控 制 的 跟 踪 效 果 和 抗 干 扰 能 力 比 粒 子 群 优 化 算 法 的 PID 控 制 和 基 于 免 疫 算 法 的 增 量 式 PID 控 制 跟 踪 效 果 和 抗 干 扰 能 力 都 要 好 。 关键词 : 粒子群优化算法 (PSO); 增量式 PID 控制 ; 免疫算法 (IM) 中图分类号 : TP273 文献标识码 : A

Abstract: Based on the astringency and practicability of Particle Swarm Optimization Algorithm(PSO) and T cell ’ s promotions and B cell ’ s restrainability of Immunity Particle Swarm Optimization Algorithm (IMPSO) and applied it to PID controllers. It is clear that IMPSO is suitable to Increment PID control according to the simulations and it made the tracking and anti -jamming of IM PID based on IMPSO, IMPSO more effective than those of PID based on PSO and those of IMPID based on Immunity Algorithm. Key words: Particle Swarm Optimization Algorithm; Increment PID Control; Immunity Algorithm

1 引言
粒子群优化算法(Particle Swarm Optimization, PSO)是一种 新兴的优化技术,由 Eberhart 博士和 Kennedy 博士于 1995 年共 同发明的一种新的群体智能优化算法。 最初是处理连续优化问 题的,目前其应用已推广到组合优化问题。 PSO 的优势在于算法 的简洁性,易于实现,没有过多参数需要调查, 且不需要梯度信 息,PSO 是非连续性优化问题、 组合优化问题和混合整数非线性 优化问题的有效优化工具,可用于解决大量非线性、 不可微和多 峰值的复杂问题优化,并已广泛应用于科学和工程领域,如,函数 优化,神经网络训练,模式分类、 模糊系统控制等领域。 免疫算法(IM)模仿人体免疫系统,基于免疫网络模型,提出 了免疫优化算法。 免疫算法从体细胞理论和网络理论中得到启 发,实现了类似于免疫系统的自我调节和生成不同抗体的功能, 已在实际应用中得到应用。 PID 控制具有结构简单,实现方便,鲁棒性强,可靠性高的特 点,因而过程控制中多采用 PID 控制。 本文采用免疫粒子群优化 算法实现 PID 控制问题 ,并对其抗干扰方面及其跟踪效果做了 讨论。

的最优解,即个体极值 ,另一个是粒子群 (即全局)目前找 到的最优解,称之为全局极值 gbest 。在找到两个极值后,粒子 根据以下公式来更新自己的速度和位置: (1) (2) — 粒子当前的速度; — 粒子当前的位置; rand( ) — 是(0,1)之间的随机数; c1,c2 — 学习因子,通常取为 c1=c2=2; — 加权系数,取值在 0.1 到 0.9 之间。 公式(1)主要通过三部分来计算粒子 i 新的速度; 粒子 i 前 一时刻的速度, 粒子 i 当前位置与自己最好位置之间的距离,粒 子 i 当前位置与群体最好位置之间的距离,粒子通过公式(2)计 算新位置的坐标,粒子通过公式(1)、 (2)决定下一步的运动位置。 粒子群优化算法的步骤如下: a. 初始化 初始搜索点的位置 及其速度 ,通常是在允 许的范围内随机产生的,每个粒子的 pbest 坐标设置为其当前位 置,且计算出其相应的个体极值(即个体极值点的适应度值),而全 局极值(即全局极值点的适应度值)就是个体极值中最好的,记录 该最好值的粒子序号,并将 gbest 设置为该最好粒子当前位置。 b. 评价每一个粒子 计算粒子的适应度值, 如果好于该粒 子当前的个体极值,则将 pbest 设置为该粒子的位置,且更新个 体极值。如果所有粒子的个体极值中最好的好于当前的全局极 值,则将 gbest 设置为该粒子的位置,记录该粒子的序号,且更新 全局极值。 c. 粒子的更新 用式(1)和式(2)对每一个粒子的速度和位 置进行更新。 d. 检验是否符合结束条件 如果当前的迭代次数达到了预 先设定的最大次数(或达到最小错误要求),则停止迭代,输出最 优解,否则转到 b.
邮局订阅号:82-946 360 元 / 年 - 233 -

技 术 创 新

其中

2 算法原理简介
1). PSO 算法的原理(Theory of PSO algorithm) 粒子群优化算法(Particle Swarm Optimization, PSO)它是通 过模拟鸟群的捕食行为来达到优化问题的求解。 在解空间随机 初始化鸟群,鸟群中的每一只鸟称为一个 “粒子” “粒子” 都 ,这些 有自己的位置和速度。各个 “粒子” 在以某种规律移动,通过 “粒 子” 记忆追随当前的最优粒子,在解空间搜索。 在每次迭代中,粒 子通过跟踪两个 “极值” 来更新自己。第一个是粒子本身所找到
张 伟 : 讲师 硕士

《P LC 技术应用 200 例》

软件天地
粒子群(PSO)的一些基本特点: 基本 PSO 算法最初是处理连续优化问题的,也是多点搜索, 还有,粒子群优化算法其 PSO 收敛速度快但是易陷入局部最优。 原理简单,易于编程,没有复杂的编码运算,需要确定的参数并不 多,并且操作简单。 2). 免疫算法的原理 免疫算法是模拟免疫系统对病菌的多样性识别能力 (即免 疫系统几乎可以识别无穷多种类的病菌) 而设计出来的多峰值 搜索算法,免疫是生物体的一种特性生理反应。 生物的免疫系统 抗原和抗体相 对于外来侵犯的抗原,可产生相应的抗体来抵御。 结合后,会产生一系列的反应,通过吞噬作用或产生特殊酶的作 生物的免疫系统由淋巴细胞和抗体分子组成,淋 用而毁坏抗原。 巴细胞又由胸腺产生的 T 细胞(分别为辅助细胞 和抑制细胞 )和骨髓产生的 B 细胞组成。当抗原侵入机体并经周围细胞 消化后,将信息传递给 T 细胞,即传递给 细胞和 细胞,然后 刺激 B 细胞。 细胞产生抗体以消除抗原。 当抗原较多时,机体 B 内的 细胞也较多,而 细胞却较少,从而会产生较多的 B 细 随着抗原的减少,体内 细胞增多,它抑制了 细胞的产生, 胞。 则 B 细胞也随着减少。经过一段时间间隔后,免疫反馈系统编 趋于平衡。 抑制机理和主反馈机理之间的相互协作,是通过免疫 反馈激励对抗原的快速反应和稳定免疫系统完成的。 免疫系统虽然十分复杂, 但其抗御抗原的自适应能力却是 十分明显的。 生物信息系统的这些智能行为,为科学和工程领域 提供了各种理论参考和技术方法。 基于上述免疫反馈原理,提出 了免疫 PID 控制器:假设第 k 代的抗原数量为 ,由抗原刺激 的 细胞的输出为 , 细胞对 B 细胞的影响为 , 则B 细胞接收的总刺激为 式中, , 若以抗原的数量 作为偏差 ,B 细胞接收的总刺激 作为控制输入 ,则如下的反馈控制规律: 式中, ,K= 为控制反应速度, 为控制稳定效果,f(﹒ )为一选定的非线性函数。

《微计算机信息》 (测控自动化 )2010 年第 26 卷第 4-1 期

一般用下式 = 式中 实现增量式的 PID 控制的。 目标函数的性能指标用下列公式去估算: 目标函数采用合 适的适应度函数,本文采用能反映调整系统质量的 ITAE(误差 绝对值时间积分)作为性能指标函数。 上式的离散表达公式可写成如下的表达形式:

技 术 创 新

是仿真计算的步长时间 ,N 是仿真计算时总的 采样数目。 表示的是目前粒子的最优值, 表示的是粒子的局部 最优值, 表示的是粒子的全局最优值。 其算法的步骤如下: a. 确定参数值:学习因子 c1 和 c2,粒子(抗体)群体个数 N。 b. 初始化:针对待求问题的特征,从记忆库中搜寻该类问题 的记忆粒子(抗体)或随机产生 N 个粒子(抗体) 及其 “飞行” 速 度 ,i=1,2,……,N,形成初始粒子(抗体)群体 。 c. 生成免疫记忆粒子(抗体):计算当前粒子(抗体)群体 中 粒子(抗体)的适应度值及 (即: ),i=1,2, ……,N, (即: 作为免疫记忆粒子(抗体)存入记忆库中,判断 ),并把 是否满足结束条件,若满足结束条件,则停止运行并输出结果,否 则,继续。 d. 新粒子(抗体)的生成:新粒子(抗体)的产生主要基于以下 两种方式: 1). 由粒子群优化算法(1)(2)式产生 N 个新粒子(抗体)。 2). 随机产生 M 个新粒子(抗体)。 e. 粒子(抗体)群更新:将记忆库中的免疫记忆粒子(抗体)替 换粒子(抗体)群 中适应度较差的若干粒子(抗体),形成新一代 粒子(抗体)群体 ,然后,转步骤 c。

3 免 疫 粒 子 群 优 化 算 法 PID 实 现
人工免疫系统作为一种智能信息处理系统是目前新兴的 研究领域,并在控制、 优化、 模式识别等领域有了初步的研究成 果。免疫响应的调节过程中 T 细胞具有促进和抑制两种作用, 能保证免疫系统取得足够的稳定性和较快的响应速度。 把这种 促进和抑制作用引入到粒子群优化算法中, 可以提高算法的全 局搜索能力而不致陷入局部解。 为此本设计了一种基于免疫粒 子群优化算法的增量式 PID 控制算法。 抗体多样性和免疫记忆是免疫系统的重要特性, 在免疫调 节中,那些与抗原亲和力大并且浓度较低的抗体会受到促进,而 与抗原亲和力小或浓度较高的抗体将会受到抑制, 以此保证抗 体的多样性; 免疫记忆是免疫系统将与入侵抗原反应部分的抗 体作为记忆细胞保留下来,对于同类抗原的再次侵入,相应的记 忆细胞被激活而产生大量的抗体。 把这种多样性和免疫记忆特 性引入到粒子群优化算法中, 可提高算法的全局搜索能力而不 致陷入局部解。 抗体(粒子)的浓度越小,则选择的概率越大,而抗 体(粒子)的浓度越大,则选择概率越小。 这样,在保留高适应度个 体的同时,进一步确保了抗体(粒子)的多样性,能避免早熟现象。
- 234 - 360 元 / 年 邮局订阅号:82-946

4 计算机仿真测试
为了验证用免疫粒子群优化算法实现的增量式 PID 的控 制算法,本文选用两组控制模型对其进行仿真测试,其输入为阶 跃响应。在实验的过程中,为了测试控制器的鲁棒性,在第 300 个采样时间加入方波扰动,其仿真结果如图所示。 1).第一组控制对象为一阶延迟系统: , 设计 PID 控制器的参数如下表所示: PID 设计的参数

c1=c2=1, w=0.5 仿真的结果如下图 1、 3 所示, 同一采样时刻不通算法的 2、 结果列于表 1 中。 2). 第二组控制对象为二阶延迟系统: , 设计 PID 控制器的参数如下表所示: c1=c2=1, w=0.3 《现场总线技术应用 200 例》

您的论文得到两院院士关注

软件天地
表 2 (TABLE II )

仿真的结果如下图 4、 6 所示,同一采样时刻不通算法的 5、 结果列于表 2 中。

通过比较以上两组图和数据表的仿真结果可以看出: 免疫 粒子群优化算法具有如下的优点: 不仅保持了粒子群(PSO)快速 跟踪效果和免疫(IM)的平稳性,同时可有效的避免 IM 和 PSO 算 法陷入局部解之中。在加入扰动因素之后免疫粒子群优化算法 (IMPSO)的鲁棒性明显的优于免疫(IM)和粒子群(PSO)算法.

5 结论
图 1 适应度曲线 图 2 未加干扰的仿真结果 免疫粒子群优化算法不仅基本保持了粒子群优化算法简 单、 易于实现的特点,还结合了免疫系统的免疫信息处理机制(多 峰值收敛,免疫记忆、 免疫自我调节),而且增强了粒子群优化算 法的全局寻优能力,加快了算法的进化精度,提高了收敛精度。 结果表明免疫粒子群优化算法的仿真结果明显优于单纯使 用免疫算法或粒子群优化算法,并且免疫粒子群优化算法的跟踪 效果,抗干扰效果以及响应时间均比免疫算法和粒子群算法效果 要好。所以免疫粒子群优化算法适用于增量式 PID 控制中。 本文的创新之处在于将免疫算法和粒子群优化算法相结 合应用在增量式 PID 控制中。 参考文献 [1]Kennedy J, Eberhart R. Particle swarm optimization [A]. Proceedings of the IEEE International Conference on Neural Networks [C]. 1995.1942~1948. [2]P.C. Fourle and A.A. Groenwold The particle swarm optimization algorithm in size and shape optimization [J],Struct MultidiscOptim23.259 -267 @Spinger -Verlog2002,Digital Object Identifier(DOI) 10.1007/s00158-002-0188-0 [3]候志荣,吕振肃, 基于 MATLAB 的粒子群优化算法及其应用 [J], 计算机与仿真,2003,20(10):68~70。 [4]刘彬,谭建平,黄长征,一种改进 PID 控制算法的研究与应用[J], 微计算机信息 (测控自动化),2007,6-1:15-17。( Research and Application of an Improved PID Control Algorithm) [5]莫宏伟,人工免疫系统原理与应用(The Principles and Applications of Artificial Immune System)[M], 哈尔滨工业大学出版社,2003 年 6 月第 1 版,2003 年 6 月第 2 次印刷。 [6]王 凌,智能优化算法及其应用(Intelligent Optimization Algorithms with Applications)[M],清华大学出版社,施普林格出版社,2001 年 10 月第 1 版。 作 者 简 介 :张 伟(1976-),女(汉族),陕西西安人,西安文理学院机 械电子工程系讲师,硕士,主要研究方向是新型电力电子装置与 计算机控制。 Biography:ZHANG Wei (1976 - ), female (Han nationality), Shaanxi Province,xi ’ an city, School of Machinery and Electron Engineering, Xi'an University of arts and science, lecturer, main research areas: new tpye power electrical and computer control. (710065 西安 西安文理学院机械电子工程系 ) 张 伟 (School of Machinery and Electron Engineering, Xi'an University of arts and science, 710065, China) ZHANG Wei 通讯地址 :(710065 陕西省西安文理学院机械电子工程系) 张 伟 图 6 加方波扰动的仿真结果 《P LC 技术应用 200 例》
(收稿日期:2009.05.22)(修稿日期:2009.08.22)

图 3 加方波扰动的仿真结果 表1

技 术 创 新

图 4 适应度曲线

图 5 未加干扰的仿真结果

邮局订阅号:82-946 360 元 / 年 - 235 -


相关文章:
增量式PID算法
增量式PID算法_电子/电路_工程科技_专业资料。所谓增量式 PID 是指数字控制器的输出只是控制的增量 kuΔ 。当执行机构需 要的控制量是增量, 而不是位置量的...
毕业论文:基于粒子群算法的控制系统PID参数优化设计(终...
辽宁科技大学本科生毕业设计(论文) 第I页 基于粒子群算法的控制系统 PID参数优化设计摘 要本文主要研究基于粒子群算法控制系统PID参数优化设计方法以及对PID控制的改...
增量式PID算法小结
增量式 PID 算法小结 一、PID 算法简介 顾名思义, P 指是比例 (Proportion) , I 指是积分 (Integral) , D 指微分 (Differential) 。 比例 P:比例控制是...
位置式PID与增量式PID算法
位置式 PID 与增量式 PID 算法 (2012-12-23 12:05:26) 转载▼ 标签:杂谈 PID 控制是一个二阶线性控制器 定义:通过调整比例、积分和微分三项参数,使得大...
PID控制算法的C语言实现四 增量型PID的C语言实现
PID控制算法的C语言实现四 增量型PID的C语言实现_机械/仪表_工程科技_专业资料。PID 控制算法的 C 语言实现四 增量型 PID 的 C 语言实现上一节中介绍了最简单...
51单片机PID算法程序(三)增量式PID控制算法
51单片机PID算法程序(三)增量式PID控制算法_工学_高等教育_教育专区。hao51...Ziegler-Nichols 方法 Ziegler-Nichols 方法基于系统稳定性分析的 PID 整定方法...
增量式PID控制C语言代码
增量式PID控制C语言代码_信息与通信_工程科技_专业资料。增量式PID控制C语言代码...基于C语言的数字PID控制... 2页 1下载券 温度控制的PID算法的C语... 10...
粒子群算法优化模糊pid
(4) % 绘制 PID 控制器参数变化曲线 plot(K_d) hold on title('Kd 优化...基于粒子群算法的PID参数... 2页 5下载券 基于增量式PID的改进粒子... 8...
增量式PID的stm32实现,整定过程
欢迎大家批评指点~ 首先说说增量式 PID 的公式,这个关系到 MCU 算法公式的书写...控制信号 PWM 的占空比 a 三者是大致线性的正比的关系, 这里强调这个的目的是 ...
51单片机PID算法程序(三)增量式PID控制算法
51 单片机 PID 算法程序(三)增量式 PID 控制算法 当执行机构需要的不是控制量的绝对值,而是控制量的增量(例如去驱动步进电动机)时,需要用 PID 的“增量算法”...
更多相关标签: