【優(yōu)化求解】基于混沌引力搜索算法求解單目標(biāo)問(wèn)題matlab代碼
【優(yōu)化求解】基于混沌引力搜索算法求解單目標(biāo)問(wèn)題matlab代碼
TT_Matlab
每天分享一點(diǎn)Matlab資料,一起成長(zhǎng)進(jìn)步。需要定制程序添加qq1575304183
1 簡(jiǎn)介
針對(duì)引力搜索算法存在的易早熟收斂、易陷入局部最優(yōu)、搜索精度有待提高等缺陷,提出一種混合方法優(yōu)化的自適應(yīng)引力搜索算法(gravitationalsearchalgorithm,GSA)。首先 利 用 Sobol序列初始化種群,增強(qiáng) 算法全局搜索能力;其次引入 Hamming貼進(jìn)度計(jì)算種群成熟度,判斷種群是否早熟;然后引入 Logistic混沌對(duì)種群作混沌搜索,變異已陷入局部最優(yōu)的粒子位置;最后基于早熟收斂判斷因子改進(jìn)引力系數(shù),并為粒子位置公式添加收縮因子,促使種群加快脫離局部最優(yōu)。對(duì)9個(gè)不同類型的基準(zhǔn)測(cè)試函數(shù)做仿真實(shí)驗(yàn),結(jié)果表明新算法能有效改善種群的早熟問(wèn)題,具備更好的尋優(yōu)性能。
2 部分代碼
%_________________________________________________________________________%
% GSA + chaotic gravitational constant %
clear all
P_no=30;
Max_iteration=500;
Run_no=2;
ElitistCheck=1;
All_Convergence_curves=zeros(2,Max_iteration);
chValue=20;
F_index = 1;
for Algorithm_num=1:11
for i=1:Run_no
if Algorithm_num==1
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==2
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==3
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==4
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==5
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==6
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==7
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==8
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==9
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==10
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
if Algorithm_num==11
cg_curve=GSA(F_index,P_no,Max_iteration,ElitistCheck,Algorithm_num,chValue);
end
temp(i,:)=cg_curve;
end
All_Convergence_curves(Algorithm_num,:)=mean(temp);
end
figure
for k = 1:size(All_Convergence_curves,1)
semilogy(All_Convergence_curves(k,:))
hold on
end
legend(’GSA’, ’CGSA1’, ’CGSA2’, ’CGSA3’, ’CGSA4’, ’CGSA5’, ’CGSA6’, ’CGSA7’, ’CGSA8’, ’CGSA9’, ’CGSA10’)
save resuls
3 仿真結(jié)果
4 參考文獻(xiàn)
[1]龔安, 呂倩, 胡長(zhǎng)軍, 康忠健, & 李華昱. (2015). 基于混沌萬(wàn)有引力搜索算法的svm參數(shù)優(yōu)化及應(yīng)用. 計(jì)算機(jī)科學(xué), 42(4), 4.
微信掃一掃贊賞作者
贊賞
發(fā)送給作者
人贊賞
長(zhǎng)按二維碼向我轉(zhuǎn)賬
受蘋果公司新規(guī)定影響,微信 iOS 版的贊賞功能被關(guān)閉,可通過(guò)二維碼轉(zhuǎn)賬支持公眾號(hào)。
-
Origin(Pro):學(xué)習(xí)版的窗口限制【數(shù)據(jù)繪圖】 2020-08-07
-
如何卸載Aspen Plus并再重新安裝,這篇文章告訴你! 2020-05-29
-
CAD視口的邊框線看不到也選不中是怎么回事,怎么解決? 2020-06-04
-
教程 | Origin從DSC計(jì)算焓和比熱容 2020-08-31
-
CAD外部參照無(wú)法綁定怎么辦? 2020-06-03
-
CAD中如何將布局連帶視口中的內(nèi)容復(fù)制到另一張圖中? 2020-07-03
