[求助]關於內建的最佳化工具(PSO)

作者: david10273 (茶米)   2016-11-12 01:05:49
關於內建的最佳化工具我無法取出最優數值
以下是程式碼
function Fuzzy_Optimize_PSOMATLAB
warning off
tic
rng default
options =
optimoptions('particleswarm','PlotFcns',@pswplotbestf,'MaxIter',10,'SwarmSize',10);
lb = 1*ones(1,12);
ub = 1000*ones(1,12);
[tt,fval,exitflag,output] = particleswarm(@func,12,lb,ub,options);
toc
end
%**************************************************************************
function fitness=func(tt)
assignin('base', 'Ta', [tt(1) tt(2) tt(3) tt(4) tt(5) tt(6) tt(7) tt(8) tt(9)
tt(10) tt(11) tt(12)]);
sim('PItest1_n_em',50);
fitness=(max((Sys_Out1.Data(end)))/4)+(max((Sys_Out2.Data(end)))/4)+(max((Sys_Out3.Data(end)))/4)+(max((Sys_Out4.Data(end)))/4);
end
就是他會找fitness的最小值是多少可是卻沒有顯示tt會是多少=口=
可是我看https://www.mathworks.com/help/gads/particleswarm.html
其中的Examine the Solution Process有顯示xx的數值 可是我打出來的tt沒有出現運
算結果
即使將這行改成options =
optimoptions('particleswarm','MaxIter',10,'SwarmSize',10,'HybridFcn',@fmincon)
;也變得無法運算
求各位大大解答 解救小弟 謝謝您
作者: david10273 (茶米)   2016-11-12 01:10:00
難道配合simulink救不能回傳找到的最優參數嗎QAQ

Links booklink

Contact Us: admin [ a t ] ucptt.com