天天看點

多目标優化算法|用于全局和工程設計優化的多目标原子軌道搜尋 (MOAOS)算法(Matlab代碼實作)

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

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

                                    🎉🎉歡迎您的到來🎉🎉

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

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

【現在公衆号名字改為:荔枝科研社】

快速查找電氣代碼的方法(以微電網排程和電力系統潮流計算為例):

👨‍🎓部落客課外興趣:中西方哲學,送予讀者:

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

目錄

​​1 概述​​

​​2 數學模型​​

​​3 運作結果 ​​

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

​​5 寫在最後 ​​

1 概述

人腦的主要能力之一是識别“最佳”選擇并相應地實作它。然而,我們也意識到,在許多情況下,找出導緻問題最佳解決方案的所有條件是極其困難或不可能的。是以,在許多情況下,可以實際有效地使用“足夠令人滿意”的解決方案,而不是解決問題的“全局最優”解決方案。優化旨在提高系統的整體性能,以達到達到系統最佳行為的一個(或多個)點。

在現實世界中,許多優化問題具有如此程度的不确定性和複雜性,以至于單個目标函數不能代表所考慮系統的所有特征。是以,需要多目标優化算法來考慮問題的多個方面,由多個目标函數表示,以通過優化過程獲得合理和有用的結果。在本文中,介紹了最近開發的單目标元啟發式算法的多目标版本,稱為原子軌道搜尋(AOS),稱為多目标原子軌道搜尋(MOAOS)。為此,修改了 AOS 算法的一般方面和主搜尋循環,使其能夠處理多目标問題。對于該算法的性能評估,使用了數學基準問題 ZDT 和 DTLZ,以及幾個現實世界的工程設計問題和 CEC-2020 MMO 測試問題。根據本研究中獲得的結果,可以得出結論,在與替代的最先進的元啟發式方法競争時,MOAOS 能夠産生更好或接近可比的結果

本文的結構如下。第二節介紹了所提出的多目标 AOS 優化算法 (MOAOS) 的數學模型。 

第三部分描述了研究的結果和讨論,包括性能名額、實驗設定、ZDT 和 DTLZ 測試功能的讨論,以及一組不同的工程設計問題,包括四杆桁架、焊接梁、盤式制動器、和減速器設計問題,以及 CEC-2020 MMO 測試問題 [53]。最後,第四節總結全文。

2 數學模型

計算每個候選解的目标函數值,它表示原子核周圍電子的能級,如下所示:

多目标優化算法|用于全局和工程設計優化的多目标原子軌道搜尋 (MOAOS)算法(Matlab代碼實作)

對于原子核周圍的每個假想層,以及原子,結合态和結合能計算如下(結合能是從其殼層移除電子所需的能量,即它的結合态)

多目标優化算法|用于全局和工程設計優化的多目标原子軌道搜尋 (MOAOS)算法(Matlab代碼實作)
多目标優化算法|用于全局和工程設計優化的多目标原子軌道搜尋 (MOAOS)算法(Matlab代碼實作)

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

3 運作結果 

多目标優化算法|用于全局和工程設計優化的多目标原子軌道搜尋 (MOAOS)算法(Matlab代碼實作)
多目标優化算法|用于全局和工程設計優化的多目标原子軌道搜尋 (MOAOS)算法(Matlab代碼實作)

4 Matlab代碼及文章詳細閱讀 

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

多目标優化算法|用于全局和工程設計優化的多目标原子軌道搜尋 (MOAOS)算法(Matlab代碼實作)
if obj_no==2
            plot(Archive_F1(:,1),Archive_F1(:,2),'Color','g','LineWidth',4);
            hold on
            plot(Archive_F(:,1),Archive_F(:,2),'ro','LineWidth',1,...
                'MarkerEdgeColor','b',...
                'MarkerFaceColor','r',...
                'Marker','o',...
                'MarkerSize',10);
            legend('True PF','Obtained PF');
            title(sprintf('用于全局和工程設計優化的多目标原子軌道搜尋 (MOAOS)算法',j));
            xlabel('目标函數1');
            ylabel('目标函數2');

            hold off
        end
        if obj_no==3
            plot3(Archive_F1(:,1),Archive_F1(:,2),Archive_F1(:,3),'Color','g','LineWidth',1);
            hold on
            plot3(Archive_F(:,1),Archive_F(:,2),Archive_F(:,3),'ro','LineWidth',1,...
                'MarkerEdgeColor','b',...
                'MarkerFaceColor','r',...
                'Marker','o',...
                'MarkerSize',10);
            legend('True PF','Obtained PF');
            title(sprintf('用于全局和工程設計優化的多目标原子軌道搜尋 (MOAOS)算法',j));
            xlabel('目标函數1');
            ylabel('目标函數12');
            zlabel('目标函數13');

            hold off
        end


        savefig(sprintf('P%d/fig_%d.fig',j,i));

    end




    save(sprintf('P%d/result_P%d.mat',j,j));

end      

5 寫在最後 

繼續閱讀