資源描述:
《基于遺傳優(yōu)化神經(jīng)網(wǎng)絡(luò)的一般投資回報(bào)率預(yù)測》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、重慶大學(xué)碩士學(xué)位論文2遺傳算法及其發(fā)展數(shù)為止。2.1.2遺傳算法的基本流程遺傳算法的主要步驟可描述如下(如圖2.1):第1步:初始化。設(shè)置進(jìn)化代數(shù)計(jì)數(shù)器t?0;設(shè)置最大進(jìn)化代數(shù)T;隨機(jī)生成M個(gè)個(gè)體作為初始群體p(0)。第2步:個(gè)體評(píng)價(jià)。計(jì)算群體pt()中各個(gè)個(gè)體的適應(yīng)度。第3步:選擇運(yùn)算。將選擇算子作用與群體。第4步:交叉運(yùn)算。將交叉算子作用于群體。第5步:變異運(yùn)算。將變異算子作用于群體。群體pt()經(jīng)過選擇、交叉、變異運(yùn)算之后得到下一代群體pt(?1)。第6步:終止條件判斷。若t?T,則:t?t?1,轉(zhuǎn)到步驟2;若t?T,則以進(jìn)化過程得到的具有最大適應(yīng)度的個(gè)體作為
2、最優(yōu)解輸出,終止計(jì)算。圖2.1遺傳算法的流程示意圖Figure2.1theOperationofGeneticAlgorithm2.1.3遺傳算法的構(gòu)成要素(1)染色體編碼方法。簡單遺傳算法一般使用固定長度的二進(jìn)制符號(hào)串來表示群體中的個(gè)體,其等位基因是由二值符號(hào)集{0,1}所組成的。如:X=10101100111就表示一個(gè)個(gè)體,該個(gè)體的染色體長度是l?11。(2)個(gè)體適應(yīng)度評(píng)價(jià)。簡單遺傳算法一般按與個(gè)體適應(yīng)度成正比的概率來決6重慶大學(xué)碩士學(xué)位論文2遺傳算法及其發(fā)展定當(dāng)前群體中每個(gè)個(gè)體遺傳到下一代群體中的機(jī)會(huì)大小。為正確計(jì)算這個(gè)概率,這里要求所有個(gè)體的適應(yīng)度必須非負(fù),
3、否則要進(jìn)行處理。(3)遺傳算子。簡單遺傳算法使用下面三種遺傳算子:1.選擇算子使用比例選擇算子;2.交叉算子使用單點(diǎn)交叉算子;3.變異算子使用基本位變異算子或均勻變異算子。(4)簡單遺傳算法的運(yùn)行參數(shù)。主要有4個(gè)運(yùn)行參數(shù)且需提前設(shè)定。N:群體大小,根據(jù)問題的復(fù)雜度來確定,一般取為20—100。T:遺傳算法的終止進(jìn)化代數(shù),一般取為50—500。p:交叉概率,一般為0.6—0.99。cp:變異概率,一般為0.001—0.1。m在簡單遺傳算法中,這四個(gè)參數(shù)提前確定后,在運(yùn)行過程中都是固定不變的。它們對(duì)算法的求解結(jié)果和求解效率都有一定的影響,但有多大的影響,目前尚無定論。在
4、實(shí)際的算法運(yùn)行中都是通過反復(fù)調(diào)整此4個(gè)參數(shù)的值,然后取最好的解作為最優(yōu)解。下面就來介紹遺傳算法的這幾個(gè)步驟的具體操作。2.1.3.1編碼方法(1)二進(jìn)制編碼假定決策變量[x1,x2,…,xn]用L(L=n·l)位二進(jìn)制串b1b2…bn表示(bi表示變量xi,是長度為l的二進(jìn)制串,l為預(yù)先給定的常數(shù))。又設(shè)映射x?Z(x)將二進(jìn)制串x映射到與x對(duì)應(yīng)的實(shí)數(shù)值。假設(shè)在此模型中決策變量第i個(gè)分量xi的取值范圍是[U,U],i=1,2,…,n那么決策變量X的第i個(gè)分量等于i,mini,maxU?Ui,maxi,min?Z(b)?U(2.1)lii,min2?1由上式,容易知道
5、,這種編碼方法是將一個(gè)連續(xù)的區(qū)間通過均勻等分,將其離散l化,每個(gè)區(qū)間被均勻地分為2-1份,如表2.1所示。因此二進(jìn)制編碼具有一定的映射誤差,特別是它不能直接反映出所求問題本身的結(jié)構(gòu)特征,因此很難滿足生成有意義積木塊的編碼原則。在此編碼方式下,決策變量的每個(gè)分量的取值只能為ll有限的2個(gè):U?k??(k=0,1,…,2-1),其中,?是xi的取值精度:i,miniiU?Ui,maxi,min?=(i=1,2,…,n)(2.2)il2?1(2)浮點(diǎn)數(shù)編碼所謂浮點(diǎn)數(shù)編碼方法,是指個(gè)體的每個(gè)基因值用某一范圍的一個(gè)浮點(diǎn)數(shù)來表示,個(gè)體的編碼長度等于其決策變量的個(gè)數(shù),因?yàn)檫@種編碼
6、方法使用的是決策變[15][16][17]量的真實(shí)值,所以浮點(diǎn)數(shù)編碼方法也叫真值編碼方法。例如,某個(gè)優(yōu)化問題含有3個(gè)變量xi(i=1,2,3),每個(gè)變量在[-1,1]內(nèi)取值,則這個(gè)問題的一個(gè)浮點(diǎn)數(shù)編碼的個(gè)體的基因型可表示為:7重慶大學(xué)碩士學(xué)位論文2遺傳算法及其發(fā)展-0.146130.151530.36432其對(duì)應(yīng)的決策變量為:[-0.14613,0.15153,0.36432]2.1.3.2適應(yīng)度函數(shù)根據(jù)達(dá)爾文進(jìn)化論的觀點(diǎn),生物體的生存能力取決于它對(duì)周圍環(huán)境的適應(yīng)能力。適應(yīng)能力強(qiáng)的個(gè)體,其生存能力就強(qiáng),從而比別的個(gè)體以更大的可能性生殖、繁衍到下一代中。反之,其生殖、
7、繁衍到下一代的機(jī)會(huì)就相對(duì)較少,甚至?xí)饾u滅絕。與此相類似,遺傳算法也采用該機(jī)制來決定種群中個(gè)體遺傳到下一代的多少。在遺傳算法中,對(duì)個(gè)體生存能力的大小是通過個(gè)體的適應(yīng)度來描述的,適應(yīng)度就是對(duì)問題目標(biāo)的符合程度。越符合求解目標(biāo)的個(gè)體,其適應(yīng)度就越大,否則,適應(yīng)度就越小。適應(yīng)度是遺傳算法得以進(jìn)行下去的關(guān)鍵。由于有了適應(yīng)度,個(gè)體之間才存在競爭,競爭的結(jié)果就是:生存下來的個(gè)體越來越優(yōu)秀,適應(yīng)度最高的個(gè)體則是最符合求解目標(biāo)的個(gè)體(最優(yōu)解)。度量個(gè)體適應(yīng)度的函數(shù)稱為適應(yīng)度函數(shù)(FitnessFunction)。對(duì)于最優(yōu)化問題來說,適應(yīng)度函數(shù)可以分為以下2類:若目標(biāo)函數(shù)為最小值