智能优化算法应用:基于麻雀搜索算法PID参数优化

您所在的位置:网站首页 pid参数计算方法 智能优化算法应用:基于麻雀搜索算法PID参数优化

智能优化算法应用:基于麻雀搜索算法PID参数优化

2024-07-11 00:18| 来源: 网络整理| 查看: 265

智能优化算法应用:基于麻雀搜索算法PID参数优化 - 附代码

文章目录 智能优化算法应用:基于麻雀搜索算法PID参数优化 - 附代码1.PID简介2.麻雀搜索算法简介3.适应度函数设计4.算法实验与结果5.参考文献:6.Matlab 代码 摘要:本文主要介绍如何用麻雀搜索算法进行PID参数的优化。

1.PID简介

PID(Proportion-Integration-Differentiation)控 制 器通过比例单元 P、积分单元 I和微分单元 D 的线性组合构成控制量来实现对被控对象的控制,主要适用于基本线性和动态特性不随时间变化的系统。不同的控制规律适用于不同的生产过程,必须合理选择相应的控制规律,否则PID控制器将达不到预期的控制效果当PID控制器采样周期较小时,可以将连续系统离散化,即以一阶差分代替微商,求和代替积分,矩形积分近似代替连续积分,得到如下差分方程: Δ u ( t ) = K p Δ e ( k ) + K i Δ e ( k ) + K d Δ 2 e ( k ) (1) \Delta u(t)=K_p \Delta e(k) + K_i \Delta e(k) + K_d \Delta ^2e(k)\tag{1} Δu(t)=Kp​Δe(k)+Ki​Δe(k)+Kd​Δ2e(k)(1) 其中e为输入, K p K_p Kp​ 为比例系数, K i K_i Ki​ 为积分时间常数, K d K_d Kd​ 为微分时间常数。

2.麻雀搜索算法简介

麻雀搜索算法具体原理请参照:https://blog.csdn.net/u011835903/article/details/108830958。

3.适应度函数设计

在此算法中,目标函数设置如下: F = ∫ 0 ∞ ( w 1 ∣ e ( t ) ∣ + w 2 u 2 ( t ) ) d t (2) F = \int_{0}^{\infty}(w_1|e(t)|+w_2u^2(t))dt \tag{2} F=∫0∞​(w1​∣e(t)∣+w2​u2(t))dt(2)

其中, e ( t ) e(t) e(t) 为输入值与输出值之间的误差,考虑到迭代过程的动态特性,采取其绝对值的积分; u ( t ) u(t) u(t) 为控制值,加入此项是为了避免控制幅度过大; w 1 w_1 w1​ 和 ω 2 ω_2 ω2​ 为权重,取值范围[0,1]。

此外,还需采取限制措施防止超调,即当出现超调时,在目标函数中额外引入超调项,此时的设置如下: F = ∫ 0 ∞ ( w 1 ∣ e ( t ) ∣ + w 2 u 2 ( t ) + w 3 ∣ e ( t ) ∣ ) d t , e ( t ) < 0 (3) F =\int_{0}^{\infty}(w_1|e(t)| + w_2u^2(t)+w_3|e(t)|)dt,e(t) w 1 w_3 >>w_1 w3​>>w1​ ,一般情况下, w 1 = 0.999 , w 2 = 0.001 , w 3 = 100 w_1 =0.999,w_2 =0.001 , w_3 =100 w1​=0.999,w2​=0.001,w3​=100。

所以麻雀算法的目标就是找到一组pid值,使得F误差最小。

4.算法实验与结果

本文选择二阶系统的传递函数: G ( s ) = 50 / ( 0.125 s 2 + 7 s ) (4) G(s) = 50/(0.125s^2+7s) \tag{4} G(s)=50/(0.125s2+7s)(4) 麻雀算法参数设置如下:

SearchAgents_no=50; % 种群数量 Max_iteration=100; % 设定最大迭代次数 lb = -5; %下边界 ub = 5; %上边界 dim = 3; %维度pid3个参数 S = 1;% 1为单位阶跃响应,其他为正弦输入 fobj = @(X) PID_controller(X,S);%适应度函数

单位阶跃响应寻优结果:

在这里插入图片描述

kp,ki,kd的值为:5 0.047998 0.045294

正弦函数输入结果:

在这里插入图片描述

kp,ki,kd的值为:5 -5 2.0404

从收敛曲线来看,单位阶跃和正弦输入,算法都在不断寻优。从单位阶跃响应来看,系统上升时间和超调均较小,控制效果明显。从正弦输入结果来看,输入与输出控制量误差较小。

5.参考文献:

[1] 贺圣彦, 曹中清, 余胜威. 基于花授粉算法的PID参数优化[J]. 计算机工程与应用, 2016.

6.Matlab 代码

基于麻雀搜索算法PID参数优化 粒子群优化的PID参数优化 灰狼优化的PID参数优化 鲸鱼优化的PID参数优化 人工蜂群优化的PID参数优化 萤火虫优化的PID参数优化 布谷鸟优化的PID参数优化 海鸥优化的PID参数优化 鸡群优化的PID参数优化 花授粉优化的PID参数优化 头脑风暴优化的PID参数优化 蝗虫优化的PID参数优化 鸟群优化的PID参数优化 差分进化优化的PID参数优化 遗传算法优化的PID参数优化 樽海鞘算法优化的PID参数优化 教与学算法优化的PID参数优化

个人资料介绍



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3