資源簡介
matlab,用遺傳算法求f(x)=x·sin(10π·x)+1.0的最大值,其中x∈[-1,2]
代碼片段和文件信息
fplot(varible.*sin(10*pi*varible)+1.0‘[-12]);%畫出函數曲線
NIND=40;%定義個體數目
MAXGEN=25;%定義最大遺傳代數
PRECI=20;%變量的二進制位數
GGAP=?0.9;%代溝
trace=zeros(2MAXGEN);%尋優結果的初始值
FieldD=[20;-l;2;1;0;1;1];%區域描述器
fplot(varible.*sin(10*pi*varible)+1.0‘[-12]);%畫出函數曲線
NIND=40;%定義個體數目
MAXGEN=25;%定義最大遺傳代數
PRECI=20;%變量的二進制位數
GGAP=?0.9;%代溝
trace=zeros(2MAXGEN);%尋優結果的初始值
FieldD=[20;-l;2;1;0;1;1];%區域描述器
Chrom=crtbp(NINDPRECD);%初始群體
gen=0;%代計數器
varible=bs2rv(ChromFieldD);%計算初試群體的十進制轉換
ObjV=varible.*sin(10*pi*varible)+1.0;%
- 上一篇:干涉圖條紋追蹤Matlab
- 下一篇:MATLAB-PSO區域覆蓋
評論
共有 條評論