日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

遗传算法 差分进化算法 粒子群优化算法区别

發布時間:2025/3/15 编程问答 9 豆豆
生活随笔 收集整理的這篇文章主要介紹了 遗传算法 差分进化算法 粒子群优化算法区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一 遺傳算法

?遺傳算法(GA)作為一種經典的進化算法,自 Holland提出之后在國際上已經形成了一個比較活躍的研究領域. 人們對 GA 進行了大量的研究,提出了各種改進算法用于提高算法的收斂速度和精確性. 遺傳算法采用選擇,交叉,變異操作,在問題空間搜索最優解.經典遺傳算法首先對參數進行編碼,生成一定數目的個體,形成初始種群其中每個個體可以是一維或多維矢量,以二進制數串表示,稱為染色體.染色體的每一位二進制數稱為基因.根據自然界生物優勝劣汰的選擇思想,算法中設計適應度函數作為評判每個個體性能優劣的標準,性能好的個體以一定概率被選擇出來作為父代個體參加以后的遺傳操作以生成新一代種群.算法中基本的遺傳算子為染色體選擇,染色體上基因雜交和基因變異.生成新一代種群后算法循環進行適應度評價、遺傳操作等步驟,逐代優化,直至滿足結束條件.

標準遺傳算法的流程如下:

? ? ? ? Stepl:初始化群體.

? ? ? ? Step2:計算群體上每個個體的適應度值.

? ? ? ? Step3:按由個體適應度值所決定的某個規則選擇將進入下一代的個體.

? ? ? ? Step4:按概率cp 進行雜交操作.

? ? ? ? Step5:按概率mp 進行變異操作.

? ? ? ? Step6:若滿足某種停止條件,則執行 Step7,否則執行 Step2.

? ? ? ? Step7:輸出種群中適應度值最優的染色體作為問題的滿意解.

? ? ? ?

? ? ? 一般情況下,算法的終止條件包括:1、完成了預先給定的進化代數;2、種群中的最優個體在連續若干代沒有改進或平均適應度在連續若干代基本沒有改進;3、所求問題最優值小于給定的閾值.

?

? ? ? ? 粒子群(PSO)算法是近幾年來最為流行的進化算法,最早是由Kenned和Eberhart于1995年提出.PSO 算法和其他進化算法類似,也采用“群體”和“進化”的概念,通過個體間的協作與競爭,實現復雜空間中最優解的搜索.PSO 先生成初始種群,即在可行解空間中隨機初始化一群粒子,每個粒子都為優化問題的一個可行解,并由目標函數為之確定一個適應值(fitness value).PSO 不像其他進化算法那樣對于個體使用進化算子,而是將每個個體看作是在n 維搜索空間中的一個沒有體積和重量的粒子,每個粒子將在解空間中運動,并由一個速度決定其方向和距離.通常粒子將追隨當前的最優粒子而運動,并經逐代搜索最后得到最優解.在每一代中,粒子將跟蹤兩個極值,一為粒子本身迄今找到的最優解 pbest ,另一為全種群迄今找到的最優解 gbest.由于認識到 PSO 在函數優化等領域所蘊含的廣闊的應用前景,在 Kenned 和 Eberhart 之后很多學者都進行了這方面的研究.目前已提出了多種 PSO改進算法,并廣泛應用到許多領域.

?

二、差分進化算法

? ? ? ? 差分進化算法在 1997 年日本召開的第一屆國際進化優化計算競賽(ICEO)]表現突出,已成為進化算法(EA)的一個重要分支,很多學者開始研究 DE 算法,并取得了大量成果.2006年 CEC 國際會議將其作為專題討論,由此可見 DE 算法已成為學者的研究熱點,具有很大的發展空間.

?

DE算法的基本原理:

? ? ? ? DE 算法主要用于求解連續變量的全局優化問題,其主要工作步驟與其他進化算法基本一致,主要包括變異(Mutation)、交叉(Crossover)、選擇(Selection)三種操作。算法的基本思想是從某一隨機產生的初始群體開始,利用從種群中隨機選取的兩個個體的差向量作為第三個個體的隨機變化源,將差向量加權后按照一定的規則與第三個個體求和而產生變異個體,該操作稱為變異。然后,變異個體與某個預先決定的目標個體進行參數混合,生成試驗個體,這一過程稱之為交叉。如果試驗個體的適應度值優于目標個體的適應度值,則在下一代中試驗個體取代目標個體,否則目標個體仍保存下來,該操作稱為選擇。在每一代的進化過程中,每一個體矢量作為目標個體一次,算法通過不斷地迭代計算,保留優良個體,淘汰劣質個體,引導搜索過程向全局最優解逼近。

DE算法的求解步驟:

(1)基本參數的設置,包括NP, F, CR
(2)初始化種群
(3)計算種群適應度值
(4)終止條件不滿足時,進行循環,依次執行變異、交叉、選擇運算,直到終止運算。

?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖2.1給出了算法的具體流程:

?

?

控制參數對一個全局優化算法的影響是很大的,DE的控制變量選擇也有一些經驗規則.

(1)種群數量.根據經驗,種群數量 NP 的合理選擇在5 D ? 10D之間,必須滿足 NP ≥4以確保DE具有足夠的不同的變異向量.

(2)變異算子.變異算子 F ∈ [0,2]是一個實常數因數,它決定偏差向量的放大比例.迄今為止的研究表明,小于0.4和大于1的 F 值僅偶爾有效, F = 0.5通常是一個較好的初始選擇.若種群過早收斂,那么 F 或 NP 應該增加.

(3)交叉算子.交叉算子CR 是一個范圍在[0,1]的實數,它是控制一個試驗向量來自隨機選擇的變異向量而不是原來向量的概率的參數.CR 的一個較好的選擇是0.1,但較大的CR 通常加速收斂,為了看是否可能獲得一個快速解,可以首先嘗試 CR = 0.9或 CR = 1.0.

(4)最大進化代數.它表示DE算法運行到指定的進化代數之后就停止運行,并將當前群體中的最佳個體作為所求問題的最優解輸出.一般取值范圍為100-200,當然根據問題的需要,可以增大最大進化代數以提高算法的求解精度,不過這樣往往使得算法的運行時間過長.

(5)終止條件.除最大進化代數可作為DE的終止條件,還需要其它判定準則.一般當適應度值小于閥值時程序終止,閥值常選為610 .

上述參數中,F ,CR 與 NP 一樣,在搜索過程中是常數,一般 F 和CR 影響搜索過程的收斂速度和魯棒性,它們的優化值不僅依賴于目標函數的特性,還與 NP 有關.通常可通過在對不同值做一些試驗之后利用試驗和結果誤差找到 F ,CR 和 NP 合適值。

?

參數設置:

? ? ? ? 種群規模NP:多樣性,NP大,增加搜索到最優解的概率,但是計算量加大。

? ? ? ? 縮放因子F:對基向量擾動程度,F大,擾動大,能夠在更大范圍尋找解。0.4~1

? ? ? ? 交叉概率CR:種群多樣性,CR大,更多個體改變,利于尋找最優解。0.6~1

區別

? ? ? ? 不同之處在于遺傳算法是根據適應度值來控制父代雜交,變異后產生的子代被選擇的概率值,在最大化問題中適應值大的個體被選擇的概率相應也會大一些。而差分進化算法變異向量是由父代差分向量生成,并與父代個體向量交叉生成新個體向量,直接與其父代個體進行選擇。顯然差分進化算法相對遺傳算法的逼近效果更加顯著。

遺傳算法,粒子群算法,差分進化算法都屬于進化算法的分枝,很多學者對這些算法進行了研究,通過不斷的改進,提高了算法的性能,擴大了應用領域因此很有必要討論這些算法的特點,針對不同應用領域和算法的適應能力,推薦不同的算法供使用將是十分有意義的工作.在文獻中,作者針對廣泛使用的 34 個基準函數分別對 DE,EA,PSO 進行了系列實驗分析,對各種算法求解最優解問題進行了討論.通過實驗分析,DE 算法獲得了最優性能,而且算法比較穩定,反復運算都能收斂到同一個解;PSO 算法收斂速度次之,但是算法不穩定,最終收斂結果容易受參數大小和初始種群的影響;EA 算法收斂速度相對比較慢,但在處理噪聲問題方面,EA 能夠很好的解決而 DE 算法很難處理這種噪聲問題.

?

通過實驗和文獻分析,我們對遺傳算法、粒子群算法、差分進化算法的一些指標分別進行分析現歸納如下:

(1)編碼標準?? ? GA 采用二進制編碼,PSO、DE 都采用浮點實數編碼,近年來許多學者通過整數編碼將GA 算法、PSO 算法應用與求解離散型問題,特別是 0-1 非線性優化為題,整數規劃問題、混合整數規劃問題,而離散的 DE 算法則研究的比較少,而采用混合編碼技術的 DE 算法則研究更少.

(2)參數設置問題?? ?DE 算法主要有三個參數(種群大小NP、縮放因子F、交叉概率CR)要調整,而且參數設置對結果影響不太明顯,因此更容易使用.相對于 GA 和 PSO 算法的參數過多,不同的參數設置對最終結果影響也比較大,因此在實際使用中,要不斷調整,加大了算法的使用難度.高維問題在實際問題中,由于轉化為個體的向量維數非常高,因此算法對高維問題的處理,將是很重要的.只有很好的處理高維問題,算法才能很好的應用于實際問題.

(3)高維問題?? ??GA 對高維問題收斂速度很慢甚至很難收斂,但是 PSO 和 DE 則能很好解決.尤其是DE 算法,收斂速度很快而且結果很精確.

(4)收斂性能?? ? ?對于優化問題,相對 GA,DE 和 PSO 算法收斂速度比較快,但是 PSO 容易陷入局部最優解,而且算法不穩定.

(5)應用廣泛性?? ? ? 由于 GA 算法發明比較早,因此應用領域比較廣泛,PSO 算法自從發明以來,已成為研究熱點問題,這方面應用也比較多,而 DE 算法近幾年才引起人們的關注而且算法性能好,因此應用領域將會增多.

DE缺點:

1、搜索停滯:種群個體較少,且生成新一代個體的適應值比原種群個體適應值差,導致個體難以更新,沒有收斂到極值點。

2、早熟收斂:參數設置不當,收斂過快,局部最優問題。

總結

以上是生活随笔為你收集整理的遗传算法 差分进化算法 粒子群优化算法区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。