資源簡(jiǎn)介
遺傳算法首先會(huì)采用一種編碼方式將解空間映射到一個(gè)編碼空間,每一個(gè)編碼對(duì)應(yīng)問題的一個(gè)解,稱之為個(gè)體或者染色體,然后再隨機(jī)生成確定起始的一群個(gè)體,稱之為種群。在后續(xù)迭代的過程中,按照適者生存不適者淘汰的原理,根據(jù)適應(yīng)度大小選擇個(gè)體,并且借助各種不同的遺傳算子對(duì)個(gè)體進(jìn)行交叉和變異,生成一個(gè)代表新的解集的種群,這個(gè)種群會(huì)比前一代更加適應(yīng)環(huán)境,如此一直進(jìn)化下去直到到達(dá)優(yōu)化準(zhǔn)則。這個(gè)時(shí)候的末代個(gè)體,經(jīng)過解碼,得到的解可近似的作為問題的最優(yōu)解。
代碼片段和文件信息
clear
clc
kk=input(‘輸入kk:‘)
for?i=1:kk
????switch(i)
????????case?1
????????????flag=‘r‘;
????
?????case?2
????????????flag=‘b‘;
????????
?????????????case?3
????????????flag=‘g‘;
????????????
?????????????case?4
????????????flag=‘y‘;
????????case?5
????????????flag=‘k‘;
????????????
????end
pc=0.7;
pm=0.05;
NIND=40;
MAXGEN=500;
NVAR=1;
PRECI=20;
GGAP=0.9;
trace=zeros(MAXGEN1);
FieldD=[PRECI;0;1;1;0;1;1];
Chrom=crtbp(NINDNVAR*PRECI);
gen=0;
maxY=0;
ObjV=objectFunction(bs2rv(ChromFieldD));
while?gen ????F
評(píng)論
共有 條評(píng)論