utilities(matlab)—— minFunc
2016-05-09 11:16
585 查看
minFunc
minFunc is a Matlab function for unconstrained optimization(无约束最优化) of differentiable real-valued multivariate functions (可微分实值多元函数)using line-search methods(线性搜索).
(1)既然针对的是可微函数,至少需要为最优化的目标函数提供函数值和一阶梯度的输出,
(2)’cg’: Non-Linear Conjugate Gradient(非线性共轭梯度)
minFunc is a Matlab function for unconstrained optimization(无约束最优化) of differentiable real-valued multivariate functions (可微分实值多元函数)using line-search methods(线性搜索).
接口
function [x,f,exitflag,output] = minFunc(funObj,x0,options,varargin) % Inputs: % funObj - is a function handle % x0 - is a starting vector; % options - is a struct containing parameters (defaults are used for non-existent or blank fields) % varargin{:} - all other arguments are passed as additional arguments to funObj % % Outputs: % x is the minimum value found % f is the function value at the minimum found
(1)既然针对的是可微函数,至少需要为最优化的目标函数提供函数值和一阶梯度的输出,
% f.m function [y, dy] = f(x) y = (x-2)^2; dy = 2*(x-2); >> minFunc(@f, 0) Iteration FunEvals Step Length Function Val Opt Cond 1 2 2.50000e-01 1.00000e+00 2.00000e+00 2 3 1.00000e+00 0.00000e+00 0.00000e+00 Optimality Condition below optTol ans = 2 % 也即在 x = 2 处取得最小值,
options vs options.Method
options
% Initialize options for minFunc options.Method = 'cg'; % 'lbfgs' options.display = 'off'; options.verbose = 0; options.maxIter = 20;
options.Method
(1)’sd’:Steepest Descent(2)’cg’: Non-Linear Conjugate Gradient(非线性共轭梯度)
相关文章推荐
- matlab_离散数据处理_插值拟合积分
- matlab读取文件夹中的所有内容(用于批量处理)
- matlab中的透视变换代码
- 使用matlab在图片中插入文字并保存
- MATLAB信号处理仿真-基带脉冲成形的数字滤波器
- matlab贝叶斯工具箱安装使用
- Matlab绘制汉经纬度的散点图 1
- matlab 字符串处理
- matlab 用LU分解求解线性方程组——代码记录
- 2016.1.1 matlab删除除了某些变量的其他变量
- matlab 算子
- matlab 格式化输出
- SAR成像学习(四)距离方向成像matlab代码解析 2
- Matlab常用基本命令函数
- Matlab学习 之 linear regression
- Matlab fftshift 详解
- matlab对时间序列进行频谱分析时,频率轴的确定方法
- utilities(matlab)—— 多元函数的数值梯度
- utilities(matlab)—— visualizes filters(可视化滤波器)
- SDM For Face Alignment 流程介绍及Matlab代码实现之训练篇