优化问题
-
无约束优化问题
min f ( x ) \min f(x) minf(x),由Fermat’s theorem可知,可微函数的极值点都是其驻点(必要条件),故令其导数为零即可求解,当然也可利用梯度下降算法求解;
-
等式约束优化问题
min f 0 ( x ) , s . t . , h i ( x ) = 0 , i = 1 , 2 , ⋯ , p \min f_0(x),\ \ s.t.,\ h_i(x)=0,\ i=1, 2,\cdots, p minf0(x), s.t., hi(x)=0, i=1,2,⋯,p对于这种情形我们常使用拉格朗日乘子法(Lagrange multiplier)求解;
-
不等式约束优化问题
min f 0 ( x ) \min f_0(x) minf0(x)
s . t . , h i ( x ) = 0 , i = 1 , 2 , ⋯ , p s.t.,\ h_i(x)=0,i=1, 2,\cdots,p s.t., hi(x)=0,i=1,2,⋯,p
f i ( x ) ≤ 0 , i = 1 , 2 , ⋯ , m , f_i(x)\leq 0,i=1,2,\cdots,m, fi(x)≤0,i=1,2,⋯,m,
对于这种情形我们常使用KKT条件求解,Lagrange 函数L: R n × R m × R p → R R^n\times R^m\times R^p\rightarrow R Rn×Rm×Rp→R为 L ( x , λ , v ) = f 0 ( x ) + ∑ i = 1 m λ i f i ( x ) + ∑ i = 1 p v i h i ( x ) , L(x, \lambda,\mathcal v)=f_0(x)+\sum_{i=1}^m\lambda_if_i(x)+\sum_{i=1}^pv_ih_i(x), L(x,λ,v)=f0(x)+i=1∑mλifi(x)+i=1∑pvihi(x),我们假设该问题的定义域(非可行域)为 D = ⋂ i = 0 m d o m f i ∩ ⋂ i = 1 p d o m h i , 且原问题的最优值为 p ∗ \mathcal D=\bigcap_{i=0}^m\mathbf{dom}f_i\cap\bigcap_{i=1}^p\mathbf{dom}h_i,且原问题的最优值为p^* D=i=0⋂mdomfi∩i=1⋂pdomhi,且原问题的最优值为p∗另外我们定义Lagrange 对偶函数g: R m × R p → R R^m\times R^p\rightarrow R Rm×Rp→R为Lagrange函数关于定义域内 x x x取得的最小值,即, g ( λ , v ) = i n f x ∈ D L ( x , λ , v ) = i n f x ∈ D ( f 0 ( x ) + ∑ i = 1 m λ i f i ( x ) + ∑ i = 1 p v i h i ( x ) ) ) g(\lambda, v)={inf}_{x\in\mathcal D}L(x,\lambda,v)=inf_{x\in\mathcal D}\left(f_0(x)+\sum_{i=1}^m\lambda_if_i(x)+\sum_{i=1}^pv_ih_i(x))\right) g(λ,v)=infx∈DL(x,λ,v)=infx∈D(f0(x)+i=1∑mλifi(x)+i=1∑pvihi(x)))我们可以得出对偶函数构成了原问题最优值 p ∗ p^* p∗的下界,即, ∀ λ ⪰ 0 , v , g ( λ , v ) ≤ p ∗ . \forall\lambda\succeq 0,v,\ \ g(\lambda, v)\leq p^*. ∀λ⪰0,v, g(λ,v)≤p∗.令 x ∗ 和 ( λ ∗ , v ∗ ) x^*和(\lambda^*,v^*) x∗和(λ∗,v∗)分别为原问题和对偶问题的某对最优解,且满足强对偶性(对偶间隙为零),那么我们就可以得到, f 0 ( x ∗ ) = g ( λ ∗ , v ∗ ) f_0(x^*)=g(\lambda^*,v^*) f0(x∗)=g(λ∗,v∗)。另外,
KKT为, { f i ( x ∗ ) ≤ 0 , i = 1 , 2 , ⋯ , m h i ( x ∗ ) = 0 , i = 1 , 2 , ⋯ , p λ i ∗ ≥ 0 , i = 1 , 2 , ⋯ , m λ i ∗ f i ( x ∗ ) = 0 , i = 1 , 2 , ⋯ , m ∇ f 0 ( x ∗ ) + ∑ i = 1 m λ i ∗ ∇ f i ( x ∗ ) + ∑ i = 1 p v i ∗ ∇ h i ( x ∗ ) = 0 , ∗ \left\{\begin{array}{lr}f_i(x^*)\leq 0,&i=1,2,\cdots,m\\h_i(x^*)=0,&i=1,2,\cdots,p\\\lambda^*_i\geq0,&i=1,2,\cdots,m\\\lambda_i^*f_i(x^*)=0,&i=1,2,\cdots,m\\\nabla f_0(x^*)+\sum_{i=1}^m\lambda_i^*\nabla f_i(x^*)+\sum_{i=1}^pv_i^*\nabla h_i(x^*)=0,&*\end{array}\right. ⎩ ⎨ ⎧fi(x∗)≤0,hi(x∗)=0,λi∗≥0,λi∗fi(x∗)=0,∇f0(x∗)+∑i=1mλi∗∇fi(x∗)+∑i=1pvi∗∇hi(x∗)=0,i=1,2,⋯,mi=1,2,⋯,pi=1,2,⋯,mi=1,2,⋯,m∗
注,对于上面的所有情况的优化问题,目标函数及其约束函数若为凸函数,可行域组成凸集,才能得到全局最优解,否则只能得到局部最优解,因为这些条件只是必要条件,而非充要条件。。。