凸优化问题简述

 简单来说,凸(Convex)优化是满足一定条件的最优化问题,凸优化问题更容易解决,非凸( Non-Convex)优化问题更难解决。

在数学上,凸和非凸可以用来形容集合、函数、优化问题,对于集合,只要集合中任意两点连线上所在点仍然处于集合内,他就是凸集合。对于函数来说,最简单的XY坐标系上的一条曲线,凸和凹就很直观。

严格来说,凸优化问题(convex optimization)的定义是目标函数是凸的,且可行域是凸的。不符合这个定义的优化问题就是非凸的优化问题(non-convex optimization)

对于优化问题,举几个常见的nonconvex例子,通常2次以上的polynomial不论出现在目标函数或约束条件里,都是noconvex,更不用说什么sin、cos函数了
 

为什么凸优化问题更容易解决呢?因为凸优化问题中局部最优解同时也是全局最优解,这个特性使凸优化问题在一定意义上更易于解决,而一般的非凸最优化问题相比之下更难解决。

由于这个性质,只要设计一个较为简单的局部算法,例如贪婪算法(GreedyAlgorithm)或梯度下降法 (GradientDecent),收敛求得的局部最优解即为全局最优。因此求解凸优化问题相对来说是比较高效的。

而非凸优化问题被认为是非常难求解的,因为可行域集合可能存在无数个局部最优点,通常求解
全局最优的算法复杂度是指数级的(NP难)。如下图:

最经典的算法要算蒙特卡罗投点法,大概思想便是随便投个点,然后在附近区域(可以假设convex)用凸优化方法进行搜索,得到局部最优值。然后随机再没个点,再找到局部最优点。如此反复,直到满足终止条件。

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值