天天看點

多目标優化算法|基于擁擠距離的有效多目标人工蜂鳥算法,用于解決工程設計問題(Matlab代碼實作)

💥💥💥💞💞💞歡迎來到本部落格❤️❤️❤️💥💥💥

🏆部落客優勢:🌞🌞🌞部落格内容盡量做到思維缜密,邏輯清晰,為了友善讀者,部落客專門做了一個專欄目錄,整個專欄隻放了一篇文章,足見我對其重視程度:部落客專欄目錄​。做到極度細緻,友善大家進行學習!親民!!!還有我開了一個專欄給女朋友的,很浪漫的喔,代碼學累的時候去瞧一瞧,看一看:女朋友的浪漫邂逅​。有問題可以私密部落客,部落客看到會在第一時間回複。 📝目前更新:🌟🌟🌟電力系統相關知識,期刊論文,算法,機器學習和人工智能學習。🚀支援:🎁🎁🎁如果覺得部落客的文章還不錯或者您用得到的話,可以關注一下部落客,如果三連收藏支援就更好啦!這就是給予我最大的支援!

                                    🎉🎉歡迎您的到來🎉🎉

                     ⛅⛅⛅ 📃個人首頁:科研室🌈🌈🌈

                    📚📚📚📋所有代碼目錄:電氣工程科研社👨‍💻👨‍💻👨‍💻

【現在公衆号名字改為:荔枝科研社】快速查找電氣代碼的方法(以微電網排程和電力系統潮流計算為例):

📋📋📋本文目錄如下:⛳️⛳️⛳️

目錄

​​1 概述​​

​​2 數學模型 ​​

​​3 運作結果​​

​​4 Matlab代碼及文章詳細閱讀 ​​

​​5 寫在最後​​

1 概述

人工蜂鳥算法 (AHA) 是最近開發的基于生物的元啟發式算法,它在處理單目标優化問題方面表現出卓越的性能。盡管有優點,但該算法隻能解決一個目标的問題。為了解決複雜的多目标優化問題,包括工程設計問題,本研究開發了一種多目标 AHA (MOAHA)。在 MOAHA 中,使用外部存檔來儲存 Pareto 最優解,并開發了基于動态消除的擁擠距離 (DECD) 方法來維護該存檔,以有效保持種群多樣性。此外,将非支配排序政策與MOAHA融合,建構解更新機制,有效細化Pareto最優解,提高算法的收斂性。一套綜合測試證明了在收斂性、多樣性和解決方案分布方面超過 7 個競争對手的 28 個基準功能的優越結果。 MOAHA算法還應用于5個現實世界的多目标工程設計問題,展示了其在處理具有未知真實帕累托最優解和前沿的具有挑戰性的現實世界多目标問題方面的優越性。

在過去的幾十年中,已經逐漸開發了多種優化方法來處理具有挑戰性的優化問題。優化算法基于來自自然界不同方面的各種靈感,包括生物進化、生物體的社會和群體行為、實體或化學現象,以及與人類相關的行為和意識形态。代表性算法包括​​遺傳算法​​​ (GA) ​​[1]​​​、​​粒子群優化​​​ (PSO) ​​[2]​​​、​​蟻群優化​​​ (ACO) ​​[3]​​​、​​人工蜂群​​​ (ABC) ​​[4]​​​ 和​​布谷鳥搜尋​​​ (CS) ​​[5]​​​。最近,還開發了一些備受推崇的新算法,例如​​鲸魚優化算法​​​(WOA)​​[6]​​​,蝴蝶優化算法(BOA)​​[7]​​​,基于教學學習的優化(TLBO)​​[8]​​​,粘液黴菌算法(SMA)​​[9]​​​,salp群算法(SSA)​​[10]​​​,蝠鲼覓食優化(MRFO)​​[11]​​​,平衡優化器(EO)​​[12]​​​等。自出現以來,這些算法在文獻中受到了很多關注。這些新優化器的改進版本是為解決各種工程問題而開發的。針對全局優化問題,提出了一種與蝴蝶和花授粉合并的混合優化器​​[13]​​​;為工程應用提供了結合EO和SMA各自優點的優化器​​[14]​​​,使用改進的MRFO來解決CCG-Ball曲線問題​​[15]​​​,并将與TLBO混合的增強探路者算法(PFA)應用于工程設計​​[16]​​​,​​[17]​​​。上述優化器是單目标優化算法 (SOA)。然而,在科學研究和工程實踐中,多個現實世界的問題往往固有地具有多個目标,這使得它們難以解決。同時有幾個目标需要優化的優化問題稱為多目标優化問題(MOP)​​[18]​​​,​​[19]​​​,​​[20]​​​。需要設計具體的工具來解決這些問題,因為MOP的多個目标經常互相沖突和互相限制。在過去的三十年中,許多多目标優化算法(MOA)已被提出并開發為解決各種工程領域中具有挑戰性的MOP的強大工具​​[21],[22]​​​,​​[23]​​​,​​[24]​​​,​​[25]​​​,​​[26]​​。 顯然,在這些問題上,每個目标的重要性和優先次序是由決策者确定的。根據這些專業知識的可用性,MOA分為三類:先驗,​​後驗​​​和互動式​​[27]​​。

多目标優化算法|基于擁擠距離的有效多目标人工蜂鳥算法,用于解決工程設計問題(Matlab代碼實作)

另一個廣泛使用的MOEA是強度帕累托進化算法(SPEA)​​[45]​​​。SPEA建立了一個檔案種群,以儲存先前獲得的非支配解以供後續選擇,同時采用基于參數的基于帕累托的技術來儲存種群多樣性。SPEA-II是SPEA的改進版本​​[46]​​​。除了增強SPEA的存檔截斷技術外,SPEA-II還與細粒度的适應性配置設定和密度評估政策相結合,改善了解決方案的收斂性和分布​​性[47]​​​。與SPEA和SPEA-II一樣,基于帕累托包絡​​線的選擇算法​​​(PESA)​​[48]​​​及其增強型PESA-II​​[49]​​也是另一組家用MOEA。PESA和PESA-II之間的相似之處在于,使用較小的内部人口和較大的外部人口來強調具有較高多樣性的非主導解決方案,它們之間的差別在于PESA-II采用基于區域而不是基于個體的選擇。SPEA-II使用網格配置設定政策來保持種群多樣性,并且對真正的解決方案具有良好的搜尋能力。

本文結構如下。第 2 節介紹了 MOP 的概念。第 3 節介紹了原始 AHA 及其多目标版本 MOAHA。第 4 節讨論了使用各種測試函數的 MOAHA 的性能。在第 5 節中使用五個工程案例驗證 MOAHA 的有效性及Matlab代碼和文章詳細閱讀。第 6 節提供結論和幾個未來方向。

2 數學模型 

多目标優化算法|基于擁擠距離的有效多目标人工蜂鳥算法,用于解決工程設計問題(Matlab代碼實作)
多目标優化算法|基于擁擠距離的有效多目标人工蜂鳥算法,用于解決工程設計問題(Matlab代碼實作)

遷徙覓食:當蜂鳥的食物在某個地方變得稀缺時,它往往會遷移到遠離目前覓食的地區。在 AHA 中,适應性最差的蜂鳥進行遷徙覓食。同時,定義了遷移系數來控制何時進行遷移覓食。遷移覓食的數學模型如下:

多目标優化算法|基于擁擠距離的有效多目标人工蜂鳥算法,用于解決工程設計問題(Matlab代碼實作)

詳細數學模型及解釋見第4部分。

3 運作結果

多目标優化算法|基于擁擠距離的有效多目标人工蜂鳥算法,用于解決工程設計問題(Matlab代碼實作)
多目标優化算法|基于擁擠距離的有效多目标人工蜂鳥算法,用于解決工程設計問題(Matlab代碼實作)

4 Matlab代碼及文章詳細閱讀 

本文僅展現主函數部分代碼,全部代碼及詳細文章見​

多目标優化算法|基于擁擠距離的有效多目标人工蜂鳥算法,用于解決工程設計問題(Matlab代碼實作)
clc;
clear;
 
MaxIt=300;
nPop=100;
Dim=30;
ArchiveSize=100;

 FunIndex=1;% ZDT1

    [ArchiveFit]=MOAHA(FunIndex,MaxIt,nPop,ArchiveSize);
    
    figure;
    plot(ArchiveFit(1,:),ArchiveFit(2,:),'r.');
    if FunIndex==5
        title(['ZDT',num2str(FunIndex+1)]);
    else
        title(['ZDT',num2str(FunIndex)]);
    end
    xlabel('f1');
    ylabel('f2');
    box on
    legend('PF');
       
👨‍🎓部落客課外興趣:中西方哲學,送予讀者:

5 寫在最後

繼續閱讀