1 简介
2 部分代码
% Differential Squirrel Search Algorithm (DSSA) source Code Version 1.0
clearvars
close all
clc
disp('The DSSA is tracking the problem');
N=30; % Number of Squirrel
Function_name='F12'; % Name of the test function that can be from F1 to F24
MaxIT=100; % Maximum number of iterations
[lb,ub,dim,fobj]=Get_Functions_details(Function_name); % Function details
Times=1; %Number of independent times you want to run the DSSA
display(['Number of independent runs: ', num2str(Times)]);
for i=1:Times
[Destination_fitness(i),bestPositions(i,:),Convergence_curve(i,:)]=DSSA(N,MaxIT,lb,ub,dim,fobj);
display(['The optimal fitness of DSSA is: ', num2str(Destination_fitness(i))]);
end
[bestfitness,index]=min(Destination_fitness);
disp('--------Best Fitness, Average Fitness, Standard Deviation and Best Solution--------');
display(['The best fitness of DSSA is: ', num2str(bestfitness)]);
display(['The average fitness of DSSA is: ', num2str(mean(Destination_fitness))]);
display(['The standard deviation fitness of DSSA is: ', num2str(std(Destination_fitness))]);
display(['The best location of DSSA is: ', num2str(bestPositions(index,:))]);
figure;
subplot(121)
func_plot(Function_name);
title(Function_name)
xlabel('x_1');
ylabel('x_2');
zlabel([Function_name,'( x_1 , x_2 )'])
subplot(122)
semilogy(Convergence_curve(index,:),'LineWidth',3);
xlabel('Iterations');
ylabel('Best fitness obtained so far');
legend('DSSA');
box on;
axis tight;
grid off;
3 仿真结果
4 参考文献
[1]韩毅, 徐梓斌, 张亮. 国外新型智能优化算法——松鼠觅食算法[J]. 现代营销:信息版, 2019(9):2.