【优化求解】基于头脑风暴优化算法BSO求解最优目标matlab源码
1 简介
受人类创造性解决问题过程--头脑风暴会议的启发, 2011年史玉回老师 在第二次群体智能国际会议(The Second International Conference on Swarm Intelligence(ICSI11))中提出一种新的群智能优化算法--头脑风暴优化算法,算法采用聚 类思想搜索局部最优,通过局部最优的比较得到全局最优;采用变异思想增加了算法的多 样性,避免算法陷入局部最优,在这聚与散相辅相承的过程中搜索最优解,思想新颖,适合于解决多峰高维函数问题。
2 部分代码
clc clear %bso test tic funStr = 'sphere10D5C'; %output worksheet name funName = @sphere; % fitness function name rang_l = -100; % left of dynamic range sphere rang_r = 100; % right of dynamic range %n_p = 500; % population size %n_d = 2; % dimension %n_c = 5; % number of clusters %rang_l = -100; % left of dynamic range %rang_r = 100; % right of dynamic range %max_iteration = 50; % maximal number of iterations warning off all n_p = 100; % population size n_d = 300; % dimension % n_c = 2; % number of clusters % funStr = 'sphere10D5C'; %output worksheet name % funName = @sphere; % fitness function name % rang_l = -100; % left of dynamic range sphere % rang_r = 100; % right of dynamic range % funStr = 'Minima10D5C'; %output worksheet name % funName = @Minima; % fitness function name % rang_l = -5; % left of dynamic range rastrigin % rang_r = 5; % right of dynamic range % funStr = 'Griewangk10D5C'; %output worksheet name % funName = @Griewangk; % fitness function name % rang_l = -50; % left of dynamic range rastrigin % rang_r = 50; % right of dynamic range % funName = @ackley_path; % fitness function name % rang_l = -5; % left of dynamic range rastrigin % rang_r = 5; % right of dynamic range % minpts = 10; max_iteration = 2000; % maximal number of iterations XX=1; %P = 0; n_c = 2; % P = 0.6; % for P = 0:0.1:1 for idx = 1:30 % run timesfit = bso2(funName,n_p,n_d,n_c,rang_l,rang_r,max_iteration);%run BSO one timeif idx <27str = native2unicode(idx + 64);else % assume idx <53str =['A',native2unicode(idx + 38)];endxlswrite('bso.xls',fit,funStr, [str,'1']); % output best fitness over generation to EXCEL worksheet for each BSO run['run', num2str(idx)]opt(idx,:)=fit; %可以把列换成行 fit为一列数据 % plot(x,opt(1,:) end opt; format short g best_value = min(opt(:,max_iteration)) worst_value = max(opt(:,max_iteration)) [ln col]=size(opt); out_put(XX,:)=sum(opt)/ln; %每一列的均值 format short g m_value = min(out_put(XX,:)) z = 0; for idx = 1:30z = z+(opt(idx,max_iteration)-m_value)^2; end SD = z/29 XX=XX+1 % end % save UUB out_put(n_c,:); % plot(out_put); % end % save UUB out_put(n_c,:); % plot(opt); figure(1) save UUB out_put; x=1:max_iteration; % plot(x,out_put(1,:),'b',x,out_put(2,:),'g',x,out_put(3,:),'r',x,out_put(4,:),'c',x,out_put(5,:),'m',x,out_put(6,:),'y',x,out_put(7,:),'k',x,out_put(8,:),'b--',x,out_put(9,:),'g-.',); % legend('k=2:蓝色','k=3:绿色','k=4:红色','k=5:青色','k=6:品红色','k=7:黄色','k=8:黑色','k=9','k=10'); plot(x,out_put(1,:))%,'b',x,out_put(2,:),'g',x,out_put(3,:),'r',x,out_put(4,:),'c',x,out_put(5,:),'m',x,out_put(6,:),'y',x,out_put(7,:),'k',x,out_put(8,:),'b--',x,out_put(9,:),'g-.',x,out_put(10,:),'r:',x,out_put(11,:),'c-.'); % legend('P=0','P=0.1','P=0.2','P=0.3','P=0.4','P=0.5','P=0.6','P=0.7','P=0.8','P=0.9','P=1'); toc img =gcf; %获取当前画图的句柄 print(img, '-dpng', '-r600', './运行结果.png') %即可得到对应格式和期望dpi的图像
3 仿真结果
4 参考文献
[1]范虹, 史肖敏, and 姚若侠. "头脑风暴算法优化的乳腺MR图像软子空间聚类算法." 计算机科学与探索 8(2020):1348-1357.
【优化求解】基于头脑风暴优化算法BSO求解最优目标matlab源码相关推荐
- 【优化求解】基于猫群算法CSO求解最优目标matlab源码
1 简介 猫群算法(CSO)是 2006 年由台湾学者 Chu 等人通过观察猫群在日常生活中的行为提出来的一种新型群体智能算法.猫群算法与遗传算法类似,是基于迭代的优化方法,但是没有遗传算法的交叉算子 ...
- 【优化求解】基于蝠鲼觅食优化算法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 简介 混沌系统被誉为一种天然的密码系统,因其具有对初值的极端敏感性,遍历性,确定性等特性,将混沌与现有加密算法有机结合的混沌加密技术被认为是很有前途的加密新算法.而混沌在二维相平面上表现出的不规 ...
- 基于头脑风暴优化的BP神经网络(预测应用) - 附代码
基于头脑风暴优化的BP神经网络(预测应用) - 附代码 文章目录 基于头脑风暴优化的BP神经网络(预测应用) - 附代码 1.数据介绍 3.BSO优化BP神经网络 3.1 BP神经网络参数设置 3.2 ...
- OIF-BSO:一种用于多模优化问题的头脑风暴优化的优化识别框架
OIF-BSO:一种用于多模优化问题的头脑风暴优化的优化识别框架 参考文献 <An optima-identified framework with brain storm optimizati ...
最新文章
- 使用Mapreduce案例编写用于统计文本中单词出现的次数的案例、mapreduce本地运行等,Combiner使用及其相关的知识,流量统计案例和流量总和以及流量排序案例,自定义Partitioner
- php pdo参数化,php – 如何正确地使用PDO对象的参数化SELECT查询
- 0603学术诚信与职业道德
- 三维数学基础(一)坐标系、向量、矩阵
- Hyperledger Fabric服务器配置及修改Docker容器卷宗存储根目录/位置
- 设置文件为源文件(和src一样)
- 微信刷投票软件手机版、微信免费刷票软件建立的原理解析
- 【游戏开发】2D RPG游戏
- Web前端_邮箱的正则表达式
- 鸿蒙 微内核 什么意思,鸿蒙系统所说的「微内核」,具体是什么?
- 字节跳动扣响搜索扳机
- TIM基本定时器——定时
- Excel提取18位/15位身份证出生日期②
- 雄关漫道真如铁 而今迈步从头越
- 计算机四级证书有哪些用处
- 思科设备操作命令(CISCO IOS)
- 软件下载去哪下,选择什么样的软件?
- msys2安装mingw开发环境
- 爬虫爬取学校通知信息(python))
- 商品库存管理系统网站php模板,进销存产品库存管理系统 v2.22源码
热门文章
- 微信拼手气红包背后的算法逻辑
- 自己写一个strcmp函数(C++)
- iOS8:TouchID
- 为何服务器变成ink文件,电脑上的文件全部变成ink了, 为什么, 跪求大神回答
- 百分位(percentile)是什么概念?怎么理解第95个百分位(95th percentile)
- Centos7安装oracle11g R2超级详细步骤
- android binder - 客户端(c++层) 调用 服务端(java层),服务端回调客户端 例子
- 目前结汇市场眼花缭乱,但那种才是适合做外贸的大佬们的一个选择呢?
- Linux下父进程子进程先后终止的不同处理
- 分治算法之循环赛程日志表