一种多策略改进鹅智能优化算法IGOOSE(2024年新出优化算法) 种群初始化精英反向策略+非线性下降因子+黄金正弦变异策略
文章目录
- 前言
- 一种多策略改进鹅智能优化算法IGOOSE(2024年新出优化算法) 种群初始化精英反向策略+非线性下降因子+黄金正弦变异策略
- 一、GOOSE算法基本原理
- 1. 算法初始化
- 2. 适应度计算
- 3. 最佳适应度和位置
- 4. 探索与利用的平衡
- 5. 利用阶段(Exploitation)
- 7. 实际应用
- 二、改进GOOSE
- 改进1:种群初始化精英反向策略
- 改进2:非线性下降因子
- 改进3:黄金正弦变异策略
- 程序内容
- 三、实验结果
- 主函数程序
- 获取
- 总结
前言
一种多策略改进鹅智能优化算法IGOOSE(2024年新出优化算法) 种群初始化精英反向策略+非线性下降因子+黄金正弦变异策略
一、GOOSE算法基本原理
GOOSE算法的详细原理和对应公式如下:
1. 算法初始化
- 初始化种群:算法开始时,首先初始化一个种群,即X矩阵,每个元素代表一只大雁的位置。
- 公式:
- ( X_i ):第i只大雁的位置。
2. 适应度计算
- 计算适应度:在每次迭代中,通过标准化的基准函数计算每个搜索代理(大雁)的适应度。
- 公式:
- ( F(X_i) ):第i只大雁的适应度函数值。
3. 最佳适应度和位置
- 选择最佳适应度和位置:在每次迭代中,比较所有搜索代理的适应度,选择最佳适应度(BestFitness)和最佳位置(BestX)。
- 公式:
4. 探索与利用的平衡
- 随机变量:使用一个随机变量“rnd”来决定是进行探索还是利用,各占50%的概率。
5. 利用阶段(Exploitation)
- 保护群体:模拟守护大雁保护群体的行为,通过随机选择的方程来更新大雁的位置。
- 公式:
### 6. 探索阶段(Exploration) - 随机唤醒:模拟大雁随机唤醒的行为,以调节随机唤醒或保护个体。
- 公式:
7. 实际应用
- 焊接梁设计:优化焊接梁的制造成本,同时满足侧向位移、屈曲载荷、弯曲应力和剪切应力的约束。
- 经济负荷调度问题:最小化发电成本,同时满足电力需求和约束条件。
- 神经系统中的病理IgG分数:优化评估脑脊液中病理IgG水平的特征。
这些原理和公式共同构成了GOOSE算法的核心,使其能够在各种优化问题中表现出色。
二、改进GOOSE
改进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:非线性下降因子
alpha = 2 - 2*(1/(1+exp(-10*rand*( (2*loop/Max_IT) -1 ))));
改进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]:下界、上界、维度、目标函数表达式%% 调用算法
[IGOOSE_pos,IGOOSE_score,IGOOSE_curve]=IGOOSE(SearchAgents,Max_iterations,ub,lb,dim,fobj); % 调用IGOOSE算法
[GOOSE_pos,GOOSE_score,GOOSE_Convergence_curve]=GOOSE(SearchAgents,Max_iterations,ub,lb,dim,fobj); % 调用GOOSE算法
获取
私信即可
总结
利用该优化算法对机器学习和深度学习进行优化
先用就是创新
包括但不限于
优化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等等
用于数据的分类,时序,回归预测。
多特征输入,单输出,多输出