91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 8KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-12
  • 語言: Matlab
  • 標簽:

資源簡介

粒子群單目標PID整定MATLAB實現:包括源程序和simulink建模

資源截圖

代碼片段和文件信息

%%?清空環境
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;???????????????%?全局最佳適應值

%%?迭代尋優
iter?=?0;
y_fitness?=?zeros(1MaxIter);???%?預先產生4個空矩陣
K_p?=?zeros(1MaxIter);?????????
K_i?=?zeros(1MaxIter);
K_d?=?zeros(1MaxIter);
while(?(iter??MinFit)?)
????for?j=1:SwarmSize
????????%?速度更新
????????VStep(j:)?=?w*VStep(j:)?+?c1*rand*(gbest(j:)?-?Swarm(j:))?+?c2*rand*(zbest?-?Swarm(j:));
????????if?VStep(j:)>Vmax?VStep(j:)=Vmax;?end
????????if?VStep(j:)????????%?位置更新
????????Swarm(j:)=Swarm(j:)+VStep(j:);
????????for?k=1:Dim
????????????if?Swarm(jk)>Ub(k)?Swarm(jk)=Ub(k);?end
????????????if?Swarm(jk)????????end
????????%?適應值
????????fSwarm(j:)?=?feval(ObjFunSwarm(j:));
????????%?個體最優更新?????
????????if?fSwarm(j)?????????????gbest(j:)?=?Swarm(j:);
????????????fgbest(j)?=?fSwarm(j);
????????end
????????%?群體最優更新
????????if?fSwarm(j)?????????????zbest?=?Swarm(j:);
????????????fzbest?=?fSwarm(j);
????????end
????end?
????iter?=?iter+1;??????????????????????%?迭代次數更新
????y_fitness(1iter)?=?fzbest;?????????%?為繪圖做準備
????K_p(1iter)?=?zbest(1);
????K_i(1iter)?=?zbest(2);
????K_d(1iter)?=?zbest(3);
end
%%?繪圖輸出
figure(1)??????%?繪制性能指標ITAE的變化曲線
plot(y_fitness‘LineWidth‘2)
title(‘最優個體適應值‘‘fontsize‘18);
xlabel(‘迭代次數‘‘fontsize‘18);ylabel(‘適應值‘‘fontsize‘18);
set(gca‘Fontsize‘18);

figure(2)??????%?繪制PID控制器參數變化曲線
plot(K_p)
hold?on
plot(K_i‘k‘‘LineWidth‘3)
plot(K_d‘--r‘)
title(‘Kp、Ki、Kd?優化曲線‘‘fontsize‘18);
xlabel(‘迭代次數‘‘fontsize‘18);ylabel(‘參數值‘‘fontsize‘18);
set(gca‘Fontsize‘18);
legend(‘Kp‘‘Ki‘‘Kd‘1);

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????2589??2010-08-23?13:03??PSO.m

?????文件????????174??2010-08-22?18:38??PSO_PID.m

?????文件??????29558??2010-08-22?18:38??PID_Model.mdl

-----------?---------??----------?-----??----

????????????????32321????????????????????3


評論

共有 條評論

相關資源