• 大小: 3KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-05
  • 语言: Matlab
  • 标签: matlab  GA  

资源简介

matlab运用GA求解 clc clear %%遗传算法的参数 maxgen=100; %迭代次数 sizepop=50; %种群规模 pcross=0.75; %交叉概率 pmutation=0.25; %变异概率 n=5; %n表示基因的个数 p=10; %p表示权限的个数

资源截图

代码片段和文件信息

clc
clear
%%遗传算法的参数
maxgen=100;            %迭代次数
sizepop=20;            %种群规模
pcross=0.7;            %交叉概率
pmutation=0.02;        %变异概率
%%初始化种群
[xy]=meshgrid([-2:2]);
len1=1;
len2=1;
len=len1+len2;
D=2;%有两个变量
%随机产生初始化种群,rand()是产生0-1的随机数
for i=1:sizepop
     population(i1)=rand()*4-2;
     population(i2)=rand()*4-2;
end
bestfitness=[];
bestind=[];
%%迭代过程
for k=1:maxgen
    %%计算适应度
    for i=1:sizepop
        x=population(i1);
        y=population(i2);
        individual.fitness(i)=x*cos(2*pi*y)+y*sin(2*pi*x);            %适应度函数
    end
    %%
    sumfitness=sum(individual.fitness);   %当代种群适应度之和
    for i=1:sizepop
        chooseproportion(i)=individual.fitness(i)/sumfitness;   %选择概率
    end
    sumproportion(1)=chooseproportion(1);                       

评论

共有 条评论