MATLAB优化工具箱
Optimization Toolbox™ 提供了多个函数,这些函数可在满足约束的同时求出可最小化或最大化目标的参数。该工具箱包含适用于下列各项的求解器:线性规划 (LP)、混合整数线性规划 (MILP)、二次规划 (QP)、二阶锥规划 (SOCP)、非线性规划 (NLP)、约束线性最小二乘、非线性最小二乘和非线性方程。
1、优化算法汇总——优化工具包
-
非线性优化:查找单变量函数在定区间上的最小值 (求解器:fminbnd)
-
非线性优化:无约束非线性优化(Unconstrained nonlinear minimization)(求解器:fminsearch和fminunc)
无约束非线性优化:fminunc(https://blog.csdn.net/weixin_44044161/article/details/116032924?spm=1001.2014.3001.5501)
无约束非线性优化:fminsearch(https://blog.csdn.net/weixin_44044161/article/details/123826153) -
非线性优化:有约束非线性优化(Constrained nonlinear minimization)(求解器:fmincon)
-
非线性优化:求解半无限约束多变量非线性函数的最小值(求解器:fseminf)
-
最小二乘: 线性最小二乘(Linear least squares) (==求解器:lsqlin和lsqnonneg ==)
-
最小二乘:非线性最小二乘(Nonlinear least squares)(求解器:lsqnonlin和lsqcurvefit)
-
最小二乘:约束最小二乘(Constrained least squares)(求解器:lsqlin)
-
线性规划 (Linear Programming, LP)(求解器:linprog)
-
半正定规划(semidefinite programming, SDP)(求解器:CVX:sdp)
-
二次规划/二次约束二次规划(Quadraitic Constraint Quadraitic Programming, QCQP)(求解器:quadprog)
-
(二阶)锥规划 (Second-Order Cone Programming, SOCP) (求解器:coneprog和secondordercone)
-
未完待续(可留言推荐)
2、优化问题及对应求解器
2.1、非线性优化
类型 优化模型 求解器
2.2、最小二乘
类型 优化模型 求解器
2.3、线性规划
类型 优化模型 求解器
2.4、(二阶)锥规划 (Second-Order Cone Programming, SOCP)
类型 优化模型 求解器
锥规划 见下面 coneprog(锥规划)secondordercone(二阶锥约束)(也可以用CVX工具包求解)
|
second-order cone constraint(所谓二阶是指锥里面用到的是二范数,下面的表达式表示一个二阶锥。):
根据仿射变换的性质,变换后凹凸性不变,因此二阶锥仍然是一个凸锥。
注:对向量 x xx 仿射变换(相当于将一个图形平移,或变大变小,或旋转,或倒影):y = A x + b y = A x + by=Ax+b,其中 A x A xAx 表示对 x xx变大或变小或旋转倒影,而 + b + b+b 表示平移。
二阶锥规划(标准形式):
2.5、二次规划/二次约束二次规划(Quadraitic Constraint Quadraitic Programming, QCQP)
类型 优化模型 求解器
由于二次约束可以转换为二阶锥约束,因此QCQP问题可以转化为二阶锥规划问题,并用 coneprog 或者 CVX 求解
二次约束二次规划:
由于二次约束可以转换为二阶锥约束,因此QCQP问题可以转化为二阶锥规划问题,并用 coneprog 或者 CVX 求解
2.6、半正定规划(semidefinite programming, SDP)
类型 优化模型 求解器
锥规划 见下面 CVX工具包(也可以用coneprog),实际上都用的内点法
注意:半正定规划问题可以转化为二阶锥规划问题,并用 coneprog 或者 CVX 求解,同理,SOCP也可以转换为SDP问题
对SDP理解:可以简单理解为:半正定规划是线性规划的矩阵形式
————————————————
原文链接:https://blog.csdn.net/weixin_44044161/article/details/123837706