资源简介
遗传算法函数优化f=x.^2+y.^3+z.^2,,.运行前需下载谢菲尔德遗传算法工具箱,此为三元,如需n元,需要在toolbox->gatbx->objfun1 文件里的Dim改为和n相等的个数,gatbx是谢菲尔德遗传算法工具箱名称(可能每个人下载版本不一样,根据你下的工具箱名称),hanshuga1.m是函数优化代码,tuxing1.m是函数图像代码(这个代码是三元的不可调整)
代码片段和文件信息
clear all;close all; %释放所有变量,关闭图形窗口,清除命令窗口
%定义遗传算法参数
NIND=150; %个体数目(Numbe of individuals)
MAXGEN=200; %最大遗传代数(Maximum number of generations)
NVAR=3; %变量的维数
PRECI=20; %变量的二进制位数(Precision of variables)
GGAP=0.9; %代沟(Generation gap)
trace=zeros(MAXGEN 2);
%建立区域描述器(Build field descriptor)
FieldD=[rep([PRECI][1NVAR]);rep([-5.12;5.12][1 NVAR]);rep([1;0;1;1][1NVAR])];
Chrom=crtbp(NIND NVAR*PRECI); %创建初始种群
gen=0; %代计数器
ObjV=objfun1(bs2rv(Chrom FieldD)); %计算初始种群个体的目标函数值
while gen FitnV=ranking(ObjV); %分配适应度值(Assign fitness values)
SelCh=select(‘sus‘ Chrom FitnV GGAP); %选择
SelCh=recombin(‘xovsp‘ SelCh 0.9); %重组
SelCh=mut(SelCh); %变异
ObjVSel=objfun1(bs2rv(SelCh FieldD)); %计算子代目标函数值
[Chrom ObjV]=reins(Chrom SelCh 1 1 ObjV ObjVSel); %重插入
gen=gen+1; %代计数器增加
trace(gen 1)=min(ObjV); %遗传算法性能跟踪
trace(gen 2)=sum(ObjV)/length(ObjV);
end
plot(trace(:1)‘r‘);hold on;
plot(trace(:2)‘-.‘);grid;
title(‘最小值/均值 变化趋势‘);xlabel(‘Generations‘);ylabel(‘最小值/均值‘);
legend(‘最小值的变化‘‘种群函数值均值的变化‘)
%输出最优解及其对应的20个自变量的十进制值Y为最优解I为种群的序号
%[A I]=min(ObjV)
% X=bs2rv(Chrom FieldD);
% X(I:)
disp(sprintf(‘种群数目:%d‘NIND));
disp(sprintf(‘遗传代数:%d‘MAXGEN));
disp(sprintf(‘代沟:%d‘GGAP));
[YI]=min(trace(:1));
disp(sprintf(‘最小值:‘));Y
y1=trace(I:size(trace1)1); %全局最小值之后的每代最小值
length1=length(y1);
y2=find(y1==Y);
length2=length(y2);
if length2==length(y2)&&length2>=10
disp(sprintf(‘收敛次数:%d占总迭代次数比例:%4f‘II/MAXGEN));
else
disp(sprintf(‘最小值所在代数:%d‘I));
disp(sprintf(‘暂未收敛‘));
end
% [xyz]=meshgrid(linspace(-5.125.12));
% val=x.^2+y.^3+z.^2;
% [fv]=isosurface(xyzval2);
% p=patch(‘Faces‘f‘Vertices‘v‘CData‘v(:3)‘FaceColor‘‘w‘‘EdgeColor‘‘flat‘);
% isonormals(xyzvalp);%显示V=p等等值面
% view(3)
% grid on
% axis equal
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2453 2018-06-12 14:52 函数一\hanshuga1.m
文件 312 2018-06-13 16:14 函数一\tuxing1.m
目录 0 2018-06-13 16:16 函数一
----------- --------- ---------- ----- ----
2765 3
相关资源
- 单元级联高压STATCOM仿真-cascaded_Hbrid
- 遗传算法优化bp神经网络权值和单纯
- LSSVM工具箱中文版-LS-SVM.doc
- Matalbpso优化bp网络程序-PSO-bp.rar
- 基于干扰观测器的单机械臂滑模控制
- SAR图像CFAR检测算法实现
- 经典经典的粒子群算法
- Virus Spread Model.rar
- Anyligic与遗传算法
- 有效去除阴影代码效果很好.zip
- 模糊神经网络,结合模糊算法与神经
- 匹配追踪MP、正交匹配追踪算法OMP,稀
- 基于加速遗传算法的投影寻踪聚类模
- 带约束处理的粒子群算法,简明清晰
- 二值图像的轮廓提取以及跟踪算法
- OFDM完整仿真过程与教程.zip
- 数字图像去雾处理
- 基于后投影算法穿墙雷达成像
- 风光储微网模型仿真.zip
- 三次样条插值法,求信号包络线
- 《通信系统课群综合训练与设计》武
- 用遗传算法求解线性规划问题
- 改进的自适应遗传算法和粒子群算法
- BP神经网络PID控制器
- 遗传算法源代码
- 基于SS3型电力机车的仿真模型
- 压缩感知算法
- 模拟退火SA、遗传算法GA、粒子群优化
- RL负载33节点标准配电网模型
- 遗传算法思想+ppt
评论
共有 条评论