亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于構(gòu)象空間退火的兩階段差分進(jìn)化多模態(tài)優(yōu)化方法

文檔序號:9506580閱讀:1134來源:國知局
一種基于構(gòu)象空間退火的兩階段差分進(jìn)化多模態(tài)優(yōu)化方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種智能優(yōu)化、計(jì)算機(jī)應(yīng)用領(lǐng)域,尤其涉及的是,一種基于構(gòu)象空間退 火的兩階段差分進(jìn)化多模態(tài)優(yōu)化方法。
【背景技術(shù)】
[0002] 在工程實(shí)踐中存在著許多多模態(tài)優(yōu)化問題,這些問題不僅需要在可行域內(nèi)求得問 題的一個(gè)全局最優(yōu)解,往往還需要得到其它全局最優(yōu)解和一些有意義局部最優(yōu)解。例如,神 經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)及其權(quán)值的優(yōu)化問題,現(xiàn)代投資組合問題及復(fù)雜系統(tǒng)參數(shù)及結(jié)構(gòu)辨識問題等 都是多模態(tài)優(yōu)化問題。因此,如何構(gòu)造出一種優(yōu)化算法,使得其能夠找到問題的所有全局最 優(yōu)解和盡可能多的局部最優(yōu)解,即如何有效地求解多模態(tài)優(yōu)化問題,是計(jì)算科學(xué)、智能優(yōu)化 等領(lǐng)域一個(gè)亟需解決的問題。
[0003] 進(jìn)化算法,作為一種基于種群的隨機(jī)性搜索算法,比傳統(tǒng)的優(yōu)化算法有著更好的 優(yōu)勢。在進(jìn)化過程中,算法保持一定數(shù)量較好的種群,如果某些種群在整個(gè)進(jìn)化過程中能夠 一直存活下來,則算法不僅能夠得到最優(yōu)解,而且能夠獲得一系列質(zhì)量較好的局部最優(yōu)解。 然而,由于進(jìn)化算法的貪婪特性,算法最后往往收斂至某個(gè)單一的最優(yōu)解。鑒于此,探測并 保存較好的模態(tài)成為多模態(tài)優(yōu)算法的難點(diǎn)所在,也是算法設(shè)計(jì)的關(guān)鍵。
[0004] 針對上述問題,國內(nèi)外學(xué)者在進(jìn)化算法中引入小生境思想,利用小生境方法來改 進(jìn)進(jìn)化算法的進(jìn)化策略,因此提出了一系列基于小生境的多模態(tài)優(yōu)化方法,這些方法雖然 在某些情況下能夠解決一些多模態(tài)優(yōu)化問題,但是由于多模態(tài)優(yōu)化問題的解的個(gè)數(shù)不確定 性、問題維數(shù)的不確定性以及適應(yīng)度曲面的復(fù)雜性,這些方法對于一些實(shí)際應(yīng)用問題仍力 不從心。此外,小生境半徑的取值也是一個(gè)極其具有挑戰(zhàn)性的工作,小生境半徑過大會(huì)導(dǎo)致 形成過多的生境,從而導(dǎo)致計(jì)算量大,而達(dá)不到應(yīng)有的效果,過小又會(huì)導(dǎo)致探測不到某些小 于生境半徑的模態(tài),從而不能保證多模收斂。
[0005] 因此,現(xiàn)有的多模態(tài)優(yōu)化方法存在著缺陷,需要改進(jìn)。

【發(fā)明內(nèi)容】

[0006] 為了克服現(xiàn)有的多模態(tài)優(yōu)化方法的參數(shù)選擇難、對于一些實(shí)際應(yīng)用問題無法得到 所有的全局最優(yōu)解和質(zhì)量較高的局部最優(yōu)解、解的質(zhì)量不高、計(jì)算量大等不足,本發(fā)明提出 一種簡單、高效、優(yōu)化結(jié)果良好的、可以適用于大多數(shù)多模態(tài)優(yōu)化問題的基于構(gòu)象空間退火 的兩階段差分進(jìn)化多模態(tài)優(yōu)化方法。
[0007] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:
[0008] -種基于構(gòu)象空間退火的兩階段差分進(jìn)化多模態(tài)優(yōu)化方法,所述方法包括以下步 驟:
[0009] 1)初始化:設(shè)置種群規(guī)模NP,交叉概率Cr,增益常數(shù)F,小生境半徑閾值cU,函數(shù) 評價(jià)次數(shù)閾值e rat,種子個(gè)體附近個(gè)體的數(shù)目m ;
[0010] 2)隨機(jī)生成初始種群P = {x1,X2,. . .,xNp},X1,i = 1,2,…,Np表示種群中的第i 個(gè)個(gè)體;
[0011] 3)計(jì)算出各個(gè)體的目標(biāo)函數(shù)值,并按目標(biāo)函數(shù)值升序排序;
[0012] 4)將當(dāng)前種群中目標(biāo)函數(shù)值最小的個(gè)體設(shè)置為種子個(gè)體Xs,且將其它個(gè)體設(shè)置 為自由個(gè)體,即未標(biāo)記為種子的個(gè)體;
[0013] 5)計(jì)算小生境半徑:
[0014] 5. 1)根據(jù)公式⑴計(jì)算初始半徑值dinitlal;
[0016] 其中,4表示種群中第i個(gè)個(gè)體X1的第j維元素,^表示種群中第k個(gè)個(gè)體1*'的 第j維元素,N為問題維數(shù),N p為種群規(guī)模;
[0017] 5. 2)根據(jù)公式(2)計(jì)算小生境半徑值rd,其中FEs為函數(shù)評價(jià)次數(shù);
[0020] 5. 3)根據(jù)公式(4)確定當(dāng)前小生境半徑值r ;
[0022] 6)擾動(dòng)生成新個(gè)體:
[0023] 6. 1)如果在第一階段,即小生境半徑r大于閾值dcut,則從整個(gè)種群中任意選取3 個(gè)個(gè)體{xa, Xb, Xc I a, b, c e {1,2, · · ·,N1J,a 乒 b 乒 c};
[0024] 6. 2)根據(jù)公式(5)計(jì)算差分個(gè)體x$P x °之間的歐氏距離d ;
[0026] 其中,<、X】分別為種群中第b、c個(gè)個(gè)體的第j維元素;
[0027] 6. 3)判斷d是否大于小生境半徑r,若不滿足,則重新從整個(gè)種群中隨機(jī)選取差分 個(gè)體x#P ^并返回步驟6. 2),直到滿足d > r為止;
[0028] 6. 4)根據(jù)公式(6)所示的差分限制變異策略進(jìn)行變異:
[0030] 其中,< 為種群中第i個(gè)目標(biāo)個(gè)體對應(yīng)的變異個(gè)體的第j維元素 ,j = 1,2,···,Ν, N為問題維數(shù),I I xb_x1 I > r表示差分個(gè)體^之間的距離大于小生境半徑r ;
[0031] 6. 5)根據(jù)公式(7)進(jìn)行交叉生成新個(gè)體trial1:
[0033] 其中,j = 1,2,···,Ν,》力/)表示種群中第i個(gè)目標(biāo)個(gè)體對應(yīng)的新個(gè)體trial1的第 j維元素,^為種群中第i個(gè)目標(biāo)個(gè)體對應(yīng)的變異個(gè)體的第j維元素,randb(0, 1)表示為隨 機(jī)產(chǎn)生O到1之間的小數(shù),rnbr(j)表示隨機(jī)產(chǎn)生1到N之間的整數(shù),(^表示交叉概率; [0034] 6. 6)如果在第二階段,即小生境半徑r小于或等于閾值cU,則根據(jù)公式⑶所示 的各個(gè)體到種子個(gè)體的歐氏距離Cl1選取種子個(gè)體X 3^的m個(gè)鄰近體X nelgh:
[0036] 其中,if為種子個(gè)體xs1 勺第j維元素;
[0037] 6. 7)根據(jù)公式(9)所示的種子鄰近變異策略分別生成K = -0. 5和K = 1. 5的變 異個(gè)體:
[0039] 其中,為種子鄰近個(gè)體Xnelgh的第j維元素;
[0040] 6. 8)根式公式(7)對步驟6. 6)生成的變異個(gè)體進(jìn)行交叉生成新個(gè)體;
[0041] 7)對每個(gè)新個(gè)體進(jìn)行種群更新:
[0042] 7. 1)根據(jù)公式(10)計(jì)算出當(dāng)前種群中各個(gè)體與新個(gè)體trial的歐氏距離,并找出 與其最近的個(gè)體Xnram3st;
[0044] 7. 2)如果trial與Xnearast的距離d nearast小于當(dāng)前小生境半徑r,且trial的目標(biāo) 函數(shù)值小于Xnearast的目標(biāo)函數(shù)值,則trial替換X nearast;
[0045] 7. 3)如果trial與x_rast的距離d _rast大于當(dāng)前小生境半徑r,則找出當(dāng)前種群 中目標(biāo)函數(shù)值最大的個(gè)體xWOTSt,若trial的目標(biāo)函數(shù)值小于x WOTSt的目標(biāo)函數(shù)值,則trial 替換 Xirarst;
[0046] 8)選取新種子:
[0047] 8. 1)根據(jù)公式(11)計(jì)算出當(dāng)前種群中各自由個(gè)體與種子個(gè)體xSEEd的平均距離 daTC,其中,Nf為自由個(gè)體的數(shù)目;
[0049] 8. 2)如果某一自由個(gè)體與當(dāng)前種子個(gè)體Xseed之間的距離大于d aTC,則將其標(biāo)記為 新種子;
[0050] 9)如果當(dāng)前種群中的所有個(gè)體都為種子個(gè)體,則為一代結(jié)束,并返回步驟3);
[0051] 10)判斷是否滿足終止條件,如果滿足,則保存結(jié)果并退出。
[0052] 進(jìn)一步,所述步驟10)中,終止條件為函數(shù)評價(jià)次數(shù)。當(dāng)然,也可以為其他終止條 件。
[0053] 本發(fā)明的技術(shù)構(gòu)思為:基于構(gòu)象空間退火思想,根據(jù)退火過程將整個(gè)差分進(jìn)化算 法分為兩個(gè)階段:全局探測模態(tài)階段和模態(tài)內(nèi)局部增強(qiáng)階段;在第一階段,根據(jù)動(dòng)態(tài)小生 境半徑值來選取差分個(gè)體,避免選取相似度較高的個(gè)體,從而根據(jù)差分限制變異策略生成 高質(zhì)量的新個(gè)體來維持種群的多樣性,確保探測到所有模態(tài);在第二階段,根據(jù)種子個(gè)體的 鄰近個(gè)體生成新個(gè)體,從而對已探測到的模態(tài)進(jìn)行高度搜索,以加快算法收斂速度。
[0054] 本發(fā)明的有益效果表現(xiàn)在:一方面,根據(jù)退火策略來動(dòng)態(tài)調(diào)整小生境半徑,避免參 數(shù)選擇不當(dāng)而影響算法的性能;另一方面,根據(jù)動(dòng)態(tài)退火過程將算法分為兩個(gè)階段,并在 各階段設(shè)計(jì)合適的變異策略來生成新個(gè)體,在保證算法多模收斂的同時(shí)加快算法的收斂速 度,從而求得高質(zhì)量的解。
【附圖說明】
[0055] 圖1是基于構(gòu)象空間退火的兩階段差分進(jìn)化多模態(tài)優(yōu)化方法基本流程圖。
[0056] 圖2是種子鄰近變異策略示意圖。其中,A為種子個(gè)體,B和E和A的鄰近個(gè)體,C 和D為鄰近個(gè)體B分別在K = 1. 5和K = -0. 5時(shí)根據(jù)鄰近變異策略生成的新個(gè)體,F(xiàn)和G 為鄰近個(gè)體E分別在K = 1. 5和K = -0. 5時(shí)根據(jù)鄰近變異策略生成的新個(gè)體。
【具體實(shí)施方式】
[0057] 下面結(jié)合附圖對本發(fā)明作進(jìn)一步描述。
[0058] 參照圖1和圖2,一種基于構(gòu)象空間退火的兩階段差分進(jìn)化多模態(tài)優(yōu)化方法,包括 以下步驟:
[0059] 1)初始化:設(shè)置種群規(guī)模NP,交叉概率Cr,增益常數(shù)F,小生境半徑閾值cU,函數(shù) 評價(jià)次數(shù)閾值e rat,種子個(gè)體附近個(gè)體的數(shù)目m ;
[0060] 2)隨機(jī)生成初始種群P = {x1,X2, . . .,xNp},X1,i = 1,2,…,Np表示種群中的第i 個(gè)個(gè)體;
[0061] 3)計(jì)算出各個(gè)體的目標(biāo)函數(shù)值,并按目標(biāo)函數(shù)值升序排序;
[0062] 4)將當(dāng)前種群中目標(biāo)函數(shù)值最小的個(gè)體設(shè)置為種子個(gè)體Xs,且將其它個(gè)體設(shè)置 為自由個(gè)體,即未標(biāo)記為種子的個(gè)體;
[0063] 5)計(jì)算小生境半徑:
[0064] 5. 1)根據(jù)公式⑴計(jì)算初始半徑值dinitlal;
[0066] 其中,X丨表示種群中第i個(gè)個(gè)體X 1的第j維元素,·<表示種群中第k個(gè)個(gè)體X喻 第j維元素,N為問題維數(shù),Np為種群規(guī)模;
[0067] 5. 2)根據(jù)公式(2)計(jì)算小生境半徑值rd,其中FEs為函數(shù)評價(jià)次數(shù);
[0070] 5. 3)根據(jù)公式(4)確定當(dāng)前小生境半徑值r ;
[0072] 6)擾動(dòng)生成新個(gè)體:
[0073] 6. 1)如果算法在第一階段,即小生境半徑r大于閾值dcut,則從整個(gè)種群中任意選 取 3 個(gè)個(gè)體{xa, xb, xc I a, b, c e {1,2,…,N1J,a 乒 b 乒 c};
[0074] 6. 2)根據(jù)公式(5)計(jì)算差分個(gè)體x$P x °之間的歐氏距離d ;
[0076] 其中,分別為種群中第b、c個(gè)個(gè)體的第j維元素;
[0077] 6. 3)判斷d是否大于小生境半徑r,若不滿足,則重新從整個(gè)種群中隨機(jī)選取差分 個(gè)體x#P ^并返回步驟6. 2),直到滿足d > r為止;
[0078] 6. 4)根據(jù)公式(6)所示的差分限制變異策略進(jìn)行變異:
[0080] 其中,< 為種群中第i個(gè)目標(biāo)個(gè)體對應(yīng)的變異個(gè)體的第j維元素,j = 1,2,…,N, N為問題維數(shù),I I xb-x1 I > r表示差分個(gè)體^之間的距離大于小生境半徑r ;
[0081] 6. 5)根據(jù)公式(7)進(jìn)行交叉生成新個(gè)體trial1:
[0083] 其中,j = 1,2,···,Ν,/πα/;表示種群中第i個(gè)目標(biāo)個(gè)體對應(yīng)的新個(gè)體trial1的第 j維元素,< 為種群中第i個(gè)目標(biāo)個(gè)體對應(yīng)的變異個(gè)體的第j維元素 ,randb (0, 1)表示為隨 機(jī)產(chǎn)生0到1之間的小數(shù),rnbr(j)表示隨機(jī)產(chǎn)生1到N之間的整數(shù),(^表示交叉概率;
[0084] 6. 6)如果算法在第二階段,即小生境半徑r小于或等于閾值dcut,則根據(jù)公式(8) 所示的各個(gè)體到種子個(gè)體的歐氏距離Cl 1選取種子個(gè)體X 3^的m個(gè)鄰近體X nelgh:
[0086] 其中,為種子個(gè)體Xseed的第j維元素;
[0087] 6. 7)根據(jù)公式(9)所示的種子鄰近變異策略分別生成K = -0. 5和K = 1. 5的變 異個(gè)體:
[0089] 其中,為種子鄰近個(gè)體Xnelgh的第j維元素;
[0090] 6. 8)根式
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1