手机版

MATLAB_智能算法30个案例分析 有目录(7)

时间:2025-07-05   来源:未知    
字号:

%% 个体初始化

individuals=struct('fitness',zeros(1,sizepop), 'chrom',[]); %种群结构体 avgfitness=[]; %种群平均适应度 bestfitness=[]; %种群最佳适应度 bestchrom=[]; %适应度最好染色体 % 初始化种群 for i=1:sizepop

individuals.chrom(i,:)=Code(lenchrom,bound); %随机产生个体 x=individuals.chrom(i,:);

individuals.fitness(i)=fun(x); %个体适应度 end

%找最好的染色体

[bestfitness bestindex]=min(individuals.fitness);

bestchrom=individuals.chrom(bestindex,:); %最好的染色体

avgfitness=sum(individuals.fitness)/sizepop; %染色体的平均适应度 % 记录每一代进化中最好的适应度和平均适应度 trace=[avgfitness bestfitness];

%% 进化开始 for i=1:maxgen

% 选择操作

individuals=Select(individuals,sizepop); avgfitness=sum(individuals.fitness)/sizepop;

% 交叉操作

individuals.chrom=Cross(pcross,lenchrom,individuals.chrom,sizepop,bound);

% 变异操作

individuals.chrom=Mutation(pmutation,lenchrom,individuals.chrom,sizepop,[i maxgen],bound);

% 计算适应度 for j=1:sizepop

x=individuals.chrom(j,:); individuals.fitness(j)=fun(x); end

%找到最小和最大适应度的染色体及它们在种群中的位置 [newbestfitness,newbestindex]=min(individuals.fitness); [worestfitness,worestindex]=max(individuals.fitness); % 代替上一次进化中最好的染色体 if bestfitness>newbestfitness bestfitness=newbestfitness;

bestchrom=individuals.chrom(newbestindex,:); end

MATLAB_智能算法30个案例分析 有目录(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)