资源简介
提供了多种群遗传算法的函数优化求解代码源程序,帮助初学者对MATLAB进行学习,
代码片段和文件信息
%% 多种群遗传算法
clear;
% clc
% close all
NIND=40; %个体数目
NVAR=1; %变量的维数
PRECI=20; %变量的二进制位数
GGAP=0.9; %代沟
MP=10; %种群数目
FieldD=[PRECI;0;1;1;0;1;1]; %译码矩阵
for i=1:MP
Chrom{i}=crtbp(NIND NVAR*PRECI); %创建初始种群
end
pc=0.7+(0.9-0.7)*rand(MP1); %在【0.70.9】范围i内随机产生交叉概率
pm=0.001+(0.05-0.001)*rand(MP1); %在【0.0010.05】范围内随机产生变异概率
gen=0; %初始遗传代数
gen0=0; %初始保持代数
MAXGEN=10; %最优个体最少保持代数
maxY=0; %最优值
for i=1:MP
ObjV{i}=objectFunction(bs2rv(Chrom{i} FieldD));%计算各初始种群个体的目标函数值
end
MaxObjV=zeros(MP1); %记录精华种群
MaxChrom=zeros(MPPRECI*NVAR); %记录精华种群的编码
while gen0<=MAXGEN
gen=gen+1; %遗传代数加1
for i=1:MP
FitnV{i}=ranking(-ObjV{i}); % 各种群的适应度
SelCh{i}=select(‘sus‘ Chrom{i} FitnV{i}GGAP); % 选择操作
SelCh{i}=recombin(‘xovsp‘SelCh{i} pc(i)); % 交叉操作
SelCh{i}=mut(SelCh{i}pm(i)); % 变异操作
ObjVSel=objectFunction(bs2rv(SelCh{i} FieldD)); % 计算子代目标函数值
[Chrom{i}ObjV{i}]=reins(Chrom{i}SelCh{i}11ObjV{i}ObjVSel); %重插入操作
end
[ChromObjV]=immigrant(ChromObjV); % 移民操作
[MaxObjVMaxChrom]=EliteInduvidual(ChromObjVMaxObjVMaxChrom); % 人工选择精华种群
YY(gen)=max(MaxObjV); %找出精华种群中最优的个体
if YY(gen)>maxY %判断当前优化值是否与前一次优化值相同
maxY=YY(gen); %更新最优值
gen0=0;
else
gen0=gen0+1; %最优值保持次数加1
end
end
%% 进化过程图
plot(1:genYY)
xlabel(‘进化代数‘)
ylabel(‘最优解变化‘)
title(‘进化过程‘)
xlim([1gen])
%% 输出最优解
[YI]=max(MaxObjV); %找出精华种群中最优的个体
X=(bs2rv(MaxChrom(I:) FieldD)); %最优个体的解码解
disp([‘最优值为:‘num2str(Y)])
disp([‘对应的自变量取值:‘num2str(X)])
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 349 2010-09-13 13:11 chapter7多种群遗传算法的函数优化算法\EliteInduvidual.m
文件 2054 2011-04-08 21:07 chapter7多种群遗传算法的函数优化算法\MPGA.m
文件 220 2010-11-15 20:13 chapter7多种群遗传算法的函数优化算法\ob
文件 1551 2011-04-08 19:54 chapter7多种群遗传算法的函数优化算法\SGA.m
文件 2014 2010-09-13 15:37 chapter7多种群遗传算法的函数优化算法\danyuan.m
文件 457 2010-09-13 13:10 chapter7多种群遗传算法的函数优化算法\immigrant.m
目录 0 2015-04-22 12:50 chapter7多种群遗传算法的函数优化算法\
- 上一篇:PLLsimuli
nk仿真模型 - 下一篇:四层声波波场有限差分程序
相关资源
- 遗传算法GA车间调度Matlab代码
- 数字滤波器的MATLAB与FPGA实现——杜勇
- 基于FPGA的自适应滤波器的实现
- gaze-text-detection-master
- 2维FFT的FPGA实现
- 步态识别源码
- 基于Matlab和FPGA的FIR数字滤波器设计及
- 蚁群优化SVM系数
- Modelling.the.Wireless.Propagation.Channel.A.s
- Gabor滤波后的GIST特征提取matlab代码
- MATLAB设计FPGA实现联合ISE和Modelsim仿真
- GA算法求最大值
- 完整的BP-Adaboost-GA自己整理的,包含数
- 遗传算法优化支持向量机GASVM
- 近邻传播聚类算法及matlab API
- gabor提取图像特征原理及其matlab实现
- 遗传算法工具箱
- 基于FPGA与MATLAB的fir滤波器实现Verilo
- FPGA实现ROM存储图片的VGA显示
- FSK调制FPGA实现
- dace.rar+Kriging+surrogate model
- LDPC编译码器Matlab代码及参考资料
- 关于在FPGA上建立SOPC的教程
- GA算法解决TSP问题(超完整版)(ma
- Gabor二维滤波器——最全
- Matlab编写NSGA-Ⅱ
- Matlab的Garch工具箱
- 超完整规范的多目标遗传优化算法M
- 基于FPGA技术的FIR数字滤波器的设计
- FPGA实现的数字下变频
评论
共有 条评论