资源简介
这个程序使用的是matlab遗传算法工具箱
代码片段和文件信息
figure(1);
fplot(‘v.*sin(10*pi*v)+2.0‘[-12]);
NIND=40;
MAXGEN=30;
PRECI=20;
GGAP=0.9;
trace=zeros(2MAXGEN);
FieldD=[20;-1;2;1;0;1;1];
Chrom=crtbp(NINDPRECI);
gen=0;
v=bs2rv(ChromFieldD);
ObjV=v.*sin(10*pi*v)+2.0;
while gen FitnV=ranking(-ObjV);
SelCh=select(‘sus‘ChromFitnVGGAP);
FitnVmax=max(FitnV);
FitnVave=sum(FitnV)/NIND;
if(FitnV>= FitnVave)
Index1=find(FitnV>= FitnVave);
Index2=find(FitnV< FitnVave);
Pc1=0.5*(FitnVmax- FitnV(Index1))/(FitnVmax- FitnVave);
Pm1=0.02*(FitnVmax- FitnV(Index1))/(FitnVmax- FitnVave);
else
Pc2=0.85;
Pm2=0.05;
end
end
SelCh=recombin(‘xovsp‘SelCh(Index11)Pc1);
SelCh=recombin(‘xovsp‘SelCh(Index21)Pc2);
SelCh=mut(SelCh(Index11)Pm1);
SelCh=mut(SelCh(Index21)Pm2);
v=bs2rv(SelChFieldD);
ObjVSel=v.*sin(10*pi*v)+2.0;
[Chrom ObjV]=reins(ChromSelCh11ObjVObjVSel);
gen=gen+1;
variable=bs2rv(Chrom FieldD)
[YI]=max(ObjV)hold on;
plot(IY‘bo‘);
trace(1gen)=max(ObjV);
trace(2gen)=sum(ObjV)/length(ObjV);
if (gen==20)
figure(2);
plot(ObjV);hold on;
plot(ObjV‘b*‘);grid;
end
%end
figure(3);
plot(trace(1:)‘‘Pr‘);
hold on;
plot(trace(2:)‘‘-.‘);grid;
legend(‘解的变化‘‘种群均值的变化‘)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1394 2008-09-05 10:07 zishiyingGA.m
----------- --------- ---------- ----- ----
1394 1
相关资源
- matlab2017b百度云
- 指针式仪表识别方法,确定指针式仪
- 一种多输出svr算法
- 简支梁内力计算matlab程序
- 配电网故障定位matlab程序
- 卷积神经网络CNN代码解析-matlab.doc
- Matlab_DSPBuilder实现DDS的设计
- jpeg标准亮度与色度量化表(质量因子
- PRI变换的matlab程序
- 数字图像处理matlab源代码
- 大数据可视化在医疗领域的应用
- 基于MATLAB_SIMULIN_省略_网型双馈风力发
- sg平滑 matlab语言
- 直驱永磁最大功率捕捉matlab仿真建模
- KPCA的MATLAB代码
- zoomfft-matlab学习
- matlab FIR IIR 滤波器
- 位势函数 matlab程序
- MATLAB阴影提取
- 三次样条插值matlab程序 含多种边界条
- Matlab实现最优化非线性最小二乘
- 反击变换器的matlab仿真
- buck电路的闭环调试仿真模型,适合初
- matlab获取voronoi多边形图的顶点和面积
- 修正残差的GM(11)模型Matlab代码
- 快速傅里叶反变换程序
- SDIF算法Matlab程序
- 三维B样条曲线拟合Matlab程序
- 基于MATLAB的锅炉水温与流量串级控制
- 支持向量机 MATLAB程序
评论
共有 条评论