matlab运行后没反映,matlab运行这个程序没有反应,也不报错,是什么原因?
clc;
clear;
%相关参数的设置
UB=600;%函数的上界
LB=300;%函数的下界
PopSize=40;%种群大小
Dim=10;%微粒的维数
c1=2;%学习因子
c2=2;%学习因子
w_start=0.9;%惯性权重的开始值
w_end=0.4;%惯性权重的结束值
Vmax=100;%微粒的最大速度
Maxiter=1500;%最大迭代次数
iter=0;%初始迭代次数
%Initialize Swarm and Velocity
X=rand(PopSize,Dim)*(UB-LB)+LB;%微粒位置随机初始化:
V=rand(PopSize,Dim);%微粒速度随机初始化:
% 测试函数:Griewank函数
ind=repmat(1:Dim,PopSize,1);
FX=sum(((X.^2)/4000)')'-prod(cos(X./sqrt(ind))')'+1;
%设定当前位置为粒子的最好位置,并记录其最好值
PBest=X;%当前粒子的最好位置
FPBest=FX;%当前粒子的最好值
%找到初始微粒群体的最好微粒
[Fgbest,r]=min(FX);
CF=Fgbest;%记录当前全局最优值
Best=X(r,:);%用于保存最优粒子的位置
FBest=Fgbest;
%循环
while(iter <=Maxiter)
iter=iter+1;
% 更新惯性权重的值
w_now=((w_start-w_end)*(Maxiter-iter)/Maxiter)+w_end;
A=repmat(X(r,:),PopSize,1);
%生成随机数
R1=rand(PopSize,Dim);
R2=rand(PopSize,Dim);
%速度更新
V=w_now*V+c1*R1.*(PBest-X)+c2*R2.*(A-X);
%对进化后速度小于最小速度的微粒进行处理
changeRows=V>Vmax;
V(find(changeRows))=Vmax;
%对进化后速度小于最小速度的微粒进行处理
changeRows=V
V(find(changeRows))=-Vmax;
%微粒位置进行更新
X=X+1.0*V;
%重新计算新位置的适应度值
ind=repmat(1:Dim,PopSize,1);
FX=sum(((X.^2)/4000)')'-prod(cos(X./sqrt(ind))')'+1;
%更新每个微粒的最好位置
P=FX
FPBest(P)=FX(find(P));%适应值更换
PBest(find(P),:)=X(find(P),:);%粒子位置更换
[Fgbest,g]=min(FPBest);%保存最好适应值
if Fgbest
[fBest,b]=min(FPBest);%最好适应值为fBest
Best=PBest(b,:);%最好适应值为Best
end
CF=Fgbest;% To be used to find Best 保留本次适应值准备与下一次比较
end %循环结束
matlab运行后没反映,matlab运行这个程序没有反应,也不报错,是什么原因?相关推荐
- Vivado2017.4运行时出现找不到VCOMP140.DLL,无法继续的报错
Vivado2017.4运行时出现找不到VCOMP140.DLL,无法继续的报错 报错内容如下: 之前运行Vivado2017.4,没有出现过此类情况,上网查询后明白是安装了VC++(我安装的 ...
- Centos系统创建用户oracle后,用该用户登陆系统,页面加载报错GConf error
Linux 的 GConf error 解决办法 问题: Centos系统创建用户oracle后,用该用户登陆系统,页面加载报错,导致重新进入Centos系统后出现: GConf error:Fail ...
- python中nameerror怎么处理_Python 运行报错NameError出现原因,怎么解决
刚刚学习python语言时常会遇到一些问题,能看懂常见的python 捕获异常错误类型很重要.python ioerror很常见,NameError是最普通也是最常会遇到的内建报错类名,其代表问题出现 ...
- 杰奇运行在php7,帝国CMS7.5使用PHP7.x环境登录后台报错的解决方法!
以下是帝国CMS官方说明! 使用PHP7.*运行环境时,以下两种情况,设置支持PHP7.*操作步骤: 1.全新安装帝国CMS时: 只需安装时MYSQL接口类型选择mysqli即可支持PHP7系列. 2 ...
- Win10系统 Office2010程序打开PPT文档报错“此应用无法在你的电脑上运行
文章目录 1 问题描述 2 解决方法 1 问题描述 在windows10上安装的office2010 使用启动菜单中的microsoft PowerPoint2010程序直接打开PPT文档报错&quo ...
- 运行qsub 提交python程序 Ambiguous output redirect fault报错
文章目录 运行Ridge_LOOCV_Permutation 报错现象 其它报错 在Linux下创建一个可运行shell脚本 Pycharm导入自定义的模块出现红色下划线 Reference 运行Ri ...
- webpack 3/4踩坑,我太难了,从安装、卸载、到使用,各相应的版本号,sass-loader报错-版本的原因,webpack -v 不识别,没卸载干净...
-先说卸载: wabpack@4对应的每个插件的版本号都在最后 1 全局安装的话,npm uninstall webpack -g 有时候并不能卸载干净, 2 webpack -v 可判断是否安装成 ...
- laravel 提交Request 请求后会莫名多出一个s参数,导致数据库报错问题的解决方法
项目场景: apache运行laravel框架开发的系统. 问题描述: 提交post或者其他请求,会在request中存在s参数,导致数据库报错. 原因分析: apache的.htaccess文件中的 ...
- EasyCVR替换版本后调用api接提示401报错是什么原因?
EasyCVR视频融合平台具备优秀的视频转码.播放.级联能力,能够将视频通过RTMP协议推送到阿里.腾讯等公有云厂商的视频服务中,目前EasyCVR正在开发智能分析项目,在不久后,我们将把行人检测分析 ...
- matlab运行后没反映,这个matlab程序运行没反应是怎么回事?在线急等
这个matlab程序运行没反应是怎么回事?在线急等 关注:77 答案:2 手机版 解决时间 2021-02-10 04:27 提问者失夜久伴你 2021-02-09 19:46 function ...
最新文章
- 酷讯出来的张一鸣为什么做了新闻不是旅游?
- RTMPdump(libRTMP) 源代码分析 3: AMF编码
- java jdbc datetime_Java JDBC 操作二进制数据、日期时间
- 5G 网络接口与基础流程
- 不悲观-不emo-永远保持正能量——21年末,去掉所有的不开心
- 信息学奥赛一本通(C++)在线评测系统——基础(三)数据结构 —— 1339:【例3-4】求后序遍历
- Makefile和automake中判断CPU位数
- html中滚动栏的样式
- kalilinux装到u盘上的弊端_付费下载的歌曲,竟然无法在汽车上播放!原因在这里...
- flask mvc模式开发_Flask中文文档-转载
- Android系统(245)---SystemServer进程的创建流程
- bzoj 3930: [CQOI2015]选数
- k8s核心技术-持久化存储(PV和PVC)---K8S_Google工作笔记0051
- Jmeter下载安装配置
- 年薪百万是社会认同,更是自身价值体现
- Excel函数大全-04数据库函数
- VNC远程桌面使用方法
- uni-App打包ios后白屏
- dvi线支持多少分辨率_dvi接口有哪几种_dvi支持最大分辨率
- 【ArcGIS微课1000例】0052:创建地理数据库注记(标准注记、要素关联注记、尺寸注记)
热门文章
- jQuery事件与事件对象
- 史上最全linux内核配置详解
- 深击 | 阿里云故障“惊魂”1小时:难道我们是那0.1%?
- SecureCRT 经典配色方案
- 单片机课程设计八音盒
- 社会性动物1: 从众的原因,如何避免
- RS485MODBUS转PROFINET网关配置-科隆OPTIFLUX7000MODBUS通信协议电磁流量计接入西门子PLC S7-1500PROFINET以太网通讯网络配置方法
- python 整合excel_使用python将多个excel文件合并到同一个文件的方法
- php测速,speedtest-x :一款PHP网页测速工具
- android4.4呼叫转移,安卓呼叫转移