freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

遺傳算法及優(yōu)化問(wèn)題重要有代碼(編輯修改稿)

2025-04-22 04:39 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 的最優(yōu)解可不被交叉和變異操作所破壞.但是,這也隱含了一種危機(jī),即局部最優(yōu)個(gè)體的遺傳基因會(huì)急速增加而使進(jìn)化有可能限于局部解.也就是說(shuō),該方法的全局搜索能力差,它更適合單峰性質(zhì)的搜索空間搜索,而不是多峰性質(zhì)的空間搜索.所以此方法一般都與其他選擇方法結(jié)合使用.定理3 具有定理1所示參數(shù),且在選擇后保留當(dāng)前最優(yōu)值的遺傳算法最終能收斂到全局最優(yōu)解.當(dāng)然,在選擇算子作用后保留當(dāng)前最優(yōu)解是一項(xiàng)比較復(fù)雜的工作,因?yàn)樵摻庠谶x擇算子作用后可能丟失.但是定理3至少表明了這種改進(jìn)的遺傳算法能夠收斂至全局最優(yōu)解.有意思的是,實(shí)際上只要在選擇前保留當(dāng)前最優(yōu)解,就可以保證收斂,定理4描述了這種情況.定理4 具有定理1參數(shù)的,且在選擇前保留當(dāng)前最優(yōu)解的遺傳算法可收斂于全局最優(yōu)解.例2:設(shè),求 ,編碼長(zhǎng)度為5,采用上述定理4所述的“在選擇前保留當(dāng)前最優(yōu)解的遺傳算法”進(jìn)行.此略,留作練習(xí).二、相關(guān)函數(shù)(命令)及簡(jiǎn)介本實(shí)驗(yàn)的程序中用到如下一些基本的Matlab函數(shù):ones, zeros, sum, size, length, subs, double 等,以及 for, while 等基本程序結(jié)構(gòu)語(yǔ)句,讀者可參考前面專門關(guān)于Matlab的介紹,也可參考其他數(shù)學(xué)實(shí)驗(yàn)章節(jié)中的“相關(guān)函數(shù)(命令)及簡(jiǎn)介”內(nèi)容,此略.三、實(shí)驗(yàn)內(nèi)容上述例1的求解過(guò)程為:群體中包含六個(gè)染色體,每個(gè)染色體用22位0—1碼,變量區(qū)間為 ,取Fmin=,遺傳代數(shù)為50代,則運(yùn)用第一種終止條件(指定遺傳代數(shù))的Matlab程序?yàn)椋篬Count,Result,BestMember]=Genetic1(22,6,39。x*x+2*x+39。,1,2,2,50)執(zhí)行結(jié)果為:Count = 50Result = BestMember = 圖2 例1的計(jì)算結(jié)果(注:上圖為遺傳進(jìn)化過(guò)程中每一代的個(gè)體最大適應(yīng)度;而下圖為目前為止的個(gè)體最大適應(yīng)度——單調(diào)遞增)我們通過(guò)Matlab軟件實(shí)現(xiàn)了遺傳算法,得到了這題在第一種終止條件下的最優(yōu)解:,.當(dāng)然這個(gè)解和實(shí)際情況還有一點(diǎn)出入(應(yīng)該是取1時(shí),),但對(duì)于一個(gè)計(jì)算機(jī)算法來(lái)說(shuō)已經(jīng)很不錯(cuò)了.我們也可以編制Matlab程序求在第二種終止條件下的最優(yōu)解.此略,留作練習(xí).實(shí)踐表明,此時(shí)的遺傳算法只要經(jīng)過(guò)10代左右就可完成收斂,得到另一個(gè)“最優(yōu)解”,與前面的最優(yōu)解相差無(wú)幾.四、自己動(dòng)手1. ,求例1的在第二種終止條件下的最優(yōu)解.提示:一個(gè)可能的函數(shù)調(diào)用形式以及相應(yīng)的結(jié)果為:[Count,Result,BestMember]=Genetic2(22,6,39。x*x+2*x+39。,1,2,2,)Count = 13Result = BestMember = 可以看到:兩組解都已經(jīng)很接近實(shí)際結(jié)果,對(duì)于兩種方法所產(chǎn)生的最優(yōu)解差異很?。梢?jiàn)這兩種終止算法都是可行的,而且可以知道對(duì)于例1的問(wèn)題,遺傳算法只要經(jīng)過(guò)10代左右就可以完成收斂,達(dá)到一個(gè)最優(yōu)解.2. 按照例2的具體要求,用遺傳算法求上述例2的最優(yōu)解.3. 附錄9子程序 .若去掉前面的%號(hào),則程序的算法思想有什么變化?4. 附錄9子程序 ,當(dāng)Dim(1)=3時(shí),將交換數(shù)組Population的最后兩行,即交換最后面的兩個(gè)個(gè)體.其目的是什么?5. ,修改附錄9子程序 ,使得交叉過(guò)程也有一個(gè)概率值(~);,以便代入交叉概率.6. 設(shè),求 ,要設(shè)定求解精度到15位小數(shù).五、附錄附錄1:function [Count,Result,BestMember]=Genetic1(MumberLength,MemberNumber,FunctionFitness,MinX,MaxX,Fmin,MutationProbability,Gen)Population=PopulationInitialize(MumberLength,MemberNumber)。global Count。global CurrentBest。Count=1。PopulationCode=Population。PopulationFitness=Fitness(PopulationCode,FunctionFitness,MinX,MaxX,MumberLength)。PopulationFitnessF=FitnessF(PopulationFitness,Fmin)。PopulationProbability=Probability(PopulationFitnessF)。[Population,CurrentBest,EachGenMaxFitness]=Elitist(PopulationCode,PopulationFitness,MumberLength)。EachMaxFitness(Count)=EachGenMaxFitness。MaxFitness(Count)=CurrentBest(length(CurrentBest))。while CountGen NewPopulation=Select(Population,PopulationProbability,MemberNumber)。 Population=NewPopulation。 NewPopulation=Crossing(Population,FunctionFitness,MinX,MaxX,MumberLength)。 Population=NewPopulation。 NewPopulation=Mutation(Population,MutationProbability)。 Population=NewPopulation。 PopulationFitness=Fitness(Population,FunctionFitness,MinX,MaxX,MumberLength)。 PopulationFitnessF=FitnessF(PopulationFitness,Fmin)。 PopulationProbability=Probability(PopulationFitnessF)。 Count=Count+1。 [NewPopulation,CurrentBest,EachGenMaxFitness]=Elitist(Population,PopulationFitness,M
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1