資源簡介
使用Simulink環境建立的基于PSO的PID控制器的優化設計。
其中PID_Model為控制系統模型
PSO為PSO部分程序實現
PSO_PID為PSO優化PID的過程
Model for the control sy
代碼片段和文件信息
%%?清空環境
clear
clc
%%?參數設置
w?=?0.6;??????%?慣性因子?
c1?=?2;???????%?加速常數
c2?=?2;???????%?加速常數
Dim?=?3;????????????%?維數
SwarmSize?=?100;????%?粒子群規模
ObjFun?=?@PSO_PID;??%?待優化函數句柄
MaxIter?=?100;??????%?最大迭代次數??
MinFit?=?0.1;???????%?最小適應值?
Vmax?=?1;
Vmin?=?-1;
Ub?=?[300?300?300];
Lb?=?[0?0?0];
%%?粒子群初始化
????Range?=?ones(SwarmSize1)*(Ub-Lb);
????Swarm?=?rand(SwarmSizeDim).*Range?+?ones(SwarmSize1)*Lb??????%?初始化粒子群
????VStep?=?rand(SwarmSizeDim)*(Vmax-Vmin)?+?Vmin?????????????????%?初始化速度
????fSwarm?=?zeros(SwarmSize1);
for?i=1:SwarmSize
????fSwarm(i:)?=?feval(ObjFunSwarm(i:));?????????????????????????%?粒子群的適應值
end
%%?個體極值和群體極值
[bestf?bestindex]=min(fSwarm);
zbest=Swarm(bestindex:);???%?全局最佳
gbest=Swarm;????????????????%?個體最佳
fgbest=fSwarm;??????????????%?個體最佳適應值
fzbest=bestf;????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????30959??2014-09-18?20:54??基于粒子群算法的PID控制器優化研究\PID_Model.mdl
?????文件????????2823??2014-09-03?14:09??基于粒子群算法的PID控制器優化研究\PSO.m
?????文件?????????174??2010-08-22?18:38??基于粒子群算法的PID控制器優化研究\PSO_PID.m
評論
共有 條評論