【优化求解】基于多策略黑猩猩优化算法求解单目标优化问题附matlab代码
1 簡介
針對黑猩猩優化算法(Chimp optimization algorithm, ChOA)存在收斂速度慢,精度低和易陷入局部最優值的問題, 提出一種融合多策略的黃金正弦黑猩猩優化算法(IChOA). 引入Halton序列初始化種群, 提高初始化種群的多樣性, 加快算法收斂, 提高收斂精度; 考慮到收斂因子和權重因子對于平衡算法勘探和開發能力的重要作用, 引入改進的非線性收斂因子和自適應權重因子, 平衡算法的搜索能力; 結合黃金正弦算法相關思想更新個體位置, 提高算法對于局部極值的處理能力. 通過對23個基準測試函數的尋優對比分析和Wilcoxon秩和統計檢驗以及部分CEC2014測試函數尋優結果對比可知, 改進的算法具有更好的魯棒性, 最后, 通過2個實際工程優化問題的實驗對比分析, 進一步驗證了IChOA在處理現實優化問題上的優越性.?
2 部分代碼
%? CGPLOT AGPSO3
Max_iteration=500;
?l=1:Max_iteration;?
? ? ? ?
? %Group 1
? ? C1G1=2.5+2*(l/Max_iteration).^2-2*(2*l/Max_iteration);
%? ? ?C2G1=3-c1;
? ??
? ? %Group 2
? ? C1G2=0.5+2*exp(-(4*l/Max_iteration).^2);
%? ? ?C2G2=2.2-2*exp(-(4*l/Max_iteration).^2);?
? ??
? ? %Group 3
? ? C1G3=(-2*(l.^3)/(Max_iteration.^3))+2.5;
%? ? ?C2G3=(2*(l.^3)/(Max_iteration.^3))+0.5;
? ??
? ? %Group 4
? ? C1G4=2.5-(2*log(l)/log(Max_iteration));
%? ? ?C2G4=(2*log(l)/log(Max_iteration))+0.5;
%? ? ?PLOT GROUP1
? hold on
plot(C1G1,'--m','Linewidth',3);
hold on
plot(C1G2,'-.k','Linewidth',3);
hold on
plot(C1G3,'g','Linewidth',3);
hold on
plot(C1G4,':b','Linewidth',3)
title('f (ChOA2)','FontName','Times New Roman','FontSize',16,'FontWeight','bold');
xlabel('Iteration','FontName','Times New Roman','FontSize',16,'FontWeight','bold');
ylabel('Amplitude','FontName','Times New Roman','FontSize',16,'FontWeight','bold');
legend('Attacker','Barrier','Driver','Chaser');
axis tight
box on
3 仿真結果
4 參考文獻
[1]黃倩,劉升,李萌萌,郭雨鑫.多策略黑猩猩優化算法研究及其工程應用[J/OL].計算機工程與應用:1-12[2021-10-25]
博主簡介:擅長智能優化算法、神經網絡預測、信號處理、元胞自動機、圖像處理、路徑規劃、無人機等多種領域的Matlab仿真,相關matlab代碼問題可私信交流。
部分理論引用網絡文獻,若有侵權聯系博主刪除。
總結
以上是生活随笔為你收集整理的【优化求解】基于多策略黑猩猩优化算法求解单目标优化问题附matlab代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Connection reset by
- 下一篇: Java List<Long>转Lis