




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
智能優(yōu)化算法解析第1章緒論11.1優(yōu)化問(wèn)題1.2智能優(yōu)化算法主要內(nèi)容CONTENTS1.1優(yōu)化問(wèn)題主要內(nèi)容CONTENTS1.1優(yōu)化問(wèn)題
什么是優(yōu)化問(wèn)題優(yōu)化問(wèn)題無(wú)處不在4車(chē)間調(diào)度投資理財(cái)路線規(guī)劃學(xué)校排課主要內(nèi)容CONTENTS1.1優(yōu)化問(wèn)題
什么是優(yōu)化問(wèn)題媽媽讓小明給客人燒水沏茶。洗水壺需要1分鐘,燒開(kāi)水需要15分鐘,洗茶壺需要1分鐘,洗茶杯需要1分鐘,拿茶葉需要2分鐘。請(qǐng)問(wèn)最合理的安排是什么?用一個(gè)平底鍋煎雞蛋,每次只能放兩個(gè),煎一個(gè)需要2分鐘(正反面各需1分鐘),請(qǐng)問(wèn)煎三個(gè)雞蛋至少需要幾分鐘?5圍魏救趙優(yōu)化問(wèn)題從小就接觸優(yōu)化問(wèn)題自古就有CONTENTS1.1優(yōu)化問(wèn)題
6什么是優(yōu)化問(wèn)題一個(gè)優(yōu)化問(wèn)題
可被定義為:
(1)式中,
為在有限的決策變量集合
上定義的一個(gè)解空間,其中解空間中每一點(diǎn)都是由決策變量的取值組合成的一個(gè)候選解
;
為問(wèn)題求解過(guò)程中決策變量需要滿足的約束集合;
為需要優(yōu)化的目標(biāo)函數(shù),其取值范圍形成
的值域。定義域(解空間)目標(biāo)域(值域)優(yōu)化問(wèn)題最優(yōu)解:解空間中滿足約束
且具有最小目標(biāo)函數(shù)值的候選解,即,或解空間中滿足約束
且具有最大目標(biāo)函數(shù)值的候
選解,即主要內(nèi)容CONTENTS1.1優(yōu)化問(wèn)題
優(yōu)化問(wèn)題的類(lèi)別7連續(xù)優(yōu)化/離散優(yōu)化(組合優(yōu)化/整數(shù)優(yōu)化)決策變量取值線性優(yōu)化/非線性優(yōu)化目標(biāo)函數(shù)和約束條件是否為線性關(guān)系約束優(yōu)化/無(wú)約束優(yōu)化是否存在約束條件單目標(biāo)優(yōu)化/多目標(biāo)優(yōu)化目標(biāo)函數(shù)個(gè)數(shù)靜態(tài)優(yōu)化/動(dòng)態(tài)優(yōu)化目標(biāo)函數(shù)和約束條件是否隨時(shí)間變化確定性優(yōu)化/隨機(jī)優(yōu)化所涉及的數(shù)據(jù)是否確定凸優(yōu)化/非凸優(yōu)化目標(biāo)函數(shù)和約束集的幾何特性平滑優(yōu)化/非平滑優(yōu)化目標(biāo)函數(shù)和約束函數(shù)是否可導(dǎo)單維優(yōu)化/多維優(yōu)化決策變量的維度兼具不同視角的優(yōu)化問(wèn)題單目標(biāo)約束優(yōu)化問(wèn)題、動(dòng)態(tài)多目標(biāo)約束優(yōu)化問(wèn)題、多目標(biāo)離散優(yōu)化問(wèn)題等主要內(nèi)容CONTENTS1.1優(yōu)化問(wèn)題
經(jīng)典優(yōu)化問(wèn)題8數(shù)學(xué)描述:假設(shè)一個(gè)城市集合
,任意兩個(gè)城市
和
間的距離為
,任意一個(gè)遍歷城市的次序排列為
,包含所有合理城市排列的空間為
,則TSP的目標(biāo)函數(shù)可表示為:
形象描述:一個(gè)旅行商要到
n個(gè)城市去推銷(xiāo)商品,從某城市出發(fā),要求遍歷所有其它城市各一次后再回到出發(fā)城市,如何規(guī)劃行走路線以使其所行走的總路徑最短實(shí)際應(yīng)用:定位路線、物流設(shè)計(jì)、醫(yī)療物資配送、城市垃圾收集管理、圖像檢索與排序、數(shù)字化服裝制造等問(wèn)題求解目標(biāo):一條最短的、遍歷所有城市后回到出發(fā)城市的旅行路線旅行商問(wèn)題(TravelingSalesmanProblem,TSP)主要內(nèi)容CONTENTS1.1優(yōu)化問(wèn)題
經(jīng)典優(yōu)化問(wèn)題9
數(shù)學(xué)描述:給定一個(gè)候選對(duì)象集合
(
個(gè)對(duì)象,
為其中任意一個(gè)候選對(duì)象)和一個(gè)背包的空間約束集合
(
個(gè)背包,
為背包
的最大空間容量),問(wèn)如何在滿足背包空間約束下,使所選取出的對(duì)象利益值達(dá)到最大。
實(shí)際應(yīng)用:分布式系統(tǒng)中的處理器分配、航運(yùn)中的貨物裝載、市政工程中項(xiàng)目選擇以及金融界的投資預(yù)算等求解目標(biāo):滿足資源約束下,從候選對(duì)象集中發(fā)現(xiàn)一個(gè)能夠使總利益函數(shù)值最大的對(duì)象子集(3)(4)(5)利益值目標(biāo)函數(shù)約束條件空間占用率決策變量取值范圍多維背包問(wèn)題(
MultidimensionalKnapsackProblem,MKP)主要內(nèi)容CONTENTS1.1優(yōu)化問(wèn)題
經(jīng)典優(yōu)化問(wèn)題10等式約束(6)(7)(8)(9)目標(biāo)函數(shù)不等式約束決策變量取值范圍決策向量決策空間上界下界不同目標(biāo)函數(shù)和約束條件,可以形成不同的單目標(biāo)連續(xù)優(yōu)化問(wèn)題例如:經(jīng)典的Rosenbrock函數(shù)優(yōu)化問(wèn)題:?jiǎn)文繕?biāo)連續(xù)優(yōu)化問(wèn)題(Single-objectiveContinuousOptimizationProblem,SCOP)主要內(nèi)容CONTENTS1.1優(yōu)化問(wèn)題
經(jīng)典優(yōu)化問(wèn)題11多目標(biāo)連續(xù)優(yōu)化問(wèn)題(Multi-objectiveContinuousOptimizationProblem,MCOP)(10)(11)(12)(13)不同目標(biāo)函數(shù)和約束條件,可以形成不同的多目標(biāo)連續(xù)優(yōu)化問(wèn)題目標(biāo)函數(shù)不等式約束等式約束決策變量取值范圍決策向量上界下界例如:經(jīng)典的DTLZ2函數(shù)優(yōu)化問(wèn)題:式中,,,且,1.2智能優(yōu)化算法1.2
智能優(yōu)化算法什么是智能優(yōu)化算法13以各種自然機(jī)理啟發(fā)的搜索策略為技術(shù)手段,能夠快速、高效地在解空間內(nèi)進(jìn)行搜索的優(yōu)化算法,又稱(chēng)為元啟發(fā)式(Metaheuristic)算法或現(xiàn)代啟發(fā)式(ModernHeuristics)算法啟發(fā)式算法一種通用的人工智能求解方法利用待求解問(wèn)題相關(guān)的啟發(fā)信息來(lái)引導(dǎo)搜索,能減少搜索范圍、降低問(wèn)題求解復(fù)雜度元啟發(fā)式算法一種更高級(jí)、有效的搜索方法利用與待求解問(wèn)題無(wú)關(guān)的上層調(diào)控策略來(lái)引導(dǎo)下層啟發(fā)式搜索VS智能優(yōu)化算法定義1.2
智能優(yōu)化算法什么是智能優(yōu)化算法14觀點(diǎn)一:元啟發(fā)式可以形式化為一個(gè)迭代生成過(guò)程,它通過(guò)靈活地結(jié)合不同的概念來(lái)引導(dǎo)下級(jí)啟發(fā)式進(jìn)行解空間的探索和利用,并使用學(xué)習(xí)策略來(lái)組織控制信息以有效地找到近似最優(yōu)解觀點(diǎn)二:元啟發(fā)式是一個(gè)迭代的主過(guò)程,它通過(guò)指導(dǎo)和修改下級(jí)啟發(fā)式的操作來(lái)有效地產(chǎn)生高質(zhì)量的解。它可以在每次迭代中對(duì)完整(或不完整)的單個(gè)候選解或候選解的集合進(jìn)行更新,下級(jí)啟發(fā)式既可以是高級(jí)(或低級(jí))程序,也可以是簡(jiǎn)單的局部搜索或者僅僅是某種候選解的構(gòu)造方法觀點(diǎn)三:?jiǎn)l(fā)式是一組概念,這些概念可用于定義具有廣泛應(yīng)用范圍的啟發(fā)式方法。換句話說(shuō),元啟發(fā)式可看作是一種通用的算法框架,它能夠應(yīng)用于許多不同的優(yōu)化問(wèn)題。通常,算法框架只需要稍作修改就能夠適應(yīng)特定的求解問(wèn)題元啟發(fā)式定義1.2
智能優(yōu)化算法什么是智能優(yōu)化算法15
算法的智能機(jī)理主要體現(xiàn)在指導(dǎo)搜索過(guò)程的優(yōu)化策略上,這些策略能夠控制下級(jí)啟發(fā)式搜索來(lái)實(shí)現(xiàn)全局優(yōu)化算法的運(yùn)行目標(biāo)是為了高效地遍歷解空間以發(fā)現(xiàn)最優(yōu)或近似最優(yōu)解,運(yùn)行過(guò)程通常是一種近似的隨機(jī)優(yōu)化過(guò)程算法的迭代搜索既包含簡(jiǎn)單的局部搜索程序,也包含復(fù)雜的自組織學(xué)習(xí)過(guò)程,即能夠自動(dòng)地使用前面迭代搜索的歷史經(jīng)驗(yàn)來(lái)引導(dǎo)后面的迭代搜索
算法一般是一種通用的求解框架,適用于不同類(lèi)型的優(yōu)化問(wèn)題求解算法通常具有避免陷入局部最優(yōu)的搜索策略智能優(yōu)化算法的主要技術(shù)特征1.2智能優(yōu)化算法基本術(shù)語(yǔ)和機(jī)制16可行解(FeasibleSolutions)和不可行解(InfeasibleSolutions):在給定優(yōu)化問(wèn)題的解空間中,如果候選解滿足所有的約束條件,則稱(chēng)其為可行解,否則,稱(chēng)其為不可行解解的鄰域(NeighborhoodoftheSolutions):給定一個(gè)候選解
,該解的鄰域
可定義為在解空間
與
滿足某種映射關(guān)系
的一些候選解的集合。由于
,所以一個(gè)解的鄰域是整個(gè)解空間的一部分......解空間鄰域1.2智能優(yōu)化算法基本術(shù)語(yǔ)和機(jī)制17局部搜索(LocalSearch)和全局搜索(GlobalSearch)
:只能在某個(gè)候選解的一個(gè)或多個(gè)鄰域內(nèi)進(jìn)行搜索的優(yōu)化算法稱(chēng)為局部搜索算法,而把理論上能夠遍歷整個(gè)解空間的優(yōu)化算法,稱(chēng)為全局搜索算法局部最優(yōu)解(LocalOptimalSolution)和全局最優(yōu)解(GlobalOptimalSolution)
:若獲得的解是解空間中某個(gè)范圍或區(qū)域內(nèi)最優(yōu)解,稱(chēng)其為局部最優(yōu)解;若獲得的解是整個(gè)解空間中的最優(yōu)解,稱(chēng)其為全局最優(yōu)解1.2智能優(yōu)化算法基本術(shù)語(yǔ)和機(jī)制18收斂(
Convergence
)和早熟(
Premature)如果算法能夠在運(yùn)行結(jié)束時(shí)得到穩(wěn)定的最優(yōu)解,那么這個(gè)過(guò)程稱(chēng)為收斂在收斂過(guò)程中,能夠保證算法獲得穩(wěn)定最優(yōu)解的條件稱(chēng)為收斂條件如果算法在搜索到某一局部最優(yōu)解后,無(wú)法通過(guò)繼續(xù)迭代獲得更好的解,那么這個(gè)現(xiàn)象稱(chēng)為陷入局部最優(yōu)或過(guò)早收斂,過(guò)早收斂又稱(chēng)為早熟早熟1.2智能優(yōu)化算法基本術(shù)語(yǔ)和機(jī)制19
解的編碼(
SolutionEncoding)和解的構(gòu)建(SolutionConstruction)把候選解的表示方式稱(chēng)為解的編碼解的表示形式多種多樣,常用的方式包括實(shí)數(shù)編碼、二進(jìn)制編碼、整數(shù)編碼等對(duì)由固定元素的排列或由對(duì)象子集組成的候選解進(jìn)行編碼時(shí),通常需要進(jìn)行解成員(元素、對(duì)象)的選取和加入,這個(gè)過(guò)程稱(chēng)為解的構(gòu)建0.10.60.80.50.41001046824實(shí)數(shù)編碼二進(jìn)制編碼整數(shù)編碼1.2智能優(yōu)化算法基本術(shù)語(yǔ)和機(jī)制20勘探(Exploration)機(jī)制:是指能夠讓智能優(yōu)化算法在更廣泛的范圍內(nèi)完成擴(kuò)展搜索,以勘探解空間中尚未訪問(wèn)過(guò)區(qū)域的策略利用(Exploitation)機(jī)制:是指能夠讓智能優(yōu)化算法利用已積累的搜索經(jīng)驗(yàn),集中在已發(fā)現(xiàn)的高質(zhì)量候選解周?chē)容^有前途的區(qū)域進(jìn)行仔細(xì)而密集搜索的策略勘探和利用的平衡機(jī)制(BalanceMechanismbetweenExplorationandExploitation):保證智能優(yōu)化算法有效、快速地獲得最優(yōu)解的關(guān)鍵使解具有多樣化,優(yōu)化前期頻繁使用強(qiáng)化發(fā)現(xiàn)的優(yōu)異解,優(yōu)化后期頻繁使用利用利用利用利用勘探主要內(nèi)容CONTENTS1.2智能優(yōu)化算法分類(lèi)及發(fā)展歷程需要為優(yōu)化問(wèn)題建立精確的數(shù)學(xué)模型,且對(duì)模型的性質(zhì)有較高要求,例如牛頓法、梯度下降法、線性規(guī)劃等21啟發(fā)式算法:通常容易陷入局部最優(yōu),貪心算法、分支限界等優(yōu)化問(wèn)題越來(lái)越復(fù)雜高維、高階、超多目標(biāo)、強(qiáng)約束智能優(yōu)化算法:基于進(jìn)化規(guī)律的智能優(yōu)化算法基于物理原理的智能優(yōu)化算法基于化學(xué)原理的智能優(yōu)化算法基于人類(lèi)行為的智能優(yōu)化算法基于群智能的智能優(yōu)化算法經(jīng)典優(yōu)化算法:主要內(nèi)容CONTENTS1.2智能優(yōu)化算法分類(lèi)及發(fā)展歷程22這類(lèi)算法受到自然界生物進(jìn)化概念和規(guī)律的啟發(fā),主要通過(guò)選擇、交叉、變異等操作,在問(wèn)題的解空間中進(jìn)行搜索以找到理想的候選解這類(lèi)方法的起源可追溯到二十世紀(jì)六十年代初,1962年,美國(guó)學(xué)者Fogel在模擬自然進(jìn)化原理來(lái)求解優(yōu)化問(wèn)題時(shí)提出了進(jìn)化規(guī)劃這類(lèi)算法盡管起源早,但直到二十世紀(jì)末、本世紀(jì)初才迅速發(fā)展起來(lái)目前一些進(jìn)化算法已成為有效解決眾多優(yōu)化問(wèn)題,尤其是復(fù)雜多目標(biāo)優(yōu)化問(wèn)題的重要手段進(jìn)化策略(1962)、遺傳算法(1963)、分布估計(jì)算法(1994)、差分進(jìn)化算法(1997)、自組織遷徙算法(2000)、生物地理優(yōu)化算法(2008)等基于進(jìn)化規(guī)律的智能優(yōu)化算法主要內(nèi)容CONTENTS1.2
智能優(yōu)化算法分類(lèi)及發(fā)展歷程23基于物理原理的智能優(yōu)化算法這類(lèi)算法通過(guò)模擬宇宙中的一些物理規(guī)則和原理來(lái)實(shí)現(xiàn)待求解問(wèn)題的優(yōu)化1983年,Kirkpatrick等人提出的模擬退火算法是該類(lèi)算法中最經(jīng)典的成員這類(lèi)算法發(fā)展非常快,尤其是近十年,幾乎每年都會(huì)有新的算法提出,已經(jīng)成為智能優(yōu)化算法中的一個(gè)活躍分支熱力學(xué)優(yōu)化算法(1985)、中心引力優(yōu)化算法(2007)、磁場(chǎng)優(yōu)化算法(2008)、引力搜索算法(2009)、氣體布朗運(yùn)動(dòng)優(yōu)化算法(2013)、量子近似優(yōu)化算法(2014)、水波優(yōu)化算法(2015)、電磁場(chǎng)優(yōu)化算法(2016)、熱交換優(yōu)化算法(2017)、原子搜索優(yōu)化算法(2019)、動(dòng)量搜索算法(2020)、水流優(yōu)化算法(2021)、弦理論算法(2022)等主要內(nèi)容CONTENTS1.2智能優(yōu)化算法分類(lèi)及發(fā)展歷程24這類(lèi)算法主要通過(guò)模擬化學(xué)原理來(lái)實(shí)現(xiàn)待求解問(wèn)題的優(yōu)化2004年,Irizarry將人工化學(xué)過(guò)程的概念應(yīng)用于多模態(tài)優(yōu)化問(wèn)題求解中,提出了人工化學(xué)過(guò)程算法這類(lèi)算法起步較晚,數(shù)量也不是很多,但有些算法在一些問(wèn)題求解上已表現(xiàn)出非常卓越的性能,是智能優(yōu)化算法不可或缺的一個(gè)分支化學(xué)反應(yīng)優(yōu)化算法(2009)、煙花算法(2010)、人工化學(xué)反應(yīng)優(yōu)化算法(2011)、化療科學(xué)算法(2017)、材料生成算法(2021)基于化學(xué)原理的智能優(yōu)化算法主要內(nèi)容CONTENTS1.2智能優(yōu)化算法分類(lèi)及發(fā)展歷程25模擬與人類(lèi)通常的一些行為和感知有關(guān)的現(xiàn)象來(lái)實(shí)現(xiàn)待求解問(wèn)題的優(yōu)化1943年,美國(guó)神經(jīng)生理學(xué)家McCulloch與數(shù)學(xué)家Pitts建成了第一個(gè)神經(jīng)網(wǎng)絡(luò)模型MP模型這類(lèi)算法的思想與人工智能的基礎(chǔ)內(nèi)涵(機(jī)器模仿人來(lái)實(shí)現(xiàn)智能)較吻合,起步早、種類(lèi)多近年來(lái),隨著人類(lèi)認(rèn)知水平的提升,該類(lèi)算法的研究呈現(xiàn)明顯上升趨勢(shì)禁忌搜索算法(1986)、和諧搜索算法(2001)、帝國(guó)競(jìng)爭(zhēng)算法(2007)、教學(xué)優(yōu)化算法(2011)、頭腦風(fēng)暴優(yōu)化(2011)、世界杯競(jìng)賽算法(2016)、排球超級(jí)聯(lián)賽算法(2018)、貧富優(yōu)化算法(2019)、醫(yī)患優(yōu)化算法(2020)、團(tuán)隊(duì)優(yōu)化算法(2021)、戰(zhàn)爭(zhēng)戰(zhàn)略優(yōu)化算法(2022)基于人類(lèi)行為的智能優(yōu)化算法主要內(nèi)容CONTENTS1.2智能優(yōu)化算法分類(lèi)及發(fā)展歷程26模擬由簡(jiǎn)單個(gè)體(個(gè)體能力非常有限)所組成的群體、系統(tǒng)或社團(tuán)在交互與合作中體現(xiàn)出的集體社會(huì)行為來(lái)實(shí)現(xiàn)待求解問(wèn)題的優(yōu)化1991年,意大利的Dorigo模擬蟻群在覓食過(guò)程中能夠發(fā)現(xiàn)最短路徑的智能行為來(lái)求解旅行商問(wèn)題,提出了蟻群優(yōu)化算法這類(lèi)算法從上世紀(jì)90年代至今一直都在持續(xù)發(fā)展,尤其是近幾年,大量新算法不斷涌現(xiàn),已成為智能優(yōu)化中算法機(jī)理和種類(lèi)最為豐富的一個(gè)分支粒子群優(yōu)化算法(1995)、菌群優(yōu)化算法(2002)、蜂群算法(2007)、螢火蟲(chóng)算法(2008)、布谷鳥(niǎo)搜索算法(2009)、蝙蝠算法(2010)、磷蝦群算法(2012)、灰狼優(yōu)化算法(2014)、象群優(yōu)化算法(2015)、烏鴉搜索算法(2016)、蚯蚓優(yōu)化算法(2018)、麻雀搜索算法(2020)、野馬優(yōu)化算法(2022)、浣熊優(yōu)化算法(2023)、灰雁優(yōu)化算法(2024)基于群智能的智能優(yōu)化算法主要內(nèi)容CONTENTS1.2
智能優(yōu)化算法應(yīng)用領(lǐng)域27智能優(yōu)化求解的基本步驟問(wèn)題形式化算法選擇算法設(shè)計(jì)算法評(píng)價(jià)交通環(huán)保能源醫(yī)療金融生物經(jīng)濟(jì)電力物流制造公共事物管理公共社會(huì)服務(wù)經(jīng)濟(jì)發(fā)展建設(shè)智能優(yōu)化應(yīng)用領(lǐng)域廣泛地應(yīng)用于科學(xué)研究和工程優(yōu)化,涉及制造、環(huán)保、經(jīng)濟(jì)、醫(yī)療、電力、能源、交通、通信、生物等領(lǐng)域的諸多優(yōu)化問(wèn)題28本章小結(jié)緒論給出了優(yōu)化問(wèn)題的定義、分類(lèi)和幾個(gè)經(jīng)典問(wèn)題介紹了智能優(yōu)化算法的含義、技術(shù)特征、基本術(shù)語(yǔ)和機(jī)制從機(jī)理出發(fā)闡述了五類(lèi)智能優(yōu)化算法的發(fā)展歷程,并總結(jié)了其發(fā)展趨勢(shì)概括了智能優(yōu)化算法的應(yīng)用及其步驟感謝聆聽(tīng)!基于進(jìn)化規(guī)律的智能優(yōu)化算法1遺傳算法2差分進(jìn)化算法3生物地理學(xué)優(yōu)化算法主要內(nèi)容CONTENTS1.遺傳算法33遺傳算法的提出1.1
算法背景遺傳算法(GeneticAlgorithm)是一種源于生物遺傳與進(jìn)化的智能優(yōu)化算法,其求解思想受到了達(dá)爾文的自然進(jìn)化論與孟德?tīng)柕倪z傳學(xué)等學(xué)科的啟發(fā)。自然界中生物的生存繁殖體現(xiàn)了生物對(duì)自然環(huán)境的適應(yīng)能力。人們通過(guò)模擬生物的進(jìn)化機(jī)理與繁殖行為,提出了許多智能優(yōu)化算法。自然選擇中優(yōu)勝劣汰的進(jìn)化規(guī)則,是一種隨機(jī)的全局優(yōu)化和搜索方法。34算法的發(fā)展過(guò)程1.1
算法背景遺傳算法最早起源于1965年美國(guó)密歇根大學(xué)教授Holland提出用計(jì)算機(jī)模擬遺傳操作來(lái)進(jìn)行問(wèn)題求解的思想。1967年,Holland的學(xué)生Bagley在博士論文中首次提出了“遺傳算法”的概念。隨后,Holland提出了著名的模式定理(SchemaTheorem),從理論上證明了遺傳算法用于尋求最優(yōu)解的可行性。1975年,Holland出版了第一本關(guān)于遺傳算法的專(zhuān)著《自然系統(tǒng)與人工系統(tǒng)的自適應(yīng)性》,并在20世紀(jì)80年代實(shí)現(xiàn)了遺傳算法在機(jī)器學(xué)習(xí)一些問(wèn)題上的應(yīng)用。遺傳算法之父JohnHolland351.1
算法背景1989年,Goldberg出版了《搜索、優(yōu)化、機(jī)器學(xué)習(xí)中的遺傳算法》,系統(tǒng)地論述了遺傳算法的原理與應(yīng)用,奠定了現(xiàn)代遺傳算法的基礎(chǔ)。1991年,Davis出版了《遺傳算法手冊(cè)》,從應(yīng)用層面普及了遺傳算法,從此以后,遺傳算法開(kāi)始廣泛用于各種優(yōu)化問(wèn)題的求解。1965Holland提出遺傳算法思想Bagley提出遺傳算法概念Holland實(shí)現(xiàn)了遺傳算法在機(jī)器學(xué)習(xí)一些問(wèn)題上的應(yīng)用Goldberg奠定了現(xiàn)代遺傳算法的基礎(chǔ)Davis出版了《遺傳算法手冊(cè)》至今19671975197519911989Holland提出模式定理《遺傳算法手冊(cè)》遺傳算法發(fā)展編年圖《搜索、優(yōu)化、機(jī)器學(xué)習(xí)中的遺傳算法》361.1
算法背景算法的發(fā)展前沿近些年,遺傳算法的研究主要集中在衍生算法的設(shè)計(jì)、遺傳算法與其他優(yōu)化算法的融合、遺傳算法的應(yīng)用等方面。衍生算法近年來(lái),許多新興領(lǐng)域都融合了遺傳算法的應(yīng)用。算法應(yīng)用算法融合盡管遺傳算法是一種全局搜索算法,但受求解問(wèn)題和資源限制,有時(shí)會(huì)陷入局部最優(yōu)。因此,許多學(xué)者嘗試引入其他機(jī)制來(lái)提升其求解能力。考慮到遺傳算法的局部搜索能力不足,人們?cè)谶z傳算法中融入其他局部尋優(yōu)能力更強(qiáng)的算法,形成混合遺傳算法,以提高其運(yùn)行效率與求解質(zhì)量。近年來(lái),許多新興領(lǐng)域都融合了遺傳算法的應(yīng)用。如在計(jì)算機(jī)視覺(jué)、交通預(yù)測(cè)領(lǐng)域等,對(duì)傳統(tǒng)遺傳算法的一些缺陷做了針對(duì)不同運(yùn)用領(lǐng)域的改進(jìn)。371.1
算法背景模擬退火算法(SimulatedAnnealing)是一種受金屬退火過(guò)程啟發(fā)的搜索算法。遺傳算法與模擬退火算法融合形成了遺傳退火算法,在遺傳算法的一般流程中,首先通過(guò)交叉、變異等遺傳操作獲得新的個(gè)體,再單獨(dú)對(duì)每個(gè)生成的個(gè)體執(zhí)行模擬退火操作,將其結(jié)果送入下一代種群中。通過(guò)上述過(guò)程的不斷迭代,最終得到最優(yōu)個(gè)體。算法的發(fā)展前沿381.2
算法概述遺傳算法概述遺傳算法借助生物遺傳與進(jìn)化的思想求解問(wèn)題的最優(yōu)解。問(wèn)題的可行解稱(chēng)為個(gè)體,它是遺傳算法的基本處理對(duì)象,也對(duì)應(yīng)于遺傳學(xué)中的一條染色體。一般來(lái)說(shuō),個(gè)體采用特定的編碼形式進(jìn)行表示,編碼中的單個(gè)元素稱(chēng)為基因,對(duì)應(yīng)于基本的遺傳物質(zhì)單位。問(wèn)題的一組解稱(chēng)為種群。適應(yīng)度(Fitness)是衡量可行解優(yōu)劣的標(biāo)準(zhǔn),對(duì)應(yīng)于個(gè)體適應(yīng)環(huán)境的能力。遺傳算法的求解目標(biāo)是找到適應(yīng)度最高的個(gè)體,該個(gè)體對(duì)應(yīng)于問(wèn)題的最優(yōu)解。每個(gè)個(gè)體(染色體)包含6個(gè)基因,種群由4個(gè)個(gè)體組成391.2
算法概述遺傳算法常用于求解函數(shù)的最優(yōu)化問(wèn)題,令f(x)表示目標(biāo)函數(shù),決策變量x
=[x1,x2
,…,xL]T代表染色體,決策變量的所有取值構(gòu)成了問(wèn)題的解空間。找到最接近的問(wèn)題最優(yōu)解如何具體實(shí)現(xiàn)這種“進(jìn)化”每一次進(jìn)化中,按照優(yōu)勝劣汰的規(guī)則將適應(yīng)度較高的個(gè)體傳遞到下一代,新的種群中包含更優(yōu)良的個(gè)體令第t代的種群為集合經(jīng)過(guò)一次進(jìn)化,種群被更新為集合401.2算法概述遺傳算法從到的轉(zhuǎn)換是通過(guò)多種遺傳算子實(shí)現(xiàn)的,下面介紹三種基本的遺傳算子,它們對(duì)應(yīng)于生物進(jìn)化中染色體的交叉、變異等過(guò)程,這些算子是實(shí)現(xiàn)遺傳算法的核心。交叉:將
中的染色體隨機(jī)成對(duì),每對(duì)染色體以交叉概率
交換部分染色體,產(chǎn)生兩個(gè)新的染色體;選擇:根據(jù)個(gè)體的適應(yīng)度值,從
中選擇出一些優(yōu)良的個(gè)體遺傳到
中;變異:中的每一個(gè)染色體都會(huì)以變異概率
將其中若干基因位上的值變?yōu)槠涞任换蛑担孕纬尚碌娜旧w。411.2.1
算法設(shè)計(jì)流程遺傳算法的設(shè)計(jì)流程綜合上述遺傳算法的概念與算子,可以將遺傳算法的一般流程總結(jié)如下。結(jié)束種群初始化開(kāi)始終止?選擇生成新一代種群交叉變異適應(yīng)度評(píng)估是否421.2.2
算法參數(shù)算法的常用參數(shù)種群規(guī)模N近年來(lái),許多新興領(lǐng)域都融合了遺傳算法的應(yīng)用。該參數(shù)影響算法的搜索能力與運(yùn)行效率。若N的設(shè)置較大,一次進(jìn)化所覆蓋的可行解較多,可以保證種群的多樣性,從而提高算法的搜索能力。但是,由于種群的個(gè)數(shù)較多,算法計(jì)算量也會(huì)相應(yīng)的增加,這將降低算法的運(yùn)行效率。若N設(shè)置較小,雖然能夠降低算法的計(jì)算量,但是同時(shí)也降低了遺傳過(guò)程中種群包含更多優(yōu)良染色體的能力。一般地,N的建議設(shè)置為20至100。該參數(shù)影響算法的計(jì)算量以及后續(xù)交叉、變異算子的效果。L的設(shè)置跟優(yōu)化問(wèn)題相關(guān),一般由解的形式和所選擇的編碼方法決定。對(duì)于二進(jìn)制編碼方法,染色體的長(zhǎng)度由解的取值范圍和所需精度確定。對(duì)于浮點(diǎn)數(shù)編碼方法,染色體的長(zhǎng)度與解的維數(shù)相同。決定了進(jìn)化中交叉染色體的平均數(shù)目。過(guò)大會(huì)破壞染色體中基因的有效模式,而
過(guò)小則會(huì)導(dǎo)致新個(gè)體的迭代速度變慢。一般的建議取值為0.4至0.99.
能夠增加種群進(jìn)化的多樣性,決定了進(jìn)化中種群變異基因的平均個(gè)數(shù)。由于變異對(duì)已找到的較優(yōu)解具有一定的破壞作用,
值一般不宜過(guò)大,較大的
可能會(huì)導(dǎo)致算法從較好的搜索狀態(tài)倒退回原來(lái)較差的搜索狀態(tài)。的取值一般為0.001至0.1.染色體的長(zhǎng)度L交叉概率與變異概率431.3
編碼方法算法常用編碼方式利用遺傳算法求解問(wèn)題時(shí)并不直接對(duì)變量進(jìn)行操作,而是先對(duì)問(wèn)題的解進(jìn)行編碼,隨后再對(duì)編碼進(jìn)行選擇、交叉、變異等操作。編碼是遺傳算法的關(guān)鍵步驟,直接影響遺傳算法的有效性與效率。隨著遺傳算法的發(fā)展,人們提出了許多編碼方案。常用的編碼方式包括以下三種:二進(jìn)制編碼、浮點(diǎn)數(shù)編碼、符號(hào)編碼。實(shí)際的編碼通常需要滿足兩條編碼原則:即有意義積木塊編碼原則與最小字符集編碼原則。前者要求編碼能夠更易生成適應(yīng)度高的個(gè)體,即與所求問(wèn)題相關(guān)、低階、短定義長(zhǎng)度模式的編碼方案。后者要求在問(wèn)題得到精準(zhǔn)表述的前提下,編碼字符集盡可能最小。441.3.1
二進(jìn)制編碼二進(jìn)制編碼是最常用的編碼方式,編碼的符號(hào)集由二進(jìn)制符號(hào)0與1組成。編碼是二值符號(hào)構(gòu)成的符號(hào)串,符號(hào)串的長(zhǎng)度L可以確定解空間的大小,它由問(wèn)題的求解精度決定。編碼過(guò)程就是將問(wèn)題的解(如實(shí)數(shù))轉(zhuǎn)換為二進(jìn)制串。例如,待求決策變量的取值范圍為,采用長(zhǎng)度為L(zhǎng)的二進(jìn)制編碼就可以產(chǎn)生
個(gè)可能的編碼,每一個(gè)編碼與取值范圍內(nèi)的特定精度值存在對(duì)應(yīng)關(guān)系,具體關(guān)系如下:二進(jìn)制編碼的精度為:二進(jìn)制編碼的優(yōu)點(diǎn)在于其符合最小字符集原則,交叉、變異等遺傳操作易于實(shí)現(xiàn)。其缺點(diǎn)是對(duì)連續(xù)函數(shù)做離散化操作時(shí)容易產(chǎn)生誤差。451.3.2
浮點(diǎn)數(shù)編碼浮點(diǎn)數(shù)編碼允許個(gè)體的基因值以實(shí)數(shù)的形式存在。在浮點(diǎn)數(shù)編碼中,每個(gè)染色體由一串浮點(diǎn)數(shù)組成,這些浮點(diǎn)數(shù)與問(wèn)題的決策變量直接對(duì)應(yīng)。二進(jìn)制編碼中,編碼精度受到編碼長(zhǎng)度的影響,二進(jìn)制符號(hào)串的長(zhǎng)度越長(zhǎng),精度越高,其搜索空間也越大,這將給遺傳算法的運(yùn)行帶來(lái)極大的影響。與二進(jìn)制編碼相比,浮點(diǎn)數(shù)編碼的優(yōu)勢(shì)在于其能更直接地表示實(shí)數(shù)解,避免了二進(jìn)制編碼在轉(zhuǎn)換過(guò)程中可能出現(xiàn)的精度損失。因此,浮點(diǎn)數(shù)編碼在處理連續(xù)變量的優(yōu)化問(wèn)題時(shí)更為精確和有效。注意:浮點(diǎn)數(shù)編碼需要保證交叉與變異等遺傳操作前后的基因值均落在設(shè)定的區(qū)間范圍內(nèi),否則,就會(huì)得到不可行解。浮點(diǎn)數(shù)編碼比較適合精度要求高、搜索空間大的優(yōu)化任務(wù)。此外,由于編碼反映了決策變量的真實(shí)值,能夠利用浮點(diǎn)數(shù)編碼蘊(yùn)含問(wèn)題有關(guān)的一些信息與知識(shí)。C3C2C1C4461.3.3
符號(hào)編碼符號(hào)編碼不具有數(shù)值含義,編碼的基因取值來(lái)自具有代碼含義的符號(hào)集。常見(jiàn)的符號(hào)集有字母集:{A,
B,C,D,E},代碼集:{A1,A2,A3,A4,A5},序號(hào)集:{1,2,3,4,5}。符號(hào)編碼符合有意義積木塊編碼原則,容易在其中融入待求問(wèn)題特有的知識(shí)。但是在設(shè)計(jì)交叉、變異算子時(shí)需要考慮問(wèn)題的約束要求,以防影響遺傳算法的搜索性能。C5該旅行路線可以表示為x:C5,C2,C3,C1,C4471.4
適應(yīng)度函數(shù)適應(yīng)度函數(shù)遺傳算法采用適應(yīng)度來(lái)度量種群中個(gè)體的優(yōu)良程度,適應(yīng)度高的個(gè)體存活到下一代的概率大,適應(yīng)度低的個(gè)體存活到下一代的概率較小。在遺傳算法中,度量適應(yīng)度的函數(shù)稱(chēng)為適應(yīng)度函數(shù)。然而,由于最優(yōu)化問(wèn)題的性質(zhì)不同(最大化與最小化問(wèn)題),其對(duì)應(yīng)的轉(zhuǎn)換方法也存在差異。以直接轉(zhuǎn)換法為例,將解空間中某一點(diǎn)的目標(biāo)函數(shù)值表示為,個(gè)體的適應(yīng)度函數(shù)值表示為最小化:最大化:481.4適應(yīng)度函數(shù)還可以采用界限構(gòu)造法實(shí)現(xiàn)目標(biāo)函數(shù)值到適應(yīng)度函數(shù)值的轉(zhuǎn)換,這類(lèi)方法利用的上下界估計(jì)值來(lái)確定適應(yīng)度函數(shù)值。最大化問(wèn)題表示最小化問(wèn)題最大化問(wèn)題表示的最小估計(jì)值表示的最大估計(jì)值適應(yīng)度函數(shù)491.4
適應(yīng)度函數(shù)適應(yīng)度決定了個(gè)體存活到下一代的概率,一般來(lái)說(shuō),采用直接轉(zhuǎn)換法與界限構(gòu)造法計(jì)算適應(yīng)度時(shí),算法的收斂速度難以得到有效的控制。在進(jìn)化的初期階段,少數(shù)適應(yīng)度較高的個(gè)體可能會(huì)控制選擇過(guò)程,降低種群的多樣性,進(jìn)而產(chǎn)生早熟或提前收斂的現(xiàn)象;而在進(jìn)化的末期階段,大部分個(gè)體的適應(yīng)度差異太小,競(jìng)爭(zhēng)性不足,同樣會(huì)影響算法的運(yùn)行效率。因此,遺傳算法通常會(huì)對(duì)適應(yīng)度進(jìn)行適當(dāng)?shù)目s放,以滿足遺傳算法在不同階段對(duì)適應(yīng)度函數(shù)的需求,這種縮放的過(guò)程被稱(chēng)為適應(yīng)度的尺度變換。常見(jiàn)的尺度變換包括線性變換法、冪次變換法、指數(shù)變換法等。具體地,適應(yīng)度函數(shù)的線性變換法可以表示為:式中,與代表尺度變換的系數(shù),
與分別為原適應(yīng)度與變換后的新適應(yīng)度適應(yīng)度函數(shù)的尺度變換501.4
適應(yīng)度函數(shù)系數(shù)與的確定需滿足以下兩個(gè)條件保證一部分接近于種群平均適應(yīng)度的個(gè)體會(huì)存活到下一代變換后的最大適應(yīng)度為原種群平均適應(yīng)度的倍數(shù)冪函數(shù)變換法通常采用如下形式:最大化問(wèn)題另外兩種適應(yīng)度函數(shù)的尺度變換簡(jiǎn)介如下:冪函數(shù)變換法通常采用如下形式:冪次m需要根據(jù)問(wèn)題靈活設(shè)定,且需要隨著算法的進(jìn)行不斷調(diào)整。指數(shù)變換法一般表示為:實(shí)系數(shù)γ越小,選擇該個(gè)體的可能性越大。適應(yīng)度函數(shù)的尺度變換51在遺傳算法中,選擇算子就是確定種群中哪些個(gè)體能夠存活到下一代的操作。選擇算子的客觀依據(jù)是適應(yīng)度評(píng)價(jià),它需要確保適應(yīng)度高的個(gè)體更有可能保留到下一代,從而避免重要基因的損失,并保證遺傳算法的收斂性和效率。常見(jiàn)的選擇算子包括:適應(yīng)度比例方法、最佳個(gè)體保存方法、排擠方法、確定性采樣、期望值方法、無(wú)回放余數(shù)隨機(jī)采樣、隨機(jī)競(jìng)標(biāo)賽方法、排序選擇等。下面介紹3種常見(jiàn)的選擇算子。1.5
選擇算子選擇算子521.5.1
適應(yīng)度比例的方法適應(yīng)度比例方法(FitnessProportionalMethod)是最常用的選擇方法。基本思想:個(gè)體的選擇概率和其適應(yīng)度值成正比關(guān)系,即個(gè)體的適應(yīng)度越高,被選中的機(jī)會(huì)越大。具體地,對(duì)于包含N個(gè)個(gè)體的種群,第i個(gè)體的比例選擇策略可以表示為:表示個(gè)體i被選中的概率,表示個(gè)體i的適應(yīng)度,為種群中所有個(gè)體的適應(yīng)度之和。優(yōu)點(diǎn):簡(jiǎn)單直觀,它能夠確保比較優(yōu)秀的個(gè)體存活的機(jī)會(huì)更高缺點(diǎn):易導(dǎo)致種群快速失去多樣性,增加了早熟收斂(過(guò)早陷入局部最優(yōu)解)的風(fēng)險(xiǎn)53輪盤(pán)賭選擇(RouletteWheelSelection)是比例選擇的一個(gè)隨機(jī)變種,它在保持種群多樣性的同時(shí),能夠給予適應(yīng)度高的個(gè)體更多被選擇的機(jī)會(huì)。其基本流程如下:1.5.1
適應(yīng)度比例的方法1)計(jì)算種群中個(gè)體適應(yīng)度值的總和;2)計(jì)算個(gè)體適應(yīng)度占總適應(yīng)度的比例,獲得單個(gè)個(gè)體的選擇概率;3)每個(gè)個(gè)體根據(jù)其選擇概率獲得其在輪盤(pán)上的扇面角份額;4)模擬輪盤(pán)操作,通過(guò)指針指向的扇面來(lái)確定哪個(gè)個(gè)體被選中。上例操作過(guò)程如下:輪盤(pán)賭選擇方法首先設(shè)定一個(gè)帶指針的選擇點(diǎn),每次輪盤(pán)轉(zhuǎn)動(dòng)停止后指針?biāo)傅膫€(gè)體即為這次被選中的個(gè)體。基礎(chǔ)的輪盤(pán)賭選擇每次只能選擇一個(gè)個(gè)體,而后來(lái)衍生的隨機(jī)遍歷選擇法則通過(guò)設(shè)置等距的n個(gè)選擇指針一次同時(shí)選擇n個(gè)個(gè)體。改進(jìn)的適應(yīng)度比例方法54遺傳算法選擇個(gè)體后還需要通過(guò)交叉、變異等操作,有可能破壞優(yōu)良個(gè)體中的基因。因此,人們希望在選擇過(guò)程中盡可能地避免優(yōu)良個(gè)體的損失。最佳個(gè)體保存方法可以有效解決這一問(wèn)題。基本思想:將種群中適應(yīng)度最高的個(gè)體保留,不讓其參與交叉、變異等操作,直接將其復(fù)制到下一代中,并替換適應(yīng)度最低的個(gè)體。1.5.2
最佳個(gè)體保存方法最優(yōu)個(gè)體保存方法的優(yōu)點(diǎn)是能夠保留優(yōu)化歷史中的最優(yōu)個(gè)體,使其不受交叉、變異等操作的影響。其缺點(diǎn)是會(huì)使得某些局部最優(yōu)個(gè)體不易被淘汰,陷入局部最優(yōu)而影響算法的全局搜索能力。計(jì)算當(dāng)前種群中每個(gè)個(gè)體的適應(yīng)度,選擇適應(yīng)度值最高與最低的個(gè)體若當(dāng)前種群中最高適應(yīng)度個(gè)體的適應(yīng)度大于所有歷史時(shí)刻種群中最佳個(gè)體的適應(yīng)度,用當(dāng)前種群最高適應(yīng)度的個(gè)體替代歷史最佳個(gè)體用歷史最佳個(gè)體替換當(dāng)前種群中適應(yīng)度最低的個(gè)體55上述排序方法中,選擇操作依賴于個(gè)體具體的適應(yīng)度值,因而在實(shí)際進(jìn)行個(gè)體選擇操作時(shí),需要對(duì)個(gè)體的適應(yīng)度值進(jìn)行一定的預(yù)處理,例如,保證每個(gè)個(gè)體的適應(yīng)度取值為非負(fù)。排序選擇(Rank-basedSelection)不依賴于適應(yīng)度的具體數(shù)值,僅關(guān)注適應(yīng)度值的排序關(guān)系。其基本思想是對(duì)種群中的個(gè)體按照適應(yīng)度值進(jìn)行排序,并按照該排序來(lái)確定個(gè)體被選中的概率。1.5.3
排序選擇注意:概率值的計(jì)算是排序選擇的關(guān)鍵。將種群中所有的個(gè)體按照適應(yīng)度大小進(jìn)行排序設(shè)計(jì)適合求解問(wèn)題的概率分配表,依次為每一個(gè)個(gè)體分配一個(gè)概率值利用這些概率值,設(shè)計(jì)比例選擇方法,選擇用于生成下一代種群的個(gè)體561.5.3
排序選擇Baker提出了一種線性排序算法,通過(guò)如下公式計(jì)算個(gè)體i的選擇概率:隨機(jī)聯(lián)賽選擇(Stochastic
TournamentSelection)也是一種基于排序的選擇方法,基本思想:首先,確定聯(lián)賽規(guī)模NS,并從種群中隨機(jī)選擇NS個(gè)個(gè)體;隨后,對(duì)NS個(gè)個(gè)體進(jìn)行適應(yīng)度大小排序,將適應(yīng)度高的個(gè)體遺傳到下一代。基于排序方法的優(yōu)點(diǎn)是無(wú)需對(duì)適應(yīng)度值進(jìn)行處理。然而,該類(lèi)方法在選擇時(shí)仍依賴于選擇概率,概率分配過(guò)程決定選擇概率的求取,因此,排序選擇容易產(chǎn)生較大的誤差。
是最差個(gè)體的選擇概率,
為最優(yōu)個(gè)體的選擇概率由于選擇概率僅僅與排序關(guān)系有關(guān),即使兩個(gè)個(gè)體的適應(yīng)度值相同,其順序不同也會(huì)導(dǎo)致選擇概率不同。57交叉算子是產(chǎn)生新個(gè)體的主要手段。交叉運(yùn)算是指將一對(duì)染色體以特定的方式交換部分基因,形成兩個(gè)新個(gè)體的過(guò)程。交叉操作是在個(gè)體的染色體編碼上進(jìn)行的,具體設(shè)計(jì)與待求問(wèn)題相關(guān):一方面要求交叉操作不能破壞編碼中的優(yōu)良模式,另一方面要求產(chǎn)生的新個(gè)體具有較好的遺傳性質(zhì)。1.6
交叉算子交叉算子581.6.1二值交叉二進(jìn)制編碼的交叉操作主要包含單點(diǎn)交叉、兩點(diǎn)交叉、多點(diǎn)交叉等。單點(diǎn)交叉(One-pointCrossover):?jiǎn)吸c(diǎn)交叉是最基本的交叉算子。過(guò)程如下:首先,將種群中的個(gè)體進(jìn)行配對(duì);隨后,對(duì)于任意一對(duì)個(gè)體,設(shè)置某基因座后的位置為交叉點(diǎn);最后,按照交叉概率pc在交叉點(diǎn)后交換兩個(gè)個(gè)體的染色體片段,產(chǎn)生新的個(gè)體。下表給出了單點(diǎn)交叉的示例,交叉點(diǎn)在染色體的第k?1個(gè)基因和第k個(gè)基因之間。交叉點(diǎn)父代染色體1:x1…xk?1xkxk+1xk+2…xL父代染色體2:y1…yk?1ykyk+1yk+2…yL交叉操作(↓)子代染色體1:x1…xk?1ykyk+1yk+2…yL子代染色體2:y1…yk?1xkxk+1xk+2…xL591.6.1二值交叉兩點(diǎn)交叉(Two-pointCrossover):兩點(diǎn)交叉在設(shè)置交叉點(diǎn)時(shí)選擇兩個(gè)交叉點(diǎn)位置,將交叉點(diǎn)之間覆蓋的染色體片段進(jìn)行互換,產(chǎn)生兩個(gè)新個(gè)體。兩點(diǎn)交叉的過(guò)程如下,交叉點(diǎn)1與交叉點(diǎn)2分別選在第k個(gè)基因之后與第k+2個(gè)基因之前,這個(gè)范圍內(nèi)的基因進(jìn)行交換,產(chǎn)生新的個(gè)體。
交叉點(diǎn)1交叉點(diǎn)2
父代染色體1:x1x2…xkxkxk+1xk+2…xL父代染色體2:y1y2…yk-1ykyk+1yk+2…yL交叉操作↓子代染色體1:x1x2…xkykyk+1xk+2…xL子代染色體2:y1y2…yk-1xkxk+1yk+2…yL601.6.1二值交叉多點(diǎn)交叉(Multi-pointCrossover)操作與兩點(diǎn)交叉類(lèi)似,先設(shè)定多個(gè)交叉點(diǎn),然后再執(zhí)行交叉操作。均勻交叉(Uniform
Crossover)是多點(diǎn)交叉的一個(gè)特例,它將兩個(gè)個(gè)體中每個(gè)基因座上的基因都按同一方式進(jìn)行交換。實(shí)際執(zhí)行時(shí)會(huì)通過(guò)一個(gè)與染色體長(zhǎng)度相等的掩碼向量來(lái)實(shí)現(xiàn),該掩碼向量的每一個(gè)元素均為隨機(jī)采樣產(chǎn)生的0
1二進(jìn)制值。其中,掩碼向量取值為0時(shí),兩個(gè)個(gè)體對(duì)應(yīng)基因座上的基因維持不變;掩碼向量取值為1時(shí),兩個(gè)個(gè)體對(duì)應(yīng)基因座上的基因進(jìn)行交換。一般來(lái)說(shuō),多點(diǎn)交叉中交叉點(diǎn)的增加會(huì)破壞基因的一些固有模式,不利于生成優(yōu)良個(gè)體,因此,實(shí)際操作時(shí)交叉點(diǎn)不宜過(guò)多。611.6.2浮點(diǎn)數(shù)交叉對(duì)于浮點(diǎn)數(shù)編碼,遺傳算法采用算數(shù)交叉的方式獲得新的個(gè)體。一般地,算數(shù)交叉采用父代個(gè)體的線性組合生成子代個(gè)體。給定第t代種群中的一對(duì)個(gè)體與,其子代與的計(jì)算方式如下:
為超參數(shù),可以取常數(shù)或者可調(diào)節(jié)的變量62變異算子通過(guò)模擬生物進(jìn)化的變異現(xiàn)象產(chǎn)生新的個(gè)體。在遺傳算法中,變異算子是指將染色體中一些基因座上的基因用其等位基因進(jìn)行替換,從而產(chǎn)生新個(gè)體的運(yùn)算操作。對(duì)于二值編碼,變異操作或者將原先為1的基因值替換為0,或者將原先為0的基因值替換為1。變異操作具有兩個(gè)重要的目的:其一,變異能夠促使遺傳算法進(jìn)一步搜索交叉算子無(wú)法觸及的區(qū)域,實(shí)現(xiàn)增強(qiáng)遺傳算法的局部搜索能力的目的;其二,變異能夠通過(guò)改變基因值增加個(gè)體的多樣性,防止早熟現(xiàn)象。1.7
變異算子變異算子631.7變異算子(1)基本變異算子基本變異(Simple
Mutation)是指按變異概率對(duì)基因進(jìn)行隨機(jī)變化。其基本過(guò)程如下:首先,對(duì)于染色體中的每一個(gè)基因,依據(jù)變異概率pm判斷該基因是否會(huì)進(jìn)行變異;隨后,將變異點(diǎn)上的基因值替換為其等位基因,產(chǎn)生一個(gè)新的個(gè)體。(2)逆轉(zhuǎn)變異算子逆轉(zhuǎn)變異是指從個(gè)體的染色體中隨機(jī)選擇多個(gè)基因變異點(diǎn),通過(guò)交換這些點(diǎn)上的基因來(lái)生成新個(gè)體的過(guò)程。1
1010
1
011
10111
01變異點(diǎn)1
1010
1
011
10111
00變異點(diǎn)變異點(diǎn)交換641.7變異算子(3)均勻變異算子均勻變異(Uniform
Mutation)是指以很小的概率將各個(gè)基因座上的基因值用某范圍內(nèi)均勻分布的隨機(jī)數(shù)替代。其過(guò)程如下:首先,將染色體中所有基因座上的基因依次指定為變異目標(biāo);隨后,對(duì)于每一個(gè)變異點(diǎn),以變異概率
將基因座上的基因值替換為隨機(jī)數(shù)。令第i個(gè)基因座上的基因?yàn)樽儺慄c(diǎn),則該點(diǎn)的新基因值為:
為[0,1]之間均勻分布的隨機(jī)數(shù)。2.差分進(jìn)化算法
662.1算法原理個(gè)體編碼在差分進(jìn)化算法中,種群可以表示為:表示種群中個(gè)體的數(shù)目,第
個(gè)個(gè)體表示為向量為維度,
為實(shí)數(shù)。
672.1算法原理差分操作基本思想:首先,對(duì)當(dāng)前種群中的個(gè)體進(jìn)行變異和交叉操作,產(chǎn)生新一代個(gè)體;然后,基于貪婪策略,利用當(dāng)前個(gè)體和新一代個(gè)體構(gòu)建新一代種群,選擇過(guò)程采用一對(duì)一的生存準(zhǔn)則。差分進(jìn)化算法使用向量描述個(gè)體與個(gè)體之間的差異設(shè)計(jì)算子。三個(gè)關(guān)鍵的差分算子分別是:變異算子、交叉算子和選擇算子。682.2差分操作變異算子基本思想:通過(guò)組合當(dāng)前種群中的若干個(gè)體來(lái)生成一個(gè)變異向量(MutationVector),利用種群中個(gè)體之間的差異來(lái)引導(dǎo)搜索過(guò)程。基本過(guò)程:DE//其中,
代表選擇方法,表示選擇的隨機(jī)差分向量個(gè)數(shù)。隨機(jī)選擇基向量隨機(jī)選擇兩個(gè)差向量計(jì)算差分向量生成變異向量從當(dāng)前種群中隨機(jī)選擇的個(gè)體稱(chēng)為基向量通過(guò)兩個(gè)差向量計(jì)算差分向量,即將差分向量乘以一個(gè)用于縮放的變異因子
,然后加到基向量上,生成變異向量:再?gòu)姆N群中隨機(jī)選擇另外兩個(gè)不同的個(gè)體,分別表示為差向量和2.2差分操作變異算子下圖展示了2維空間中的一個(gè)變異操作,基向量為,兩個(gè)差向量生成的差分向量為
,變異向量由基向量與差分向量生成。圖例:差分進(jìn)化算法的變異算子692.2差分操作變異算子變體差分變異算子的設(shè)計(jì)十分靈活,對(duì)于目標(biāo)個(gè)體,由于差向量的個(gè)數(shù)和基向量的選取方式不同,變異個(gè)體的生成方式存在多種變體。常見(jiàn)的變體包含以下幾種:DE/best/1:基向量選取當(dāng)前種群中適應(yīng)度最好的個(gè)體:DE/rand/2:隨機(jī)選擇2對(duì)個(gè)體來(lái)生成變異向量:DE/current-to-best/1:結(jié)合當(dāng)前個(gè)體與種群中最優(yōu)個(gè)體的信息:702.2差分操作交叉算子差分進(jìn)化算法中的交叉算子是指將變異向量與當(dāng)前的目標(biāo)向量結(jié)合,形成試驗(yàn)向量的過(guò)程,試驗(yàn)向量將作為新的候選解。該交叉過(guò)程不僅保留了原有個(gè)體的信息,還包含了變異個(gè)體的信息。具體地,目標(biāo)個(gè)體采用目標(biāo)向量表示,差分變異生成的包含個(gè)體差異的變異向量為,交叉操作生成的試驗(yàn)個(gè)體(候選解)表示為試驗(yàn)向量。通常,差分變異的交叉操作包含二項(xiàng)式交叉(BinomialCrossover)和指數(shù)交叉(ExponentialCrossover)兩種方式。712.2差分操作二項(xiàng)式交叉二項(xiàng)式交叉采用如下公式生成試驗(yàn)向量中第
維的值式中,
為針對(duì)第
維生成的隨機(jī)數(shù),范圍為[0,1];rand[1,L]為[1,L]之間的隨機(jī)自然數(shù),為交叉概率,取值范圍為[0,1]。二項(xiàng)式交叉通過(guò)比較隨機(jī)數(shù)與交叉概率的大小來(lái)生成試驗(yàn)向量,當(dāng)隨機(jī)數(shù)小于交叉概率時(shí),試驗(yàn)向量當(dāng)前維度的值由變異向量提供,反之則由目標(biāo)向量提供。另一條件rand[1,L]則是為了確保至少能夠從獲得一個(gè)參數(shù),防止所有維度均來(lái)自目標(biāo)向量,導(dǎo)致進(jìn)化失敗。722.2差分操作指數(shù)交叉指數(shù)交叉更新試驗(yàn)向量中第
維的策略如下:代表以向量維度L為模的取模操作,
為隨機(jī)產(chǎn)生的維度索引,代表交叉操作的起始位置。
為交叉的長(zhǎng)度,由交叉概率與[0,1]之間的隨機(jī)數(shù)共同產(chǎn)生,產(chǎn)生過(guò)程如下:初始時(shí)令,如果rand[0,1]<且,則,否則,輸出
。在指數(shù)交叉過(guò)程中,從起始點(diǎn)
到之間的數(shù)值由變異向量提供,其他維度由目標(biāo)向量提供。指數(shù)交叉操作的特點(diǎn)是從隨機(jī)起始點(diǎn)連續(xù)地引入變異向量的特征,保持了變異向量的局部連續(xù)性。732.2差分操作交叉算子示例在圖(1)所示的二項(xiàng)式交叉中,交叉位置是離散的。試驗(yàn)向量
中每個(gè)位置的值由交叉概率來(lái)決定是源自目標(biāo)向量
還是變異向量;在圖(2)所示的指數(shù)交叉中,交叉位置是連續(xù)的。在試驗(yàn)向量
中,一段長(zhǎng)度為
的向量均來(lái)自變異向量,其余位置來(lái)自目標(biāo)向量
,其中,長(zhǎng)度
由交叉概率來(lái)確定。二項(xiàng)式與指數(shù)交叉示例742.2差分操作選擇算子差分進(jìn)化算法的選擇操作采用“貪婪選擇”策略,通過(guò)比較當(dāng)前個(gè)體(目標(biāo)向量)和其對(duì)應(yīng)試驗(yàn)個(gè)體(試驗(yàn)向量)的適應(yīng)度值,選擇適應(yīng)度更優(yōu)的個(gè)體進(jìn)入下一代。其基本步驟如下:1)計(jì)算適應(yīng)度:計(jì)算目標(biāo)向量和試驗(yàn)向量的適應(yīng)度值。2)比較適應(yīng)度:比較目標(biāo)向量和試驗(yàn)向量的適應(yīng)度。3)一對(duì)一選擇優(yōu)勝者:將適應(yīng)度較優(yōu)的個(gè)體保留到下一代。對(duì)于目標(biāo)向量和試驗(yàn)向量,產(chǎn)生下一代個(gè)體的方法如下:式中,
表示適應(yīng)度函數(shù),上式針對(duì)的是最大化問(wèn)題,若目標(biāo)是最小化問(wèn)題,則選擇試驗(yàn)個(gè)體作為下一代個(gè)體的條件為:752.3算法流程算法流程差分進(jìn)化算法的主要步驟如下:步驟1:確定需要優(yōu)化的目標(biāo)函數(shù)。步驟2:確定參數(shù)。設(shè)置算法的關(guān)鍵參數(shù),包括種群規(guī)模、變異縮放因子、交叉概率、最大迭代次數(shù)。步驟3:種群初始化。隨機(jī)生成個(gè)個(gè)體,每個(gè)個(gè)體都是一個(gè)
維向量。步驟4:變異。結(jié)合種群內(nèi)多個(gè)個(gè)體來(lái)生成變異向量。步驟5:交叉。采用二項(xiàng)式或指數(shù)交叉生成試驗(yàn)向量。步驟6:選擇。采用一對(duì)一生存準(zhǔn)則,通過(guò)適應(yīng)度值選擇下一代個(gè)體。步驟7:終止條件。達(dá)到最大迭代次數(shù)或目標(biāo)函數(shù)值達(dá)到預(yù)定閾值,算法結(jié)束。762.3算法流程算法流程差分進(jìn)化算法的設(shè)計(jì)流程如下圖所示:差分進(jìn)化算法流程772.3算法流程關(guān)鍵參數(shù)的設(shè)計(jì)種群規(guī)模:種群規(guī)模必須滿足,以確保算法能夠選用足夠的個(gè)體產(chǎn)生變異個(gè)體,一般
的選擇在之間,
為空間的維度。變異縮放因子
:是一個(gè)常實(shí)數(shù),決定偏差向量的放大比例。一般,
越大,算法更容易逃出局部極小點(diǎn)、收斂到全局最優(yōu)點(diǎn)。交叉概率:交叉概率
是一個(gè)[0,1]范圍內(nèi)的實(shí)數(shù),控制試驗(yàn)個(gè)體來(lái)自變異個(gè)體的概率。通常地,越大,算法更容易收斂,但也容易發(fā)生早熟現(xiàn)象。
的選擇經(jīng)驗(yàn)值是0.3。終止條件:除最大進(jìn)化代數(shù)可作為差分進(jìn)化的終止條件外,有時(shí)還需要采用其它判定準(zhǔn)則,比如最優(yōu)解適應(yīng)度值的變化小于閾值時(shí)程序終止。782.4前沿進(jìn)展差分進(jìn)化機(jī)制的改進(jìn)一般來(lái)說(shuō),差分進(jìn)化算法的收斂速度要優(yōu)于一般進(jìn)化算法,但基礎(chǔ)的差分進(jìn)化算法易陷入局部最優(yōu),出現(xiàn)早熟收斂的現(xiàn)象。為此,學(xué)者們?cè)诤罄m(xù)研究中提出了許多改進(jìn)的差分進(jìn)化算法,以提高其性能和適應(yīng)性。對(duì)于差分進(jìn)化算法本身,人們重點(diǎn)關(guān)注對(duì)初始化、變異算子、交叉算子等操作的改進(jìn),以及對(duì)變異縮放因子、交叉概率等控制參數(shù)確定方法的改進(jìn)。在應(yīng)用層面,差分進(jìn)化算法被廣泛應(yīng)用于大數(shù)據(jù)分析、生物信息學(xué)等領(lǐng)域。792.4前沿進(jìn)展種群初始化種群初始化是差分進(jìn)化中的主要步驟,它能夠控制最終解的質(zhì)量并影響算法的收斂速度。2015年,Cluster-BasedPopulationInitializationfordifferentialevolutionframeworks提出了一種基于聚類(lèi)的種群初始化方法,主要步驟:初始采樣與局部搜索:首先隨機(jī)采樣生成初始種群的個(gè)體,每個(gè)個(gè)體依次經(jīng)過(guò)兩個(gè)局部搜索算法的優(yōu)化:沿坐標(biāo)軸的局部搜索和基于梯度的Rosenbrock算法。結(jié)合兩個(gè)搜索策略,用于提升解的局部?jī)?yōu)化效果。聚類(lèi):優(yōu)化后的個(gè)體通過(guò)k均值聚類(lèi),根據(jù)歐幾里得距離將解分為多個(gè)簇,使用Silhouette系數(shù)選擇最佳的簇?cái)?shù),確保聚類(lèi)結(jié)果最優(yōu)。種群構(gòu)建:每個(gè)簇中適應(yīng)度最優(yōu)的個(gè)體直接選入初始種群,剩余的個(gè)體則基于適應(yīng)度從各簇中選取,保證種群覆蓋不同的域。802.4前沿進(jìn)展差分變異算子2020年,受到人體止血過(guò)程的啟發(fā),Differentialevolutionwithbiological-basedmutationoperator提出了一種適用于差分進(jìn)化算法的止血算子:初始化:隨機(jī)生成初始種群并劃分為修正池與剩余池。每次迭代:算法根據(jù)止血算子的變異策略分別對(duì)兩種池進(jìn)行變異、交叉和選擇操作,確保局部搜索和全局搜索的平衡。利用動(dòng)態(tài)調(diào)整變異因子,算法能夠保持種群的多樣性,從而有效避免早熟收斂。812.4前沿進(jìn)展差分進(jìn)化算法的應(yīng)用在工業(yè)控制領(lǐng)域:MultilevelImageThresholdingBasedon2DHistogramandMaximumTsallisEntropy-ADifferentialEvolutionApproach提出了一種基于多試驗(yàn)向量的差分進(jìn)化算法,通過(guò)試驗(yàn)向量生成器來(lái)融合不同的搜索策略,適用于許多復(fù)雜的工程設(shè)計(jì)問(wèn)題。在電氣能源領(lǐng)域:ACaseLearning-BasedDifferentialEvolutionAlgorithmforGlobalOptimizationofInterplanetaryTrajectoryDesign采用基于線性種群規(guī)模縮減的自適應(yīng)差分進(jìn)化算法來(lái)估計(jì)太陽(yáng)能電池的參數(shù)。在圖像處理領(lǐng)域:Biogeography-BasedOptimization提出了一種基于二維直方圖的多級(jí)閾值方法來(lái)提高檢測(cè)目標(biāo)之間的分離程度,其中,差分進(jìn)化算法被用于最大化Tsallis熵。在衛(wèi)星導(dǎo)航領(lǐng)域中:AnAnalysisoftheEquilibriumofMigrationModelsforBiogeography-BasedOptimization提出了一種基于案例學(xué)習(xí)的差分進(jìn)化算法,用于星際飛行軌道設(shè)計(jì)問(wèn)題。823.
生物地理學(xué)優(yōu)化算法843.1算法原理生物地理學(xué)基礎(chǔ)概念適宜度指數(shù)在每個(gè)棲息地中,決定物種的生存數(shù)量與生存質(zhì)量的是適宜度指數(shù)(HSI)。棲息地自然界中生物種群的分布在地理上具有明顯的區(qū)域邊界,這些地理區(qū)域被稱(chēng)為棲息地(Habitat)。適宜度變量棲息地中的氣候、植被、地質(zhì)、面積等因素的差異造就了不同的適宜度指數(shù),這些影響因素被統(tǒng)稱(chēng)為適宜度變量(SIV)。85生物地理學(xué)的數(shù)學(xué)模型主要描述了物種的遷移、新物種的出現(xiàn)、物種的滅絕。具體地,物種在棲息地中的分布一般處于相對(duì)平衡狀態(tài),而在受到擾動(dòng)后會(huì)呈現(xiàn)動(dòng)態(tài)變化,這種動(dòng)態(tài)變化可以通過(guò)遷出率(EmigrationRate)和遷入率(ImmigrationRate)來(lái)描述。3.1算法原理數(shù)學(xué)模型物種數(shù)目多競(jìng)爭(zhēng)較為激烈較高的遷出率較低的遷入率高HSI棲息地物種數(shù)目少競(jìng)爭(zhēng)較少較低的遷出率較高的遷入率低HSI棲息地狀態(tài)相對(duì)穩(wěn)定和平衡物種動(dòng)態(tài)性更為明顯86下圖給出了一個(gè)棲息地物種多樣性的簡(jiǎn)單數(shù)學(xué)模型,其中和分別表示遷入率和遷出率,表示棲息地的物種數(shù)目,遷入率和遷出率均是關(guān)于3.1算法原理線性遷移率模型的函數(shù)。87對(duì)于遷入率曲線,當(dāng)棲息地的物種數(shù)目時(shí),物種的潛在遷入率最大。隨著物種的不斷遷入,物種數(shù)目增加,棲息地內(nèi)可生存的空間減少,能夠成功遷入與生存的物種逐漸減少,造成遷入率不斷降低。當(dāng)物種數(shù)量達(dá)到可容納的最大可能物種數(shù)目時(shí),遷入率為0,此時(shí)不再有物種遷入。3.1算法原理線性遷移率模型88對(duì)于遷出率曲線,當(dāng)棲息地物種數(shù)目為0時(shí),遷出率為0。隨著物種數(shù)目增加,棲息地內(nèi)的擁擠程度也隨之增加,于是就有一些物種將遷出該棲息地,去尋找潛在的新居住地。此時(shí),遷出率將不斷增高。當(dāng)物種數(shù)量達(dá)到最大值時(shí),物種的遷出率也將達(dá)到最大值。3.1算法原理線性遷移率模型89當(dāng)物種的遷入率與遷出率相等時(shí),我們稱(chēng)遷入和遷出達(dá)到平衡,此時(shí),棲息地物種數(shù)目記為
(遷入率曲線與遷出率曲線的交點(diǎn)位置)。根據(jù)下圖可知遷入率和遷出率的表達(dá)式為:3.1算法原理線性遷移率模型90非線性遷移率模型3.1算法原理此時(shí),與為S的二次函數(shù)。如果物種數(shù)量較小,遷入率從最大遷入率急劇減少,遷出率則從零開(kāi)始緩慢增加。當(dāng)物種數(shù)量趨近于飽和時(shí),遷入率緩慢減小,遷出率急劇增大。三角函數(shù)遷移率模型此時(shí),與為S的三角函數(shù)。當(dāng)棲息地物種數(shù)量較大或較小時(shí),遷入率和遷出率均從各自的極值處開(kāi)始緩慢改變;當(dāng)棲息地物種數(shù)目為中等時(shí),遷移率從平衡值開(kāi)始急劇變化,該過(guò)程表示棲息地通常需要較長(zhǎng)的時(shí)間來(lái)達(dá)到物種數(shù)目的平衡。二次函數(shù)遷移率模型:91模型分析令表示棲息地包含
個(gè)物種的概率,從時(shí)刻到時(shí)刻,
的變化情況表示為:3.1算法原理式中,
和表示物種數(shù)量為
時(shí)的遷入率和遷出率。上式表明,某棲息地若要在時(shí)刻容納
個(gè)物種,必須滿足以下三個(gè)條件之一(對(duì)應(yīng)式中的三項(xiàng)):1)在時(shí)刻t棲息地有
個(gè)物種,且時(shí)刻t到t+1時(shí)刻期間物種無(wú)遷入和遷出;2)在時(shí)刻t棲息地含有個(gè)物種,且僅有1個(gè)物種遷入;3)在時(shí)刻t棲息地含有個(gè)物種,且僅有1個(gè)物種遷出。92模型分析假定極小,多于1個(gè)物種的遷入可以忽略不計(jì)。對(duì)下式求極限,使得可以得到:3.1算法原理當(dāng)
時(shí),遷移后,當(dāng)
時(shí),.上述過(guò)程客觀地描述了棲息地的動(dòng)態(tài)變化過(guò)程。策略概述3.2優(yōu)化策略在生物地理學(xué)優(yōu)化算法中,定義棲息地為特定優(yōu)化問(wèn)題的一個(gè)可行解。向量的每一個(gè)維度代表一個(gè)適宜度變量(SIV),例如,中的第
個(gè)SIV為,其取值由問(wèn)題的約束條件來(lái)決定,如SIV。適宜度指標(biāo)(HSI)是衡量可行解優(yōu)劣的指標(biāo),即HSI:,對(duì)應(yīng)于其他優(yōu)化算法中的適應(yīng)度。假設(shè)一個(gè)生態(tài)系統(tǒng)內(nèi)包含
個(gè)棲息地,生物地理學(xué)優(yōu)化算法通過(guò)不斷修改棲息地
實(shí)現(xiàn)種群的更新。棲息地進(jìn)化的核心是遷移操作和變異操作。933.2優(yōu)化策略遷移操作(1)基本的遷移操作遷移操作旨在通過(guò)物種遷移在不同的棲息地之間共享信息。在問(wèn)題求解過(guò)程中,遷移對(duì)應(yīng)于在不同的解之間共享信息,使得較好的解能夠把信息分享給其他解,使得較差的解能夠從其他解中接收信息。與的適宜度指數(shù),將適宜度指數(shù)更高的解保留在種群中。基于遷出率從種群中選出其它棲息地的方法較為靈活,例如可以通過(guò)輪盤(pán)賭的方法來(lái)實(shí)現(xiàn)。遷移操作的實(shí)現(xiàn)過(guò)程如下:在每次迭代中,設(shè)種群中每個(gè)解的遷入率和遷出率分別為和,對(duì)其每個(gè)分量執(zhí)行遷入操作,即以的概率將該分量的值修改為其他值。如果滿足遷入條件,則以遷出率的概率從種群中選擇一個(gè)遷出解,用對(duì)應(yīng)位置的分量替換的當(dāng)前分量。上述過(guò)程重復(fù)進(jìn)行,當(dāng)遍歷的所有分量后,產(chǎn)生一個(gè)新的解。此時(shí),分別計(jì)算943.2優(yōu)化策略遷移操作(2)其他遷移操作Zheng等人提出了一種混合型生物地理學(xué)優(yōu)化算法,用于求解有約束的優(yōu)化問(wèn)題。在遷移步驟中,該算法將原始的遷移操作修改為一種混合遷移操作。具體地,對(duì)于解
,其遷移操作表示為:式中,,當(dāng)時(shí),混合遷移操作退化為原始的遷移操作。混合遷移操作將當(dāng)前解自身的特征與遷出解的特征進(jìn)行線性組合,可以在遷移操作中實(shí)現(xiàn)信息交互,促使較差解通過(guò)吸收較優(yōu)解的特征來(lái)提高解的質(zhì)量。此外,混合遷移操作還能避免較優(yōu)解受遷移影響而導(dǎo)致質(zhì)量下降的現(xiàn)象。953.2優(yōu)化策略變異操作在自然界,災(zāi)難性事件(疾病、自然災(zāi)害等)可以極大地改變自然棲息地的HSI,使得物種的數(shù)目偏離生態(tài)系統(tǒng)的穩(wěn)定值。生物地理學(xué)優(yōu)化算法將這種變化建模為SIV突變,并使用物種數(shù)量的概率來(lái)確定突變率。在變異操作之前,生物地理學(xué)優(yōu)化算法為種群中的每個(gè)個(gè)體(解)賦予一個(gè)概率,用來(lái)表示將該個(gè)體作為最優(yōu)解的可能性。高HSI與低HSI解的概率較小,中等HSI解的概率較大。低HSI解高HSI解中等HSI解中等HSI解概率較大高HSI與低HSI解的概率較小中等HSI解963.2優(yōu)化策略變異操作若解
的概率很低,將其作為問(wèn)題的最優(yōu)解不合理,那么它變異為其他解的概率較高;反之,若解
的概率
很高,則它突變?yōu)槠渌獾母怕示捅容^低。因此,生物地理學(xué)優(yōu)化算法將突變過(guò)程中解的變異率設(shè)置為與解的概率成反比:式中,表示變異率,為人為設(shè)定的超參數(shù)。注意:生物地理學(xué)優(yōu)化算法中的變異操作能夠增加種群的多樣性。若沒(méi)有變異過(guò)程,高概率的解將在種群中占據(jù)主導(dǎo)地位。一方面,變異過(guò)程讓適應(yīng)度較高的解發(fā)生變異,從而避免其持續(xù)占據(jù)主導(dǎo)而導(dǎo)致早熟收斂;另一方面,適應(yīng)度較低的解發(fā)生變異能夠使其有機(jī)會(huì)提高適應(yīng)度,產(chǎn)生效果更好的解。973.3算法流程算法流程結(jié)合遷移與變異操作,生物地理學(xué)優(yōu)化算法核心步驟如下:步驟1:隨機(jī)生成待求解問(wèn)題的一組解,構(gòu)成初始種群。步驟2:計(jì)算種群中各個(gè)解的適應(yīng)度指標(biāo)。步驟3:計(jì)算解的遷入率、遷出率,基于遷入率與遷出率,執(zhí)行遷移操作。步驟4:計(jì)算變異率,基于變異率,執(zhí)行變異操作。步驟5:更新當(dāng)前已找到的最優(yōu)解
,若
不在當(dāng)前種群中,則將其加入種群。步驟6:計(jì)算種群中各個(gè)解的適應(yīng)度指標(biāo)。步驟7:若不滿足終止條件,轉(zhuǎn)步驟3;若滿足終止條件,算法結(jié)束,返回最優(yōu)解
。983.3算法流程算法流程圖生物地理學(xué)優(yōu)化算法流程993.4算法改進(jìn)算法改進(jìn)學(xué)者們?cè)谏锏乩韺W(xué)優(yōu)化算法中進(jìn)一步融入了精英策略,即通過(guò)遷移操作直接生成新的解,并將較優(yōu)的一個(gè)解保留在種群中,而非僅對(duì)現(xiàn)有解進(jìn)行修改。具體地,棲息地遷入率和遷出率的公式變?yōu)槿缦滦问剑菏街校c分別表示當(dāng)前種群中適應(yīng)度的最大值和最小值。在實(shí)際運(yùn)用生物地理學(xué)優(yōu)化算法進(jìn)行求解時(shí),建議的參數(shù)設(shè)置如下:種群大小N=50,最大遷移率,最大變異率.1003.4算法改進(jìn)算法改進(jìn)全局遷移的局限性:生物地理學(xué)優(yōu)化算法是一種基于全局拓?fù)浣Y(jié)構(gòu)的優(yōu)化算法,它假定任意兩個(gè)棲息地之間均可能存在物種的遷移。然而,這一假設(shè)容易讓算法陷入局部最優(yōu),從而影響求解效果。改進(jìn)思路:引入局部拓?fù)浣Y(jié)構(gòu)來(lái)改進(jìn)生物地理學(xué)優(yōu)化算法。下圖給出了全局拓?fù)浣Y(jié)構(gòu)與局部拓?fù)浣Y(jié)構(gòu)的差異:將每個(gè)棲息地視為一個(gè)節(jié)點(diǎn),潛在的遷移路線視為邊,全局拓?fù)浣Y(jié)構(gòu)中的目標(biāo)棲息地能夠收到來(lái)自其它所有棲息地的信息,而局部拓?fù)浣Y(jié)構(gòu)中的目標(biāo)棲息地僅能收到其相鄰棲息地的信息。1013.4算法改進(jìn)生態(tài)地理學(xué)優(yōu)化算法基本思想:物種的遷移不僅取決于棲息地內(nèi)部物種的多樣性,還取決于外部的生態(tài)阻隔。遷移的成功與否不僅取決于遷入物種,還取決于棲息地原有生態(tài)系統(tǒng)對(duì)遷入物種的阻抗。生態(tài)地理學(xué)優(yōu)化算法定義了兩種不同的遷移方式:局部遷移和全局遷移,相鄰棲息地之間的遷移路徑稱(chēng)為廊道,不相鄰棲息地之間的遷移路徑則被視為濾道或險(xiǎn)道。生態(tài)系統(tǒng)廊道代表平原等極易遷移的路線,遷移過(guò)程暢通,幾乎不會(huì)受到阻隔物種相似性極高濾道代表山川等有一定難度的遷移路線,有一部分生物能夠通過(guò)并完成遷移物種相似性中等險(xiǎn)道代表海峽等極難的遷移路線,僅有極少的生物才能順利通過(guò)物種相似性極低1023.4算法改進(jìn)局部遷移局部遷移僅發(fā)生在相鄰的棲息地之間,其過(guò)程如下:令
為遷入的棲息地,對(duì)于第
維,在的鄰居中按遷出率選擇一個(gè)遷出棲息地,其中,代表鄰居棲息地的索引。則遷移過(guò)程表示如下:式中,為進(jìn)化動(dòng)力系數(shù),描述了兩個(gè)棲息地之間的生態(tài)差異,可以用它來(lái)代表兩個(gè)棲息地之間的物種競(jìng)爭(zhēng)。和越大,鄰居棲息地對(duì)目標(biāo)棲息地影響越大。時(shí),遷移對(duì)物種更新無(wú)影響;時(shí),此時(shí)不考慮生態(tài)差異的局部遷移操作。1033.4算法改進(jìn)全局遷移全局遷移同時(shí)發(fā)生在相鄰和不相鄰的棲息地之間,其過(guò)程如下:令為遷入的棲息地,對(duì)于第
維,全局遷移需要在的鄰居中選擇一個(gè)遷出棲息地,在不相鄰的棲息地中選擇一個(gè)遷出棲息地,其中,表示不相鄰棲息地的索引,則遷移過(guò)程表示如下:式中,
為適應(yīng)度函數(shù),表示不成熟度。全局遷移依賴于兩個(gè)棲息地的協(xié)作,從中選擇一個(gè)棲息地作為主要遷入棲息地,剩余的為次要遷入棲息地,選擇的準(zhǔn)則為棲息地的適應(yīng)度值。主要棲息地在遷移過(guò)程中占據(jù)主導(dǎo),次要棲息地要與原棲息地之間進(jìn)行物種競(jìng)爭(zhēng)。1043.4算法改進(jìn)算法流程選擇局部遷移還是全局遷移是通過(guò)不成熟度來(lái)進(jìn)行控制,結(jié)合局部與全局遷移策略,生態(tài)地理學(xué)優(yōu)化算法的主要步驟如下:步驟1:隨機(jī)生成問(wèn)題的初始解,計(jì)算其適應(yīng)度,初始化不成熟度;步驟2:計(jì)算每個(gè)解的遷入率和遷出率;步驟3:對(duì)于單個(gè)解,執(zhí)行如下操作:
步驟3.1:復(fù)制,記為;
步驟3.2:對(duì)的單一維度,執(zhí)行如下操作:
步驟3.2.1:生成一個(gè)隨機(jī)數(shù),若,按遷出率選擇相鄰棲息地
步驟3.2.2:生成一個(gè)隨機(jī)數(shù),若,執(zhí)行局部遷移操作;
步驟3.2.3:否則,按遷出率選擇不相鄰的棲息地,執(zhí)行全局遷移操作;
步驟3.3:計(jì)算遷移后的適應(yīng)度,比較與的適應(yīng)度值,將較優(yōu)的保留在種群中;步驟4:更新值;步驟5:如果滿足終止條件,算法結(jié)束,返回當(dāng)前最優(yōu)解;否則,轉(zhuǎn)步驟2。1053.5前沿進(jìn)展組合優(yōu)化問(wèn)題求解HandlingMultipleObjectiveswithBiogeography-BasedOptimization提出了一種將量子計(jì)算與生物地理學(xué)優(yōu)化算法(BBO)相結(jié)合的方法,應(yīng)用于求解經(jīng)典的組合優(yōu)化問(wèn)題——背包問(wèn)題。該方法通過(guò)引入多個(gè)量子概率模型,以量子態(tài)的方式描述解的狀態(tài)空間,并利用生物地理學(xué)優(yōu)化算法中的遷移和變異機(jī)制來(lái)動(dòng)態(tài)更新量子概率模型。遷移操作用于在量子態(tài)之間傳遞解的優(yōu)良特性,而變異操作則通過(guò)隨機(jī)擾動(dòng)提升解的多樣性,避免陷入局部最優(yōu)。量子概率模型的更新基于解的適應(yīng)度函數(shù),優(yōu)化過(guò)程中通過(guò)調(diào)整量子比特的概率幅度逐步收斂到最優(yōu)解。該算法能夠更高效地探索搜索空間,并通過(guò)量子疊加態(tài)和量子干涉的特性,在多解并行搜索上展現(xiàn)出獨(dú)特的優(yōu)勢(shì)。該方法較于傳統(tǒng)算法表現(xiàn)出更強(qiáng)的優(yōu)化能力和全局搜索性能。1063.5前沿進(jìn)展多目標(biāo)優(yōu)化問(wèn)題求解2022年,Multi-populationbiogeography-basedoptimizationalgorithmanditsapplicationtoimagesegmentation提出了一種改進(jìn)的多種群生物地理學(xué)優(yōu)化算法(MPBBO)。通過(guò)將種群按黃金分割法劃分為高層、中層和低層子群,每個(gè)子群采用不同的優(yōu)化策略來(lái)提升算法性能。高層子群使用正弦縮放差分變異操作,以增強(qiáng)全局搜索能力并降低計(jì)算成本;中層子群通過(guò)水平交叉、垂直交叉和啟發(fā)式動(dòng)態(tài)微調(diào)交叉等多重交叉操作,提升局部開(kāi)發(fā)能力和種群多樣性;低層子群則使用最優(yōu)個(gè)體引導(dǎo)策略,通過(guò)最佳和次佳個(gè)體指導(dǎo)最差個(gè)體,避免陷入局部最優(yōu)陷阱,各子群之間通過(guò)信息共享機(jī)制實(shí)現(xiàn)協(xié)同優(yōu)化。MPBBO在多個(gè)復(fù)雜優(yōu)化問(wèn)題和圖像分割任務(wù)中均表現(xiàn)出顯著的優(yōu)越性,具有更好的全局搜索能力、收斂速度和解的質(zhì)量。107本章小結(jié)本章小結(jié)遺傳算法編碼過(guò)程是遺傳算法的基礎(chǔ),它決定了問(wèn)題解的表示方式,也會(huì)影響遺傳操作。常見(jiàn)的編碼方式包括二進(jìn)制編碼與浮點(diǎn)數(shù)編碼,編碼方式的選擇取決于問(wèn)題的形式和實(shí)際需求;遺傳操作的實(shí)現(xiàn)依賴于選擇、交叉、變異這三個(gè)核心算子。選擇算子用于從種群中選擇適應(yīng)度高的個(gè)體,直接復(fù)制到新種群,該過(guò)程主要基于適應(yīng)度值來(lái)實(shí)現(xiàn)。交叉與變異算子用于產(chǎn)生新的個(gè)體,交叉過(guò)程通過(guò)交換兩個(gè)個(gè)體的部分基因來(lái)產(chǎn)生新個(gè)體,而變異算子可直接修改個(gè)體特定位置的基因來(lái)產(chǎn)生新個(gè)體;遺傳算法
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 美術(shù)小陸龜課件
- 理清學(xué)習(xí)水平特征與態(tài)度圖書(shū)管理員考試試題及答案
- 解讀2025年公共營(yíng)養(yǎng)師考試時(shí)尚飲食趨勢(shì)試題及答案
- 解決衛(wèi)生管理考試疑難的試題及答案
- 蔬菜采購(gòu)面試題及答案
- 重型車(chē)輛考試題及答案
- 路人測(cè)試面試題及答案
- 銷(xiāo)售技巧考試試題及答案
- 評(píng)估稅務(wù)風(fēng)險(xiǎn)的有效工具試題及答案
- 激光設(shè)備產(chǎn)品評(píng)測(cè)試題及答案
- 2025屆上海市浦東新區(qū)高三二模英語(yǔ)試卷(含答案)
- 開(kāi)曼群島公司法2024版中文譯本(含2024年修訂主要內(nèi)容)
- 【MOOC】航空燃?xì)鉁u輪發(fā)動(dòng)機(jī)結(jié)構(gòu)設(shè)計(jì)-北京航空航天大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- DB42T1915-2022三峽庫(kù)區(qū)園地面源污染防控技術(shù)指南-(高清最新)
- 貴州2016定額章節(jié)說(shuō)明-土建
- 結(jié)婚登記申請(qǐng)表
- 深基坑邊坡噴錨防護(hù)施工方案
- 動(dòng)火安全作業(yè)票填寫(xiě)模板2022年更新
- 2021年12月英語(yǔ)六級(jí)聽(tīng)力試題、原文及答案 兩套
- 煤礦井下絞車(chē)房管理制度
- 捷達(dá)離合器設(shè)計(jì)畢業(yè)設(shè)計(jì))
評(píng)論
0/150
提交評(píng)論