clear;
clc;
NIND=40;%一代中的个体数目
MAXGEN=100;%最大遗传代数
NVAR=2;
PRECI=25;%变量的二进制位数
GGAP=0.7;%相邻代之间的交配概率
trace=zeros(MAXGEN,2);%寻优结果的初始值全为0
FieldD=[25,25;0.2,0.2;1,1;0,0;0,0;1,1;1,1];%区域描述器
Chrom=crtbp(NIND,NVAR*PRECI);%初始种群的建立
gen=0; %代计数器
x=bs2rv(Chrom,FieldD);
ObjV=peaks1(x(:,1),x(:,2));
while gen<MAXGEN,
FitnV=ranking(-ObjV);%分配适应度的值
SelCh=select('sus',Chrom,FitnV,GGAP);%选择
SelCh=recombin('xovsp',SelCh,0.7);%重组
SelCh=mut(SelCh);%变异
x=bs2rv(SelCh,FieldD);%子代个体的十进制转换
ObjVSel=peaks1(x(:,1),x(:,2));%计算子代的目标函数
[Chrom ObjV]=reins(Chrom,SelCh,1,1,ObjV,ObjVSel);%重新插入子代的新种群
gen=gen+1;
%输出最优解及其对应的10个变量的十进制值
[Y,I]=max(ObjV);
Y,bs2rv(Chrom(I,:),FieldD)
%Y;bs2rv(Chrom(I,:),FieldD);
X=bs2rv(Chrom(I,:),FieldD);
Z0=peaks1(X(1,1),X(1,2)) %拟合坐标在原函数值
%zx2=N1dx2(X(1,1),X(1,2)) %拟合坐标二阶导
%zy2=N1dy2(X(1,1),X(1,2))
% zxy=N1dxdy(X(1,1),X(1,2))
% K=gauss(X(1,1),X(1,2)) %拟合坐标值在拟合函数中的高斯曲率
% d3=juli3(X(1,1),X(1,2))
% d5=juli5(X(1,1),X(1,2))
%d10=juli10(X(1,1),X(1,2))
% plot(I,Y,'bo');
% for i=1:length(I)
% text(I,Y,['(',num2str(I),',',num2str(Y),')'])
%在(x,y)的每一点处添加文字,文字内容为(x,y),其中每一点的x,y用num2str把数字转化成字符串
% end
%trace (gen,1)=min(ObjV);
%trace (gen,2)=sum(ObjV)/length(ObjV);
% if(gen==MAXGEN)
%figure(2);
% plot(ObjV);hold on;
%plot(ObjV,'b*');grid;
%end
end
variable=bs2rv(Chrom,FieldD);%最优个体的十进制转换
hold on grid;
plot(variable',ObjV','b*');
figure(3);clf;
plot (trace (:,1));
hold on;
plot(trace (:,2),'r-.');grid;
legend('解的变化','种群均值的变化');
GA.zip_GA优化_优化算法
版权申诉
129 浏览量
2022-07-15
10:37:05
上传
评论
收藏 1KB ZIP 举报
局外狗
- 粉丝: 65
- 资源: 1万+
最新资源
- 卡方数据.sav
- Python实现基于Django框架的二手物品购物网站设计源码+数据库.zip
- 基于Python和Django的二手物品购物网站设计源码+数据库脚本.zip
- 【计算机毕业设计】基于h5的移动网赚项目小程序【源码+lw+部署文档+讲解】
- 【计算机毕业设计】基于ssm-vue的oa系统设计与实现【源码+lw+部署文档+讲解】
- 基于pytorch实现的YOLOV5+SORT的车辆行人目标识别及追踪系统源码.zip
- 【计算机毕业设计】基于servlet+jdbc的在线选房系统设计与实现【源码+lw+部署文档+讲解】
- 投身科技创新,勇担时代先锋.pptx
- 【计算机毕业设计】基于SSM的仿微博系统的设计与实现【源码+lw+部署文档+讲解】
- 使用 Web Components 实现,遵循 Material You 设计规范的 Web 前端组件库
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈