智能優(yōu)化方法課程論文_第1頁
智能優(yōu)化方法課程論文_第2頁
智能優(yōu)化方法課程論文_第3頁
智能優(yōu)化方法課程論文_第4頁
智能優(yōu)化方法課程論文_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

智能優(yōu)化方法課程論文基于食物鏈捕食模式的三種群協(xié)作遺傳算法實驗侯樹衛(wèi)實驗?zāi)康耐ㄟ^編程實現(xiàn)基于食物鏈捕食模式的三種群協(xié)作遺傳算法,對函數(shù)進(jìn)行優(yōu)化,將其與標(biāo)準(zhǔn)的遺傳算法優(yōu)化效果進(jìn)行對比分析,得出一定的結(jié)論。同時,在試驗過程中學(xué)習(xí)熟悉遺傳算法。技術(shù)方案在遺傳算法基礎(chǔ)上,進(jìn)一步模擬自然界的生物進(jìn)化過程。自然界生物的進(jìn)化還受到食物鏈的影響,被捕食和獲取食物直接影響生物進(jìn)化過程。設(shè)想,有三個初始種群,按捕食和食物間的一定關(guān)系進(jìn)行協(xié)作,會對遺傳算法優(yōu)化效果有一定提升。算法的流程如下:采用實數(shù)編碼,設(shè)置變異參數(shù)、種群數(shù)量等,生成三個初始種群;計算適應(yīng)度;進(jìn)入迭代:處理第三個種群:第三個種群中所有適應(yīng)度壞于第二種群平均適應(yīng)度的個體,作為食物被第二種群分配;刪除作為食物的個體。按一定選擇方式選擇父代,交叉產(chǎn)生子代,進(jìn)行變異;處理第二個種群:按一定方式分配由第三種群獲取的食物,食物低于一定值的個體死亡,作為第一種群食物,同時,對第二種群中適應(yīng)度壞于第一種群平均適應(yīng)度的個體,也作為第一種群食物,作為食物的個體刪除。按一定選擇方式選擇父代,交叉產(chǎn)生子代,進(jìn)行變異;處理第一個種群:按一定方式分配由第三種群獲取的食物,食物低于一定值的個體死亡、刪除。然后,按一定選擇方式選擇父代,交叉產(chǎn)生子代,進(jìn)行變異。每個種群中的最好個體替代最差個體;所有種群中的最好個體分別替代每個種群中的最差個體。計算適應(yīng)度;繼續(xù)循環(huán)直至滿足終止條件;輸出優(yōu)化的結(jié)果,算法結(jié)束。算法采用的交叉方式為多點交叉,即隨機(jī)選擇一半的位串,在父代間交叉。采用的變異方式有:以位串平均值為準(zhǔn)按比例上下隨機(jī)浮動;以位串平均值為準(zhǔn),以取值范圍一定比例隨機(jī)上下浮動;以位串平均值為準(zhǔn),按方差上下隨機(jī)浮動;以最每代最好個體位串值為準(zhǔn),按同樣方式上下隨機(jī)浮動以及高斯變異。算法中的交叉系數(shù)a,變異系數(shù)pm、種群規(guī)模等根據(jù)算法運行情況調(diào)整。實驗結(jié)果及分析通過相同數(shù)量個體下,分三種群協(xié)同進(jìn)化和單種群進(jìn)化進(jìn)行對比。其他參數(shù)相同,個體總數(shù)為150。三個種群捕食關(guān)系為:pop1吃pop2,pop2吃pop3。在迭代代數(shù)為300,變異概率為0.3,交叉系數(shù)a為0.1參數(shù)下,對測試函數(shù)一進(jìn)行優(yōu)化,分別運行五次。最后的優(yōu)化結(jié)果如下:

classicgal:3.515301e-017classicga1:4.811999e-017classicga1:6.306604e-018classicgal:8.110289e-018classicga1:1.177726e-017foodchainl:1.795252e-025foodchain1:7.066503e-025foodchain1:1.803103e-025foodchain1:1.062899e-024foodchain1:1.019144e-024classicga2:2.393638e-029classicga2:3.456894e-029classicga2:9.651748e-030classicga2:2.568764e-029classicga2:1.393717e-029foodchain2:1.739845e-026foodchain2:2.292180e-025foodchain2:1.724897e-027foodchain2:1.241327e-026foodchain2:5.407059e-026classicga21:1.513442e-022classicga21:1.037500e-023classicga21:4.744149e-022classicga21:1.369897e-022classicga21:7.380783e-023foodchain21:4.817046e-028foodchain21:5.246736e-029foodchain21:9.183365e-029foodchain21:3.771595e-029foodchain21:2.496357e-028classicga22:1.906018e-003classicga22:9.686630e-005classicga22:2.668078e-004classicga22:1.767192e-004classicga22:4.903648e-004foodchain22:2.749719e-004foodchain22:2.618383e-005foodchain22:1.397267e-003foodchain22:4.022535e-004foodchain22:1.435156e-005其中:classicga代表一般的遺傳算法,foodchain代表采用食物鏈的算法;序號1代表交叉方式為串位直接互換,變異方式為以位串平均值為準(zhǔn)按比例上下隨機(jī)浮動,種群間捕食方式為被捕食群體中低于捕食群體中最優(yōu)個體適應(yīng)度兩倍。序號2在1基礎(chǔ)上改變種群間捕食方式為被捕食群體中低于捕食群體平均適應(yīng)度。序號21代表在2基礎(chǔ)上改變交叉方式為實數(shù)交叉方式,按一定系數(shù)變化取值交叉;序號22代表在21基礎(chǔ)上,改變變異方式為高斯變異。通過以上數(shù)據(jù)可以明顯看出,在這幾種方法下,分三種群按食物鏈方式競爭對提高結(jié)果的收斂速度有一定作用。然后對序號1算法加入同樣的小于平均適應(yīng)度淘汰機(jī)制,分析結(jié)果發(fā)現(xiàn),其收斂速度快于加入食物鏈的方法。由此可知,采用的新方法的收斂性介于序號1的不淘汰方法和序號2的單種群淘汰方法之間。對函數(shù)六進(jìn)行優(yōu)化,結(jié)果如下:foodchain2:5.044213e+000foodchain2:2.965453e+000foodchain2:2.358099e+000foodchain2:4.605018e+000foodchain2:5.390974e+000classicga2:4.876047e+000classicga2:4.968353e+000classicga2:4.537115e+000classicga2:5.672532e+000classicga2:5.952916e+000classicga1:5.056437e+000classicga1:6.804616e+000classicga1:6.561508e+000classicga1:6.528788e+000classicga1:5.657101e+000對函數(shù)十二進(jìn)行優(yōu)化,結(jié)果如下:foodchain2:7.671139e-001foodchain2:7.902732e-001foodchain2:8.036008e-001foodchain2:5.243947e-001foodchain2:3.423643e-001classicga2:1.360849e+000classicga2:1.145134e+000classicga2:1.337375e+000classicga2:1.063871e+000classicga2:5.237828e-001classicga1:1.184714e+000classicga1:1.161197e+000classicga1:1.477536e+000classicga1:1.053585e+000classicga1:1.279836e+000三種群的方法在這兩個函數(shù)的優(yōu)化中,結(jié)果明顯較好,這說明三種群食物鏈的優(yōu)化方法在一些復(fù)雜問題的優(yōu)化效果上要好于單種群的優(yōu)化方法。分析其原因,可能是由于基于食物鏈模式的三種群協(xié)作方式之間互相制約,各種群分工協(xié)作的結(jié)果。假設(shè),pop2的平均適應(yīng)度較高,則pop3種群淘汰率較高,從而使pop3在這一代就有較高的收斂性,同時由于pop3淘汰的多,pop2從pop3獲取的食物足夠多,種群中個體保存數(shù)量就越多,保證了pop2的種群

多樣性,有效的保證了對全局最優(yōu)的搜索能力,在這種情況下,如果popl平均適應(yīng)度較低,食物不足,淘汰率就多,則popl也具有較高收斂性,如果popl平均適應(yīng)度較高,則依然可以保證食物,使popl具有保持種群多樣性的能力。同時三個種群協(xié)作,更方便對每個種群使用不同的交叉和變異方式,以適應(yīng)不同優(yōu)化問題收斂和全局搜索要求。下面是對基于食物鏈模式的三種群協(xié)作方式的交叉變異方式改進(jìn)后對其他一些函數(shù)進(jìn)行優(yōu)化的效果。4.對其他測試函數(shù)的優(yōu)化考慮測試函數(shù)一:f(X)=£氣2,這個測試函數(shù)具備最優(yōu)值為零,最優(yōu)解為零,各位最優(yōu)解相同三個特i=1點,這都屬于特殊情況,我把這個函數(shù)改進(jìn)后,變?yōu)椋篺(X)=£(七-i)2,這樣最優(yōu)解就變?yōu)?1,2,…,i=1n)。通過搭配不同種群的高斯變異方式,t=exp(-gen/100);bound=[avival;avival]+dom*[0.5;-0.5]*ones(1,bn);newpop(1:popnum,1:bn)=gaussian_mutation(newpop(1:popnum,1:bn),pm,bound)%對種群三以最優(yōu)五個個體的每個位串值的平均值為中心,以取值范圍為范圍作高斯擾動;ifgen<genmax/3,bound=dom*[0.5;-0.5]*ones(1,bn);newpop(popnum+1:3*popnum,1:bn)=gaussian_mutation(newpop(popnum+1:3*popnum,1:bn),pm,bound);對種群三以最優(yōu)個體的每個位串值為中心,以取值范圍為范圍作高斯擾動;elsebound=[pop(minnum,1:bn);pop(minnum,1:bn)]+dom*[0.5;-0.5]*ones(1,bn)*t;高斯擾動范圍縮小做微調(diào)newpop(popnum+1:3*popnum,1:bn)=gaussian_mutation(newpop(popnum+1:3*popnum,1:bn),pm,bound);end求取最優(yōu)值及最優(yōu)解,迭代900次,運行五次結(jié)果如下(函數(shù)文件名foodchaincom24):1.000535e+0006.999452e+0001.300082e+0011.900130e+0012.499926e+0012.296092e-0051.002224e+0001.000535e+0006.999452e+0001.300082e+0011.900130e+0012.499926e+0012.296092e-0051.002224e+0007.000312e+0001.299962e+0011.900324e+0012.499679e+0011.008800e-0049.990165e-0016.999040e+0001.300057e+0011.900108e+0011.998628e+0008.000164e+0001.399802e+0012.000036e+0012.599957e+0012.002033e+0007.995894e+0001.400113e+0012.000215e+0012.599951e+0011.999304e+0008.001043e+0001.399932e+0012.000166e+0013.000666e+0009.000570e+0001.500093e+0012.100041e+0012.700049e+0013.001367e+0009.000350e+0001.499935e+0012.100106e+0012.700105e+0013.001063e+0009.000862e+0001.500144e+0012.099951e+0014.000945e+0001.000036e+0011.600051e+0012.200032e+0012.799936e+0014.002296e+0009.999528e+0001.599913e+0012.200003e+0012.800199e+0013.998800e+0009.999494e+0001.599825e+0012.199858e+0015.001641e+0001.099905e+0011.700028e+0012.300085e+0012.900011e+0015.000156e+0001.099928e+0011.699754e+0012.300063e+0012.900191e+0014.998648e+0001.100214e+0011.699841e+0012.300092e+0016.000294e+0001.199995e+0011.799789e+0012.399982e+0012.999928e+001;6.001793e+0001.200283e+0011.799837e+0012.400119e+0012.999735e+001;5.998688e+0001.200157e+0011.799913e+0012.400042e+0012.500057e+0012.600022e+0012.700224e+0012.800206e+0014.559174e-0051.000033e+0001.996500e+0003.002602e+0003.996413e+0007.000290e+000 8.001422e+000 8.999821e+000 9.999805e+0001.300123e+001 1.399840e+001 1.500007e+001 1.600063e+0011.899913e+001 1.999869e+001 2.100021e+001 2.200184e+0012.500212e+001 2.600059e+001 2.700049e+001 2.799884e+0016.133224e-0059.992472e-0012.001992e+0003.002017e+0004.001626e+0006.999992e+000 8.002034e+000 8.999343e+000 9.997772e+0001.300078e+001 1.399838e+001 1.499815e+001 1.600067e+0011.899641e+001 1.999765e+001 2.099964e+001 2.200039e+0012.500194e+001 2.599802e+001 2.699596e+001 2.799808e+0011.432954e-004最優(yōu)解誤差范圍在0.001左右,最優(yōu)值誤差數(shù)量級為0.00001。2.900018e+0014.999589e+0001.100030e+0011.700107e+0012.299782e+0012.900005e+0015.001180e+0001.100076e+0011.699794e+0012.299993e+0012.900101e+0012.999864e+001;6.000232e+0001.199946e+0011.800117e+0012.399848e+0012.999946e+001;5.999469e+0001.200237e+0011.800656e+0012.400217e+0013.000285e+001;n下面將函數(shù)一繼續(xù)一般化,修改為f(X)=Z(七-i)2+100,對函數(shù)的交叉選擇方式改進(jìn)為:i=1t=exp(-gen/100);expfit=pop(1:popnum,bn+1)/t;expfit=expfit-min(expfit)+t;sumprob1=cumsum(expfit"(-1));即將適應(yīng)度除以一個隨代數(shù)逐漸縮小的參數(shù)t,以避免基數(shù)100對選擇概率的影響。迭代900次,運行五次結(jié)果如下(函數(shù)文件名foodchaincom25):9.998908e-001 2.001862e+000 2.998627e+000 4.000609e+000 4.998313e+000 6.003926e+0007.013799e+000 8.000208e+000 8.998694e+000 9.987354e+000 1.099934e+001 1.199782e+0011.300931e+001 1.400508e+001 1.499532e+001 1.600194e+001 1.699809e+001 1.799425e+0011.899915e+001 1.999884e+001 2.099686e+001 2.199790e+001 2.299295e+001 2.400756e+0012.499779e+001 2.600469e+001 2.699157e+001 2.800146e+001 2.900168e+001 2.999311e+001;1.000008e+0021.000405e+0002.000193e+0002.999447e+0004.000421e+0005.000631e+0005.999752e+0006.999878e+000 7.999913e+000 8.999680e+000 9.999722e+000 1.099965e+001 1.199982e+0011.299980e+001 1.399972e+001 1.500005e+001 1.599948e+001 1.700047e+001 1.800020e+0011.900026e+001 1.999991e+001 2.099974e+001 2.199995e+001 2.300057e+001 2.400062e+0012.500002e+001 2.599987e+001 2.700019e+001 2.800061e+001 2.900019e+001 3.000011e+001;1.000000e+0021.000371e+0002.000307e+0002.999670e+0003.999934e+0004.999903e+0005.999740e+0006.998994e+000 8.000190e+000 9.000611e+000 1.000056e+001 1.099992e+001 1.199978e+0011.300022e+001 1.400027e+001 1.499978e+001 1.599997e+001 1.699981e+001 1.800011e+0011.900037e+001 2.000053e+001 2.099966e+001 2.200001e+001 2.299989e+001 2.400020e+0012.499993e+001 2.600020e+001 2.699987e+001 2.800044e+001 2.899989e+001 3.000030e+001;1.000000e+0029.999186e-0011.999828e+0003.000088e+0003.999592e+0005.000686e+0006.000030e+0007.000279e+000 7.999719e+000 8.999861e+000 1.000037e+001 1.099919e+001 1.199925e+0011.300029e+001 1.400086e+001 1.499924e+001 1.600028e+001 1.700016e+001 1.799982e+0011.899993e+001 2.000010e+001 2.099967e+001 2.199927e+001 2.300063e+001 2.399989e+001

2.500000e+0011.000000e+0022.599983e+0012.700068e+0012.800028e+0012.900048e+0012.999964e+001;1.000108e+0001.999725e+0002.999225e+0004.000051e+0004.999727e+0006.000210e+0007.000090e+0008.000274e+0008.999705e+0009.999894e+0001.100028e+0011.199974e+0011.299992e+0011.399983e+0011.500024e+0011.600013e+0011.700030e+0011.799966e+0011.899939e+0012.499970e+0011.000000e+0022.000041e+0012.099965e+0012.199996e+0012.299994e+0012.399938e+0012.599979e+0012.700010e+0012.800011e+0012.899926e+0013.000017e+001;可見優(yōu)化結(jié)果誤差在0.0001以下。而且變異和交叉隨代數(shù)變化的參數(shù)t一致,以方便調(diào)節(jié)。通過調(diào)節(jié)參數(shù)t和迭代代數(shù)gen,此方法可以很好的優(yōu)化一些局部最優(yōu)解就是全局最優(yōu)解的函數(shù)優(yōu)化問題。通過對20個函數(shù)進(jìn)行測試,使用參數(shù)t=exp(-gen/100),可以對函數(shù)1、2、4、6、7、9、11、12、13、14、16、17達(dá)到較好的優(yōu)化效果,而且改變最優(yōu)解位置和最優(yōu)解值都不會影響算法的優(yōu)化效果。對函數(shù)f15、f5,算法易陷入局部最優(yōu),說明算法的全局搜索能力有待改進(jìn)。對函數(shù)f15,用同樣的食物鏈方式采用了不同的交叉變異方式編寫程序進(jìn)行優(yōu)化。優(yōu)化十次的結(jié)果如下:1.580438e-0011.928463e-0012.416381e+000 1.078715e+000 8.662021e-001; 6.724240e-0041.909046e-001 1.231885e-001 1.358267e-001; 3.074866e-0041.591676e-0012.289273e+000 1.021616e+000 8.343526e-001; 6.626680e-0042.286899e-001-4.116399e-001 3.164739e-016 -1.866079e-001; 4.460175e-0041.923051e-0012.071334e-001 1.280509e-001 1.431971e-001; 3.079842e-0041.927640e-0011.831855e-0011.928847e-001 1.237368e-001 1.366991e-001; 3.074943e-0046.207852e-001 3.077401e-001 3.061440e-001; 4.131947e-0041.731852e-0011.148033e+000 5.222885e-001 4.907948e-001; 5.264242e-0041.820283e-0016.640751e-001 3.200571e-001 3.223491e-001; 4.233988e-004可見陷入局部最優(yōu)的概率較大,只有0.3的概率找到最優(yōu)解。但是,在實驗中發(fā)現(xiàn)三種群可變化的策略和參數(shù)較多,由于時間所限,許多策略尚未進(jìn)行嘗試,相信通過一些收斂性能較好和全局搜索能力較好的策略的組合,可以找到適應(yīng)欺騙性較大的測試函數(shù)的三種群遺傳算法。此外,使用函數(shù)文件foodchaincom25算法對測試函數(shù)f11優(yōu)化,100維時結(jié)果:-5.303419e-0033.184086e-0035.078061e-003-1.035811e-003-6.275223e-003 1.774169e-003 1.958596e-002-1.909631e-0021.452854e-0022.293981e-002 4.937595e-0024.363609e-0034.587579e-0027.476464e-002 -2.940075e-002 6.176152e-003 -1.014093e-002 6.389616e-003 -5.630374e-0023.148974e-002 -1.057264e-003 3.378027e-002 -1.846562e-002 -1.333515e-003 -1.240639e-002-2.892952e-002 7.345833e-002 -5.537798e-004 1.822834e-002 -1.558020e-002 -8.429851e-003-5.129757e-0027.128365e-0022.629595e-0025.422928e-003-3.194004e-0021.126087e-001-5.129757e-0027.128365e-0022.629595e-0025.422928e-003-3.194004e-0021.126087e-0013.848273e-0022.222572e-0032.981802e-002-4.042654e-003-4.487050e-002-4.918911e-002-7.647061e-003-2.300380e-0029.004926e-0022.677885e-002-4.089758e-0022.406584e-003-9.223894e-0021.652899e-001-3.358620e-002-2.531578e-002-1.028581e-001-5.512438e-002-3.858518e-0031.173082e-0012.920673e-0021.151639e-0015.443842e-0022.465630e-0016.704669e-002-1.630268e-001-1.218854e-001-4.497986e-003-6.189265e-002-4.405554e-0026.704669e-002-1.630268e-001-1.218854e-001-4.497986e-003-6.189265e-002-4.405554e-002-8.242919e-0027.968106e-002-1.108524e-0013.030999e-001-1.259725e-001-4.789286e-002-1.109885e-002-3.126451e-0014.341387e-002-1.760053e-0023.153895e-0033.132322e-0021.300540e-001-4.042581e-0021.262368e-0029.889429e-0031.435489e-001-1.155248e-0011.424756e-002-9.280966e-002-7.148740e-003-1.412229e-001-2.635043e-0011.144918e-0012.699507e-001 2.908979e-001 2.505504e-001-6.239794e-0021.968862e-002-2.214921e-0011.380143e-001-2.511483e-0012.074968e-001;7.800256e-003。1000維時結(jié)果:1.4447。每一位數(shù)據(jù)見電子文檔。結(jié)論通過上述對基于食物鏈模式的三種群協(xié)作遺傳算法的實驗,說明該方法具有較大的靈活性,可以通過不同的策略組合調(diào)整算法的性能,從而使其在許多函數(shù)的優(yōu)化問題上效果由于單種群的遺傳算法。在實驗中,嘗試了一些策略的組合,但許多的方法組合并未嘗試,例如均勻變異、邊界變異、非均勻變異、柯西變異,二進(jìn)制編碼,同樣三種群的差分演化,三種群群體規(guī)模不同和交叉選擇的一些其他方法等等,而且算法并沒有在實際的優(yōu)化問題上進(jìn)行測試,因此,對該算法效果還沒有認(rèn)識充分,需要進(jìn)一步的實驗。論文中一定存在許多問題,請批評指正,謝謝。參考文獻(xiàn)【1】曾孝平,張曉娟,李勇明 多子群協(xié)同鏈?zhǔn)街悄荏w遺傳算法分析重慶大學(xué)學(xué)報第31卷第7期2008年7月【2】喻海飛1,汪定偉2食物鏈算法及其與實編碼遺傳算法性能比較研究系統(tǒng)工程理論與實踐第6期2007年6月附錄課程論文相關(guān)的matlab文件有:適應(yīng)度計算fit.m,高斯變異gaussian_mutation.m,不同方式的算法文件:calassicgacom1.m,calassicgacom2.m,calassicgacom21.m,calassicgacom22.m,foodchaincom1.m,foodchaincom2.m,foodchaincom21.m,foodchaincom22.m,,foodchaincom25.m,,minfunction15以及1000維的數(shù)據(jù)文件1000維結(jié)果。函數(shù)文件foodchaincom25matlab源代碼:functionfoodchain25;clearclcbn=30;popnum=50;genmax=900;pm=0.3; dom=200;a=0.1;gen=1;inpop=dom*(rand(3火popnum,bn+1)-0.5*ones(3火popnum,bn+1));fori=1:3火popnum,inpop(i,bn+1)=fit(inpop(i,1:bn));end[minfit1,minnum1]=min(inpop(1:popnum,bn+1));[minfit2,minnum2]=min(inpop((popnum+1):2火popnum,bn+1));[minfit3,minnum3]=min(inpop((2火popnum+1):3火popnum,bn+1));minnum=[minnum1popnum+minnum22*popnum+minnum3];minshu=inpop(minnum,:);pop=inpop;while(gen<=genmax),t=exp(-gen/100);newpop=pop;mean1=mean(pop(1:popnum,bn+1));mean2=mean(pop(popnum+1:2火popnum,bn+1));mean3=mean(pop(2火popnum+1:3火popnum,bn+1));food2=0;fori=(2火popnum+1):3火popnum,ifpop(i,bn+1)>=mean2,newpop(i,:)=10000*ones(1,bn+1);food2=food2+1;endendiffood2<=45,expfit=pop(2火popnum+1:3火popnum,bn+1)/t;expfit=expfit-min(expfit)+t;sumprob3=cumsum(expfit.八(-1));form=(2火popnum+1):2:3火popnum,i=1;r=rand;while(i<=popnum)ifr<=(sumprob3(i)/sumprob3(popnum)),fanum=i+2火popnum;i=10000;%l03dN-?eendi=i+1;end%NjOniiQxzur=rand;i=1;while(i<=popnum)ifr<=(sumprob3(i)/sumprob3(popnum)),monum=i+2*popnum;i=10000;endi=i+1;end%NjOnAiQxzuson=pop(fanum,:);dau=pop(monum,:);forj=1:(bn/2),changepoint=ceil(bn*rand);son(changepoint)=a*pop(monum,changepoint)+(1-a)*pop(fanum,changepoint);dau(changepoint)=a*pop(fanum,changepoint)+(1-a)*pop(monum,changepoint);endnewpop(m,:)=son;newpop(m+1,:)=dau;end%°eEypa^?2?forl=1:bn,[tenfitmax,tenfitnum]=sort(newpop((2火popnum+1):3火popnum,bn+1));k=0;form=1:5,tenfit(m,l)=pop(tenfitnum(m),l);sumval=k+pop((2火popnum+tenfitnum(m)),l);k=sumval;endavival(l)=sumval/5;tenfit(:,l);tenstd(l)=std(tenfit(:,l),1);%endelsenewpop((2火popnum+1):3火popnum,:)=dom*(rand(popnum,bn+1)-0.5);endminavifood2=1;sur2=fix(food2/minavifood2);[sortfit2,sortfitnum]=sort(pop((popnum+1):2火popnum,bn+1));sortfitnum=sortfitnum+popnum;food1=popnum-sur2;fori=1:sur2,newpop((i+popnum),:)=pop(sortfitnum(i),:);ifnewpop((i+popnum),bn+1)>=mean1,food1=food1+1;newpop((i+popnum),:)=10000*ones(1,bn+1);endendfori=(sur2+1):popnum,newpop((i+popnum),:)=10000*ones(1,bn+1);end%EE6|iEpl6u^^^udppAEAIdx^iaE3ii£-2^O0BAi3dpiffood1<=45,%sumprob2=cumsum((pop((popnum+1):2火popnum,bn+1)).八(-1));%sumprob=cumsum(prob.*prob.*prob);expfit=pop(popnum+1:2火popnum,bn+1)/t;expfit=expfit-min(expfit)+t;sumprob2=cumsum(expfit.八(-1));form=(popnum+1):2:2火popnum,i=1;r=rand;while(i<=popnum)ifr<=(sumprob2(i)/sumprob2(popnum)),fanum=i+popnum;i=10000;endi=i+1;end%NjOniiQxzur=rand;i=1;while(i<=popnum)ifr<=(sumprob2(i)/sumprob2(popnum)),monum=i+popnum;i=10000;endi=i+1;end%NjOnAiQxzuson=pop(fanum,:);dau=pop(monum,:);forj=1:(bn/2),changepoint=ceil(bn*rand);son(changepoint)=a*pop(monum,changepoint)+(1-a)*pop(fanum,changepoint);dau(changepoint)=a*pop(fanum,changepoint)+(1-a)*pop(monum,changepoint);endnewpop(m,:)=son;newpop(m+1,:)=dau;end%°eEypa^?2?forl=1:bn,[tenfitmax,tenfitnum]=sort(newpop((popnum+1):2火popnum,bn+1));k=0;form=1:5,tenfit(m,l)=pop(tenfitnum(m),l);sumval=k+pop((popnum+tenfitnum(m)),l);k=sumval;endavival(l)=sumval/5;tenfit(:,l);tenstd(l)=std(tenfit(:,l),1);endelsenewpop((popnum+1):2火popnum,:)=dom*(rand(popnum,bn+1)-0.5);endminavifood1=1;sur1=fix(food1/minavifood1);[sortfit1,sortfitnum]=sort(pop(1:popnum,bn+1));fori=1:sur1,newpop(i,:)=pop(sortfitnum(i),:);endfori=(sur2+1):popnum,newpop(i,:)=10000*ones(1,bn+1);end%sumprob1=cumsum((pop(1:popnum,bn+1)).八(-1));%sumprob=cumsum(prob.*prob.*prob);expfit=pop(1:popnum,bn+1)/t;expfit=expfit-min(expfit)+t;sumprob1=cumsum(expfit.八(-1));form=1:2:popnum,i=1;r=rand;while(i<=popnum)ifr<=(sumprob1(i)/sumprob1(popnum)),fanum=i;i=10000;endi=i+1;end%NjOniiQxzur=rand;i=1;while(i<=popnum)ifr<=(sumprob1(i)/sumprob1(popnum)),monum=i;i=10000;endi=i+1;end%NjOnAiQxzuson=pop(fanum,:);dau=pop(monum,:);forj=1:2,changepoint=ceil(bn*rand);son(changepoint)=a*pop(monum,changepoint)+(1-a)*pop(fanum,changepoint);dau(changepoint)=a*pop(fanum,changepoint)+(1-a)*pop(monum,changepoint);endnewpop(m,:)=son;newpop(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論