【优化求解】基于蝙蝠算法求解最优目标matlab源码
1 模型
蝙蝠算法( BA) 是 Yang 教授于 2010 年基于群体智能提出的启发式搜索算法,是一种搜索全局最优解的有效方法。该算法是一种基于迭代的优化技术,初始化为一组随机解,然后 通过迭代搜寻最优解,且在最优解周围通过随机飞行产生局部新解,加强了局部搜索。与其他算法相比,BA 在准确性和有效性方面远优于其他算法,且没有许多参数要进行调整。
2 部分代码
%% Bat Algorithm For Sphere Function %%
%% 开始 %%
clear;clc;
close all;
%% 初始化参数 %%
Iter=1;%初始迭代次数
Iter_Max=50;%最大迭代次数
Dim=2;%问题的维度
Pop_Size=30;%种群大小
Loud_Min=0;%响度最小值
Alpha=0.95;%响度控制参数
Gama=0.95;%脉冲发射率控制参数
Freq_Min=0;Freq_Max=2;%频率范围
V_Min=-5;V_Max=5;%速度范围
Pop_Min=-10;Pop_Max=10;%种群个体大小范围
%% 初始化种群 %%
PR=0.5*ones(Pop_Size,1);%脉冲发射率初始化
Loud=0.9*ones(Pop_Size,1);%响度初始化
PR0=PR;%记录初始脉冲发射率
Beta=rand(Pop_Size,1);%随机化Beta值
Freq=Freq_Min+(Freq_Max-Freq_Min)*Beta;%频率初始化
V=V_Min+(V_Max-V_Min)*rand(Pop_Size,Dim);%速度初始化
% V=zeros(Pop_Size,Dim);
Pop=Pop_Min+(Pop_Max-Pop_Min)*rand(Pop_Size,Dim);%种群初始化
for i=1:Pop_Size
Fitness(i)=Sphere_Function(Pop(i,:));%评估当前野草对应的适应度值
end
[Fitness_Best,Position_Best]=min(Fitness);%寻找当前最优适应度值
Position_Current=find(Fitness==Fitness_Best);%最优适应度值的位置
Trace(Iter)=Fitness_Best;%记录当前代适应度值最小值
%% 迭代部分 %%
while Iter<=Iter_Max
Iter%记录当前迭代次数
Fitness_Best%记录当前最优适应度值
for i=1:Pop_Size
Beta(i)=rand;
Freq(i,:)=Freq_Min+(Freq_Max-Freq_Min)*Beta(i);%频率控制
Trace(Iter)=Fitness_Best;%记录当前代适应度值最小值
end
%% 数据后处理 %%
Iter%记录当前迭代次数
Fitness_Best%记录当前最优适应度值
figure('Position',[269 240 660 290])
%Draw search space
subplot(1,2,1);
X1=linspace(-10,10,101);
X2=linspace(-10,10,101);
for i=1:length(X1)
for j=1:length(X2)
Y(i,j)=X1(i)^2+X2(j)^2;
end
end
subplot(1,2,1),surf(X1,X2,Y);
title('Parameter space')
xlabel('x_1');
ylabel('x_2');
zlabel('( x_1 , x_2 )')
subplot(1,2,2);,plot(Trace);
xlabel('Iteration');
ylabel('Best score obtained so far');
3 仿真结果
4 参考文献
[1]刘长平, 叶春明. 具有Lévy飞行特征的蝙蝠算法[J]. 智能系统学报, 2013, 000(003):240-246.
【优化求解】基于蝙蝠算法求解最优目标matlab源码相关推荐
- 【PID优化】基于蝗虫算法PID控制器优化设计含Matlab源码
1 内容介绍 该文针对广泛应用的PID控制器,在MATLAB仿真软件环境下,开发出一个过程控制系统的仿真软件包,能够实现模型辨识和PID参数调节,为过程控制系统仿真研究提供了方便. 该软件界面友好,操 ...
- 【优化求解】基于猫群算法CSO求解最优目标matlab源码
1 简介 猫群算法(CSO)是 2006 年由台湾学者 Chu 等人通过观察猫群在日常生活中的行为提出来的一种新型群体智能算法.猫群算法与遗传算法类似,是基于迭代的优化方法,但是没有遗传算法的交叉算子 ...
- 【优化求解】基于头脑风暴优化算法BSO求解最优目标matlab源码
1 简介 受人类创造性解决问题过程--头脑风暴会议的启发, 2011年史玉回老师 在第二次群体智能国际会议(The Second International Conference on Swarm I ...
- 【优化求解】基于蝠鲼觅食优化算法MRFO求解最优目标matlab源码
1 简介 蝠鲼觅食优化 (Manta ray foraging optimization,MRFO)是由 Zhao 等,在 2019 年提出的新型智能仿生群体算法. 2 部分代码 %_________ ...
- 【优化求解】基于水母搜索优化器JS算法求解最优目标matlab源码
1 简介 1.1 人工水母算法原理背景 水母生活在世界上不同深度和温度的水中.它们酷似钟状,一些水母的直径小于1cm,然有些水母直径则非常大.它们有各种各样的颜色.大小和形状.大多数水母偏好海洋环境 ...
- 【优化求解】基于多元宇宙MVO算法求解最优目标matlab源码
1 简介 2 部分代码 ```matlab %_____________________________________________________________________________ ...
- 【优化求解】基于病毒免疫算法(CHIO)求解最优目标matlab源码
1 简介 In this paper, a new nature-inspired human-based optimization algorithm is proposed which calle ...
- 【优化求解】基于引力搜索算法GSA求解最优目标matlab源码
1 简介 2009,伊朗的Esmat Rashedi等人基于万有引力定律和粒子间相互作用提出了一种新型的优化算法--引力搜索算法(Gravitational Search Algorithm,GSA) ...
- 【布局优化】基于粒子群货物配装问题最优化matlab源码
1 模型介绍 模型参考这里. 2 部分代码 %clear all; tic clc; %format long; %------给定初始化条件----------------------------- ...
- 【电磁】基于matlab求解瞬变电磁TEM层状介质正演【含Matlab源码 2164期】
⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[电磁]基于matlab求解瞬变电磁TEM层状介质正演[含Matlab源码 2164期] 点击上面蓝色字体,直接付费下载,即可. 获取代码 ...
最新文章
- Java SE和Java EE应用的性能调优
- HDFS Namenode启动过程
- ElasticSearch 学习笔记 - 10.指标聚合
- python高阶函数filter_python 高阶函数之filter
- 电路保护器件选型指南
- ConcurrentHashMap的源码分析-扩容过程图解
- Java 多线程异常捕获Runnable实现
- python 画蜘蛛_如何学习 R 绘图?
- 论文阅读(4)--Part-Stacked CNN for Fine-Grained Visual Categorization
- 支付宝批量转账接口使用全过程 一一介绍
- 「机箱」酷冷至尊 影音先锋 250
- android eclipse三合一,创新巅峰之作全能型Orbitrap Eclipse三合一质谱仪
- latex 琐粹记录
- cpp教程9-C++中的字符串操作
- 前端HTML CSS JavaScipt JQuery
- 电脑屏幕旋转工具 躺着看才舒服。
- Mac如何创建自签名证书?Mac创建自签名证书图文教程
- 华为路由器可以连接几个设备_华为如何设置连接两个无线路由器
- 【记一次】电脑可以ping通百度,但是浏览器无法访问
- 深圳python多少钱信息_用Python分析深圳在售二手房数据,看看买房需要多少预算...
热门文章
- 台达ms300变频器使用手册中文_台达ms300变频器说明书.doc
- acs510使用技巧_ABBACS510系列变频器通用接线图和参数表【借鉴实操】
- 学生选课系统简单说明
- 基于聚类算法与随机森林算法的手机终端换机推荐
- html5swf小游戏源码,亲测可用120个H5小游戏实例源码
- c语言标准之c99下载,C语言标准中的C99与最新的C11
- 红黑所-1996-2011年中国黑客大事记
- Newtonsoft.Json.Compact
- C语言判断素数(求素数)
- Rog14 Win10系统迁移新的三星固态硬盘