LP/QP/QCQP/SOCP/SDP/CCCP等系列优化方法的比较

来源:互联网 发布:net域名后缀排名高吗 编辑:程序博客网 时间:2024/03/28 22:43

在优化理论中,我们经常会碰到很多特殊类型的优化方法,最近主要看了convex optimization,将其中涉及到的一些常见优化方法整理如下。

LP-Linear Programming

一般形式:

linear programming


QP-Quadraitic Programming

quadratic programming


当约束条件变为二次的时,问题就变成了QCQP(Quadratical Constraint Quadratic Programming)问题了

quadratical constraint quadratic programming


SOCP-Second-Order Cone Programming  二阶锥规划

second order cone programming


这里给出的定义比较详细了,但是,对于second-order cone一开始不是很理解,在一个相关的主页中看到如下的解释:

The second-order cone in mathbf{R}^3 is the set of vectors (x_1,x_2,y) with y ge sqrt{x_1^2+x_2^2}. The picture shows part of the cone, and a slice (at y=1).

soc


而在socp中,是将线性函数变成了仿射函数(Second-order cone programming (SOCP) is a generalization of linear and quadratic programming that allows for affine combination of variables to be constrained inside second-order cones


SDP-Semi-Definite Programming     半定规划

semidefinite programming


这里,最后一段表明sdp与lp之间的关系,表明lp只是sdp的特殊情况。


CCCP-ConCave-Convex Procedure

凹凸优化方法在《Convex optimization》中没有提到,查阅了相关文献,作如下总结:

理论1说明了凹凸优化使用的范围,只要求能量函数的二阶偏导有界,并且其对应的特征值以ε为下界即可。



理论2给出了CCCP算法的迭代方法,然后证明了运用这样的迭代方法,能够使得能量函数E(x)单调递减。

对于(2)式的证明,文中说通过二阶泰勒展开式和罗尔定理来证明,待实践。

另外,文中给出了一个小示例,对于CCCP的理解有帮助

对于定理3,这里没有贴出来,主要是在目标函数有线性约束下的迭代公式。

对于这里的优化方法,通常可以运用Lagrange对偶化或者内点法来解决,对于内点法,我会单独写一篇blog来记录。

reference:

[1] Boyd,convex optimization

[2] A.L.Yuille et al.TheConCave-Convex Procedure(CCCP)2002

0 0
原创粉丝点击