差分進化演算法

來源:互聯網
上載者:User

標籤:縮放   導致   能力   簡化   tor   濾波   技術   .so   相對   

---恢複內容開始---

前言

       差分進化演算法(Differential Evolution,DE)由Storn和Price於1995年首次提出。主要用於求解實數最佳化問題。該演算法是一類基於群體的自適應全域最佳化演算法,屬於演化演算法的一種,由於其具有結構簡單、容易實現、收斂快速、魯棒性強等特點,因而被廣泛應用在資料採礦、模式識別、數字濾波器設計、人工神經網路、電磁學等各個領域。1996年在日本名古屋舉行的第一屆國際演化計算(ICEO)競賽中,差分進化演算法被證明是速度最快的進化演算法。

  和遺傳演算法一樣,差分進化演算法也是一種基於現代智能理論的最佳化演算法,通過群體內個體之間的相互合作與競爭產生的群體智能來指導最佳化搜尋的方向。該演算法的基本思想是:從一個隨機產生的初始種群開始,通過把種群中任意兩個個體的向量差與第三個個體求和來產生新個體,然後將新個體與當代種群中相應的個體相比較,如果新個體的適應度優於當前個體的適應度,則在下一代中就用新個體取代舊個體,否則仍儲存舊個體。通過不斷地進化,保留優良個體,淘汰劣質個體,引導搜尋向最優解逼近。

基本原理

  DE演算法通過採用浮點向量進行編碼產生種群個體。在DE演算法尋優的過程中,首先,從父代個體間選擇兩個個體進行向量做差產生差分向量;其次,選擇另外一個個體與差分向量求和產生實驗個體;然後,對父代個體與相應的實驗個體進行交叉操作,產生新的子代個體;最後在父代個體和子代個體之間進行選擇操作,將符合要求的個體儲存到下一代群體中去。

 

演算法步驟:

1 初始化:

2 變異

3 交叉

4 選擇

測試函數:

 Rastrigr函數

參數選擇:

演算法虛擬碼:

控制參數

  DE演算法主要的控制參數包括:種群規模(NP)、縮放因子(F)和交叉機率(CR)。

  NP主要反映演算法中種群資訊量的大小,NP值越大種群資訊包含的越豐富,但是帶來的後果就是計算量變大,不利於求解。反之,使種群多樣性受到限制,不利於演算法求得全域最優解,甚至會導致搜尋停滯。

  CR主要反映的是在交叉的過程中,子代與父代、中間變異體之間交換資訊量的大小程度。CR的值越大,資訊量交換的程度越大。反之,如果CR的值偏小,將會使種群的多樣性快速減小,不利於全域尋優。

  相對於CR,F對演算法效能的影響更大,F主要影響演算法的全域尋優能力。F越小,演算法對局部的搜尋能力更好,F越大演算法越能跳出局部極小點,但是收斂速度會變慢。此外,F還影響種群的多樣性。

簡化進化流程

其具體進化流程如下:

(1)確定差分進化演算法控制參數,確定適應度函數。差分進化演算法控制參數包括:種群大小NP、縮放因子F與雜交機率CR。

(2)隨機產生初始種群。

(3)對初始種群進行評價,即計算初始種群中每個個體的適應度值。

(4)判斷是否達到終止條件或進化代數達到最大。若是,則終止進化,將得到最佳個體作為最優解輸出;若否,繼續。

(5)進行變異和交叉操作,得到中間種群。

(6)在原種群和中間種群中選擇個體,得到新一代種群。

(7)進化代數g=g+1,轉步驟(4).

---恢複內容結束---

差分進化演算法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.