资源简介

f=100*(x.^2-y).^2+(1-x).^2,遗传算法函数优化,二元一次函数参考,经运行,可实现,里面hanshuga2.m是遗传算法优化代码,tuxing2是函数图像代码

资源截图

代码片段和文件信息

%********************************************************************遗传算法优化二元函数**
function[X]=hanshuga2  %M函数
clear all;close all;clc; %释放所有变量,关闭图形窗口,清除命令窗口
tic;%计时器开始计时
n=200;ger=200;pc=0.9;pm=0.05; %n是染色体的个数,ger是遗传的代数,pc是交叉概率  pm是变异概率
v=cadeia(n44000);   %调用了后面的函数,产生n=100个染色体,每个染色体长度为44的二进制字符,v是100X44的矩阵
v1=v(:1:22);
v2=v(:23:44);
[NL]=size(v1);%N是矩阵v的行数为100,L是矩阵v的列数为44
disp(sprintf(‘Number of generationgs: %d‘ger));
disp(sprintf(‘Population size: %d‘N));
disp(sprintf(‘Crossover probability: %.3f‘pc));
disp(sprintf(‘Mutationg probability: %.3f‘pm));


xmin=-2.048;xmax=2.048;%参数最小值,参数最大值
ymin=-2.048;ymax=2.048;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%画出待优化函数的三维网线图%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
x0=-2.048:0.08359:2.048;%以下四行是画三维曲面/网线图的数据准备
y0=-2.048:0.08359:2.048;
[X

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       5934  2018-06-13 16:18  函数二\hanshuga2.m

     文件        184  2018-06-13 16:15  函数二\tuxing2.m

     目录          0  2018-06-13 16:16  函数二

----------- ---------  ---------- -----  ----

                 6118                    3


评论

共有 条评论