一种多策略改进黑翅鸢智能优化算法IBKA(2024年新出优化算法) 种群初始化精英反向策略+透镜成像反向学习策略+黄金正弦变异策略
文章目录
- 前言
- 一种多策略改进黑翅鸢智能优化算法IBKA(2024年新出优化算法) 种群初始化精英反向策略+透镜成像反向学习策略+黄金正弦变异策略
- 一、黑翅鸢BKA算法基本原理
- 二、改进黑翅鸢优化IBKA
- 改进1:种群初始化精英反向策略
- 改进2:非线性下降因子
- 改进3:黄金正弦变异策略
- 程序内容
- 三、实验结果
- 主函数程序
- 获取
- 总结
前言
一种多策略改进黑翅鸢智能优化算法IBKA(2024年新出优化算法) 种群初始化精英反向策略+透镜成像反向学习策略+黄金正弦变异策略
一、黑翅鸢BKA算法基本原理
BKA算法的详细原理和对应公式如下:
黑翅鸢(Black Kite)优化算法(BKA)是一种基于鸟类捕食行为启发的群体智能算法。其基本原理如下:
-
种群初始化:初始时,随机生成一定数量的个体作为初始种群。
-
捕食行为模拟:模拟黑翅鸢的捕食行为,即通过观察和调整飞行路径来捕捉猎物。在算法中,个体代表潜在解决方案,而解决方案的质量则决定了其在搜索空间中的适应度。
-
飞行和调整:每个个体在搜索空间中飞行,尝试找到更好的解决方案。这可以通过随机移动或根据某种策略进行调整来实现。
-
信息交流:个体之间可能通过某种方式进行信息共享,以增加全局搜索的效率,模拟鸟群中的信息传递行为。
-
适应度评估:根据问题的具体评价函数,计算每个个体的适应度,以确定其在解空间中的优劣。
-
迭代优化:通过多次迭代,在搜索空间中逐步优化个体,直到达到满意的解决方案或达到预设的迭代次数。
黑翅鸢优化算法通常用于解决复杂的优化问题,其灵感来源于自然界中鸟类的捕食行为,通过模拟鸟类的智能搜索和适应能力来进行全局优化搜索。
二、改进黑翅鸢优化IBKA
改进1:种群初始化精英反向策略
function Positions=initializationNew(SearchAgents_no,dim,ub,lb,fun)
Boundary_no= size(ub,2); % numnber of boundaries
BackPositions = zeros(SearchAgents_no,dim);
% If each variable has a different lb and ub
if Boundary_no>1for i=1:dimub_i=ub(i);lb_i=lb(i);PositionsF(:,i)=rand(SearchAgents_no,1).*(ub_i-lb_i)+lb_i;%求取反向种群BackPositions(:,i) = (ub_i+lb_i) - PositionsF(:,i);end
end
%获取精英种群
index = zeros(size(PositionsF,1));
for i = 1:size(PositionsF,1)if(fun(PositionsF(i,:))<fun(BackPositions(i,:)))%原始解比反向解更好,即为精英解index(i) = 1;else%反向解更好的付给原始解PositionsF(i,:) = BackPositions(i,:);end
end
XJY = PositionsF(index == 1,:);
end
改进2:非线性下降因子
for i=1:pop%% LOBL strategyk=(1+(t/T)^0.5)^10;XPosNew(i,:) = (ub+lb)/2+(ub+lb)/(2*k)-XPos(i,:)/k;end
改进3:黄金正弦变异策略
%% ★★改进3:黄金正弦变异r=rand;r1=(2*pi)*r;r2=r*pi;for vv = 1:dim % in j-th dimensiontemp(j,vv) = X(j,vv)*abs(sin(r1)) - r2*sin(r1)*abs(x1*Best_pos(1,vv)-x2*X(1,vv)); %黄金正弦计算公式endFlag4ub=temp(j,:)>ub;Flag4lb=temp(j,:)<lb;temp(j,:)=(temp(j,:).*(~(Flag4ub+Flag4lb)))+ub.*Flag4ub+lb.*Flag4lb; if fobj(temp(j,:)) < fobj(X(j, :))X(j, :) = temp(j,:);end
程序内容
三、实验结果
主函数程序
%% 参数设置
SearchAgents = 30; % population members
Max_iterations = 500; % maximum number of iteration
number = 'F23'; % 选定优化函数,自行替换:F1~F23
[lb,ub,dim,fobj] = CEC2005(number); % [lb,ub,D,y]:下界、上界、维度、目标函数表达式%% 循环实验
for i = 1:1
%% IBKA
[IBKA_Best_score,IBKA_Best_pos,IBKA_cg_curve]=IBKA(SearchAgents,Max_iterations,lb,ub,dim,fobj);
IBKA_fitness(i) = IBKA_Best_score;
%% BKA
[BKA_Best_score,BKA_Best_pos,BKA_cg_curve]=BKA(SearchAgents,Max_iterations,lb,ub,dim,fobj);
BKA_fitness(i)= BKA_Best_score;
end
获取
私信即可
总结
利用该优化算法对机器学习和深度学习进行优化
先用就是创新
包括但不限于
优化BP神经网络,深度神经网络DNN,极限学习机ELM,鲁棒极限学习机RELM,核极限学习机KELM,混合核极限学习机HKELM,支持向量机SVR,相关向量机RVM,最小二乘回归PLS,最小二乘支持向量机LSSVM,LightGBM,Xgboost,RBF径向基神经网络,概率神经网络PNN,GRNN,Elman,随机森林RF,卷积神经网络CNN,长短期记忆网络LSTM,BiLSTM,GRU,BiGRU,TCN,BiTCN,CNN-LSTM,TCN-LSTM,BiTCN-BiGRU,LSTM–Attention,VMD–LSTM,PCA–BP等等
用于数据的分类,时序,回归预测。
多特征输入,单输出,多输出