【MATLAB】自适应果蝇优化算法整定PID控制器参数(六)—— 一阶带时延的被控对象

本文介绍了基于MATLAB的自适应果蝇优化算法(IFOA)应用于一阶带时延系统PID控制器参数整定。通过改进搜索步长和方向,提高了算法的寻优效率。适应度函数结合了误差绝对值时间积分(ITAE)和控制输入惩罚项,以优化过渡过程并避免超调。与基本果蝇优化算法(FOA)的比较显示,IFOA能获得更好的控制性能。
摘要由CSDN通过智能技术生成

【MATLAB】自适应果蝇优化算法整定PID控制器参数(六)—— 一阶带时延的被控对象

0研究背景

写在前面:
 1.本代码基于MATLAB2019a版本,低版本或者不同版本可能会报错,mdl文件或slx文件打开可能会失败;
 2.如果运行时间过长,请观察迭代次数是否有变化。
 3.本博客附上算法运行图并详细介绍,如果转载请注明出处;


  参考前面的几篇博客

【Simulink】PSO优化算法整定PID控制器参数(一)一一一高阶不稳定系统

【Simulink】PSO算法优化Simulink模型的参数在线整定(二)一一一高阶不稳定系统

【MATLAB】GA优化算法整定PID控制器参数(三)—— 一阶带时延的被控对象

【MATLAB】NSGA-2优化算法整定PID控制器参数(四)—— 一阶带时延的被控对象

【MATLAB】FOA优化算法整定PID控制器参数(五)—— 一阶带时延的被控对象

1自适应果蝇优化算法的改进介绍

  复现的期刊论文如下:
  [1] 李明辉,曹泽,王玉洁.基于自适应果蝇优化算法的PID参数优化[J].机床与液压,2018,46(20):144-147.

1.1 搜索步长的改进设计

  果蝇优化算法在寻优第(2)步中(果蝇位置的初始化 )搜寻范围一直是[-1,1]之间,即半径为1的区域。这样的弊端是在搜索前期可能会因选择步长较小而使搜索效率下降,在搜索后期又因步长较大而错过最优解。为此在搜寻过程当中引入半径调节系数 λ \lambda λ。自适应果蝇优化算法(Improved Fruit-fly Optimization Algorithm,IFOA)调整搜寻范围的策略是果蝇个体采用嗅觉搜寻食物,其随机方向和距离为:

x i = x + ω × ( 2 rand ⁡ ( ) − 1 ) x_{i}=x+\omega \times(2 \operatorname{rand}()-1) xi=x+ω×(2rand()1)

其中, ω = ω × λ i \omega=\omega \times \lambda^{i} ω=ω×λi,初始值设定为 ω = 1 \omega=1 ω=1 i i i为当前迭代次数。在搜索初期,可以先进行全局搜索,在搜索后期随着迭代次数的增加,搜索范围逐步减小,进行局部搜索。这样可以根据果蝇搜索初期和后期的不同阶段,使搜索范围随迭代次数自适应调整。

1.2 搜索方向的改进设计

  基本果蝇优化算法在第(3)步(计算果蝇味道浓度判定值 )计算果蝇味道浓度判定值 S i S_{i} Si时始终为正值,从而得出的适应度函数不精确。为了便于处理,直接将气味浓度判定值 S i = S_{i}= Si= x x xi,从而计算出最小的气味浓度适应度值。自适应果蝇优化算法(Improved Fruit-fly Optimization Algorithm,IFOA)具体流程如图1所示。
在这里插入图片描述
图1 自适应果蝇优化算法的具体流程


2被控对象与适应度函数的设计

2.1 被控对象的传递函数

  以下式二阶Ⅰ型时延系统的传递函数为例,运用NSGA-2算法进行PID参数优化,其中系统设置为采样时间1 ms,指令为单位阶跃信号,仿真运行时间为1.0 s。其中,性能优化函数Best_J采取时间与误差绝对值乘积的积分方程(Integral of Time Multiplied by the Absolute Value of Error,ITAE),同时为避免控制量过大而产生超调,在性能优化函数Best_J中添加PID控制器输入量的平方项。这仅仅是其中某个目标的适应度函数,此外还需设计另外目标的适应度函数,如2.2适应度函数的设计。
  二阶Ⅰ型时延系统的传递函数,如下所示。可按照自己的实际系统进行设计,既可以.m文件进行编写
在这里插入图片描述

2.2 适应度函数的设计

  为获取较为满意的过渡过程,采用误差绝对值时间积分性能指标作为适应度评价函数Best_J。同时为防止控制输入过大,在Best_J加入控制输入的评分项,如式(1-2)所示。

在这里插入图片描述

式(1-2)中e(t)为系统输出误差,u(t)为PID控制器输入量,ρ1,ρ2为权重值。
  为避免超调,采用罚函数对超调量进行优先处理,则如式(1-3)所示。
在这里插入图片描述

式(1-3)中ρ3>>max(ρ1,ρ2和ρ4),且y(t)为被控对象输出,ey(t)=y(t)-y(t-1)。
  以此作为目标适应度函数的设计。

2.3 IFOA算法的PID参数整定实现

最佳指标适应度值如下
在这里插入图片描述

阶跃响应输出如下
在这里插入图片描述


3与FOA算法的PID参数整定结果对比

论文算法对比图如下
在这里插入图片描述

最佳指标适应度值如下

在这里插入图片描述

阶跃响应输出如下

在这里插入图片描述


评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

昔时扬尘处

你的鼓励会让技术更加具有价值!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值