什么是凸优化问题



数学中最优化问题的一般表述是求取 x^{*}\in \chi ,使 f(x^{*} )=min\{f(x):x\in \chi \} ,其中 x 是n维向量, \chi x 的可行域, f \chi 上的实值函数。凸优化问题是指 \chi是闭合的凸集合且 f\chi上的凸函数的最优化问题,这两个条件任一不满足则该问题即为非凸 的最优化问题。


其中, \chi是凸集是指对集合中的任意两点 x_{1},x_{2}\in \chi ,有 tx_{1}+(1-t)x_{2}\in \chi,t\in[0,1] ,即任意两点的连线段都在集合内,直观上就是集合不会像下图那样有”凹下去”的部分。至于闭合的凸集,则涉及到闭集的定义,而闭集的定义又基于开集,比较抽象。这里可以简单认为闭合的凸集是指包含有所有边界的凸集。



凸函数是一个定义在某个向量空间 凸子集 C 区间 )上的 实值函数 f如果在其 定义域 C 上的任意两点 x,y ,以及 t\in [0,1] ,有
f(tx+(1-t)y)\leq t f(x)+(1-t)f(y)也就是说,一个函数是凸的 当且仅当 上境图 (在 函数图像 上方的 点集 )为一个 凸集

840798.png
特别注意:中国大陆统计大学对于函数凹凸性的定义正好与此相反。
本文中的凹凸性是指蓝色线上方区域是凹集还是凸集, 而同济大学高等数学教材则是指其下方图是凹集或凸集,两者定义正好相反。
本文中,蓝色函数,应为凸函数,因为蓝色上方部门的区域为凸集,然后,按照同济大学的定义的话,该蓝色函数为凹函数,因为蓝色线下方的区域为凹集。

为什么要求是凸函数呢? 因为如果是下图这样的函数,则无法获得全局最优解。



为什么要求是凸集呢?因为如果可行域不是凸集,也会导致局部最优




实际建模中,判断一个最优化问题是不是凸优化问题一般看以下几点:

1. 目标函数f如果不是凸函数,则不是凸优化问题。
2. 决策变量 x 中包含离散变量(0-1变量或整数变量),则不是凸优化问题
3.  约束条件写成 g(x)\le0 时, g 如果不是凸函数,则不是凸优化问题


之所以要区分凸优化问题和非凸的问题原因在于凸优化问题中局部最优解同时也是全局最优解,这个特性使凸优化问题在一定意义上更易于解决,而一般的非凸最优化问题相比之下更难解决。

非凸优化问题如何转化为凸优化问题的方法:
1)修改目标函数,使之转化为凸函数
2)抛弃一些约束条件,使新的可行域为凸集并且包含原可行域


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值