算法】基于差分进化结合杂草算法求解单目标优化问题(DIWO)含Matlab源码"/>
【智能优化算法】基于差分进化结合杂草算法求解单目标优化问题(DIWO)含Matlab源码
1 简介
入侵杂草算法 ( Invasive Weed Optimization,IWO)是一种基于种群的数值搜索优化方法,其优点是鲁棒性强、 自适应性好和易于程序实现等,能够有效处理复杂非线性规划问题。 但是,标 准 IWO 存在易于陷入局部最优以及收敛精度不高、收敛速度慢等问题。 本文提出差分进化入侵杂 草 算 法 (Differential Evolution Invasive WeedOptimi-zation,DEIWO),在标准 IWO 基础上引入差 分 进 化 策 略,通 过 种 子 交 叉、变 异、选 择 操作,很好的克服了上述缺点。
2 部分代码
clc;
clear;
close all;
tic;
%%%%%%%%%%%%%%1 参数设定%%%%%%%%%%%
N0=30;
itmax=30;
dim=30;
pmax=50;
smax=10;
smin=1;
n=3;
delta_initial=3;
delta_final=0.001;
G=0.5;
CR=0.1;
-min(e))*(e-min(e))+smax);
%%%%%%%%%%%%%3 空间扩散%%%%%%%%%
delta_iter=(itmax-iter)^n/(itmax)^n*(delta_initial-delta_final)+delta_final;
M=size(Nseed);
[aa bb]=sort(e);
fit_median=mean(e);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
m={};
a=[];
b=[];
for i=1:M(1,1)
%%%%%%%%%%%%%%%%%%%%%%%%%%%
if e(i)>=fit_median
delta_i=(1+0.5*(e(i)-fit_median)/(max(e)-fit_median))*delta_iter;
else
delta_i=(1-0.5*(fit_median-e(i))/(fit_median-min(e)))*delta_iter;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for j=1:dim
% x_iter=normrnd(xini(i,j),delta_iter^2,[1,Nseed(i,1)]);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
k=rand();
x_iter=(rand()+k*rand()-k)*normrnd(xini(i,j),delta_iter^2,[1,Nseed(i,1)])+1e-006*rand();
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a=x_iter;
b=[b,a'];
end
m{i}=b';
b=[];
end
f=[];
for i=1:M(1,1)
for j=1:Nseed(i,1)
c=m{i};
d=c(:,j);
fitness_seed=sum(d(:,1).^2);
f=[f;fitness_seed];
end
end
u(i,j)=o(i,j);
end
end
fitu=sum(u(i,:).^2);
if fitu<F(i)
o(i,:)=u(i,:);
F(i)=fitu;
end
end
it=it+1
end
F
figure(1)
plot(1:itmax,EB(1:itmax))
y=min(fitmin);
y
toc
3 仿真结果
4 参考文献
[1]刘兴高, 卢伟胜. 一种基于差分进化入侵杂草优化算法的智能雷达海上目标检测系统及方法:.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
更多推荐
【智能优化算法】基于差分进化结合杂草算法求解单目标优化问题(DIWO)含Matlab源码
发布评论