【优化求解】基于生物地理学结合重力引力搜索优化求解算法matlab源码

 一、重力引力搜索算法

 1.1BBO算法

生物地理学优化算法(BBO)是由Dan Simon于2008年提出的一种基于生物地理学理论发展起来的算法。与其他智能算法类似,BBO也是一种基于种群优化的算法,不过它将种群中的每个解看成一个栖息地,将解的适应度看成栖息地的HSI,解的每个分量则是一个SIV,通过模拟生物地理学中的迁移和变异过程来对种群进行不断演化,从而求解优化问题。BBO算法的两个主要操作就是迁移操作和变异操作。

一、迁移操作

BBO算法将优化问题的每个解看成一个栖息地。解的适应度越高,表示栖息地拥有的物种越多,其迁出率就越高、迁入率就越低:反之,解的适应度越低,其对应的迁出率越低、迁入率越高。
迁移操作的目的就是在不同的解之间进行信息分享,其中好的解倾向于把自身的信息传播给其他解,而差的解更倾向于从其他解中接收信息。在具体实现时,BBO算法的每次迭代都会考察种群中的每个解H(i),设其迁入率和迁出率分别为:λ(i)和μ(i),则其每个分量都有λi的概率被修改(即进行迁入);如果要迁入,则以迁出率为概率从种群中选择一个迁出解H(j),再将H(i)的当前分量替换为Hj的对应分量。对H(i)的所有分量都执行完上述操作后,就产生了一个新解H’(i)。算法比较H(i)和H’(i)的适应度,将适应度更高的一个保留在种群中。
上述迁移操作的过程可用算法过程下面所示的伪代码来描述,其中D表示问题的维度即解向量的长度,rand()用于生成一个[0,1]内的随机数。
在这里插入图片描述

二、变异操作

一些重大突发事件会急剧改变一个自然栖息地的某些性质,从而改变SHI并导致物种数量发生显著变化。BBO算法将这种情况建模为SIV变异。物种数量过多或过少时,物种数量概率都相对较低;在中等的物种数量下(接近平衡点),物种数量概率较高。可见上述物种概率指呈中心对称分布,如下图所示。
在这里插入图片描述
假设要求解的是一个连续优化问题,问题第d维的取值范围为[ld,ud],则BBO的变异操作过程可用下图所示算法过程的伪代码来描述。
在这里插入图片描述

总结

BBO算法由于进化机理的新颖性,已受到计算智能领域众多学者的关注。尽管已经取得很多重要的成果,但相对其他进化算法如来说,其更深入的理论研究包括BBO算法中的参数选取、复杂性分析问题、适应度函数设计以及算法在工程实际中的应用还有待扩展。

1.2重力搜索算法

引力搜索算法(Gravitational Search Algorithm,GSA)是Esmat Rashedi等人在2009年提出的一种随机性启发式搜索算法,这种算法的灵感来自于牛顿的万有引力定律与运动定律:1.任意两个质点有通过连心线方向上的力相互吸引,该引力大小与它们质量的乘积成正比与它们距离的平方成反比。2.力使物体获得加速度。

在GSA中,质点被抽象成解空间的一个解,解之间存在一个相互吸引力,这个吸引力由解的质量与两个解之间的距离确定,质点的质量被抽象成解的评估函数值。在解空间中,每个解由其他解对其的吸引力获得加速度,质量更大(评估函数值更优)所提供的加速度更大,从而使解向更优解的方向移动。

看到这里,有些小伙伴会以为GSA是个与PSO差不多的算法,是的,GSA与PSO的外层框架是一致的,但是,它们最关键的粒子移动策略却是不同的:

1.在PSO中,粒子的移动只使用两个最佳位置pbest和gbest。但是在GSA中,智能体的方向是根据所有其他智能体或部分较优的智能体获得的总力来计算的。
2.PSO使用一种内存来更新速度(由于pbest和gbest)。然而,GSA是无内存的,只有智能体的当前位置在更新过程中起作用。
3.在PSO中,更新不考虑解之间的距离,而在GSA中,力与解之间的距离成反比。
4.PSO模拟了鸟类的社会行为,而GSA的灵感来自于物理现象。

GSA的主要过程如下:

1. 确定搜索空间。
2. 随机初始化个体种群。
3. 对种群进行适应度评价。
4. 更新引力常量G,更新种群中最好的个体 best与最差的个体worst,更新个体的质量。
5. 计算每个个体在不同方向上的总引力。
6. 计算个体的加速度,基于此更新个体的速度。
7. 根据速度更新个体在解空间中的位置。
8. 重复步骤3-7直到达到停止标准。

算法流程:
在这里插入图片描述

二、部分代码

% GSA-BBO HYBRIDIZATION ALGORITHM CODE
% SAJAD AHMAD RATHER
% 11/03/2016,05:55 PM
% Main function for using GSA algorithm.
clear all;clc
% inputs:
% N:  Number of agents.
% max_it: Maximum number of iterations (T).
% ElitistCheck: If ElitistCheck=1, algorithm runs with eq.21 and if =0, runs with eq.15.
% Rpower: power of 'R' in eq.28.
% F_index: The index of the test function. See tables 1,2,3 of the mentioned article.
% Insert your own objective function with a new F_index in 'test_functions.m'
% and 'test_functions_range.m'.
% outputs:
% Fbest: Best result. 
% Lbest: Best solution. The location of Fbest in search space.
% BestChart: The best so far Chart over iterations. 
% MeanChart: The average fitnesses Chart over iterations.
% n=Smax:Maximum number of species
% Pos:original population size
k= 2; % elitism parameter: how many of the best habitats to keep from one generation to the next
I = 1; % max immigration rate for each island
E1 = 1; % max emigration rate, for each island
N=50; 
Siv=4;%Suitability index variables(e.g;land,temperature,rainfall,diversity of vegetation) 
n=N;
Pos=N;
max_it=1000;
ElitistCheck=1; 
Rpower=1;
min_flag=1; % 1: minimization 0: maximization
F_index=1
[Fbest,Lbest,BestChart,MeanChart]=GSA(F_index,N,max_it,ElitistCheck,min_flag,Rpower,k,I,E1,Pos,Siv,n);Fbest,
semilogy(MeanChart,'--k');
title(['\fontsize{12}\bf F',num2str(F_index)]);
xlabel('\fontsize{12}\bf Iteration');ylabel('\fontsize{12}\bf  Average Best-so-far');
legend('\fontsize{10}\bf GSA-BBO',1);

三、仿真结果

四、参考文献

Sajad Ahmad Rather (2021). GSA-BBO HYBRIDIZATION ALGORITHM

🎈 部分理论引用网络文献,若有侵权联系博主删除
🎁 关注我领取海量matlab电子书和数学建模资料

👇 私信完整代码和数据获取及论文数模仿真定制

1 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化、背包问题、 风电场布局、时隙分配优化、 最佳分布式发电单元分配、多阶段管道维修、 工厂-中心-需求点三级选址问题、 应急生活物质配送中心选址、 基站选址、 道路灯柱布置、 枢纽节点部署、 输电线路台风监测装置、 集装箱调度、 机组优化、 投资优化组合、云服务器组合优化、 天线线性阵列分布优化、CVRP问题、VRPPD问题、多中心VRP问题、多层网络的VRP问题、多中心多车型的VRP问题、 动态VRP问题、双层车辆路径规划(2E-VRP)、充电车辆路径规划(EVRP)、油电混合车辆路径规划、混合流水车间问题、 订单拆分调度问题、 公交车的调度排班优化问题、航班摆渡车辆调度问题、选址路径规划问题、港口调度
2 机器学习和深度学习方面

2.1 bp时序、回归预测和分类

2.2 ENS声神经网络时序、回归预测和分类

2.3 SVM/CNN-SVM/LSSVM/RVM支持向量机系列时序、回归预测和分类

2.4 CNN/TCN卷积神经网络系列时序、回归预测和分类

2.5 ELM/KELM/RELM/DELM极限学习机系列时序、回归预测和分类
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU门控神经网络时序、回归预测和分类

2.7 ELMAN递归神经网络时序、回归\预测和分类

2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/长短记忆神经网络系列时序、回归预测和分类

2.9 RBF径向基神经网络时序、回归预测和分类

2.10 DBN深度置信网络时序、回归预测和分类
2.11 FNN模糊神经网络时序、回归预测
2.12 RF随机森林时序、回归预测和分类
2.13 BLS宽度学习时序、回归预测和分类
2.14 PNN脉冲神经网络分类
2.15 模糊小波神经网络预测和分类
2.16 时序、回归预测和分类
2.17 时序、回归预测预测和分类
2.18 XGBOOST集成学习时序、回归预测预测和分类
方向涵盖风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、用电量预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断
2.图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知
3 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、 充电车辆路径规划(EVRP)、 双层车辆路径规划(2E-VRP)、 油电混合车辆路径规划、 船舶航迹规划、 全路径规划规划、 仓储巡逻
4 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配、无人机安全通信轨迹在线优化、车辆协同无人机路径规划
5 通信方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化、水声通信
6 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化、心电信号、DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪、数字信号调制、误码率、信号估计、DTMF、信号检测
7 电力系统方面
微电网优化、无功优化、配电网重构、储能配置、有序充电、MPPT优化
8 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长 金属腐蚀
9 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合、SOC估计、阵列优化、NLOS识别

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天天Matlab科研工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值