一、获取代码方式

获取代码方式1:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。

获取代码方式2:
完整代码已上传我的资源:【优化算法】差分进化优化杂草优化(DIWO)【含Matlab源码 1482期】

备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);

二、部分源代码

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;xini=-40+10*rand(N0,dim);%%%%%%%%%%%%%%%%%%%%%%主循环%%%%%%%%%%%%%%%%%%%%%%%%
iter=1;
while iter<=itmaxNiter=N0; e=[];for i=1:Niter
fit=sum(xini(i,:).^2);
e=[e;fit];end
%%%%%%%%%%%%2 生长繁殖%%%%%%%%%%
Nseed=round(-(smax-smin)/(max(e)-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_mediandelta_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=[];
endf=[];for i=1:M(1,1)for j=1:Nseed(i,1)c=m{i};d=c(:,j);
fitness_seed=sum(d(:,1).^2);endX=[m,xini];                                 %新种群
F=[e;f];                                    %新种群的适应度值
Niter=Niter+sum(Nseed(:,1));                %新种群个体数量
V=size(X);
q=[];h=X{i};B=size(h);for j=1:B(1,2)l=h(:,j);q=[q,l];end
end
o=q';%%%%%%%%%%4 竞争排除%%%%%%%%%%%%fitmin=g(1:pmax,1);Niter=pmax;
elsefitmin=g;
endxini=q(:,p(1:Niter,1));
iter=iter+1
yy=min(fitmin);end
%%%%%%%%%%%%%对经过一代繁殖后的杂草种群进行DE操作,产生新种群%%%%%%%%%%%%
it=1;while  it<=50v=zeros(Niter,dim);u=zeros(Niter,dim);
for i=1:Niterp=randint(3,1,[1 Niter]);
r1=p(1);
r2=p(2);
r3=p(3);
for j=1:dim
v(i,j)=o(r1,j)+G*(o(r2,j)-o(r3,j));rk=randint(1,1,[1 dim]);elseu(i,j)=o(i,j);endend
fitu=sum(u(i,:).^2);
if fitu<F(i)o(i,:)=u(i,:);F(i)=fitu;end
endit=it+1endFfigure(1)
plot(1:itmax,EB(1:itmax))
y=min(fitmin);
y
toc

三、运行结果

四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 包子阳,余继周,杨杉.智能优化算法及其MATLAB实例(第2版)[M].电子工业出版社,2016.
[2]张岩,吴水根.MATLAB优化算法源代码[M].清华大学出版社,2017.
[3]施媛波.基于改进的群居蜘蛛优化云计算任务调度算法[J].电脑编程技巧与维护. 2021,(04)

【优化算法】差分进化优化杂草优化(DIWO)【含Matlab源码 1482期】相关推荐

  1. 【单目标优化求解】基于matlab黑猩猩算法求解单目标问题【含Matlab源码 1413期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[单目标优化求解]基于matlab黑猩猩算法求解单目标问题[含Matlab源码 1413期] 点击上面蓝色字体,直接付费下载,即可. 获取代 ...

  2. 【风电功率预测】基于matlab帝国殖民竞争算法优化BP神经网络风电功率预测【含Matlab源码 1314期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源: [风电功率预测]基于matlab帝国殖民竞争算法优化BP神经网络风电功率预测[含Matlab源码 1314期] ⛄二.帝国殖民竞争算法简 ...

  3. 【APF三维路径规划】基于matlab人工势场算法无人机三维路径规划【含Matlab源码 168期】

    一.获取代码方式 获取代码方式1: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码. 获取代码方式2: 完整代码已上传我的资源:[三维路径规划]基于matlab人工势场算法无人机三维 ...

  4. 【RRT三维路径规划】基于matlab RRT算法无人机三维路径规划【含Matlab源码 155期】

    一.获取代码方式 获取代码方式1: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码. 获取代码方式2: 完整代码已上传我的资源:[三维路径规划]基于matlab RRT算法无人机三维 ...

  5. 【RRT三维路径规划】基于matlab RRT算法无人机三维路径规划【含Matlab源码 1363期】

    一.获取代码方式 获取代码方式1: 通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码. 获取代码方式2: 完整代码已上传我的资源:[三维路径规划]基于matlab RRT算法无人机三维 ...

  6. 【物流选址】基于matlab免疫算法求解物流选址问题【含Matlab源码 020期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[物流选址]基于matlab免疫算法求解物流选址问题[含Matlab源码 020期] 获取代码方式2: 付费专栏Matlab路径规划(初级版 ...

  7. 【A_star三维路径规划】基于matlab A_star算法无人机三维路径规划【含Matlab源码 446期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[三维路径规划]基于matlab A_star算法无人机三维路径规划[含Matlab源码 446期] 获取代码方式2: 付费专栏Matla ...

  8. 【ACO TSP】基于matlab蚁群算法求解31城市旅行商问题【含Matlab源码 1147期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[TSP]基于matlab蚁群算法求解31城市旅行商问题[含Matlab源码 1147期] 点击上面蓝色字体,直接付费下载,即可. 获取代码 ...

  9. 【LSSVM回归预测】基于matlab灰狼算法优化最小支持向量机GWO-LSSVM数据预测【含Matlab源码 2259期】

    ⛄一.灰狼算法优化最小支持向量机GWO-LSSVM简介 1 算法理论 采用灰狼优化算法的最小二乘支持向量机模型预测时,为避免过拟合现象和检验该模型的有效性,将实证部分主要分为:①基于灰狼优化算法的最小 ...

  10. 【LSSVM回归预测】基于matlab人工蜂群算法优化最小二乘支持向量机LSSVM数据回归预测【含Matlab源码 2213期】

    ⛄一.人工蜂群算法优化最小二乘支持向量机LSSVM简介 1 最小二乘支持向量机 最小二乘支持向量机是支持向量机的一种改进算法[9,10],它将SVM算法中的不等式约束转化为等式约束,采用最小二乘线性系 ...

最新文章

  1. 多线程编程有什么用途_为什么建议你一定要学懂C++
  2. 使用.Net访问Office编程接口
  3. 选项在哪_心理测试:4种高跟鞋,比较喜欢哪一种?测试出你对物的欣赏面
  4. Java NIO 非阻塞网络编程快速入门
  5. matlab2c使用c++实现matlab函数系列教程-median函数
  6. ubuntu18.04 卸载Anaconda3
  7. Python基础 4 字符串的变形 判断
  8. 计算机知识技能大赛总结,计算机知识技能大赛总结
  9. 【ESP8266】 ESP8266与LittleFS文件系统
  10. `英语` 2022/8/4
  11. git出现 [rejected]master -> master (non-fast-forward)问题怎么解决
  12. 刺客信条奥德赛ce修改技能点_刺客信条奥德赛特长加点
  13. 本科计算机专业是机试,华东师大计算机专业复试上机复习攻略+机试技巧
  14. 分享一个xenserver服务器添加网卡后续一系列吐血三升的问题
  15. 标志logo设计思路
  16. 遗传算法之扇贝的进化(python代码实现)
  17. 机器学习——回归——一元线性回归
  18. 小米6 android p是什么,小米6什么配置参数?小米6标配有什么?
  19. 2019掘安杯原题复现
  20. BT种子怎么用 BT种子怎么下载 BT种子是什么意思

热门文章

  1. 【Shell】ps -ef 和ps aux
  2. 洛谷1012 拼数
  3. 2017.5.26暴力赛解题报告
  4. Request 对象
  5. Android JNI 本地开发接口
  6. CentOS 6.5 升级内核 kernel
  7. [Python]将Excel文件中的数据导入MySQL
  8. sql server 2000数据库 最近经常出现某进程一直占用资源,阻塞?死锁?
  9. 中国iOS和Android设备激活量将超美国
  10. SQL中代替Like语句的另一种写法