1 简介

本文通过结合引力搜索算法和粒子群优化算法,克服单一算法的不足,发挥单个算法的优点,提出一种改进的混合优化算法( Integrated Gravitation- al Search Algorithm and Particle Swarm Optimization, IN-GSA-PSO) 。​

2 部分代码

clear all
close all
clcQ=1;            % ACO Parameter
tau0=10;        % Initial Phromone             (ACO)
alpha=0.3;      % Phromone Exponential Weight (ACO)
rho=0.1;        % Evaporation Rate             (ACO)
beta_min=0.2;   % Lower Bound of Scaling Factor (DE)
beta_max=0.8;   % Upper Bound of Scaling Factor (DE)
pCR=0.2;        % Crossover Probability         (DE)
Runno=10;SearchAgents_no=20; % Number of search agents% classification datasetsFunction_name='F1'; %MLP_XOR dataset
% Function_name='F2'; %MLP_Baloon dataset
% Function_name='F3'; %MLP_Iris dataset
% Function_name='F4'; %MLP_Cancer dataset
% Function_name='F5'; %MLP_Heart dataset% Function approximation datasets% Function_name='F6'; %MLP_Sigmoid dataset
% Function_name='F7'; %MLP_Cosine dataset
% Function_name='F8'; %MLP_Sine dataset
% Function_name='F9'; %MLP_Sphere dataset% Load details of the selected data set
[lb,ub,dim,fobj]=Get_Functions_details(Function_name);ElitistCheck=1;
min_flag=1;
Rpower=1;
Max_iteration=500; % Maximum numbef of iterations%
if Function_name=='F1'
input= [0 0 0 0 1 1 1 1;0 0 1 1 0 0 1 1;0 1 0 1 0 1 0 1];
target3=[0 1 1 0 1 0 0 1];
Hno=7;
dim = 5*7+1;                      % Dimension of the problemfor i=1:1:RunnoRrate=0;[Fbest,Lbest,BestChart]=GSA(SearchAgents_no,Max_iteration,ElitistCheck,min_flag,Rpower,lb,ub,dim,fobj);BestSolutions1(i) = Fbest;[gBestScore,gBest,GlobalBestCost]= CPSOGSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);BestSolutions4(i) = gBestScore;[BestSolACO,BestAnt,BestCostACO] = ACO(SearchAgents_no, Max_iteration,Q,tau0,alpha,rho,lb,ub,dim,fobj);BestSolutions5(i) = BestSolACO.Cost;[BestCost,Best_Hab,BestSol] = bbo( SearchAgents_no, Max_iteration,lb,ub,dim,fobj);BestSolutions6(i) = BestSol.Cost;[BestSolDE,DBestSol,BestCostDE] = DE(SearchAgents_no, Max_iteration,beta_min,beta_max,pCR,lb,ub,dim,fobj);BestSolutions7(i) = BestSolDE.Cost ;W=Lbest(1:4*Hno);
B=Lbest(4*Hno+1:dim);
W=gBest(1:4*Hno);
B=gBest(4*Hno+1:dim);
W=BestAnt(1:4*Hno);
B=BestAnt(4*Hno+1:dim);
W=Best_Hab(1:4*Hno);
B=Best_Hab(4*Hno+1:dim);
W=DBestSol(1:4*Hno);
B=DBestSol(4*Hno+1:dim);for pp=1:8actualvalue=my_simulate(3,Hno,1,W,B,input(:,pp)');if(target3(pp)==1)if (actualvalue>=0.95)Rrate=Rrate+1;endendif(target3(pp)==0)if (actualvalue(1)<0.05)Rrate=Rrate+1;end  endendClassification_rate(i)=(Rrate/8)*100;disp(['GSA is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(Fbest),' Mean_Classification rate = ' , num2str(Classification_rate(i)),')'])
% disp(['CPSOGSA is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(gBestScore),' Mean_Classification rate = ' , num2str(Classification_rate(i)),')'])
% disp(['ACO is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(BestSolACO.Cost),' Mean_Classification rate =' , num2str(Classification_rate(i)),')'])
% disp(['BBO is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(BestSol.Cost),' Mean_Classification rate = ' , num2str(Classification_rate(i)),')'])
% disp(['DE is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(BestSolDE.Cost),' Mean_Classification rate = ' , num2str(Classification_rate(i)),')']) endA_Classification_rate=mean(Classification_rate);Average= mean(BestSolutions1);StandDP=std(BestSolutions1);Med = median(BestSolutions1); [BestValueP I] = min(BestSolutions1);[WorstValueP IM]=max(BestSolutions1);
end%
% if Function_name=='F2'
%
% load baloon.txt
% x=sortrows(baloon,2);
% %I2=x(1:150,1:4);
% I2(:,1)=x(1:20,1);
% I2(:,2)=x(1:20,2);
% I2(:,3)=x(1:20,3);
% I2(:,4)=x(1:20,4);
% T=x(1:20,5);
%
%
% Hno=9;
% dim = 6*9+1;
%
%   for i=1:1:Runno
%         [Fbest,Lbest,BestChart]=GSA(SearchAgents_no,Max_iteration,ElitistCheck,min_flag,Rpower,lb,ub,dim,fobj);
%         BestSolutions1(i) = Fbest;
%         [gBestScore,gBest,GlobalBestCost]= CPSOGSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
%         BestSolutions4(i) = gBestScore;
%         [BestSolACO,BestAnt,BestCostACO] = ACO(SearchAgents_no, Max_iteration,Q,tau0,alpha,rho,lb,ub,dim,fobj);
%         BestSolutions5(i) = BestSolACO.Cost;
%         [BestCost,Best_Hab,BestSol] = bbo( SearchAgents_no, Max_iteration,lb,ub,dim,fobj);
%         BestSolutions6(i) = BestSol.Cost;
%         [BestSolDE,DBestSol,BestCostDE] = DE(SearchAgents_no, Max_iteration,beta_min,beta_max,pCR,lb,ub,dim,fobj);
%         BestSolutions7(i) = BestSolDE.Cost ;
%         Rrate=0;%W=Lbest(1:45);
%B=Lbest(46:55);
%W=gBest(1:45);
%B=gBest(46:55);
%W=BestAnt(1:45);
% B=BestAnt(46:55);
% W=Best_Hab(1:45);
% B=Best_Hab(46:55);
% W=DBestSol(1:45);
% B=DBestSol(46:55);%         for pp=1:20
%             actualvalue=my_simulate(4,9,1,W,B,I2(pp,:));
%             if(T(pp)==1)
%                 if (actualvalue>=0.95)
%                     Rrate=Rrate+1;
%                 end
%             end
%             if(T(pp)==0)
%                 if (actualvalue(1)<0.05)
%                     Rrate=Rrate+1;
%                 end
%             end
%
%         end
% end
% end
% % %
% if Function_name=='F3'
%
%     load iris.txt;
% x=sortrows(iris,2);
% I2=x(1:150,1:4);
% H2=x(1:150,1);
% H3=x(1:150,2);
% H4=x(1:150,3);
% H5=x(1:150,4);
% T=x(1:150,5);
% I=(I2-0.1)./(7.9-0.1);
% H2=H2';
% [xf,PS] = mapminmax(H2);
% I2(:,1)=xf;
%
% H3=H3';
% [xf,PS2] = mapminmax(H3);
% I2(:,2)=xf;
%
% H4=H4';
% [xf,PS3] = mapminmax(H4);
% I2(:,3)=xf;
%
% H5=H5';
% [xf,PS4] = mapminmax(H5);
% I2(:,4)=xf;
% Thelp=T;
% T=T';
% [yf,PS5]= mapminmax(T);
% T=yf;
% T=T';
%
%     for i=1:1:Runno
%         [Fbest,Lbest,BestChart]=GSA(SearchAgents_no,Max_iteration,ElitistCheck,min_flag,Rpower,lb,ub,dim,fobj);
%         BestSolutions1(i) = Fbest;
%         [gBestScore,gBest,GlobalBestCost]= CPSOGSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
%         BestSolutions4(i) = gBestScore;
%         [BestSolACO,BestAnt,BestCostACO] = ACO(SearchAgents_no, Max_iteration,Q,tau0,alpha,rho,lb,ub,dim,fobj);
%         BestSolutions5(i) = BestSolACO.Cost;
%         [BestCost,Best_Hab,BestSol] = bbo( SearchAgents_no, Max_iteration,lb,ub,dim,fobj);
%         BestSolutions6(i) = BestSol.Cost;
%         [BestSolDE,DBestSol,BestCostDE] = DE(SearchAgents_no, Max_iteration,beta_min,beta_max,pCR,lb,ub,dim,fobj);
%         BestSolutions7(i) = BestSolDE.Cost ;%         Rrate=0;
%             W=Lbest(1:63);
%             B=Lbest(64:75);
%             W=gBest(1:63);
%             B=gBest(64:75);
%             W=BestAnt(1:63);
%             B=BestAnt(64:75);
%             W=Best_Hab(1:63);
%             B=Best_Hab(64:75);
%             W=DBestSol(1:63);
%             B=DBestSol(64:75);%         for pp=1:150
%             actualvalue=my_simulate(4,9,3,W,B,I2(pp,:));
%             if(T(pp)==-1)
%                 if (actualvalue(1)>=0.95 && actualvalue(2)<0.05 && actualvalue(3)<0.05)
%                     Rrate=Rrate+1;
%                 end
%             end
%             if(T(pp)==0)
%                 if (actualvalue(1)<0.05 && actualvalue(2)>=0.95 && actualvalue(3)<0.05)
%                     Rrate=Rrate+1;
%                 end
%             end
%             if(T(pp)==1)
%                 if (actualvalue(1)<0.05 && actualvalue(2)<0.05 && actualvalue(3)>=0.95)
%                     Rrate=Rrate+1;
%                 end
%             end
%         end
% end
% end
%
% if Function_name=='F4'
%
%     load Cancer.txt
% x=Cancer;
% %I2=x(1:150,1:4);
% H2=x(1:699,2:11);
% for iii=1:699
%     for jjj=1:10
%         H2(iii,jjj)=((H2(iii,jjj)-1)/9);
%     end
% end
% I2=H2(1:699,1:9);
%
% T=H2(1:699,10);
% Hno=19;
% dim=11*19;
%
%     for i=1:1:Runno
%         Rrate=0;
%         [Fbest,Lbest,BestChart]=GSA(SearchAgents_no,Max_iteration,ElitistCheck,min_flag,Rpower,lb,ub,dim,fobj);
%         BestSolutions1(i) = Fbest;
%         [gBestScore,gBest,GlobalBestCost]= CPSOGSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
%         BestSolutions4(i) = gBestScore;
%         [BestSolACO,BestAnt,BestCostACO] = ACO(SearchAgents_no, Max_iteration,Q,tau0,alpha,rho,lb,ub,dim,fobj);
%         BestSolutions5(i) = BestSolACO.Cost;
%         [BestCost,Best_Hab,BestSol] = bbo( SearchAgents_no, Max_iteration,lb,ub,dim,fobj);
%         BestSolutions6(i) = BestSol.Cost;
%         [BestSolDE,DBestSol,BestCostDE] = DE(SearchAgents_no, Max_iteration,beta_min,beta_max,pCR,lb,ub,dim,fobj);
%         BestSolutions7(i) = BestSolDE.Cost ;% W=Lbest(1:10*Hno);
% B=Lbest(10*Hno+1:dim);
% W=gBest(1:10*Hno);
% B=gBest(10*Hno+1:dim);
% W=BestAnt(1:10*Hno);
% B=BestAnt(10*Hno+1:dim);
% W=Best_Hab(1:10*Hno);
% B=Best_Hab(10*Hno+1:dim);
% W=DBestSol(1:10*Hno);
% B=DBestSol(10*Hno+1:dim);%         for pp=600:699
%             actualvalue=my_simulate(9,Hno,1,W,B,I2(pp,:) );
%             if(T(pp)>=0.3 && T(pp)<0.4)
%                 if (abs(actualvalue-0.333333333333333)<0.1)
%                     Rrate=Rrate+1;
%                 end
%             end
%             if(T(pp)>=0.1 && T(pp)<0.2)
%                 if (abs(actualvalue-0.111111111111111)<0.1)
%                     Rrate=Rrate+1;
%                 end
%             end
%
%         end
%   end
% end% if Function_name=='F5'
%
% load Heart.txt
% x=Heart;
% % I2=x(1:150,1:4);
% I2(:,1)=x(1:80,2);
% I2(:,2)=x(1:80,3);
% I2(:,3)=x(1:80,4);
% I2(:,4)=x(1:80,5);
% I2(:,5)=x(1:80,6);
% I2(:,6)=x(1:80,7);
% I2(:,7)=x(1:80,8);
% I2(:,8)=x(1:80,9);
% I2(:,9)=x(1:80,10);
% I2(:,10)=x(1:80,11);
% I2(:,11)=x(1:80,12);
% I2(:,12)=x(1:80,13);
% I2(:,13)=x(1:80,14);
% I2(:,14)=x(1:80,15);
% I2(:,15)=x(1:80,16);
% I2(:,16)=x(1:80,17);
% I2(:,17)=x(1:80,18);
% I2(:,18)=x(1:80,19);
% I2(:,19)=x(1:80,20);
% I2(:,20)=x(1:80,21);
% I2(:,21)=x(1:80,22);
% I2(:,22)=x(1:80,23);
% T=x(1:80,1);
%
% Hno=45;
% dim = 24*45+1;
%
%     for i=1:1:Runno
%
%         Rrate=0;
%         [Fbest,Lbest,BestChart]=GSA(SearchAgents_no,Max_iteration,ElitistCheck,min_flag,Rpower,lb,ub,dim,fobj);
%         BestSolutions1(i) = Fbest;
%         [gBestScore,gBest,GlobalBestCost]= CPSOGSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
%         BestSolutions4(i) = gBestScore;
%         [BestSolACO,BestAnt,BestCostACO] = ACO(SearchAgents_no, Max_iteration,Q,tau0,alpha,rho,lb,ub,dim,fobj);
%         BestSolutions5(i) = BestSolACO.Cost;
%         [BestCost,Best_Hab,BestSol] = bbo( SearchAgents_no, Max_iteration,lb,ub,dim,fobj);
%         BestSolutions6(i) = BestSol.Cost;
%         [BestSolDE,DBestSol,BestCostDE] = DE(SearchAgents_no, Max_iteration,beta_min,beta_max,pCR,lb,ub,dim,fobj);
%         BestSolutions7(i) = BestSolDE.Cost ;% W=Lbest(1:23*Hno);
% B=Lbest(23*Hno+1:dim);
% W=gBest(1:23*Hno);
% B=gBest(23*Hno+1:dim);
% W=BestAnt(1:23*Hno);
% B=BestAnt(23*Hno+1:dim);
% W=Best_Hab(1:23*Hno);
% B=Best_Hab(23*Hno+1:dim);
% W=DBestSol(1:23*Hno);
% B=DBestSol(23*Hno+1:dim);%         for pp=1:80
%             actualvalue=my_simulate(22,Hno,1,W,B,I2(pp,:) );
%             if(T(pp)==1)
%                 if (actualvalue>=0.95)
%                     Rrate=Rrate+1;
%                 end
%             end
%             if(T(pp)==0)
%                 if (actualvalue(1)<0.05)
%                     Rrate=Rrate+1;
%                 end
%             end
%
%         end
%     end
% end% if Function_name=='F6' %% Sigmoid
%
%     Hnode=15;
% dim = 3*Hnode+1;
%
% %for test 3 times more than the training samples
% %   xf1=[0:0.01:pi];
% %   yf1=sin(2.*xf1);
% %   yf1=yf1.*exp(-xf1);
% xf1=[-3:0.05:3];
% % yf1=sin(2.*xf1);
% % yf1=yf1.*exp(-xf1);
% %yf1=xf1.^2;
% %yf1=xf1.^4-6.*xf1.^2+3;
% yf1=sigmf(xf1,[1 0]);
%
% %   xf1=[-2*pi:0.05:2*pi];
% %   yf1=sin(2.*xf1);
%   %yf1=yf1.*exp(-xf1);
% yNN=zeros(1,10);
% [xf,PS] = mapminmax(xf1);
% [yf,PS2]= mapminmax(yf1);
%   [M N]=size(xf);
%   test_error=zeros(1,Runno);
%     for i=1:1:Runno
%         [Fbest,Lbest,BestChart]=GSA(SearchAgents_no,Max_iteration,ElitistCheck,min_flag,Rpower,lb,ub,dim,fobj);
%         BestSolutions1(i) = Fbest;
%         [gBestScore,gBest,GlobalBestCost]= CPSOGSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
%         BestSolutions4(i) = gBestScore;
%         [BestSolACO,BestAnt,BestCostACO] = ACO(SearchAgents_no, Max_iteration,Q,tau0,alpha,rho,lb,ub,dim,fobj);
%         BestSolutions5(i) = BestSolACO.Cost;
%         [BestCost,Best_Hab,BestSol] = bbo( SearchAgents_no, Max_iteration,lb,ub,dim,fobj);
%         BestSolutions6(i) = BestSol.Cost;
%         [BestSolDE,DBestSol,BestCostDE] = DE(SearchAgents_no, Max_iteration,beta_min,beta_max,pCR,lb,ub,dim,fobj);
%         BestSolutions7(i) = BestSolDE.Cost ;% W=1:2*Hnode;
% B=2*Hnode+1:3*Hnode+1;
% W=gBest(1:2*Hnode);
% B=gBest(2*Hnode+1:3*Hnode+1);
% W=BestAnt(1:2*Hnode);
% B=BestAnt(2*Hnode+1:3*Hnode+1);
% W=Best_Hab(1:2*Hnode);
% B=Best_Hab(2*Hnode+1:3*Hnode+1);
% W=DBestSol(1:2*Hnode);
% B=DBestSol(2*Hnode+1:3*Hnode+1);
%
%         for pp=1:N
%             yNN(pp)=my_simulate(1,15,1, W,B,xf(pp));
%         end
%
% disp(['GSA is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(Fbest),')'])
% disp(['CPSOGSA is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(gBestScore), ')'])
% disp(['ACO is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(BestSolACO.Cost),')'])
% disp(['BBO is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(BestSol.Cost),')'])
% disp(['DE is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(BestSolDE.Cost),')'])
%     end%   [M N]=size(xf);
%   test_error=zeros(1,Runno);
%     for i=1:1:Runno
% %         [Fbest,Lbest,BestChart]=GSA(SearchAgents_no,Max_iteration,ElitistCheck,min_flag,Rpower,lb,ub,dim,fobj);
% %         BestSolutions1(i) = Fbest;
% %         [gBestScore,gBest,GlobalBestCost]= CPSOGSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
% %         BestSolutions4(i) = gBestScore;
% %         [BestSolACO,BestAnt,BestCostACO] = ACO(SearchAgents_no, Max_iteration,Q,tau0,alpha,rho,lb,ub,dim,fobj);
% %         BestSolutions5(i) = BestSolACO.Cost;
% %         [BestCost,Best_Hab,BestSol] = bbo( SearchAgents_no, Max_iteration,lb,ub,dim,fobj);
% %         BestSolutions6(i) = BestSol.Cost;
%         [BestSolDE,DBestSol,BestCostDE] = DE(SearchAgents_no, Max_iteration,beta_min,beta_max,pCR,lb,ub,dim,fobj);
%         BestSolutions(i) = BestSolDE.Cost ;
% %
% W=Lbest(1:2*Hnode);
% B= Lbest(2*Hnode+1:3*Hnode+1);
% W=gBest(1:2*Hnode);
% B=gBest(2*Hnode+1:3*Hnode+1);
% W=BestAnt(1:2*Hnode);
% B=BestAnt(2*Hnode+1:3*Hnode+1);
% W=Best_Hab(1:2*Hnode);
% B=Best_Hab(2*Hnode+1:3*Hnode+1);
% W=DBestSol(1:2*Hnode);
% B=DBestSol(2*Hnode+1:3*Hnode+1);
%
%         for pp=1:N
%             yNN(pp)=my_simulate(1,15,1, W,B,xf(pp));
%         end
% %
% disp(['GSA is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(Fbest),')'])
% disp(['CPSOGSA is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(gBestScore), ')'])
% disp(['ACO is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(BestSolACO.Cost),')'])
% disp(['BBO is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(BestSol.Cost),')'])
% disp(['DE is training FNN (Run # = ', num2str(i),' ,MSE = ', num2str(BestSolDE.Cost),')'])%     end
% end% % A_Classification_rate=mean(Classification_rate);
%     Average= mean(BestSolutions);
%     StandDP=std(BestSolutions);
%     Med = median(BestSolutions);
%     [BestValueP I] = min(BestSolutions);
%     [WorstValueP IM]=max(BestSolutions);
% end% figure
%         set(axes,'FontName','Times New Roman');
%         hold on
%         grid on;
%         xfDenorm = mapminmax('reverse',xf,PS);
%         yfDenorm = mapminmax('reverse',yNN,PS2);
%         test_error(1,i)=test_error(1,i)+sum(abs( yfDenorm- yf1 ));
%         A_Test_Error=mean(test_error);
%         plot(xf1,yf1,'DisplayName','Real curve','Color','b');
%         plot(xfDenorm,yfDenorm,'DisplayName','Approximated curve','Marker','.','LineStyle','-','Color','r');
%         %eqtext = '$$sin(2x)e^{-x}$$';
%
%         name='GSA'
%
%         title([['\fontsize{12}\it ', name]],'FontName','Times New Roman');
%         xlabel('\fontsize{12}\it X');
%         ylabel('\fontsize{12}\it Y');
%         legend('toggle');
%         set(legend,'FontAngle','italic','FontName','Times New Roman') disp(['Best=',num2str( BestValueP)])
disp(['Worst=',num2str(WorstValueP)])
disp(['Average=',num2str( Average)])
disp(['Standard_Deviation=',num2str( StandDP)])
disp(['Median=',num2str(Med)])
% % disp(['Mean_Test_Error = ' , num2str(A_Test_Error)])figuresemilogy(1:Max_iteration,BestChart,'DisplayName','GSA','Color','g','Marker','o','LineStyle','-','LineWidth',2,...'MarkerEdgeColor','g','MarkerFaceColor',[.49 1 .63],'MarkerSize',5);hold onsemilogy(1:Max_iteration,GlobalBestCost,'DisplayName','CPSOGSA', 'Color', 'r','Marker','diamond','LineStyle','-','LineWidth',2,...'MarkerEdgeColor','r','MarkerFaceColor',[.49 1 .63],'MarkerSize',5);semilogy(1:Max_iteration,BestCostACO,'DisplayName','ACO','Color','c','Marker','square','LineStyle','-','LineWidth',2,...'MarkerEdgeColor','c','MarkerFaceColor',[.49 1 .63],'MarkerSize',5);
%   semilogy(1:Max_iteration,BestCost,'DisplayName','BBO','Color','b','Marker','*','LineStyle','-','LineWidth',2,...
%       'MarkerEdgeColor','b','MarkerFaceColor',[.49 1 .63],'MarkerSize',5);semilogy(1:Max_iteration,BestCostDE,'DisplayName','DE','Color','y','Marker','+','LineStyle','-','LineWidth',2,...'MarkerEdgeColor','y','MarkerFaceColor',[.49 1 .63],'MarkerSize',5);title ('\fontsize{12}\bf XOR Dataset');
% title ('\fontsize{12}\bf Baloon Dataset');
% title ('\fontsize{12}\bf Iris Dataset');
% title ('\fontsize{12}\bf Cancer Dataset');
% title ('\fontsize{12}\bf Heart Dataset');
% title ('\fontsize{12}\bf Sigmoid Dataset');
% title ('\fontsize{12}\bf Cosine Dataset');
% title ('\fontsize{12}\bf Sine Dataset');xlabel('\fontsize{12}\bf Iteration');
ylabel('\fontsize{12}\bf log(MSE)');legend('\fontsize{10}\bf GSA','\fontsize{10}\bf CPSOGSA','\fontsize{10}\bf ACO','\fontsize{10}\bf BBO','\fontsize{10}\bf DE',1);axis tight
box on

3 仿真结果

4 参考文献

[1]陈国福, 陈小山, 张瑞. 基于引力搜索和粒子群混合优化算法的证券投资组合问题研究[J]. 运筹与管理, 2018, 27(9):6.

部分理论引用网络文献,若有侵权联系博主删除。

5 MATLAB代码与数据下载地址

见博客主页

【优化求解】粒子群优化和重力搜索算法求解MLP问题matlab代码相关推荐

  1. 遗传-粒子群算法遗传-禁忌搜索算法求解TSP问题

    1. 前言 上一篇博文[五种常见启发式算法求解TSP问题-总结篇]中,总结了五种常见启发式算法在求解TSP问题上的效果,其中遗传算法的求解质量最差,而粒子群算法和禁忌搜索算法的求解效果最佳,因此本文计 ...

  2. 【学习笔记】【算法】【智能优化】粒子群优化(PSO)

    [学习笔记][算法][智能优化]粒子群优化(PSO) 文章目录 [学习笔记][算法][智能优化]粒子群优化(PSO) 1 算法背景 1.1 背景 1.2 基础知识 2 算法原理 2.1 基本原理 2. ...

  3. 智能优化算法——粒子群优化算法(PSO)(小白也能看懂)

    前言: 本文主要参考B站的一篇学习视频后,加之自己的理解和浓缩精华,不想看文字的可以直接划到末尾去b站看原视频,非常通俗易懂. 理论知识: 感性认知:如下面一张图片所示.在一个范围内,以三点(三)为例 ...

  4. 【多式联运】基于粒子群结合遗传算法实现陆海空多式联运问题附matlab代码

    1 简介 物流运输方式由公路.水路.空运及管道等 3 种方式组成,3 种运输方式在技术上.经济上各有长短,都有适宜的 使用范围,每种运输方式单独运用很难实现节约资源.降本增效.随着我国经济不断发展以及 ...

  5. 【图像配准】基于粒子群改进sift实现SAR图像配准附matlab代码

    1 简介 1.1 SIFT综述 尺度不变特征转换(Scale-invariant feature transform或SIFT)是一种电脑视觉的算法用来侦测与描述影像中的局部性特征,它在空间尺度中寻找 ...

  6. 基于粒子群优化的BP神经网络(分类应用) - 附代码

    基于粒子群优化的BP神经网络(分类应用) - 附代码 文章目录 基于粒子群优化的BP神经网络(分类应用) - 附代码 1.鸢尾花iris数据介绍 2.数据集整理 3.粒子群优化BP神经网络 3.1 B ...

  7. 【优化算法】粒子群优化算法

    粒子群优化算法 粒子群优化算法简介 粒子群优化算法原理 粒子群优化算法的数学描述 粒子群优化算法框架 PySwarms:Python中粒子群优化的研究工具包 PySwarms快速使用 示例:编写自己的 ...

  8. pso解决tsp matlab,计算智能课程设计_粒子群优化算法求解旅行商问题_Matlab实现.doc...

    计算智能课程设计_粒子群优化算法求解旅行商问题_Matlab实现.doc 摘要:TSP是一个典型的NPC问题.本文首先介绍旅行商问题和粒子群优化算法的基本概念.然后构造一种基于交换子和交换序[1]概念 ...

  9. 优化算法求解复杂约束问题策略(以粒子群算法为例讲解求解复杂约束问题的多种策略)

    优化算法求解复杂约束问题策略(以粒子群算法为例讲解求解复杂约束问题的多种策略)python实现     整个代码文字讲解共17页 提示:专栏解锁后,可以查看该专栏所有文章. 文章目录 策略1:在位置更 ...

最新文章

  1. 使用Navicat定时备份mysql数据库和创建报表并邮件自动发送
  2. SAX解析XML文件
  3. Partition--分区总结
  4. .NET Core开发实战(第24课:文件提供程序:让你可以将文件放在任何地方)--学习笔记...
  5. Eclipse的SVN使用
  6. C++STL笔记(六):list详解
  7. 本地提交到yarn_Yarn运行Flink作业 0449
  8. Java 并发 —— Java 标准库对并发的支持及 java.util.concurrent 包
  9. music的matlab程序,MUSIC算法matlab程序
  10. 导出数据库数据至CSV格式
  11. 常用八大数据结构总结及应用场景-附示例截图
  12. 4.1日预测及操作建议
  13. 数据分析的类型有哪些?
  14. linux can总线接收数据串口打包上传_【Linux应用】CAN总线编程
  15. iphone11看信号强度_iphone11信号强度真的会有提升吗
  16. ICLR 2022论文双盲通过却被爆抄袭:数据算法全部照搬,第二页几乎空白
  17. word文件点击打印没反应
  18. upnp 播放器 android,基于Android系统的UPNP媒体播放器的研究与实现
  19. 微信分享接口,图片自己可以看到对方看不到
  20. 从零开始学C++之STL(七):剩下5种算法代码分析与使用示例(remove 、rotate 、sort、lower_bound、accumulate)

热门文章

  1. 【论文阅读】三.基于智能网联车的信号交叉口更易受到拥堵型攻击
  2. Android融云会话及会话列表的实现
  3. 有哪些有效解决程序员中年危机的方法?
  4. 软件测试职业需要具备什么,新人要想学软件测试工程师需要具备哪些职业素质...
  5. RDO远程连接时提示“远程计算机需要网络级别身份验证,而您的计算机不支持该验证解决办法!
  6. 【Flutter】动画学习(一)Canvas绘制
  7. 使用阿里云的负载均衡服务器配置流程和配置数据库读写分离配置(全)
  8. 现实中的无人机也可以像蜘蛛侠一样“吐丝”了
  9. 什么是ui设计师:ui设计学什么内容
  10. 记录-Selection.addRange() 已弃用,该如何解决