資源簡介
利用pso來優化分數階PID參數,里面有simulink模型,優化好PID參數后,運行simulink模型可以看看優化的效果。供初學者學習,比較有參考價值。
代碼片段和文件信息
%%?清空環境
clear
clc
%%?參數設置
w?=?0.6;??????%?慣性因子?
c1?=?2;???????%?加速常數
c2?=?2;???????%?加速常數
Dim?=?3;????????????%?維數
SwarmSize?=?5;????%?粒子群規模
ObjFun?=?@PSO_PID;??%?待優化函數句柄
MaxIter?=?5;??????%?最大迭代次數??
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;????????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????29558??2010-08-22?18:38??粒子群\PID_Model.mdl
?????文件???????2585??2014-11-19?15:29??粒子群\PSO.m
?????文件????????174??2010-08-22?18:38??粒子群\PSO_PID.m
?????目錄??????????0??2014-11-21?19:07??粒子群
-----------?---------??----------?-----??----
????????????????32317????????????????????4
評論
共有 條評論