资源简介
%用遗传算法进行简单函数的优化
clear
bn=22; %个体串长度
inn=50; %初始种群大小
gnmax=200; %最大代数
pc=0.75; %交叉概率
pm=0.05; %变异概率
%产生初始种群
s=round(rand(inn,bn));
%计算适应度,返回适应度f和累积概率p
[f,p]=objf(s);
gn=1;
while gn<gnmax+1
for j=1:2:inn
%选择操作
seln=sel(s,p);
%交叉操作
scro=cro(s,seln,pc);
scnew(j,:)=scro(1,:);
scnew(j+1,:)=scro(2,:);
%变异操作
smnew(j,:)=mut(scnew(j,:),pm);
smnew(j+1,:)=mut(scnew(j+1,:),pm);
end
s=smnew; %产生了新的种群
%计算新种群的适应度
[f,p]=objf(s);
%记录当前代最好和平均的适应度
[fmax,nmax]=max(f);
fmean=mean(f);
ymax(gn)=fmax;
ymean(gn)=fmean;
%记录当前代的最佳个体
x=n2to10(s(nmax,:));
xx=-1.0+x*3/(power(2,bn)-1);
xmax(gn)=xx;
gn=gn+1
end
gn=gn-1;
%绘制曲线
subplot(2,1,1);
plot(1:gn,[ymax;ymean]);
title('历代适应度变化','fonts',10);
legend('最大适应度','平均适应度');
string1=['最终适应度',num2str(ymax(gn))];
gtext(string1);
subplot(2,1,2);
plot(1:gn,xmax,'r-');
legend('自变量');
string2=['最终自变量',num2str(xmax(gn))];
gtext(string2);

代码片段和文件信息
%“交叉”操作
function scro=cro(sselnpc);
[inn bn]=size(s);
if rand chb=ceil(rand*(bn-1)); %在[1bn-1]范围内随机产生一个交叉位
scro(1:)=[s(seln(1)1:chb) s(seln(2)chb+1:bn)];
scro(2:)=[s(seln(2)1:chb) s(seln(1)chb+1:bn)];
else
scro(1:)=s(seln(1):);
scro(2:)=s(seln(2):);
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 320 2009-09-10 16:46 Matlab 程序\cro.m
文件 52 2006-07-27 14:36 Matlab 程序\ft.m
文件 3876 2009-09-10 16:43 Matlab 程序\ga.m
文件 8157696 2007-09-26 09:50 Matlab 程序\garunning.avi
文件 1288 2003-05-06 14:58 Matlab 程序\init.mat
文件 1179 2006-07-27 17:01 Matlab 程序\main.m
文件 189 2009-09-10 16:46 Matlab 程序\mut.m
文件 128 2006-07-27 14:33 Matlab 程序\n2to10.m
文件 466 2009-09-10 16:45 Matlab 程序\objf.m
文件 225 2006-07-27 14:32 Matlab 程序\sel.m
目录 0 2009-10-26 17:56 Matlab 程序
----------- --------- ---------- ----- ----
8165419 11
- 上一篇:wave_vorticity.m
- 下一篇:两个三维图像互信息计算
相关资源
- MATLAB 实现各类常见算法
- matlab编写的量子遗传算法
- 协同进化遗传算法求解函数优化问题
- 基于遗传算法的旅游全国的路径最优
- 基于遗传算法的机器人路径规划matl
- 多种群遗传算法的函数优化算法(源
- 遗传算法完整MATLAB程序实数法,轮盘
- 遗传算法解决最优路径、选址问题
- 遗传算法GA车间调度Matlab代码
- 求解多旅行商(MTSP)的遗传算法的
- 基于遗传算法的小波神经网络在股票
- matlab开发-基于遗传算法的机器人运动
- 《Matlab遗传算法工具箱及应用》源码
- 遗传算法图像分割matlab+源代码
- 神经网络、遗传算法、支持向量机、
- 谢菲尔德(Sheffield)遗传算法工具箱
- 遗传算法优化支持向量机GASVM
- 遗传算法工具箱
- MATLAB遗传算法工具箱及应用.zip
- 《MATLAB 遗传算法工具箱及应用》PDF完
- 遗传算法(Genetic Algorithm)MATLAB案例详
- MATLAB遗传算法工具箱及应用》pdf版.
- 基于遗传算法的自动排课系统设计
- MATLAB.遗传算法和粒子群算法程序设计
- 多目标优化文档及代码
- 超完整规范的多目标遗传优化算法M
- 遗传算法 -- matlab ga工具箱
- MATLAB遗传算法工具箱及应用 包含PDF电
- 神经网络的43个源程序及数据
- 基于BP算法和遗传算法的自适应噪声抵
评论
共有 条评论