optimization problem in standard form
目标函数: min x f 0 ( x ) \min\limits_x f_0(x) xminf0(x)
满足条件: s u b j e c t t o ( s . t ) { f i ( x ) ≤ 0 , i = 1 , . . . , m h i ( x ) = 0 , i = 1 , . . . , p subject to(s.t)\begin{cases}f_i(x)\leq0,i=1,...,m \\ h_i(x)=0,i=1,...,p\end{cases} subjectto(s.t){fi(x)≤0,i=1,...,mhi(x)=0,i=1,...,p
含义/名称 | 数学表达 |
---|---|
变量decision var | x ∈ R n x\isin R^n x∈Rn |
目标函数/损失函数lost function | f 0 : R n ⟹ R f_0:R^n\implies R f0:Rn⟹R |
不等式约束函数inequality constraint function | f i : R n ⟹ R , i = 1 , . . . , m f_i:R^n\implies R,i=1,...,m fi:Rn⟹R,i=1,...,m |
等式约束函数equality constraint function | h i : R n ⟹ R , i = 1 , . . . , p h_i:R^n\implies R,i=1,...,p hi:Rn⟹R,i=1,...,p |
能取到的最小值(极限值)optimal value | p ∗ = inf x { f 0 ( x ) ∥ f i ( x ) ≤ 0 , h j ( x ) = 0 , i = 1 , . . . , m , j = 1 , . . . , p } p^*=\inf\limits_x\{f_0(x) \| f_i(x)\leq 0,h_j(x)=0,i=1,...,m,j=1,...,p\} p∗=xinf{f0(x)∥fi(x)≤0,hj(x)=0,i=1,...,m,j=1,...,p} 【如果问题无解则 p ∗ = ∞ p^*=\infty p∗=∞;问题无下界则 p ∗ = − ∞ p^*=-\infty p∗=−∞】 |
定义1:非空集合里存在满足约束的元素x,且x属于 f 0 f_0 f0的定义域内( x ∈ d o m f 0 x\isin domf_0 x∈domf0)。
定义2:非空集里的元素x使得 f 0 ( x ) = p ∗ ( 就 是 ∞ ) f_0(x)=p^*(就是\infty) f0(x)=p∗(就是∞),那么x就是目标函数的最优点。
定义3: X o p t 是 最 优 点 x 的 集 合 X_{opt}是最优点x的集合 Xopt是最优点x的集合。(极值表现为某一段水平线)
定义4:如果存在 R > 0 R>0 R>0且满足 x 0 是 f 0 ( x ) x_0是f_0(x) x0是f0(x)的最优点 ( s . t { f i ( x ) ≤ 0 , i = 1 , . . . , m h j ( x ) = 0 , j = 1 , . . . , p ∣ ∣ x − x 0 ∣ ∣ 2 ≤ R ) \begin{pmatrix}s.t \begin{cases}f_i(x)\leq0,i=1,...,m \\ h_j(x)=0,j=1,...,p \\ ||x-x_0||_2\leq R\end{cases}\end{pmatrix} ⎝⎜⎛s.t⎩⎪⎨⎪⎧fi(x)≤0,i=1,...,mhj(x)=0,j=1,...,p∣∣x−x0∣∣2≤R⎠⎟⎞,那么 x 0 x_0 x0就是局部最优点。(多个极值)
例子:
1. f 0 ( x ) = 1 x , d o m f 0 = R + + ( 正 半 轴 ) ; p ∗ = inf x { f 0 ( x ) = 1 x ∣ x ∈ R + + } = 0 ; 极 限 值 是 0 , 但 取 不 到 x 的 准 确 值 , 所 以 没 有 最 优 点 f_0(x)=\frac{1}{x},domf_0=R_{++}(正半轴);p^*=\inf\limits_x\{ f_0(x)=\frac{1}{x} | x\isin R_{++}\}=0;极限值是0,但取不到x的准确值,所以没有最优点 f0(x)=x1,domf0=R++(正半轴);p∗=xinf{f0(x)=x1∣x∈R++}=0;极限值是0,但取不到x的准确值,所以没有最优点
2. f 0 ( x ) = − log x , d o m f 0 = R + + ( 正 半 轴 ) ; p ∗ = − ∞ ; 问 题 答 案 无 下 界 , 没 有 最 优 点 f_0(x)=-\log{x},domf_0=R_{++}(正半轴);p^*=-\infty;问题答案无下界,没有最优点 f0(x)=−logx,domf0=R++(正半轴);p∗=−∞;问题答案无下界,没有最优点
3. f 0 ( x ) = − x log x , d o m f 0 = R + + ; ( f 0 ′ ( x ) 的 零 点 x = 1 e , f 0 ′ ′ ( x ) < 0 , f 0 ( 1 e ) 是 极 大 值 ) p ∗ = 1 e ; 最 优 点 就 是 x = 1 e f_0(x)=-x\log{x},domf_0=R_{++};(f_0'(x)的零点x=\frac{1}{e},f_0''(x)<0,f_0(\frac{1}{e})是极大值)p^*=\frac{1}{e};最优点就是x=\frac{1}{e} f0(x)=−xlogx,domf0=R++;(f0′(x)的零点x=e1,f0′′(x)<0,f0(e1)是极大值)p∗=e1;最优点就是x=e1
4. f 0 ( x ) = x 3 − 3 x , d o m f 0 = R ; p ∗ = − ∞ ; 但 是 存 在 局 部 最 小 值 x = 1 f_0(x)=x^3-3x,domf_0=R;p^*=-\infty;但是存在局部最小值x=1 f0(x)=x3−3x,domf0=R;p∗=−∞;但是存在局部最小值x=1
定义: x ∈ D = ⋂ i = 0 m d o m f i ∩ ⋂ i = 1 p d o m h i x\isin D=\bigcap\limits_{i=0}^{m}dom f_i\cap\bigcap\limits_{i=1}^p dom h_i x∈D=i=0⋂mdomfi∩i=1⋂pdomhi
其中,D是问题的定义域, f i ( x ) ≤ 0 , h i ( x ) = 0 f_i(x)\leq 0,h_i(x)=0 fi(x)≤0,hi(x)=0是显式约束,没有显式约束(m=p=0)的问题就是无约束unconstrained问题。
例如:
min f 0 ( x ) = − ∑ i = 1 k log ( b i − a i T x ) , l o g 函 数 的 定 义 域 隐 性 要 求 a i T x < b i \min{f_0(x)}=-\sum_{i=1}^k \log{(b_i-a_i^Tx)},log函数的定义域隐性要求a_i^Tx
含义:找满足显式条件的元素x,多个x构成一个集合。
定义:找 x , s . t { f i ( x ) ≤ 0 h i ( x ) = 0 ⟺ 使 得 最 小 f 0 ( x ) = 0 , 满 足 { f i ( x ) ≤ 0 h i ( x ) = 0 x,s.t\begin{cases}f_i(x)\leq 0 \\ h_i(x)=0\end{cases}\iff 使得最小f_0(x)=0,满足\begin{cases}f_i(x)\leq 0 \\ h_i(x)=0\end{cases} x,s.t{fi(x)≤0hi(x)=0⟺使得最小f0(x)=0,满足{fi(x)≤0hi(x)=0
其中,如果可行解存在,那么 p ∗ = 0 且 ∀ x 都 是 最 优 点 p^*=0且\forall x都是最优点 p∗=0且∀x都是最优点;如果可行解不存在,那么 p ∗ = ∞ p^*=\infty p∗=∞。
希望避免存在多个局部最优
定义: min x f 0 ( x ) , s . t { f i ( x ) ≤ 0 , i = 1 , . . . , m h i ( x ) = 0 , i = 1 , . . . , p \min\limits_x f_0(x),s.t \begin{cases}f_i(x)\leq0,i=1,...,m \\ h_i(x)=0,i=1,...,p\end{cases} xminf0(x),s.t{fi(x)≤0,i=1,...,mhi(x)=0,i=1,...,p
其中
f i ( x ) 是 凸 函 数 c o n v e x , i = 0 , . . . , m f_i(x)是凸函数convex,i=0,...,m fi(x)是凸函数convex,i=0,...,m; h i ( x ) 是 仿 射 函 数 a f f i n e , i = 1 , . . . , p h_i(x)是仿射函数affine,i=1,...,p hi(x)是仿射函数affine,i=1,...,p;可行解集是凸集,该问题是凸优化问题。
f i ( x ) 是 凸 函 数 c o n v e x , i = 1 , . . . , m f_i(x)是凸函数convex,i=1,...,m fi(x)是凸函数convex,i=1,...,m; h i ( x ) 是 仿 射 函 数 a f f i n e , i = 1 , . . . , p h_i(x)是仿射函数affine,i=1,...,p hi(x)是仿射函数affine,i=1,...,p; f 0 ( x ) 是 次 凸 函 数 f_0(x)是次凸函数 f0(x)是次凸函数,该问题是次凸优化问题。
例子:转化为凸优化问题
min f 0 ( x ) = x 1 2 + x 2 2 , s . t { f 1 ( x ) = x 1 1 + x 2 2 ≤ 0 h 1 ( x ) = ( x 1 + x 2 ) 2 = 0 \min f_0(x)=x_1^2+x_2^2,s.t \begin{cases} f_1(x)=\frac{x_1}{1+x_2^2}\leq 0 \\ h_1(x)=(x_1+x_2)^2=0\end{cases} minf0(x)=x12+x22,s.t{f1(x)=1+x22x1≤0h1(x)=(x1+x2)2=0
易知:
1.二次函数 f 0 ( x ) f_0(x) f0(x)是凸函数 ⟹ \implies ⟹可行解( x 1 = − x 2 x_1=-x_2 x1=−x2)是凸集
2.但 f 1 ( x ) f_1(x) f1(x)不是凸函数, h 1 ( x ) h_1(x) h1(x)不是affine函数 ⟹ \implies ⟹该问题不是凸优化问题
3.因为 f 1 ( x ) f_1(x) f1(x)的分母永远大于0,所以可以改写为: min x 1 2 + x 2 2 ( s . t x 1 ≤ 0 , x 1 + x 2 = 0 ) \min{x_1^2+x_2^2}(s.t\space x_1\leq 0,x_1+x_2=0) minx12+x22(s.t x1≤0,x1+x2=0)。这样就可以满足凸优化问题的条件了。
定理:凸优化问题的任意一个局部最优点就是全局最优点。
证明:反证+局部最优的可行解定义+凸函数的基本性质
假设,x是局部最优值,但是y是全局最优,符合 f 0 ( y ) < f 0 ( x ) f_0(y)
根据局部最优,可行解z满足 f 0 ( x ) ≤ f 0 ( z ) , ∣ ∣ z − x ∣ ∣ 2 ≤ R f_0(x)\leq f_0(z),||z-x||_2\leq R f0(x)≤f0(z),∣∣z−x∣∣2≤R
设 z = θ y + ( 1 − θ ) x , 且 ∣ ∣ z − x ∣ ∣ 2 = R 2 ≤ R z=\theta y+(1-\theta)x,且||z-x||_2=\frac{R}{2}\leq R z=θy+(1−θ)x,且∣∣z−x∣∣2=2R≤R
代入z到等式中 ∣ ∣ θ ( y − x ) ∣ ∣ 2 = R 2 ⟹ θ = R 2 ∣ ∣ y − x ∣ ∣ 2 ||\theta(y-x)||_2=\frac{R}{2}\implies \theta=\frac{R}{2||y-x||_2} ∣∣θ(y−x)∣∣2=2R⟹θ=2∣∣y−x∣∣2R
由凸函数的性质,得到 f 0 ( z ) = f 0 ( θ y + ( 1 − θ ) x ) ≤ θ f 0 ( y ) + ( 1 − θ ) f 0 ( x ) f_0(z)=f_0(\theta y+(1-\theta)x)\leq\theta f_0(y)+(1-\theta)f_0(x) f0(z)=f0(θy+(1−θ)x)≤θf0(y)+(1−θ)f0(x)
加上条件 f 0 ( y ) < f 0 ( x ) f_0(y)
综上,x是局部最优,就不存在其他的全局最优,也就是x是全局最优点。
Optimality criterion for differentiable f 0 f_0 f0
定义: f 0 ( x ) 可 导 f_0(x)可导 f0(x)可导
x , y ∈ x,y\isin x,y∈可行解,且 ∀ y , 有 ▽ f 0 ( x ) T ( y − x ) ≥ 0 ⟺ x \forall y,有\triangledown f_0(x)^T(y-x)\geq 0\iff x ∀y,有▽f0(x)T(y−x)≥0⟺x是最优点
性质:
1.可行解集X是凸集
2. − ▽ f 0 ( x ) -\triangledown f_0(x) −▽f0(x)是函数下降的方向,说明沿下降方向已无更优可行解
3. − ▽ f 0 ( x ) -\triangledown f_0(x) −▽f0(x)定义出一个(垂直)的支撑面supporting hyperplane
定义: x ∈ d o m f 0 , ▽ f 0 ( x ) = 0 ⟺ x x\isin dom f_0,\triangledown f_0(x)=0\iff x x∈domf0,▽f0(x)=0⟺x是最优点
[不知道是不是和拉格朗日对偶相关?]
定义:凸优化问题 min f 0 ( x ) , s . t A x = b \min{f_0(x)},s.t\space Ax=b minf0(x),s.t Ax=b
∃ μ , s . t x ∈ d o m f 0 , A x = b , ▽ f 0 ( x ) = A T μ ⟺ x \exist \mu,s.t\space x\isin domf_0,Ax=b,\triangledown f_0(x)=A^T\mu\iff x ∃μ,s.t x∈domf0,Ax=b,▽f0(x)=ATμ⟺x是最优点
证明:
根据可微函数最优点x的不等式性质 ▽ f 0 ( x ) T ( y − x ) ≥ 0 \triangledown f_0(x)^T(y-x)\geq 0 ▽f0(x)T(y−x)≥0
再构造一个 ▽ f 0 ( x ) T ( − ( y − x ) ) ≤ 0 \triangledown f_0(x)^T(-(y-x))\leq 0 ▽f0(x)T(−(y−x))≤0【这里的构造有点没懂,等之后补充】
使得等式 ▽ f 0 ( x ) T ( y − x ) = 0 \triangledown f_0(x)^T(y-x)=0 ▽f0(x)T(y−x)=0成立
于是说明 ▽ f 0 ( x ) T μ = ( A T μ ) T μ = μ T A μ = 0 \triangledown f_0(x)^T\mu=(A^T\mu)^T\mu=\mu^TA\mu=0 ▽f0(x)Tμ=(ATμ)Tμ=μTAμ=0
【 设 μ = y − x , A = ( a 1 T a 2 T . . . a n T ) , A T 是 A 的 行 向 量 】 【设\mu=y-x,A=\begin{pmatrix} a_1^T\\ a_2^T \\ ... \\ a_n^T \end{pmatrix},A^T是A的行向量】 【设μ=y−x,A=⎝⎜⎜⎛a1Ta2T...anT⎠⎟⎟⎞,AT是A的行向量】
这个等式说明 ▽ f 0 ( x ) T ∈ { { a 1 , a 2 , . . . , a n } 的 张 成 空 间 } \triangledown f_0(x)^T\isin\{ \{a_1,a_2,...,a_n\}的张成空间\} ▽f0(x)T∈{{a1,a2,...,an}的张成空间}
且 ▽ f 0 ( x ) = ∑ i μ i a i = A T μ , μ \triangledown f_0(x)=\sum\limits_i\mu_ia_i=A^T\mu,\mu ▽f0(x)=i∑μiai=ATμ,μ与张成空间垂直。
非负象限的最小化minimization over nonnegative orthant
定义:凸优化问题 min f 0 ( x ) , s . t { x ≥ 0 d o m f 0 = R + n \min{f_0(x)},s.t\begin{cases} x\geq0 \\ domf_0=R_+^n \end{cases} minf0(x),s.t{x≥0domf0=R+n
x ∈ d o m f 0 , x ≥ 0 , { ▽ T f 0 ( x ) i ≥ 0 x i = 0 ▽ T f 0 ( x ) i = 0 x i > 0 ⟺ x x\isin domf_0,x\geq 0,\begin{cases} \triangledown^Tf_0(x)_i\geq 0 & x_i=0 \\ \triangledown^Tf_0(x)_i=0&x_i>0 \end{cases}\iff x x∈domf0,x≥0,{▽Tf0(x)i≥0▽Tf0(x)i=0xi=0xi>0⟺x是最优点
证明:
根据可微函数最优点x的不等式性质 ▽ f 0 ( x ) T ( y − x ) ≥ 0 【 附 加 条 件 x ≥ 0 , ∀ y ≥ 0 】 ⟹ ▽ f 0 ( x ) T y ≥ ▽ f 0 ( x ) T x \triangledown f_0(x)^T(y-x)\geq 0【附加条件x\geq 0,\forall y\geq 0】\implies \triangledown f_0(x)^Ty\geq\triangledown f_0(x)^Tx ▽f0(x)T(y−x)≥0【附加条件x≥0,∀y≥0】⟹▽f0(x)Ty≥▽f0(x)Tx
明显 ▽ f 0 ( x ) T x \triangledown f_0(x)^Tx ▽f0(x)Tx是一个固定(最优点x)的值,设为 K K K。
接下来讨论 ▽ f 0 ( x ) T y \triangledown f_0(x)^Ty ▽f0(x)Ty的正负:
假设 ▽ f 0 ( x ) T y < 0 \triangledown f_0(x)^Ty<0 ▽f0(x)Ty<0,存在一个特别大的 α > 0 \alpha>0 α>0,将这个负数乘积到最小,将会出现 α ∗ ▽ f 0 ( x ) T y < K ( 就 是 ▽ f 0 ( x ) T x ) \alpha*\triangledown f_0(x)^Ty
接下来讨论 y y y的取值:
假设 y > 0 y>0 y>0,那么 ▽ f 0 ( x ) T y ≥ 0 ⟹ ▽ f 0 ( x ) T ≥ 0 \triangledown f_0(x)^Ty\geq 0\implies \triangledown f_0(x)^T\geq 0 ▽f0(x)Ty≥0⟹▽f0(x)T≥0;
假设 y = 0 y=0 y=0,那么 ▽ f 0 ( x ) T y = 0 ≥ ▽ f 0 ( x ) T x 【 x ≥ 0 】 \triangledown f_0(x)^Ty=0\geq \triangledown f_0(x)^Tx【x\geq 0】 ▽f0(x)Ty=0≥▽f0(x)Tx【x≥0】
⇒ 为 了 寻 找 临 界 − K K T 附 加 条 件 ▽ f 0 ( x ) T x = 0 ⟺ { ▽ T f 0 ( x ) i ≥ 0 x i = 0 ▽ T f 0 ( x ) i = 0 x i > 0 \xRightarrow{为了寻找临界-KKT附加条件} \triangledown f_0(x)^Tx=0\iff\begin{cases} \triangledown^Tf_0(x)_i\geq 0 & x_i=0 \\ \triangledown^Tf_0(x)_i=0&x_i>0 \end{cases} 为了寻找临界−KKT附加条件▽f0(x)Tx=0⟺{▽Tf0(x)i≥0▽Tf0(x)i=0xi=0xi>0
两个问题A和B的解,A的解可以从B的解中立即得到,且B的解也可以从A的解立即得到,那么两个问题A和B就等价。
定义:凸优化问题 A ⟺ B A\iff B A⟺B
min f 0 ( x ) , s . t { f i ( x ) ≤ 0 , i = 1 , . . . , m A x = b ( 准 备 被 消 除 的 部 分 ) \min{f_0(x)},s.t\begin{cases} f_i(x)\leq 0,i=1,...,m \\ Ax=b(准备被消除的部分) \end{cases} minf0(x),s.t{fi(x)≤0,i=1,...,mAx=b(准备被消除的部分)
⇔ x = F z + x 0 min f 0 ( F z + x 0 ) , s . t f i ( F z + x 0 ) ≤ 0 , i = 1 , . . . , m \xLeftrightarrow{x=Fz+x_0}\min{f_0(Fz+x_0)},s.t\space f_i(Fz+x_0)\leq 0,i=1,...,m x=Fz+x0 minf0(Fz+x0),s.t fi(Fz+x0)≤0,i=1,...,m
证明:
容易搜索得到 A x = b Ax=b Ax=b的一个特解 A x 0 = b Ax_0=b Ax0=b
再假设出齐次方程组的解(零空间) A v = 0 , F = { v 1 , v 2 , . . . , v k } Av=0,F=\{v_1,v_2,...,v_k\} Av=0,F={v1,v2,...,vk}
根据非齐次方程组的解,可以假设存在系数 z = { z 1 , z 2 , . . . , z k } z=\{z_1,z_2,...,z_k\} z={z1,z2,...,zk},使得 x = ∑ i = 1 k v i z i + x 0 = F z + x 0 x=\sum\limits_{i=1}^kv_iz_i+x_0=Fz+x_0 x=i=1∑kvizi+x0=Fz+x0是原方程的一种解(变成仿射函数的形式)
于是只要替换掉 x x x,就可以保证 A x = b Ax=b Ax=b成立。
定义:凸优化问题 A ⟺ B A\iff B A⟺B
min f 0 ( A 0 x + b 0 ) , s . t f i ( A i x + b i ) ≤ 0 , i = 1 , . . . , m \min{f_0(A_0x+b_0)},s.t\space f_i(A_ix+b_i)\leq 0,i=1,...,m minf0(A0x+b0),s.t fi(Aix+bi)≤0,i=1,...,m
⇔ y i = A i x + b i min f 0 ( y 0 ) , s . t { f i ( y i ) ≤ 0 , i = 1 , . . . , m y i = A i x + b i , i = 0 , 1 , . . . , m \xLeftrightarrow{y_i=A_ix+b_i}\min{f_0(y_0)},s.t\begin{cases} f_i(y_i)\leq 0,i=1,...,m \\ y_i=A_ix+b_i,i=0,1,...,m \end{cases} yi=Aix+bi minf0(y0),s.t{fi(yi)≤0,i=1,...,myi=Aix+bi,i=0,1,...,m
引入一个松弛因子 y 0 = A 0 x + b 0 y_0=A_0x+b_0 y0=A0x+b0和m个哑变量 s i s_i si(slack variables)
定义:凸优化问题 A ⟺ B A\iff B A⟺B
min f 0 ( x ) , s . t a i T x ≤ b i , i = 1 , . . . , m \min{f_0(x)},s.t\space a_i^Tx\leq b_i,i=1,...,m minf0(x),s.t aiTx≤bi,i=1,...,m
⇔ 引 入 s i min f 0 ( x ) , s . t { a i T x + s i = b i , i = 1 , . . . , m s i ≥ 0 , i = 1 , . . . , m \xLeftrightarrow{引入s_i}\min{f_0(x)},s.t\begin{cases} a_i^Tx+s_i=b_i,i=1,...,m \\ s_i\geq 0,i=1,...,m \end{cases} 引入si minf0(x),s.t{aiTx+si=bi,i=1,...,msi≥0,i=1,...,m
定义:凸优化问题的epigraph形式
【 求 f 0 最 小 值 , 变 成 求 t 最 小 值 : { ( f 0 ( x ) , t ) ∣ f 0 ( x ) < t } 求f_0最小值,变成求t最小值:\{(f_0(x),t)|f_0(x)
min ( x , t ) t , s . t { f 0 ( x ) − t ≤ 0 ( 凸 函 数 ) f i ( x ) ≤ 0 , i = 1 , . . . , m A x = b \min\limits_{(x,t)}{t},s.t\begin{cases} f_0(x)-t\leq 0(凸函数) \\ f_i(x)\leq 0,i=1,...,m \\ Ax=b \end{cases} (x,t)mint,s.t⎩⎪⎨⎪⎧f0(x)−t≤0(凸函数)fi(x)≤0,i=1,...,mAx=b
在处理有约束变量之前,将无约束(不影响最小化结果)变量先最优化(两个变量的例子如下)
定义:凸优化问题 A ⟺ B A\iff B A⟺B
min f 0 ( x 1 , x 2 ) , s . t f i ( x 1 ) ≤ 0 , i = 1 , . . . , m \min{f_0(x_1,x_2)},s.t\space f_i(x_1)\leq 0,i=1,...,m minf0(x1,x2),s.t fi(x1)≤0,i=1,...,m
⇔ 处 理 掉 x 2 【 f 0 ~ ( x 1 ) = inf x 2 f 0 ( x 1 , x 2 ) 】 \xLeftrightarrow{处理掉x_2【\widetilde{f_0}(x_1)=\inf\limits_{x_2}f_0(x_1,x_2)】} 处理掉x2【f0 (x1)=x2inff0(x1,x2)】
min f 0 ~ ( x 1 ) , s . t f i ( x 1 ) ≤ 0 , i = 1 , . . . , m \min{\widetilde{f_0}(x_1)},s.t\space f_i(x_1)\leq 0,i=1,...,m minf0 (x1),s.t fi(x1)≤0,i=1,...,m
定义:次凸函数的定义域和水平集都是凸集,只有一个最小的极小值,可以有多个局部极值,满足 S α = { x ∈ d o m f ∣ f ( x ) ≤ α } S_\alpha=\{x\isin domf|f(x)\leq \alpha\} Sα={x∈domf∣f(x)≤α},该函数的水平集要求是连续的区间都符合这个要求,不存在某个水平线将函数分割为多个局部极小值。
次凸函数的标准化定义: 次 凸 函 数 f 0 ( x ) , m 个 凸 函 数 f i ( x ) 次凸函数f_0(x),m个凸函数f_i(x) 次凸函数f0(x),m个凸函数fi(x)
min f 0 ( x ) , s . t { f i ( x ) ≤ 0 , i = 1 , . . . , m A x = b \min{f_0(x)},s.t\begin{cases} f_i(x)\leq 0,i=1,...,m \\ Ax=b \end{cases} minf0(x),s.t{fi(x)≤0,i=1,...,mAx=b
convex representation of sublevel sets of f 0 f_0 f0
对 于 一 个 次 凸 函 数 f 0 , 转 化 为 一 系 列 的 多 个 凸 函 数 ϕ t ( x ) , ∀ t 使 得 对 于 x 来 说 , f 0 ( x ) ≤ t ⟺ ϕ t ( x ) ≤ 0 对于一个次凸函数f_0,转化为一系列的多个凸函数\phi_t(x),\forall t使得对于x来说,f_0(x)\leq t\iff \phi_t(x)\leq0 对于一个次凸函数f0,转化为一系列的多个凸函数ϕt(x),∀t使得对于x来说,f0(x)≤t⟺ϕt(x)≤0
比如: ϕ ( x ) = { 0 f ( x ) ≤ t ∞ f ( x ) > t \phi(x)=\begin{cases} 0&f(x)\leq t\\ \infty& f(x)>t \end{cases} ϕ(x)={0∞f(x)≤tf(x)>t
举例:
设 f 0 ( x ) = p ( x ) q ( x ) , ∀ x ∈ d o m f f_0(x)=\frac{p(x)}{q(x)},\forall x\isin domf f0(x)=q(x)p(x),∀x∈domf
凸 函 数 p ( x ) ≥ 0 ( 且 p ′ ′ ( x ) > 0 ) , 凹 函 数 q ( x ) > 0 ( 且 q ′ ′ ≤ 0 ) 凸函数p(x)\geq 0(且p''(x)>0),凹函数q(x)>0(且q''\leq 0) 凸函数p(x)≥0(且p′′(x)>0),凹函数q(x)>0(且q′′≤0)
先验证 f 0 ( x ) f_0(x) f0(x)是次凸函数
令 f 0 ′ ( x ) = p ′ q − p q ′ q 2 = 0 , 有 f 0 ′ ′ ( x ) = ( p ′ ′ q − p q ′ ′ ) q 2 − 2 q q ′ ( p ′ q − p q ′ ) q 4 = p ′ ′ q − p q ′ ′ q 2 > 0 , 令f'_0(x)=\frac{p'q-pq'}{q^2}=0,有f''_0(x)=\frac{(p''q-pq'')q^2-2qq'(p'q-pq')}{q^4}=\frac{p''q-pq''}{q^2}>0, 令f0′(x)=q2p′q−pq′=0,有f0′′(x)=q4(p′′q−pq′′)q2−2qq′(p′q−pq′)=q2p′′q−pq′′>0,所以根据充分条件可知, f 0 ( x ) f_0(x) f0(x)是次凸函数
⟹ \implies ⟹次凸函数的水平集 f 0 ( x ) ≤ t ⟺ p ( x ) ≤ t q ( x ) f_0(x)\leq t\iff p(x)\leq tq(x) f0(x)≤t⟺p(x)≤tq(x)
⟹ \implies ⟹设 ϕ t ( x ) = p ( x ) − t q ( x ) , 发 现 是 凸 函 数 , 于 是 化 为 求 解 ϕ t ( x ) ≤ 0 \phi_t(x)=p(x)-tq(x),发现是凸函数,于是化为求解\phi_t(x)\leq 0 ϕt(x)=p(x)−tq(x),发现是凸函数,于是化为求解ϕt(x)≤0
次凸问题转化为一个可行域问题(1):
f i n d x , s . t { ϕ t ( x ) ≤ 0 f i ( x ) ≤ 0 , i = 1 , . . . , m A x = b ( 1 ) find\space x,s.t\begin{cases}\phi_t(x)\leq 0 \\ f_i(x)\leq 0,i=1,...,m \\ Ax=b \end{cases}\space(1) find x,s.t⎩⎪⎨⎪⎧ϕt(x)≤0fi(x)≤0,i=1,...,mAx=b (1)
存在 f 0 f_0 f0的最小值 p ∗ p^* p∗
定义:凸优化问题 min c T x + d , s . t { G x ≤ h A x = b G 是 行 满 秩 [ m = n 时 是 唯 一 解 ] \min{c^Tx+d},s.t\begin{cases} Gx\leq h \\ Ax=b \end{cases}\quad G是行满秩[m=n时是唯一解] mincTx+d,s.t{Gx≤hAx=bG是行满秩[m=n时是唯一解]
可行域是一个多面体,优化目标是一个等值面,沿梯度下降的方向移动,直到遇到临界边角.
举例:购买营养丰富的食物代价最小化
c j 表 示 食 物 j 的 代 价 , x j 表 示 食 物 j 的 数 量 , a i j 表 示 食 物 j 的 第 i 类 营 养 的 含 量 , b i 是 各 类 营 养 的 要 求 c_j表示食物j的代价,x_j表示食物j的数量,a_{ij}表示食物j的第i类营养的含量,b_{i}是各类营养的要求 cj表示食物j的代价,xj表示食物j的数量,aij表示食物j的第i类营养的含量,bi是各类营养的要求
min c T x , s . t { x ≥ 0 A x ≥ b \min{c^Tx},s.t\begin{cases} x\geq 0 \\ Ax\geq b \end{cases} mincTx,s.t{x≥0Ax≥b
定义:凸优化问题 m i n max i = 1 , . . . , m a i T x + b i min\max_{i=1,...,m}{a_i^Tx+b_i} minmaxi=1,...,maiTx+bi
⟺ \iff ⟺ min t , s . t a i T x + b i ≤ t , i = 1 , . . . , m \min{t},s.t\space a_i^Tx+b_i\leq t,i=1,...,m mint,s.t aiTx+bi≤t,i=1,...,m
举例:多面体的切比雪夫中心内置球的最大化
r表示内置球的半径 , a i 表 示 各 个 方 向 , x c 表 示 切 比 雪 夫 中 心 坐 标 ,a_i表示各个方向,x_c表示切比雪夫中心坐标 ,ai表示各个方向,xc表示切比雪夫中心坐标
max r , s . t a i T x c + r ∣ ∣ a i ∣ ∣ 2 ≤ b i , i = 1 , . . . , m \max{r},s.t\space a_i^Tx_c+r||a_i||_2\leq b_i,i=1,...,m maxr,s.t aiTxc+r∣∣ai∣∣2≤bi,i=1,...,m
定义:次凸优化问题 min f 0 ( x ) = c T x + d e T x + f , s . t { G x ≤ h A x = b , d o m f 0 ( x ) = { x ∣ e T x + f > 0 } \min{f_0(x)=\frac{c^Tx+d}{e^Tx+f}},s.t\begin{cases} Gx\leq h \\ Ax=b \end{cases},domf_0(x)=\{x|e^Tx+f>0\} minf0(x)=eTx+fcTx+d,s.t{Gx≤hAx=b,domf0(x)={x∣eTx+f>0}
可以通过变量替换变成次凸问题的形式 y = x e T x + f , z = 1 e T x + f , x = y z y=\frac{x}{e^Tx+f},z=\frac{1}{e^Tx+f},x=\frac{y}{z} y=eTx+fx,z=eTx+f1,x=zy
min c T y + d z , s . t { G y ≤ h z A y = b z e T y + f z = 1 z ≥ 0 \min c^Ty+dz,s.t\begin{cases} Gy\leq hz \\ Ay=bz \\ e^Ty+fz=1 \\ z\geq 0 \end{cases} mincTy+dz,s.t⎩⎪⎪⎪⎨⎪⎪⎪⎧Gy≤hzAy=bzeTy+fz=1z≥0
然后通过二分法求解极小值点 p ∗ p^* p∗
定义:次凸优化问题 f 0 ( x ) = max i = 1 , . . . , r c i T x + d i e i T x + f i , d o m f 0 ( x ) = { x ∣ e i T x + f i > 0 , i = 1 , . . . , r } {f_0(x)=\max\limits_{i=1,...,r}{\frac{c_i^Tx+d_i}{e_i^Tx+f_i}}},domf_0(x)=\{x|e_i^Tx+f_i>0,i=1,...,r\} f0(x)=i=1,...,rmaxeiTx+ficiTx+di,domf0(x)={x∣eiTx+fi>0,i=1,...,r},可以通过二分法求解
例子:稳健成长经济的冯诺依曼模型Von Neumann model
定义:二次凸优化函数 min 1 2 x T P x + q T x + r , s . t { G x ≤ h A x = b P ∈ S + n ( 半 正 定 的 对 称 矩 阵 ) \min{\frac{1}{2}x^TPx+q^Tx+r},s.t\begin{cases}Gx\leq h \\ Ax=b \\ P\isin S_+^n(半正定的对称矩阵)\end{cases} min21xTPx+qTx+r,s.t⎩⎪⎨⎪⎧Gx≤hAx=bP∈S+n(半正定的对称矩阵)
目标函数是二次函数,所以是曲线形式(等值线),然后沿着负梯度方向(与等值线垂直),找到可行域的临界(最优解不一定在顶点)
接下来介绍两个样例:
定义:二次凸函数 A ⟺ B A\iff B A⟺B
P 1 = { x ∣ A 1 x < b 1 } , P 2 = { x ∣ A 2 x < b 2 } P_1=\{x|A_1x
d i s t ( P 1 , P 2 ) = inf { ∣ ∣ x 1 − x 2 ∣ ∣ 2 ∣ ∣ x 1 ∈ P 1 , x 2 ∈ P 2 } ⟺ min ∣ ∣ x 1 − x 2 ∣ ∣ 2 2 , s . t { A 1 x 1 ≤ b 1 A 2 x 2 ≤ b 2 dist(P_1,P_2)=\inf\{||x_1-x_2||_2||x_1\isin P_1,x_2\isin P_2\}\iff\min{||x_1-x_2||_2^2},s.t\begin{cases} A_1x_1\leq b_1 \\ A_2x_2\leq b_2\end{cases} dist(P1,P2)=inf{∣∣x1−x2∣∣2∣∣x1∈P1,x2∈P2}⟺min∣∣x1−x2∣∣22,s.t{A1x1≤b1A2x2≤b2
关于最小值:
定义:二次凸函数 min c ˉ T x + γ x T ∑ x = E ( c T x ) + γ v a r ( c T x ) , s . t { G x ≤ h A x = b \min{\bar{c}^Tx+\gamma x^T\sum x=E(c^Tx)+\gamma var(c^Tx)},s.t\begin{cases} Gx\leq h \\ Ax=b\end{cases} mincˉTx+γxT∑x=E(cTx)+γvar(cTx),s.t{Gx≤hAx=b
【噪音】
随机代价/变量 c c c, 均 值 E ( c ) = c ˉ , 方 差 v a r ( c ) = E [ ( c − c ˉ ) 2 ] = ∑ 均值E(c)=\bar{c},方差var(c)=E[(c-\bar{c})^2]=\sum 均值E(c)=cˉ,方差var(c)=E[(c−cˉ)2]=∑
【个人理解】
假设是投资问题,那么x就是本金,c就是带风险的回报率, γ \gamma γ指投资人的风险承受力
均 值 E ( c T x ) = c ˉ T x , 方 差 v a r ( c T x ) = E [ ( c T x − E ( c T x ) ) 2 ] = x T ∑ x 均值E(c^Tx)=\bar{c}^Tx,方差var(c^Tx)=E[(c^Tx-E(c^Tx))^2]=x^T\sum x 均值E(cTx)=cˉTx,方差var(cTx)=E[(cTx−E(cTx))2]=xT∑x
定义:二次凸函数 min ∣ ∣ A x − b ∣ ∣ 2 2 , s . t l ≤ x ≤ μ \min{||Ax-b||_2^2},s.t\quad l\leq x\leq \mu min∣∣Ax−b∣∣22,s.tl≤x≤μ
当没有限制条件下,有解析解 x = ( A T A ) − 1 A b x=(A^TA)^{-1}Ab x=(ATA)−1Ab
就是二次规划问题的一次线性不等式约束,变成二次的非线性不等式约束
定义:二次凸问题 min 1 2 x T P 0 x + q 0 T x + r 0 , s . t { 1 2 x T P i x + q i T x + r i ≤ 0 , i = 1 , . . . , m A x = b P i ∈ S + n ( 半 正 定 的 对 称 矩 阵 ) \min{\frac{1}{2}x^TP_0x+q_0^Tx+r_0},s.t\begin{cases} \frac{1}{2}x^TP_ix+q_i^Tx+r_i\leq 0,i=1,...,m\\ Ax=b \\P_i\isin S_+^n(半正定的对称矩阵)\end{cases} min21xTP0x+q0Tx+r0,s.t⎩⎪⎨⎪⎧21xTPix+qiTx+ri≤0,i=1,...,mAx=bPi∈S+n(半正定的对称矩阵)
特别的: P i ∈ S + + n ( 正 定 对 称 矩 阵 ) , 可 行 域 将 在 m 个 椭 圆 域 的 交 集 里 P_i\isin S_{++}^n(正定对称矩阵),可行域将在m个椭圆域的交集里 Pi∈S++n(正定对称矩阵),可行域将在m个椭圆域的交集里
二次非线性的不等式条件属于二阶锥域
定义:一次凸问题 min f T x , s . t { ∣ ∣ A i x + b i ∣ ∣ 2 ≤ c i T x + d i , i = 1 , . . . , m F x = g \min{f^Tx},s.t\begin{cases}||A_ix+b_i||_2\leq c_i^Tx+d_i,i=1,...,m\\ Fx=g \end{cases} minfTx,s.t{∣∣Aix+bi∣∣2≤ciTx+di,i=1,...,mFx=g
隐性限制 { A i ∈ R n i × n , A i 可 以 理 解 为 测 量 矩 阵 , 输 入 的 是 观 测 值 的 线 性 组 合 F ∈ R P × n , A i 和 F 都 可 以 是 非 方 阵 ( A i x + b i , c i T x + d i ) ∈ R n i + 1 ( 二 阶 锥 内 ) \begin{cases}A_i\isin R^{n_i\times n},A_i可以理解为测量矩阵,输入的是观测值的线性组合\\F\isin R^{P\times n},A_i和F都可以是非方阵\\(A_ix+b_i,c_i^Tx+d_i)\isin R^{n_i+1}(二阶锥内)\end{cases} ⎩⎪⎨⎪⎧Ai∈Rni×n,Ai可以理解为测量矩阵,输入的是观测值的线性组合F∈RP×n,Ai和F都可以是非方阵(Aix+bi,ciTx+di)∈Rni+1(二阶锥内)
SOC是二阶锥的限制,要求 ∣ ∣ f ( x ) ( x , t ) ∣ ∣ 2 ≤ t , s . t ∣ ∣ x ∣ ∣ 2 < t ||f(x)_{(x,t)}||_2\leq t,s.t\quad ||x||_2
A i = 0 ⟹ c i T x + d i ≥ b i A_i=0\implies c_i^Tx+d_i\geq b_i Ai=0⟹ciTx+di≥bi,就变成了LP问题
c i = 0 ⟹ ∣ ∣ A i x + b i ∣ ∣ 2 ≤ d i ⟹ ∣ ∣ A i x + b i ∣ ∣ 2 2 ≤ d i 2 c_i=0\implies ||A_ix+b_i||_2\leq d_i\implies||A_ix+b_i||_2^2\leq d_i^2 ci=0⟹∣∣Aix+bi∣∣2≤di⟹∣∣Aix+bi∣∣22≤di2,就变成了QCQP问题
原式 = ( A i x + b i ) T ( A i x + b i ) − d i 2 =(A_ix+b_i)^T(A_ix+b_i)-d_i^2 =(Aix+bi)T(Aix+bi)−di2
= x T A i T A i x + 2 b i A i x + b i 2 − d i 2 ( A i T A i ∈ S + n ) =x^TA_i^TA_ix+2b_iA_ix+b_i^2-d_i^2(A_i^TA_i\isin S_+^n) =xTAiTAix+2biAix+bi2−di2(AiTAi∈S+n)
思考: 当 c i ≠ 0 时 , 为 什 么 不 是 Q C Q P 问 题 ? 当c_i\neq0时,为什么不是QCQP问题? 当ci=0时,为什么不是QCQP问题?
因为存在隐性的线性不等式要求
∣ ∣ A i x + b i ∣ ∣ 2 ≤ c i T + d i ⟺ { ∣ ∣ A i x + b i ∣ ∣ 2 2 ≤ ( c i T x + d i ) 2 c i T x + d i ≥ 0 ||A_ix+b_i||_2\leq c_i^T+d_i\iff\begin{cases}||A_ix+b_i||_2^2\leq(c_i^Tx+d_i)^2 \\ c_i^Tx+d_i\geq 0\end{cases} ∣∣Aix+bi∣∣2≤ciT+di⟺{∣∣Aix+bi∣∣22≤(ciTx+di)2ciTx+di≥0
所以SOCP问题相对LP问题和QCQP问题更一般
以下讨论的优化问题中存在随机变量,即不确定性的参数 c , a i , b i c,a_i,b_i c,ai,bi
定义:凸优化问题 min c T x , s . t a i T x ≤ b i , i = 1 , . . . , m \min{c^Tx},s.t\quad a_i^Tx\leq b_i,i=1,...,m mincTx,s.taiTx≤bi,i=1,...,m
接下来针对不确定性参数 a i a_i ai进行处理,有以下两种方案。
利用确定性的模型,强制要求所有点都符合参数的限制: a i ∈ ε i a_i\isin\varepsilon_i ai∈εi
定义:凸优化问题 min c T x , s . t a i T x ≤ b i , ∀ a i ∈ ε i , i = 1 , . . . , m \min{c^Tx},s.t\quad a_i^Tx\leq b_i,\forall a_i\isin\varepsilon_i,i=1,...,m mincTx,s.taiTx≤bi,∀ai∈εi,i=1,...,m
要求有一定量的点符合线性不等式条件
定义:凸优化问题 min c T x , s . t p r o b ( a i T x ≤ b i ) ≥ η , i = 1 , . . . , m \min{c^Tx},s.t\quad prob(a_i^Tx\leq b_i)\geq\eta,i=1,...,m mincTx,s.tprob(aiTx≤bi)≥η,i=1,...,m