基于遗传算法的PID参数整定研究

在前述深入了解PID参数的含义、基于常规人工的PID参数整定、以及所运用的遗传算法的介绍与应用后,紧接着进入应用遗传算法的PID参数整定,实现了Simulink仿真与M代码上的数据交互,在有限的整定空间内 ,合理化的安排系统的最优控制性能。

1.3.3基于遗传算法的PID参数整定

目前PID参数的优化方法有很多,如间接寻优法,梯度法,爬山法等,而在热工系统中单纯形法、专家整定法则应用较广。虽然这些方法都具有良好的寻优特性,但存在着一些弊端,单纯形法对初值比较敏感,容易陷入局部最优化解,造成寻优失败。专家整定法则需要太多的经验,不同的目标函数对应不同的经验,而整理知识库则是一项长时间的工程。因此我们选取了遗传算法来进行参数寻优,该方法是一种不需要任何初始信息并可以寻求全局最优解的、高效的优化组合方法。
采用遗传算法进行PID三个系数的整定,具有以下优点:
(1)与单纯形法相比,遗传算法同样具有良好的寻优特性,且它克服了单纯形法参数初值的敏感性。在初始条件选择不当的情况下,遗传算法在不需要给出调节器初始参数的情况下,仍能寻找到合适的参数,使控制目标满是要求。同时单纯形法难以解决多值函数问题以及在多参数寻优(如串级系统)中,容易造成寻优失败或时间过长,而遗传算法的特性决定了它能很好地克服以上问题。
(2)与专家整定法相比,它具有操作方使、速度快的优点,不需要复杂的规则,只通过字串进行简单地复制、交叉、变异,便可达到寻优。避免了专家整定法中前期大量的知识库整理工作及人量的仿真实验。
(3)遗传算法是从许多点开始并行操作,在解空间进行高效启发式搜索,克服了从单点出发的弊端及搜索的盲日性,从而使寻优速度更快,避免了过早陷入局部最优解。
(4)遗传算法不仅适用于单口标寻优,而且也适用于多口标寻优。根据不同的控制系统,针对个或多个日标,遗传算法均能在规定的范围内寻找到合适参数。
遗传算法作为一种全局优化算法,得到越来越广泛的应用。近年来,遗传算法在控制上的应用日益增多。
被控对象为二阶传递函数:

假使采样时间为1ms,输入指令为一阶跃信号。为获取满意的过渡过程动态特性,采用误差绝对值时间积分性能指标作为参数选择的最小目标函数。为了防止控制能量过大,在目标函数中加入控制输入的平方项。选用式(17)作为参数选取的最优指标:

为了避免超调,采用了惩罚功能,即一旦产生超调,将超调量作为最优指标的项,此时最优指标为:

在应用遗传算法时,为了避免参数选取范围过,可以先按经验选取一组参数,然后在这组参数的周围利用遗传算法进行设计,从而大大减小初始寻优的盲目性,节约计算量。因此,遗传算法的参数设定为:
遗传算法中使用的样本个数为30,交叉概率和变异概率分别为:Pc=0.9,Mu=0.033。参数kP的取值范围为[0,20],ki,kD的取值范围为[0,1],取w1=0.999,w2=0.001,w3=100,w4=2.0。
采用实数编码方式,经过100代进化,获得的优化参数如下:PID整定结果为kP=19.0823,ki =0.2434,kD=0.0089,性能指标J=23.9936。代价函数J的优化过程和采用整定后的PID控制阶跃响应如图10和图11所示。

图10代价函数J的优化过程


图11整定后的PID控制阶跃响应

代码附上及程序讲解见基于遗传算法的PID参数整定研究(八)

参考文献

[1] 刘金琨.先进PID控制及MATLAB仿真[M].北京:电子工业出版社,2004.9,222-227.

基于遗传算法的PID参数整定研究(七)相关推荐

  1. 基于遗传算法的PID参数整定研究(三)

    基于遗传算法的PID参数整定研究 在获得对象模型的基础上设计PID参数时常用的原理,经典的有经验试凑法.临界比例度法.极点配置原理.零极点相消原理.幅相裕度法等:现代的则往往借助于计算机,利用最优化方 ...

  2. 基于Ziegler-Nlichols方法的参数整定与PID仿真

    基于Ziegler-Nlichols方法的参数整定与PID仿真 目录 基于Ziegler-Nlichols方法的参数整定与PID仿真 0研究背景 1被控对象的传递函数 2Ziegler-Nlichol ...

  3. 基于入门级粒子群算法的PID参数整定(MATLAB2016b-simulink)(超详细01)

    PID算法作为工业或日常生活中常用的控制算法,想必大家都不陌生,依靠误差反馈来消除误差,关于PID的原理部分相比看这篇博客的同学应该都十分清楚,有不清楚的同学可以百度或知网搜索.PID算法的应用程度很 ...

  4. 自动控制原理PID参数整定的Matlab实现

      以一道题为例介绍调节PID控制器系数的方法,有:试凑法(Trial-and-Error Method).齐格勒-尼科尔斯校正规则(Ziegler and Nichols First Method. ...

  5. 继电反馈法自整定_基于继电反馈PID自整定方法在Buck―Boost电路中应用.doc

    基于继电反馈PID自整定方法在Buck―Boost电路中应用 基于继电反馈PID自整定方法在Buck―Boost电路中应用 摘 要:DC-DC变换器在电力电子和通信等领域中有广泛应用,Buck-Boo ...

  6. matlab求系统根轨迹代码_根轨迹法、PID参数整定和matlab指令计算

    收获 (1)理解根轨迹的概念及其在控制系统设计中的作用: (2)手绘根轨迹草图,以及如何使用极端及绘制根轨迹: (3)熟悉在反馈控制系统中应用广泛的关键部件:PID控制器: (4)理解根轨迹在参数设计 ...

  7. 我的四轴专用PID参数整定方法及原理

    给四轴调了好久的PID,总算是调好了,现分享PID参数整定的心得给大家,还请大家喷的时候手下留情. 首先说明一下,这篇文章的主旨并不是直接教你怎么调,而是告诉你这么调有什么道理,还要告诉大家为什么'只 ...

  8. 【控制理论】——控制系统分类PID算法简介PID参数整定PID上位机通信协议

    目录 ​ 前言 一.PID算法 1.控制系统分类&参数&信号 2.PID算法简介 二.PID参数整定 三.PID上位机通信协议 1.数据帧&协议调试 2.协议代码实现 拓展: ...

  9. 我的四轴专用PID参数整定方法及原理---超长文慎入(转)

    给四轴调了好久的PID,总算是调好了,现分享PID参数整定的心得给大家,还请大家喷的时候手下留情. 首先说明一下,这篇文章的主旨并不是直接教你怎么调,而是告诉你这么调有什么道理,还要告诉大家为什么'只 ...

最新文章

  1. 如何有效的准备Java面试?
  2. Ubuntu 12.04 下安装 VirtualBox 及虚拟机winxp的安装
  3. 商品规格可选怎么设计_商品模块数据库表解析(一)
  4. Nacos 原理:推+拉打造客户端配置信息的实时更新
  5. 自然语言处理库——NLTK
  6. mysql gt resource_讲解MySQL中lt;=gt;操作符的用法
  7. final关键字细节
  8. LSGO软件技术团队2015~2016学年第六周(1005~1011)总结
  9. oracle能查dml记录么,如何查询DML操作的详细记录
  10. python学习turtle(龟图标状态)
  11. 面试题 03.03. 堆盘子
  12. hdu 2191 (多重背包二进制优化)
  13. 华为设备IS-IS路由控制原理与实验
  14. 左手用R右手Python系列14——日期与时间处理
  15. (阅读笔记)3DRA和CTA脑动脉瘤分割方法与评价
  16. 【Android】软件开发中遇到的LUT
  17. Error: [$injector:unpr] Unknown provider: $scopeProvider - $scope -错误解决方案
  18. C++ new和delete的原理分析
  19. mac终端(terminal)常见的快捷键
  20. Python的各大常用库汇总

热门文章

  1. SurfaceHolder
  2. SqlServer2008实例25 代理键
  3. centos7搭建nps实现内网穿透
  4. html label水平居中显示,CSS布局之水平居中和垂直居中
  5. NASA World Wind开源项目配置详解
  6. 面向对象的原则之替换原则
  7. liunx系统下载VSCODE教程
  8. C++/nvcc/cuda 编译文件 出现 undefined reference to `cv::String::deallocate()'的解决方法
  9. 数字信息记忆-八大行星
  10. LaTex 论文排版(3): 插入参考文献