matlab优化命令核心算法一览表(原创)
命令核心算法
对应文件
fminbnd
黄金分割和抛物线差值
\toolbox\matlab\funfun\fminbnd.m
fminunc
子空间trust region(对Large-scale问题)
\toolbox\optim\sfminbx.m
\toolbox\optim\private\fminusub.m
BFGS或DFP 拟牛顿法配合二次三次混合线性搜索
fminsearch
Nelder-Mead单纯形法(derivative-free method)\toolbox\matlab\funfun\fminsearch.m
linprog
Primal-dual内点法(对Large-scale问题)
\toolbox\optim\private\lipsol.m
\toolbox\optim\private\simplex.m
\toolbox\optim\private\qpsub.m
Active set或单纯形法
quadprog
子空间 trust-region(对Large-scale问题)
\toolbox\optim\private\qpsub.m
\toolbox\optim\private\sqpmin.m
Active set
fmincon
子空间 trust-region(对Large-scale问题)
\toolbox\optim\private\nlconst.m
\toolbox\optim \sfminbx.m
\toolbox\optim \sfminbx.m
\toolbox\optim \sfminle.m
SQP
fgoalattain
SQP
\toolbox\optim\private\nlconst.m
fminimax
SQP
\toolbox\optim\private\nlconst.m
fseminf
SQP
\toolbox\optim\private\nlconst.m
bintprog
线性规划 branch and bound(单纯形,双单纯形)
\toolbox\optim\private\dualsimplex.m
\toolbox\optim\private\simplex.m
fzero
二分,割线,逆二次差值
\toolbox\matlab\funfun\fzero.m
fsolve
子空间 trust-region(对Large-scale问题)
\toolbox\optim\private\snls.m
\toolbox\optim\private\trustnleqn.m\toolbox\optim\private\nlsq.m
Trust-region dogleg或高斯-牛顿法或Lenvenberg-Marquardt
lsqnonneg
没有给出正式名称
\toolbox\matlab\matfun\lsqnonneg.m
lsqlin
子空间 trust-region(对Large-scale问题)
\toolbox\optim\private\sllsbox.m\toolbox\optim\private\qpsub.m
Active set
lsqnonlin
子空间 trust-region(对Large-scale问题)
\toolbox\optim\private\snls.m
\toolbox\optim\private\nlsq.mLevenberg-Marquardt或高斯牛顿法
lsqcurvefit
子空间 trust-region(对Large-scale问题)
\toolbox\optim\private\snls.m
\toolbox\optim\private\nlsq.m
Levenberg-Marquardt或高斯牛顿法
附注:
以上自己闲来五事总结的 希望对大家有所帮助;
上面列出的都是优化工具箱中的命令
遗传算法没有列入 其他错漏之处大家尽管指正
nlinfit 函数,也算高斯牛顿法吧? 不错,学习学习!!!! 谢谢分享,赞
页:
[1]