1 简介

为减少云计算的任务完成时间,提出基于差分进化人工蜂群算法的云计算资源调度方法,两种改进算法并行寻优并及时交流最优解及位置信息,使两算法能够快速靠近最优解,减少算法迭代次数,提高算法收敛速度和精度。实验结果表明,差分进化人工蜂群算法调度的云计算耗时最少,随着任务量的增加耗时优势越明显。

【优化求解】基于差分算法结合人工蜂群算法求解最优目标matlab代码【优化求解】基于差分算法结合人工_迭代

【优化求解】基于差分算法结合人工蜂群算法求解最优目标matlab代码【优化求解】基于差分算法结合人工_差分_02

【优化求解】基于差分算法结合人工蜂群算法求解最优目标matlab代码【优化求解】基于差分算法结合人工_云计算_03

2 部分代码

clear
  • 1.
clc
  • 1.
close all
  • 1.
%% 首先选择一个函数进行寻优
  • 1.
objfun=@f1;ub=100; lb=-100;%sphere 全局最小值为0
  • 1.
objfun=@f2;lb=-600; ub=600;%griewank 全局最小值为0
  • 1.
objfun=@f3;lb=-100; ub=100;%rastrigin 全局最小值为0
  • 1.
objfun=@f4;lb=-10; ub=10;%rosenbrock 全局最小值为0
  • 1.
%%
  • 1.
d=2;
  • 1.
max_iter=2500;
  • 1.
sizepop=20;
  • 1.
%%
  • 1.
%1 粒子群
  • 1.
[pso_position,pso_fitness,pso_trace]=pso(objfun,d,max_iter,sizepop,ub,lb);
  • 1.
%2 遗传算法
  • 1.
[ga_position,ga_fitness,ga_trace]=ga(objfun,d,max_iter,sizepop,ub,lb);
  • 1.
%2 差分进化算法
  • 1.
[de_position,de_fitness,de_trace]=de1(objfun,d,max_iter,sizepop,ub,lb);
  • 1.
%3 蜂群算法
  • 1.
[abc_position,abc_fitness,abc_trace]=abc(objfun,d,max_iter,sizepop,ub,lb);
  • 1.
% 差分蜂群
  • 1.
[deabc_position ,deabc_fitness,deabc_trace]=DEABC(objfun,d,max_iter,sizepop,ub,lb);
  • 1.
%%
  • 1.
figure
  • 1.
plot(pso_trace(:,1))
  • 1.
hold on
  • 1.
plot(ga_trace(:,1))
  • 1.
plot(de_trace(:,1))
  • 1.
plot(abc_trace(:,1))
  • 1.
plot(deabc_trace(:,1))
  • 1.
legend('PSO','GA','DE','ABC','DEABC')
  • 1.
xlabel('迭代数')
  • 1.
ylabel('适应度值/函数值')
  • 1.
%%
  • 1.
figure
  • 1.
plot(log10(pso_trace(:,1)),'b-')
  • 1.
hold on
  • 1.
plot(log10(ga_trace(:,1)),'r-')
  • 1.
plot(log10(de_trace(:,1)),'g-')
  • 1.
plot(log10(abc_trace(:,1)),'k-')
  • 1.
plot(log10(deabc_trace(:,1)),'m-')
  • 1.
legend('PSO','GA','DE','ABC','DEABC')
  • 1.
xlabel('迭代数')
  • 1.
ylabel('适应度值/log10(函数值)')
  • 1.
img =gcf; %获取当前画图的句柄
  • 1.
print(img, '-dpng', '-r600', './img.png') %即可得到对应格式和期望dpi的图像
  • 1.

3 仿真结果

【优化求解】基于差分算法结合人工蜂群算法求解最优目标matlab代码【优化求解】基于差分算法结合人工_差分_04

4 参考文献

[1]王艳娇, 肖婧. (2015). 基于改进人工蜂群算法的高维多目标优化. 中南大学学报:自然科学版, 46(6), 9.

【优化求解】基于差分算法结合人工蜂群算法求解最优目标matlab代码【优化求解】基于差分算法结合人工_最优解_05