• egpt
    了解作者
  • matlab
    开发工具
  • 1KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 1
    下载次数
  • 2017-08-08 15:09
    上传日期
遗传算法(Genetic Algorithm)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。
example1.rar
  • example1.m
    1.9KB
内容介绍
clc clear all close all %% 画出函数图 figure(1); hold on; lb=1;ub=2; %函数自变量范围【1,2】 ezplot('sin(10*pi*X)/X',[lb,ub]); %画出函数曲线 xlabel('自变量/X') ylabel('函数值/Y') %% 定义遗传算法参数 NIND=40; %个体数目 MAXGEN=20; %最大遗传代数 PRECI=20; %变量的二进制位数 GGAP=0.95; %代沟 px=0.7; %交叉概率 pm=0.01; %变异概率 trace=zeros(2,MAXGEN); %寻优结果的初始值 FieldD=[PRECI;lb;ub;1;0;1;1]; %区域描述器 Chrom=crtbp(NIND,PRECI); %初始种群 %% 优化 gen=0; %代计数器 X=bs2rv(Chrom,FieldD); %计算初始种群的十进制转换 ObjV=sin(10*pi*X)./X; %计算目标函数值 while gen<MAXGEN FitnV=ranking(ObjV); %分配适应度值 SelCh=select('sus',Chrom,FitnV,GGAP); %选择 SelCh=recombin('xovsp',SelCh,px); %重组 SelCh=mut(SelCh,pm); %变异 X=bs2rv(SelCh,FieldD); %子代个体的十进制转换 ObjVSel=sin(10*pi*X)./X; %计算子代的目标函数值 [Chrom,ObjV]=reins(Chrom,SelCh,1,1,ObjV,ObjVSel); %重插入子代到父代,得到新种群 X=bs2rv(Chrom,FieldD); gen=gen+1; %代计数器增加 %获取每代的最优解及其序号,Y为最优解,I为个体的序号 [Y,I]=min(ObjV); trace(1,gen)=X(I); %记下每代的最优值 trace(2,gen)=Y; %记下每代的最优值 end plot(trace(1,:),trace(2,:),'bo'); %画出每代的最优点 grid on; plot(X,ObjV,'b*'); %画出最后一代的种群 hold off %% 画进化图 figure(2); plot(1:MAXGEN,trace(2,:)); grid on xlabel('遗传代数') ylabel('解的变化') title('进化过程') bestY=trace(2,end); bestX=trace(1,end); fprintf(['最优解:\nX=',num2str(bestX),'\nY=',num2str(bestY),'\n'])
评论
    相关推荐
    • 遗传算法.zip
      遗传算法展示,利用python演示遗传算法,更好的理解遗传算法
    • 遗传算法程序.zip
      遗传算法计算数学中用于解决最佳化的搜索算法,是进化算法的一种。进化算法最初是借鉴了进化生物学中的一些现象而发展起来的,这些现象包括遗传、突变、自然选择以及杂交等。遗传算法通常实现方式为一种计算机模拟...
    • 遗传算法.zip
      最全遗传算法工具箱,matlab遗传算法教程
    • 遗传算法.rar
      matlab实现遗传算法。。。。。。。。。。。。。。。。
    • 遗传算法.zip
      matlab遗传算法%主程序:用遗传算法求解y=200*exp(-0.05*x).*sin(x)在[-2 2]区间上的最大值 clc; clear all; close all; 。。。。。。
    • The-Shakespeare-and-Monkey-Problem:进化计算-遗传算法
      进化计算-遗传算法 为什么需要这种算法? 如果您有一只猴子在打字机上随机打字一段无穷的时间,那么最终,在某个时刻,这只猴子会打字出莎士比亚的完整作品。 好吧,简化问题,假设我们要从猴子身上得到的唯一一件...
    • 计算机进化遗传算法
      系统介绍进化算法的课程 是一本教材.资源来在网络。如有版权问题请及时通知
    • 进化算法包括遗传算法进化程序设计、进化规划和进化策略等等
       同遗传算法一样,进化算法的收敛性也有一些结果,在文献[9]中证明了在保存最优个体时通用的进化计算是收敛的。但进化算法的很多结果是从遗传算法推过去的。  遗传算法对交叉操作要看重一些,认为变异操作是算法...
    • 遗传算法 基于生物进化
      遗传算法是基于生物进化论的思想,适者生存的道理进行设计的算法,可以解决生活中很多问题。如TSP,JOP-SHOP SHEDUING等等。
    • 遗传算法程序
      遗传算法计算数学中用于解决最佳化的搜索算法,是进化算法的一种。进化算法最初是借鉴了进化生物学中的一些现象而发展起来的,这些现象包括遗传、突变、自然选择以及杂交等。遗传算法通常实现方式为一种计算机模拟...