资源简介
BFGS算法是目前最流行的,也是最有效的拟牛顿算法。是算法学习过程中必学的内容。通过Matlab实现了BFGS算法,其中对程序有讲解,望有助于大家的学习。
代码片段和文件信息
function [xvalk]=BFGS(fungfunx0)
maxk=500;
rho=0.55;sigma=0.4;epsilon=1e-5;
k=0; n=length(x0);
Bk=eye(n);%Bk=feval(‘Hess‘x0);
while(k gk=feval(gfunx0);
if(norm(gk) dk=-Bk\gk;
m=0;mk=0;
while(m<20)
newf=feval(funx0+rho^m*dk);
oldf=feval(funx0);
if(newf mk=m;break;
end
m=m+1;
end
x=x0+rho^mk*dk;
sk=x-x0;yk=feval(gfunx)-gk;
if(yk‘*sk>0)
Bk=Bk-(Bk*sk*sk‘*Bk)/(sk‘*Bk*sk)+(yk*yk‘)/(yk‘*sk);
end
k=k+1;x0=x;
end
val=feval(funx0);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 614 2018-11-08 16:45 BFGS.m
文件 81 2018-11-08 18:24 df.m
文件 55 2018-11-08 18:24 f.m
文件 313 2018-11-11 20:39 程序解释.txt
相关资源
- 利用Matlab查找两幅图片的不同之处
- matlab仿真6自由度puma机器人
- 最优化的matlab代码设计
- 模拟退火算法解决0-1背包问题
- 基于密度的聚类MATLAB代码
- optisystem与matlab联合仿真
- 2019_OFDM仿真源代码_Matlab_附解释_完整
- matlab实现运动目标检测与最小外接矩
- 函数优化测试函数(matlab).zip
- 图像分割度量标准--matlab代码
- 极化SAR S转化为T matlab
- GAN程序matlab仿真
- MATLAB R2018a Win64 Crack.zip
- 傅里叶逆变换方法生成路面时域模型
- MATLAB求曲线长度、宽度、面积的code
- 蚁群算法MATLAB代码287131
- TOPSIS的MATLAB算法实现
- QR二维码识别。MATLAB,zxingGUI
- census算法matlab程序
- 批量读取同一文件夹下所有excel指定单
- surf matlab源代码
- MATLAB常用函数大全
- 光伏并网开环控制
- 遗传算法对于模糊控制规则的优化用
- 转子动力学传递矩阵法matlab计算程序
- BP神经网络matlab(简单而经典).doc
- 2018年数学建模国赛A题matlab代码及注释
- 2017年数学建模国赛B题matlab代码及注释
- 2016年全国数学建模A题matlab代码.rar
-
非线性鲁棒控制 simuli
nk仿真
评论
共有 条评论