- 智能優化算法與MATLAB編程實踐
- 陳克偉 魏曙光主編
- 372字
- 2024-12-31 17:34:27
1.3.3 主函數設計
設置蜉蝣優化算法的參數如下。
蜉蝣雌性雄性種群數量pop為50,最大迭代次數maxIter為100,蜉蝣個體的維度dim為2,蜉蝣個體上邊界ub =[10,10],蜉蝣個體下邊界lb=[-10,-10]。使用蜉蝣優化算法求解待求解函數極值問題的主函數main.m如下:
%% 蜉蝣優化算法求解x1^2 + x2^2的最小值 clc;clear all;close all; %參數設定 pop = 50;%種群數量 dim = 2;%變量維度 ub = [10,10];%個體上邊界信息 lb = [-10,-10];%個體下邊界信息 maxIter = 100;%最大迭代次數 fobj = @(x) fun(x);%設置適應度函數為fun(x) %蜉蝣優化算法求解問題 [Best_Pos,Best_fitness,IterCurve] = MOA(pop,dim,ub,lb,fobj,maxIter); %繪制迭代曲線 figure plot(IterCurve,'r-','linewidth',1.5); grid on;%網格開 title('蜉蝣優化算法迭代曲線') xlabel('迭代次數') ylabel('適應度') disp(['求解得到的x1,x2為',num2str(Best_Pos(1)),' ',num2str(Best_Pos(2))]); disp(['最優解對應的函數值為:',num2str(Best_fitness)]);
程序運行得到的蜉蝣優化算法迭代曲線如圖1.5所示。
運行結果如下:
求解得到的x1,x2為-3.2187e-05 -0.00030331 最優解對應的函數值為:9.3033e-08

圖1.5 程序運行結果
從蜉蝣優化算法尋優的結果來看,最終的求解值為(-3.2187e-05, -0.00030331),十分接近理論最優值(0,0),表明蜉蝣優化算法具有較好的尋優能力。
推薦閱讀
- 深度學習經典案例解析:基于MATLAB
- HTML5+CSS3網站設計教程
- Windows Forensics Cookbook
- bbPress Complete
- 青少年信息學競賽
- Selenium Testing Tools Cookbook(Second Edition)
- Python機器學習之金融風險管理
- Unity&VR游戲美術設計實戰
- Java Web開發實例大全(基礎卷) (軟件工程師開發大系)
- Vue.js光速入門及企業項目開發實戰
- 創意UI Photoshop玩轉移動UI設計
- Python Digital Forensics Cookbook
- HTML5游戲開發實戰
- Keil Cx51 V7.0單片機高級語言編程與μVision2應用實踐
- HTML5 Canvas核心技術:圖形、動畫與游戲開發