本站小編為你精心準備了復數編碼的布谷鳥搜索參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
《計算機與數字工程雜志》2014年第七期
1PCS
1.1初始化鳥巢在生物界中,復雜生物組織的染色體一般采用雙鏈或多鏈結構。對于雙倍體來說,父母體各提供一條染色體組成子體的染色體對。由于復數編碼的二維特性[4],本文很自然地應用它來表示(一種基于復數編碼的遺傳算法)雙倍體[5]。具體說來,可利用一個復數來描述染色體對中的一對等位基因。復數的實部和虛部分別稱為實基因與虛基因。對于一個有m個自變量的問題來說,設有m個復數,即Zk=Xk+iYk,k=1,2,…,m。鳥巢的基因可以表示為雙倍體結構并記錄為(Xk,Yk)。其中Xk、Yk分別表示該復數的實部和虛部。因此,第i個鳥巢可以表示為如圖1所示。
1.2鳥巢更新方法•復數模的更新公式如下:
1.3適應度計算為了求解適應度函數[8],復數鳥巢必須轉換成一個實數,以復數的模作為實數的大小,其符號由幅角決定。具體做法如下所示:
1.4PCS的基本步驟基于上面的分析,基于復數編碼的布谷鳥搜索算法(PCS)的基本步驟可以用下面的算法語言來描述。
2仿真實驗
2.1實驗設計在本節中,筆者通過將PCS廣泛應用與研究大量的基準優化問題來測試其性能。實驗仿真環境為:操作系統Windows7,處理器主頻Intel賽揚G4601.8GHz,內存4G,采用Matlab7.0實現算法編程。由于在復數編碼中鳥巢位置的更新有兩種更新計算方法。當這兩種類型的編碼具有相同的巢規模時,復數編碼的計算復雜度為約的實數編碼兩倍。要比較這兩種計算方法的性能,復數編碼巢規模的大小應該是實數編碼的一半。因此本實驗中,復數編碼巢的大小為20,實數編碼巢的大小為40,最大迭代次數為200次,Pa=0.25。
2.2實驗結果及分析筆者通過6個不同的功能測試,以驗證PCS是可行和高效的。采用PCS進行20余次模擬運行,得到表1所示的測試結果。從該表中可以發現,復數編碼方法比實數編碼方法可以達到更好的適應度。Rosenbrock函數無論是最優值或平均值,PCS的精度比CS分別提高了102和103;而Sphere函數,PCS的最優值達到理論值,其平均值也比CS提高了103;至于Rastrigin和Ackley函數,PCS的最優值和平均值都有所提高,但并不明顯;Easom函數的最優值達到理論值,但CS沒有;Griewank函數的最優值也可達到理論值。上述實驗結果表明,同CS相比,PCS具有較好的收斂速度和收斂精度。PCS的平均適應度的變化幅度也遠遠大于CS的,尤其是在早期演化,平均適應度的變化越大,個體越分散,不會集中在一個或幾個局部點。在迭代過程中,這些點有一種接近到一個更好的位置的趨勢,但這很容易使種群陷入局部收斂。因此,保持種群的多樣性是非常重要的。
3結語
本文針對布谷鳥搜索算法后期收斂速度慢、計算精度不高等不足,提出了一種基于復數編碼的布谷鳥搜索算法,目的是為了加快布谷鳥搜索算法的搜索速度,提高其計算精度。最后,通過6個標準測試函數測試,測試結果表明,改進后的復數編碼的布谷鳥搜索算法具有較快的收斂速度和較高的收斂精度。
作者:石義良單位:武漢科技大學城市學院信息工程學部