matlab与群智能,群智能优化算法-测试函数matlab源码

群智能优化算法测试函数matlab源代码

global M;

creatematrix(2);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画ackley图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% ackley x from[-5 5]

% x=-5:0.01:5;

% [x,y]=meshgrid(x);

% temp1=x.^2+y.^2;

% temp2=cos(2*pi*x)+cos(2*pi*y);

% z=20+exp(1)-20*exp(-0.2*sqrt(temp1/2))-exp(temp2/2);

% axis([-5,5,-5,5]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画旋转的ackley图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%Rotated ackley x from[-5 5

% x=-5:0.01:5;

% [x,y]=meshgrid(x);

% for i=1:size(x,1)

% for j=1:size(y,1)

% p=[x(i,j),y(i,j)]';

% x(i,j)=M(1,:)*p;

% y(i,j)=M(2,:)*p;

% end

% end

% temp1=x.^2+y.^2;

% temp2=cos(2*pi*x)+cos(2*pi*y);

% z=20+exp(1)-20*exp(-0.2*sqrt(temp1/2))-exp(temp2/2);

% axis([-5,5,-5,5]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画cigar图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%cigar

x=-5:0.01:5;

[x,y]=meshgrid(x);

z=x.^2+(10^4)*y.^2;

axis([-5,5,-5,5]);

meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画旋转的cigar图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%rotated cigar x from [-5 5]

% x=-7:0.01:7;

% [x,y]=meshgrid(x);

% for i=1:size(x,1)

% for j=1:size(y,1)

% p=[x(i,j),y(i,j)]';

% x(i,j)=M(1,:)*p;

% y(i,j)=M(2,:)*p;

% end

% end

% z=x.^2+(10^4)*y.^2;

% axis([-7,7,-7,7]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画ellipse图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%ellipse x from [-5 -5]

% x=-5:0.01:5;

% [x,y]=meshgrid(x);

% z=x.^2+10.^4*(y.^2);

% axis([-5,5,-5,5]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画griewangk图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%griewangk

% x=-600:1:600;

% [x,y]=meshgrid(x);

% temp1=(x.^2+y.^2)/4000;

% temp2=cos(x)*cos(y/sqrt(2));

% z=temp1-temp2+1;

% axis([-600,600,-600,600]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画旋转的griewangk图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%Rotated griewangk

% x=-600:1:600;

% [x,y]=meshgrid(x);

% for i=1:size(x,1)

% for j=1:size(y,1)

% p=[x(i,j),y(i,j)]';

% x(i,j)=M(1,:)*p;

% y(i,j)=M(2,:)*p;

% end

% end

% temp1=(x.^2+y.^2)/4000;

% temp2=cos(x)*cos(y/sqrt(2));

% z=temp1-temp2+1;

% axis([-600,600,-600,600]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画nocon_rastrigin图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%nocon_rastrigin

% x=-10:0.05:10;

% [x,y]=meshgrid(x);

% temp1=0;

% temp2=0;

% z=0;

% if abs(x)<1/2

% temp1=x;

% else

% temp1=round(2.*x)/2;

% end

% if abs(y)<1/2

% temp2=y;

% else

% temp2=round(2.*y)/2;

% end

% z=z+temp1.^2-10*cos(2*pi.*temp1)+temp2.^2-10*cos(2*pi.*temp2)+20;

% axis([-10,10,-10,10]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画旋转的nocon_rastrigin图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%Rotated nocon_rastrigin

% x=-15:0.05:15;

% [x,y]=meshgrid(x);

% for i=1:size(x,1)

% for j=1:size(y,1)

% p=[x(i,j),y(i,j)]';

% x(i,j)=M(1,:)*p;

% y(i,j)=M(2,:)*p;

% end

% end

% temp1=0;

% temp2=0;

% z=0;

% if abs(x)<1/2

% temp1=x;

% else

% temp1=round(2.*x)/2;

% end

% if abs(y)<1/2

% temp2=y;

% else

% temp2=round(2.*y)/2;

% end

% z=z+temp1.^2-10*cos(2*pi.*temp1)+temp2.^2-10*cos(2*pi.*temp2)+20;

% axis([-15,15,-15,15]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画rastrigin图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%rastrigin

% x=-10:0.05:10;

% [x,y]=meshgrid(x);

% temp1=x.^2-10*cos(2*pi.*x);

% temp2=y.^2-10*cos(2*pi.*y);

% z=temp1+temp2+20;

% axis([-10,10,-10,10]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画旋转的rastrigin图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%Rotated rastrigin

% x=-15:0.05:15;

% [x,y]=meshgrid(x);

% for i=1:size(x,1)

% for j=1:size(y,1)

% p=[x(i,j),y(i,j)]';

% x(i,j)=M(1,:)*p;

% y(i,j)=M(2,:)*p;

% end

% end

% temp1=x.^2-10*cos(2*pi.*x);

% temp2=y.^2-10*cos(2*pi.*y);

% z=temp1+temp2+20;

% axis([-15,15,-15,15]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画rosenbrock图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%rosenbrock

% x=-10:0.05:10;

% [x,y]=meshgrid(x);

% z=100*(y-x.^2).^2+(x-1).^2;

% axis([-10,10,-10,10]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画schwefel图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%schwefel

% x=-10:0.05:10;

% [x,y]=meshgrid(x);

% z=(x-x.^2).^2+(x-1).^2+(x-y.^2).^2+(y-1).^2;

% axis([-10,10,-10,10]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画旋转的schwefel图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%Rotated schwefel

% x=-15:0.05:15;

% [x,y]=meshgrid(x);

% for i=1:size(x,1)

% for j=1:size(y,1)

% p=[x(i,j),y(i,j)]';

% x(i,j)=M(1,:)*p;

% y(i,j)=M(2,:)*p;

% end

% end

% z=(x-x.^2).^2+(x-1).^2+(x-y.^2).^2+(y-1).^2;

% axis([-15,15,-15,15]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画sphere图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%sphere

% x=-10:0.05:10;

% [x,y]=meshgrid(x);

% z=x.^2+y.^2;

% axis([-10,10,-10,10]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画sumcan图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%sumcan

% x=-0.16:0.0005:0.16;

% [x,y]=meshgrid(x);

% z=1./(10.^(-5)+abs(x)+abs(x+y));

% z=log10(z);

% axis([-0.16,0.16,-0.16,0.16]);

% mesh(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画tablet图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%tablet

% x=-10:0.05:10;

% [x,y]=meshgrid(x);

% z=10.^4*x.^2+y.^2;

% axis([-10,10,-10,10]);

% mesh(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画Weierstrass图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%Weierstrass

% x=-1:0.005:1;

% [x,y]=meshgrid(x);

% z=0;

% for k=0:20

% z=z+0.5^k*cos(2*pi*3^k*(x+0.5))+0.5^k*cos(2*pi*3^k*(y+0.5));

% end

% temp=0;

% for k=0:20

% temp=temp+0.5^k*cos(2*pi*3^k*0.5);

% end

% z=z-2*temp;

% axis([-1,1,-1,1]);

% meshc(x,y,z);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画旋转的Weierstrass图。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%Rotated Weierstrass

% x=-1.5:0.005:1.5;

% [x,y]=meshgrid(x);

% for i=1:size(x,1)

% for j=1:size(y,1)

% p=[x(i,j),y(i,j)]';

% x(i,j)=M(1,:)*p;

% y(i,j)=M(2,:)*p;

% end

% end

% z=0;

% for k=0:20

% z=z+0.5^k*cos(2*pi*3^k*(x+0.5))+0.5^k*cos(2*pi*3^k*(y+0.5));

% end

% temp=0;

% for k=0:20

% temp=temp+0.5^k*cos(2*pi*3^k*0.5);

% end

% z=z-2*temp;

% axis([-1.5,1.5,-1.5,1.5]);

% meshc(x,y,z);

%

xlabel('x');

ylabel('y');

zlabel('f(x,y)');

colormap jet;

% clear;

%saveas(gcf,'temp.jpg')

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值