凸优化学习-(十五)凸优化问题分析和举例

本文探讨了凸优化问题的分析与变换,包括多个优化问题的例子及其转换为等价凸问题的方法,如通过消除等式约束、引入松弛变量等。文中详细解析了凸优化问题的性质,如局部最优解等于全局最优解的特性,以及不同约束类型下的优化问题解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

凸优化学习

今天开始对优化问题进行分析,会先判断一般的优化问题,然后逐渐引入凸优化问题。

学习笔记

一、优化问题的几个例子以及变换

例1:

min⁡f0(x)=x12+x22s.t.fi(x)=x11+x22≤0hi(x)=(x1+x2)2=0 \begin{aligned} \min&& f_0(x)&=x_1^2+x_2^2\\ \text{s.t.}&&f_i(x)&=\frac{x_1}{1+x_2^2}\le0\\ &&h_i(x)&=(x_1+x_2)^2=0 \end{aligned} mins.t.f0(x)fi(x)hi(x)=x12+x22=1+x22x10=(x1+x2)2=0
显然,这个问题里面,f1(x)f_1(x)f1(x)非凸,h1(x)h_1(x)h1(x)非仿射,不是凸问题。但我们可以将其转换为等价的凸问题:
min⁡f0(x)=x12+x22s.t.fi(x)=x1≤0hi(x)=x1+x2=0 \begin{aligned} \min&& f_0(x)&=x_1^2+x_2^2\\ \text{s.t.}&&f_i(x)&=x_1\le0\\ &&h_i(x)&=x_1+x_2=0 \end{aligned} mins.t.f0(x)fi(x)hi(x)=x12+x22=x10=x1+x2=0

例2:

可以将等式约束消除,减少约束的维数。
min⁡f0(Fz+x0)s.t.fi(Fz+x0)=0i=1⋯m \begin{aligned} \min&& f_0(Fz+x_0)\\ \text{s.t.}&&f_i(Fz+x_0)&=0\qquad i=1\cdots m\\ \end{aligned} mins.t.f0(Fz+x0)fi(Fz+x0)=0i=1m

例3:

min⁡f0(x)s.t.Si≤0fi(x)−Si=0i=1⋯maiTx−bi=0i=1⋯p \begin{aligned} \min&& f_0(x)&\\ \text{s.t.}&&S_i&\le0\\ &&f_i(x)-S_i&=0\qquad i=1\cdots m\\ &&a_i^Tx-b_i&=0\qquad i=1\cdots p\\ \end{aligned} mins.t.f0(x)Sifi(x)SiaiTxbi0=0i=1m=0i=1p
松弛变量(增加维数和约束),转换为关于xxxSSS的函数,变换出特殊结构,变成更容易的问题。

例4:Quasi convex optimization\text{Quasi convex optimization}Quasi convex optimization拟凸优化问题

min⁡f0(x)s.t.fi(x)≤0i=1⋯mhi(x)=0i=1⋯p \begin{aligned} \min&& f_0(x)&\\ \text{s.t.}&&f_i(x)&\le0\qquad i=1\cdots m\\ &&h_i(x)&=0\qquad i=1\cdots p\\ \end{aligned} mins.t.f0(x)fi(x)hi(x)0i=1m=0i=1p
其中目标函数是拟凸函数,约束是凸集。

例5:

max⁡f0(x)s.t.fi(x)≤0i=1⋯mhi(x)=0i=1⋯p \begin{aligned} \max&& f_0(x)&\\ \text{s.t.}&&f_i(x)&\le0\qquad i=1\cdots m\\ &&h_i(x)&=0\qquad i=1\cdots p\\ \end{aligned} maxs.t.f0(x)fi(x)hi(x)0i=1m=0i=1p
若目标函数是凹函数,约束为凸集,那么此形式的问题依然是凸问题。

二、凸优化问题的性质和解几种凸优化问题的例子

1、凸问题的性质

1.局部最优解等于全局最优解。

2
若目标函数可微,由凸函数一阶条件得:
f0(y)≥f0(x)+∇f0(x)(y−x)∀x,y∈domf f_0(y)\ge f_0(x)+\nabla f_0(x)(y-x)\quad \forall x,y\in\text{dom}f f0(y)f0(x)+f0(x)(yx)x,ydomf
则:
x∗∈Xf最优⇔∇f0T(x∗)(y−x∗)≥0∀y∈Xf x^*\in X_f最优\Leftrightarrow \nabla f_0^T(x^*)(y-x^*)\ge0\quad\forall y\in X_f xXff0T(x)(yx)0yXf

2、一些例子

例1:约束仅为等式约束
min⁡f0(x)s.t.Ax=b \begin{aligned} \min&& f_0(x)&\\ \text{s.t.} &&\textbf Ax&=b \end{aligned} mins.t.f0(x)Ax=b
由性质2得:
∇f0(x)(y−x)≥0∀y−x∗=v∈N(A) \nabla f_0(x)(y-x)\ge0 \quad \forall y-x^*=v\in N(\textbf A) f0(x)(yx)0yx=vN(A)
N(A)N(\textbf A)N(A)表示A\textbf AA的化零空间。
可以得到:
v=0v=0v=0A\textbf AA可逆,x=A−1bx=\textbf A^{-1}bx=A1b。(可行解空间退化成一个点)
∇f0(x)\nabla f_0(x)f0(x)N(A)N(\textbf A)N(A)正交。

例2;约束仅为非负约束
min⁡f0(x)s.t.x≥0 \begin{aligned} \min&& f_0(x)&\\ \text{s.t.}&&x&\ge0 \end{aligned} mins.t.f0(x)x0
由性质2得:
∇f0(x)y−∇f0(x)x≥0 \nabla f_0(x)y-\nabla f_0(x)x\ge0 f0(x)yf0(x)x0
分析上式得:
①若∀i(∇f0(x))i<0\forall i\big(\nabla f_0(x)\big)_i<0i(f0(x))i<0,则∇f0(x)y\nabla f_0(x)yf0(x)y必可以取无穷小,必有∇f0(x)≥0\nabla f_0(x)\ge0f0(x)0,因为y≥0y\ge0y0,这个函数是关于yyy线性的。
②根据①进一步分析得∇f0(x)x≤0\nabla f_0(x)x\le0f0(x)x0
③由x≥0x\ge0x0结合①②得∇f0(x)x=0\nabla f_0(x)x=0f0(x)x=0

{x≥0∇f0(x)≥0⇔x为最优解∇f0(x)=0 \begin{cases} x\ge0\\ \nabla f_0(x)\ge0\qquad\Leftrightarrow x为最优解\\ \nabla f_0(x)=0 \end{cases} x0f0(x)0xf0(x)=0

个人思考

这是第一次接触到解凸函数的问题,需要好好掌握一下这里面的思想。事实上,直接优化一个函数,还是带约束的,是一个比较麻烦的问题,通过找出等价条件直接解是比较好的。

纸质笔记

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值