最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

基于瘋狂自適應(yīng)的樽海鞘算法求解單目標(biāo)優(yōu)化問題附matlab代碼

2023-02-27 22:02 作者:Matlab工程師  | 我要投稿

?作者簡(jiǎn)介:熱愛科研的Matlab仿真開發(fā)者,修心和技術(shù)同步精進(jìn),matlab項(xiàng)目合作可私信。

??個(gè)人主頁:Matlab科研工作室

??個(gè)人信條:格物致知。

更多Matlab仿真內(nèi)容點(diǎn)擊??

智能優(yōu)化算法??神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)?雷達(dá)通信??無線傳感器

信號(hào)處理?圖像處理?路徑規(guī)劃?元胞自動(dòng)機(jī)?無人機(jī)

? 內(nèi)容介紹

針對(duì)樽海鞘群算法求解精度不高和收斂速度慢等缺點(diǎn),提出一種基于瘋狂自適應(yīng)的樽海鞘群算法.引入Tent混沌序列生成初始種群,以增加初始個(gè)體的多樣性;在食物源位置上引入瘋狂算子,增強(qiáng)種群的多樣性;在追隨者位置更新公式中引入自適應(yīng)慣性權(quán)重,使算法的全局搜索和局部搜索能力得到更好的平衡.使用統(tǒng)計(jì)分析、收斂速度分析、Wilcoxon檢驗(yàn)、經(jīng)典基準(zhǔn)函數(shù)和CEC2014函數(shù)的標(biāo)準(zhǔn)差評(píng)估改進(jìn)樽海鞘群算法的效率.結(jié)果表明,改進(jìn)算法具有更好的全局搜索能力和求解魯棒性,同時(shí),尋優(yōu)精度和收斂速度也比原來算法有所增強(qiáng),尤其在求解高維和多峰測(cè)試函數(shù)上,改進(jìn)算法擁有更好的性能.

? 部分代碼

%_________________________________________________________________________________

%? Salp Swarm Algorithm (SSA) source codes version 1.0

%

%? Developed in MATLAB R2016a

%

%? Author and programmer: Seyedali Mirjalili

%

%? ? ? ? ?e-Mail: ali.mirjalili@gmail.com

%? ? ? ? ? ? ? ? ?seyedali.mirjalili@griffithuni.edu.au

%

%? ? ? ?Homepage: http://www.alimirjalili.com

%

%? ?Main paper:

%? ?S. Mirjalili, A.H. Gandomi, S.Z. Mirjalili, S. Saremi, H. Faris, S.M. Mirjalili,

%? ?Salp Swarm Algorithm: A bio-inspired optimizer for engineering design problems

%? ?Advances in Engineering Software

%? ?DOI: http://dx.doi.org/10.1016/j.advengsoft.2017.07.002

%____________________________________________________________________________________


function [FoodFitness,FoodPosition,Convergence_curve]=SSA(N,Max_iter,lb,ub,dim,fobj)


if size(ub,1)==1

? ? ub=ones(dim,1)*ub;

? ? lb=ones(dim,1)*lb;

end


Convergence_curve = zeros(1,Max_iter);


%Initialize the positions of salps

SalpPositions=initialization(N,dim,ub,lb);



FoodPosition=zeros(1,dim);

FoodFitness=inf;



%calculate the fitness of initial salps


for i=1:size(SalpPositions,1)

? ? SalpFitness(1,i)=fobj(SalpPositions(i,:));

end


[sorted_salps_fitness,sorted_indexes]=sort(SalpFitness);


for newindex=1:N

? ? Sorted_salps(newindex,:)=SalpPositions(sorted_indexes(newindex),:);

end


FoodPosition=Sorted_salps(1,:);

FoodFitness=sorted_salps_fitness(1);


%Main loop

l=2; % start from the second iteration since the first iteration was dedicated to calculating the fitness of salps

while l<Max_iter+1

? ??

? ? c1 = 2*exp(-(4*l/Max_iter)^2); % Eq. (3.2) in the paper

? ??

? ? for i=1:size(SalpPositions,1)

? ? ? ??

? ? ? ? SalpPositions= SalpPositions';

? ? ? ??

? ? ? ? if i<=N/2

? ? ? ? ? ? for j=1:1:dim

? ? ? ? ? ? ? ? c2=rand();

? ? ? ? ? ? ? ? c3=rand();

? ? ? ? ? ? ? ? %%%%%%%%%%%%% % Eq. (3.1) in the paper %%%%%%%%%%%%%%

? ? ? ? ? ? ? ? if c3<0.5?

? ? ? ? ? ? ? ? ? ? SalpPositions(j,i)=FoodPosition(j)+c1*((ub(j)-lb(j))*c2+lb(j));

? ? ? ? ? ? ? ? else

? ? ? ? ? ? ? ? ? ? SalpPositions(j,i)=FoodPosition(j)-c1*((ub(j)-lb(j))*c2+lb(j));

? ? ? ? ? ? ? ? end

? ? ? ? ? ? ? ? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

? ? ? ? ? ? end

? ? ? ? ? ??

? ? ? ? elseif i>N/2 && i<N+1

? ? ? ? ? ? point1=SalpPositions(:,i-1);

? ? ? ? ? ? point2=SalpPositions(:,i);

? ? ? ? ? ??

? ? ? ? ? ? SalpPositions(:,i)=(point2+point1)/2; % % Eq. (3.4) in the paper

? ? ? ? end

? ? ? ??

? ? ? ? SalpPositions= SalpPositions';

? ? end

? ??

? ? for i=1:size(SalpPositions,1)

? ? ? ??

? ? ? ? Tp=SalpPositions(i,:)>ub';Tm=SalpPositions(i,:)<lb';SalpPositions(i,:)=(SalpPositions(i,:).*(~(Tp+Tm)))+ub'.*Tp+lb'.*Tm;

? ? ? ??

? ? ? ? SalpFitness(1,i)=fobj(SalpPositions(i,:));

? ? ? ??

? ? ? ? if SalpFitness(1,i)<FoodFitness

? ? ? ? ? ? FoodPosition=SalpPositions(i,:);

? ? ? ? ? ? FoodFitness=SalpFitness(1,i);

? ? ? ? ? ??

? ? ? ? end

? ? end

? ??

? ? Convergence_curve(l)=FoodFitness;

? ? l = l + 1;

end



? 運(yùn)行結(jié)果

編輯

編輯

編輯

? 參考文獻(xiàn)

[1]張達(dá)敏, 陳忠云, 辛梓蕓,等. 基于瘋狂自適應(yīng)的樽海鞘群算法[J]. 控制與決策, 2020, 35(9):9.

?? 關(guān)注我領(lǐng)取海量matlab電子書和數(shù)學(xué)建模資料

??部分理論引用網(wǎng)絡(luò)文獻(xiàn),若有侵權(quán)聯(lián)系博主刪除


基于瘋狂自適應(yīng)的樽海鞘算法求解單目標(biāo)優(yōu)化問題附matlab代碼的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
泉州市| 锡林浩特市| 开江县| 依兰县| 铅山县| 堆龙德庆县| 濮阳县| 莱西市| 崇礼县| 永宁县| 滦平县| 通许县| 惠东县| 新平| 来凤县| 西乡县| 中宁县| 望奎县| 丹江口市| 双峰县| 时尚| 湟源县| 南和县| 焉耆| 青田县| 醴陵市| 江口县| 昌都县| 鹿泉市| 福海县| 岳普湖县| 札达县| 阳江市| 固镇县| 锡林浩特市| 道真| 普格县| 临海市| 巨鹿县| 黔西县| 长武县|