文档详情

新版多目标粒子群matlab代码.doc

发布:2018-10-02约3.05万字共27页下载文档
文本预览下载声明
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 改进的多目标粒子群算法,包括多个测试函数 % 对程序中的部分参数进行修改将更好地求解某些函数 % ZDT1NP=cell(1,50); ZDT1FV=cell(1,50); ZDT1T=zeros(1,50); for i=1:50 tic; %[np,nprule,dnp,fv,goals,pbest]=ParticleSwarmOpt(ZDT1,0.1,50,100,2.0,1.0,0.4,200,30,zeros(1,30),ones(1,30));%--ZDT1 elapsedTime=toc; ZDT1NP(i)={np}; ZDT1FV(i)={fv}; ZDT1T(i)=elapsedTime;display(strcat(ZDT1,num2str(i))); end zdt1fv=cell2mat(ZDT1FV); zdt1fv=GetLeastFunctionValue(zdt1fv); ZDT2NP=cell(1,50); ZDT2FV=cell(1,50); ZDT2T=zeros(1,50); for i=1:50 tic; %[np,nprule,dnp,fv,goals,pbest]=ParticleSwarmOpt(ZDT2,0.1,50,100,2.0,1.0,0.4,200,30,zeros(1,30),ones(1,30),[1,zeros(1,29)]);%--ZDT2 elapsedTime=toc; ZDT2NP(i)={np}; ZDT2FV(i)={fv}; ZDT2T(i)=elapsedTime;display(strcat(ZDT2,num2str(i))); end zdt2fv=cell2mat(ZDT2FV); zdt2fv=GetLeastFunctionValue(zdt2fv); %%%%%%%%%%%%%%%%%%%%%%%%%%%5 ZDT3NP=cell(1,50); ZDT3FV=cell(1,50); ZDT3T=zeros(1,50); for i=1:50 tic; % [np,nprule,dnp,fv,goals,pbest]=ParticleSwarmOpt(ZDT3,0.1,50,100,2.0,1.0,0.4,400,30,zeros(1,30),ones(1,30));%--ZDT3 elapsedTime=toc; ZDT3NP(i)={np}; ZDT3FV(i)={fv}; ZDT3T(i)=elapsedTime;display(strcat(ZDT3,num2str(i))); end zdt3fv=cell2mat(ZDT3FV); zdt3fv=GetLeastFunctionValue(zdt3fv); ZDT4NP=cell(1,50); ZDT4FV=cell(1,50); ZDT4T=zeros(1,50); for i=1:50 tic; % [np,nprule,dnp,fv,goals]=ParticleSwarmOpt(ZDT4,0.1,50,100,2.0,1.0,0.4,200,10,[0,-5,-5,-5,-5,-5,-5,-5,-5,-5],[1,5,5,5,5,5,5,5,5,5],[1,0,0,0,0,0,0,0,0,0]);%--ZDT4 elapsedTime=toc; ZDT4NP(i)={np}; ZDT4FV(i)={fv}; ZDT4T(i)=elapsedTime;display(strcat(ZDT4,num2str(i))); end zdt4fv=cell2mat(ZDT4FV); zdt4fv=GetLeastFunctionValue(zdt4fv); %%%%%%%%%%%%%%%%%%%%%%%% ZDT6NP=cell(1,50); ZDT6FV=cell(1,50); ZDT6T=zeros(1,50); for i=1:50 tic; %[np,nprule,dnp,fv,goals,pbest]=ParticleSwarmOpt(ZDT6,0.1,50,100,2.0,1.0,0.4,200,10,zeros(1,10),ones(1,10));%--ZDT6 elapsedTime=toc; ZDT6NP(i)={np}; ZDT6FV(
显示全部
相似文档