版权声明:版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_34072381/article/details/83685964
1 等式约束极值问题
考虑非线性规划
min
f
(
x
)
x
∈
R
n
s.t.
φ
i
(
x
)
=
0
,
i
=
1
,
⋯
 
,
m
\begin{aligned} \min &\quad f(\bm{x}) \quad \bm{x}\in\R^n \\ \text{s.t.} &\quad \varphi_i(\bm{x}) =0,\quad i=1,\cdots,m \end{aligned}
min s.t. f ( x ) x ∈ R n φ i ( x ) = 0 , i = 1 , ⋯ , m
由于自变量的相互独立性被约束条件破坏 ,因此不可任意使用求导后的结果。
1.1 拉格朗日乘子法(必要条件)
基本思想:通过引入拉格朗日乘子,将含有n个变量和m个约束条件的约束极值问题转化为含n+k个变量的无约束优化问题。拉格朗日乘子的数学意义为约束方程梯度的线性组合中每个向量的系数 。
数学意义思想实例:求双曲线xy=3离远点最近的点? 问题的数学模型:
min
x
2
+
y
2
s.t.
x
y
=
3
\begin{aligned} \min &\quad x^2 + y^2 \\ \text{s.t.} &\quad xy=3 \end{aligned}
min s.t. x 2 + y 2 x y = 3
等式约束也可通过变量替换的形式将约束条件加入目标函数,从而转换为无约束极值问题,但一般不易求解。 令目标函数
f
(
x
)
=
x
2
+
y
2
f(x)=x^2+y^2
f ( x ) = x 2 + y 2 ,约束函数
φ
(
x
)
=
x
y
−
3
=
0
\varphi(x)=xy-3=0
φ ( x ) = x y − 3 = 0 ,如下图
图1 目标函数等值线簇与约束条件曲线
由图可知,当目标函数与约束曲面相切时(目标函数的梯度正交于约束曲面),可能取得最优值 。当
f
(
x
)
f(\bm x)
f ( x ) 与
φ
(
x
)
\varphi(\bm x)
φ ( x ) 相交时,在等高线
f
(
x
)
f(\bm x)
f ( x ) 的内外侧一定存在更大或更小的等高线(目标值)。相切亦不一定保证是极值点,这与
f
(
x
)
f(\bm x)
f ( x ) 和
φ
(
x
)
\varphi(\bm x)
φ ( x ) 的凹凸性 有关。
f
f
f 和
φ
\varphi
φ 在切点处的法向量平行 ,即满足
∇
f
(
x
)
=
λ
∇
φ
(
x
)
\nabla f(\bm x)=\lambda \nabla \varphi(\bm x)
∇ f ( x ) = λ ∇ φ ( x ) ,即
(
2
x
,
2
y
)
T
=
λ
(
y
,
x
)
T
(2x, 2y)^T=\lambda(y, x)^T
( 2 x , 2 y ) T = λ ( y , x ) T ,因此等式约束问题转换为
{
2
x
=
λ
y
2
y
=
λ
x
x
y
=
3
\begin{cases} 2x=\lambda y \\ 2y = \lambda x \\ xy = 3 \end{cases}
⎩ ⎪ ⎨ ⎪ ⎧ 2 x = λ y 2 y = λ x x y = 3
易求得上述方程的解为
{
(
x
,
y
)
 
∣
 
(
−
3
,
−
3
)
,
(
3
,
3
)
}
\{(x,y)\,|\,(-\sqrt 3, -\sqrt 3), (\sqrt 3, \sqrt 3)\}
{ ( x , y ) ∣ ( − 3
, − 3
) , ( 3
, 3
) } 。
一般性,对于等式约束极值问题,定义辅助拉格朗日函数
L
(
x
,
λ
)
=
f
(
x
)
+
∑
i
=
1
m
λ
i
φ
i
(
x
)
L(\bm x, \bm \lambda)=f(\bm x) + \sum_{i=1}^m\lambda_i\varphi_i(\bm x)
L ( x , λ ) = f ( x ) + i = 1 ∑ m λ i φ i ( x )
分别对
x
\bm x
x 和
λ
\bm \lambda
λ 求偏导,并令各偏导为0,得
{
∇
f
(
x
)
+
∑
i
=
1
m
λ
i
∇
φ
i
(
x
)
=
0
φ
i
(
x
)
=
0
,
i
=
1
,
2
,
⋯
 
,
m
\begin{cases} \nabla f(\bm x) + \sum\limits_{i=1}^m \lambda_i \nabla \varphi_i(\bm x) = 0 \\ \varphi_i(\bm x) = 0, \quad i = 1,2,\cdots,m \end{cases}
⎩ ⎨ ⎧ ∇ f ( x ) + i = 1 ∑ m λ i ∇ φ i ( x ) = 0 φ i ( x ) = 0 , i = 1 , 2 , ⋯ , m
上述方程组,恰好给出了等式约束和最优解的必要条件。
证明:最优解处目标函数和约束函数法向量平行,以及拉格朗日函数的意义
假设寻求函数
z
=
f
(
x
,
y
)
z=f(x, y)
z = f ( x , y )
在条件
φ
(
x
,
y
)
=
0
\varphi(x,y)=0
φ ( x , y ) = 0
下的极值的必要条件。
假设
(
x
0
,
y
0
)
(x_0, y_0)
( x 0 , y 0 ) 处取得极值,首先满足
φ
(
x
0
,
y
0
)
=
0
\varphi(x_0, y_0)=0
φ ( x 0 , y 0 ) = 0 。假定
(
x
0
,
y
0
)
(x_0,y_0)
( x 0 , y 0 ) 的某邻域内
f
(
x
,
y
)
f(x,y)
f ( x , y ) 和
g
(
x
,
y
)
g(x,y)
g ( x , y ) 均有一阶连续偏导,且
φ
y
(
x
,
y
)
≠
0
\varphi_y(x,y)\neq 0
φ y ( x , y ) ̸ = 0 。由隐函数存在定理,存在具有连续导数的函数
y
=
ψ
(
x
)
y=\psi(x)
y = ψ ( x ) 使得
z
=
f
(
x
,
ψ
(
x
)
)
z=f(x,\psi(x))
z = f ( x , ψ ( x ) )
由极值的必要条件,知
d
z
d
x
∣
x
=
x
0
=
f
x
(
x
0
,
y
0
)
+
f
y
(
x
0
,
y
0
)
d
y
d
x
∣
x
=
x
0
=
0
\frac{\mathrm dz}{\mathrm dx}\Big |_{x=x_0}=f_x(x_0,y_0)+f_y(x_0,y_0)\frac{\mathrm dy}{\mathrm dx}\big |_{x=x_0}=0
d x d z ∣ ∣ ∣ x = x 0 = f x ( x 0 , y 0 ) + f y ( x 0 , y 0 ) d x d y ∣ ∣ x = x 0 = 0
由隐函数求导公式,知
∂
φ
∂
x
+
∂
φ
∂
y
d
y
d
x
=
0
⇒
d
y
d
x
=
−
φ
x
φ
y
⇒
d
y
d
x
∣
x
=
x
0
=
−
φ
x
(
x
0
,
y
0
)
φ
y
(
x
0
,
y
0
)
\frac{\partial\varphi}{\partial x} + \frac{\partial\varphi}{\partial y}\frac{\mathrm dy}{\mathrm dx}=0 \quad \Rightarrow \quad \frac{\mathrm dy}{\mathrm dx}=-\frac{\varphi_x}{\varphi_y} \quad \Rightarrow \quad \frac{\mathrm dy}{\mathrm dx}\big |_{x=x_0}=-\frac{\varphi_x(x_0,y_0)}{\varphi_y(x_0,y_0)}
∂ x ∂ φ + ∂ y ∂ φ d x d y = 0 ⇒ d x d y = − φ y φ x ⇒ d x d y ∣ ∣ x = x 0 = − φ y ( x 0 , y 0 ) φ x ( x 0 , y 0 )
因此
f
x
(
x
0
,
y
0
)
φ
x
(
x
0
,
y
0
)
=
f
y
(
x
0
,
y
0
)
φ
y
(
x
0
,
y
0
)
=
−
λ
\frac{f_x(x_0,y_0)}{\varphi_x(x_0,y_0)}=\frac{f_y(x_0,y_0)}{\varphi_y(x_0,y_0)}=-\lambda
φ x ( x 0 , y 0 ) f x ( x 0 , y 0 ) = φ y ( x 0 , y 0 ) f y ( x 0 , y 0 ) = − λ
综上所述,最优解的必要条件
{
f
x
(
x
0
,
y
0
)
+
λ
φ
x
(
x
0
,
y
0
)
=
0
f
y
(
x
0
,
y
0
)
+
λ
φ
y
(
x
0
,
y
0
)
=
0
φ
(
x
0
,
y
0
)
=
0
\begin{cases} f_x(x_0,y_0)+\lambda \varphi_x(x_0,y_0)=0\\ f_y(x_0,y_0)+\lambda \varphi_y(x_0,y_0)=0\\ \varphi(x_0,y_0)=0 \end{cases}
⎩ ⎪ ⎨ ⎪ ⎧ f x ( x 0 , y 0 ) + λ φ x ( x 0 , y 0 ) = 0 f y ( x 0 , y 0 ) + λ φ y ( x 0 , y 0 ) = 0 φ ( x 0 , y 0 ) = 0
引入辅助拉格朗日函数
L
(
x
,
y
,
λ
)
=
f
(
x
,
y
)
+
λ
φ
(
x
,
y
)
L(x,y,\lambda)=f(x,y)+\lambda \varphi(x,y)
L ( x , y , λ ) = f ( x , y ) + λ φ ( x , y ) ,令
L
(
x
,
y
,
λ
)
L(x,y,\lambda)
L ( x , y , λ ) 对各变量的偏导为0等价于上述方程组 。
2 不等式约束极值问题
考虑非线性规划问题
min
f
(
x
)
x
∈
R
n
s.t.
g
i
(
x
)
≤
0
,
i
=
1
,
⋯
 
,
m
\begin{aligned} \min &\quad f(\bm{x}) \quad \bm{x}\in\R^n\\ \text{s.t.} &\quad g_i(\bm{x}) \leq 0,\quad i=1,\cdots,m\\ \end{aligned}
min s.t. f ( x ) x ∈ R n g i ( x ) ≤ 0 , i = 1 , ⋯ , m
可行域
S
=
{
x
∣
g
i
(
x
)
≤
0
,
i
=
1
,
2
,
⋯
 
,
m
}
S=\{\bm{x}|g_i(\bm{x})\leq 0, i=1,2,\cdots,m\}
S = { x ∣ g i ( x ) ≤ 0 , i = 1 , 2 , ⋯ , m } 。
2.1 约束作用
设
x
∗
\bm x^*
x ∗ 上述非线性规划问题的一个可行解,根据可行解的位置,约束作用可分为两种: 当
g
i
(
x
∗
)
=
0
g_i(\bm x^*) = 0
g i ( x ∗ ) = 0 ,
x
∗
\bm x^*
x ∗ 位于
S
S
S 边界,
x
∗
\bm x^*
x ∗ 变动受到约束,该约束条件是
x
∗
\bm x^*
x ∗ 的起作用约束 ,约束下标集
I
=
{
i
 
∣
 
g
i
(
x
∗
)
=
0
}
I = \{i \, | \, g_i(\bm x^*) = 0\}
I = { i ∣ g i ( x ∗ ) = 0 } ,图中A点; 当
g
i
(
x
∗
)
<
0
g_i(\bm x^*) < 0
g i ( x ∗ ) < 0 ,
x
∗
\bm x^*
x ∗ 位于
S
S
S 内部,
x
∗
\bm x^*
x ∗ 变动不受约束,该约束条件是
x
∗
\bm x^*
x ∗ 的不起作用约束 ,图中B点;
图2 可行解的可能分布情况
2.2 不等式约束的几何解释
当约束区域
S
S
S 包含目标函数原有可行解时,此时可行解满足
g
i
(
x
∗
)
<
0
g_i(\bm x^*)<0
g i ( x ∗ ) < 0 ,约束不起作用,等价于无约束极值问题; 当约束区域
S
S
S 不包含原有可行解时,此时可行解满足
g
i
(
x
∗
)
=
0
g_i(\bm x^*)=0
g i ( x ∗ ) = 0 ,约束起作用,可使用拉格朗日方法求解。
因此可行解位于可行域内部时,
λ
=
0
\lambda=0
λ = 0 ;可行解位于可行域边界时,
g
i
(
x
∗
)
=
0
g_i(\bm x^*)=0
g i ( x ∗ ) = 0 ,因此无论哪种情况,均有
λ
g
i
(
x
∗
)
=
0
\lambda g_i(\bm x^*)=0
λ g i ( x ∗ ) = 0
图3 可行域不包含原有问题的解(左)和可行域包含原有问题的解(右)
由上图可知,可行解应尽可能靠近约束边界,目标函数的负梯度方向应朝向无约束时的解。对于该非线性规划问题,约束函数的梯度方向与目标函数的负梯度方向同向:
−
∇
f
(
x
)
=
λ
∇
g
i
(
x
)
,
λ
>
0
-\nabla f(\bm x)=\lambda \nabla g_i(\bm x), \quad \lambda > 0
− ∇ f ( x ) = λ ∇ g i ( x ) , λ > 0
梯度的方向 对于线性规划中的约束条件
g
i
(
x
∗
)
≤
0
g_i(\bm x^*)\leq0
g i ( x ∗ ) ≤ 0 ,可行域对应图3中的红色区域。由于梯度是函数增长的方向,可行域的边界值为0,内部值小于0,因此可行域内某点的梯度方向指向可行域边界(较大的函数值)。 注:若可行域为
g
i
(
x
∗
)
≥
0
g_i(\bm x^*)\geq0
g i ( x ∗ ) ≥ 0 ,则可行域内某点的梯度方向指向可行域中心。
2.3 下降方向
设
x
∗
∈
R
n
\bm x^* \in \R^n
x ∗ ∈ R n ,
d
\bm{d}
d 是非零向量,若
∃
δ
\exists \delta
∃ δ 使得每个
λ
∈
(
0
,
δ
)
\lambda \in (0, \delta)
λ ∈ ( 0 , δ ) ,都有
f
(
x
∗
+
λ
d
)
<
f
(
x
∗
)
f(\bm x^* + \lambda \bm{d})<f(\bm x^* )
f ( x ∗ + λ d ) < f ( x ∗ ) ,则
d
\bm{d}
d 是
x
∗
\bm x^*
x ∗ 处的下降方向。 若
f
(
x
∗
)
f(\bm{x^*})
f ( x ∗ ) 可微,当
∇
f
(
x
∗
)
T
d
<
0
\nabla f(\bm x^*)^T \bm{d}<0
∇ f ( x ∗ ) T d < 0 ,显然可推出上式成立(泰勒展开)。
2.4 可行方向
设
x
∗
\bm x^*
x ∗ 为可行解,
d
\bm{d}
d 是非零向量,若
∃
δ
\exists \delta
∃ δ 使得每个
λ
∈
(
0
,
δ
)
\lambda \in (0, \delta)
λ ∈ ( 0 , δ ) ,都有
x
∗
+
λ
d
∈
S
\bm x^* + \lambda \bm{d}\in S
x ∗ + λ d ∈ S ,则称
d
\bm{d}
d 为
x
∗
\bm x^*
x ∗ 处的可行方向 。
D
=
{
d
∣
d
≠
0
,
x
∗
∈
cl S
,
∃
δ
>
0
,
∀
λ
∈
(
0
,
δ
)
,
x
∗
+
λ
d
∈
S
}
D= \{\bm{d}|\bm{d}\neq\bm 0, \bm x^* \in \text{cl S}, \exists \delta > 0, \forall \lambda \in (0, \delta), \bm x^*+\lambda \bm{d} \in S\}
D = { d ∣ d ̸ = 0 , x ∗ ∈ cl S , ∃ δ > 0 , ∀ λ ∈ ( 0 , δ ) , x ∗ + λ d ∈ S } ,则称为
x
∗
\bm x^*
x ∗ 处的可行方向锥 。
设
x
∗
\bm x^*
x ∗ 为可行解,
d
\bm{d}
d 是非零向量,对于
x
∗
\bm x^*
x ∗ 的所有起作用约束,若
∃
δ
\exists \delta
∃ δ 使得每个
λ
∈
(
0
,
δ
)
\lambda \in (0, \delta)
λ ∈ ( 0 , δ ) ,都有
g
i
(
x
∗
+
λ
d
)
<
0
g_i(\bm x^* +\lambda \bm d) < 0
g i ( x ∗ + λ d ) < 0 ,即
g
i
(
x
∗
+
λ
d
)
≈
g
i
(
x
∗
)
+
∇
g
i
(
x
∗
)
T
d
=
∇
g
i
(
x
∗
)
T
d
<
0
,
i
∈
I
g_i(\bm x^* +\lambda \bm d) \approx g_i(\bm x^*)+ \nabla g_i(\bm x^*)^T \bm d = \nabla g_i(\bm x^*)^T \bm d < 0, \quad i \in I
g i ( x ∗ + λ d ) ≈ g i ( x ∗ ) + ∇ g i ( x ∗ ) T d = ∇ g i ( x ∗ ) T d < 0 , i ∈ I
即当
i
∈
I
i\in I
i ∈ I ,只要满足
∇
g
i
(
x
∗
)
T
d
<
0
\nabla g_i(\bm x^*)^T\bm{d} < 0
∇ g i ( x ∗ ) T d < 0 ,则
g
i
(
x
∗
+
λ
d
)
<
0
g_i(\bm x^* +\lambda \bm d)< 0
g i ( x ∗ + λ d ) < 0 ,即
d
\bm d
d 为
x
∗
\bm x^*
x ∗ 的可行方向。
2.5 Fritz John条件(最优解必要条件)
由下降方向和可行方向的定义可知,若
x
∗
\bm x^*
x ∗ 是最优解,则
x
∗
\bm x^*
x ∗ 处的可行方向一定不是下降方向 。 代数表示为,下列方程组无解
{
∇
f
(
x
∗
)
T
d
<
0
∇
g
i
(
x
∗
)
T
d
<
0
,
i
∈
I
\begin{cases} \nabla f(\bm x^*)^T\bm d\lt0 \\ \nabla g_i(\bm x^*)^T \bm d <0, \quad i \in I \end{cases}
{ ∇ f ( x ∗ ) T d < 0 ∇ g i ( x ∗ ) T d < 0 , i ∈ I
根据Gordan定理,必存在非零向量
ω
=
(
ω
0
,
ω
i
,
i
∈
I
)
≥
0
\bm \omega=(\omega_0,\omega_i, i\in I) \geq \bm 0
ω = ( ω 0 , ω i , i ∈ I ) ≥ 0 ,使得
ω
0
∇
f
(
x
∗
)
+
∑
i
∈
I
ω
i
∇
g
i
(
x
∗
)
=
0
\omega_0\nabla f(\bm x^*) + \sum_{i\in I}\omega_i\nabla g_i(\bm x^*)=\bm 0
ω 0 ∇ f ( x ∗ ) + i ∈ I ∑ ω i ∇ g i ( x ∗ ) = 0
引理 Farkas 设
a
1
,
⋯
 
,
a
m
a_1,\cdots,a_m
a 1 , ⋯ , a m 和
b
b
b 是n维向量,则存在向量
p
p
p ,满足
a
i
T
p
≥
0
a_i^Tp\ge 0
a i T p ≥ 0 且
b
T
p
≥
0
b^Tp\ge 0
b T p ≥ 0 的充要条件是,存在非负数
r
i
r_i
r i 使得
b
=
∑
i
=
1
m
γ
i
a
i
b=\sum\limits_{i=1}^m\gamma_ia_i
b = i = 1 ∑ m γ i a i 。 简单理解是,向量
p
p
p 与所有
a
i
a_i
a i 和
b
b
b 之间的夹角不超过
π
\pi
π ,故向量
b
b
b 与
a
i
a_i
a i 位于"同侧 ",图4左图。 引理 Gordan 设
a
1
,
⋯
 
,
a
m
a_1,\cdots,a_m
a 1 , ⋯ , a m 和
b
b
b 是n维向量,则不存在向量
p
p
p ,使得
a
i
T
p
<
0
a_i^Tp\lt0
a i T p < 0 的充要条件是,存在非负数
r
i
r_i
r i 使得
∑
i
=
1
m
γ
i
a
i
=
0
\sum\limits_{i=1}^m\gamma_ia_i=0
i = 1 ∑ m γ i a i = 0 。 简单理解是,向量
a
1
,
⋯
 
,
a
m
a_1, \cdots, a_m
a 1 , ⋯ , a m 中,存在夹角超过
π
\pi
π 的两个向量,即
a
1
,
⋯
 
,
a
m
a1, \cdots, a_m
a 1 , ⋯ , a m 位于"不同侧 ",图4右图。
图4 Farkas引理和Gordan引理的几何意义
2.6 Kuhn-Tucker条件(最优解必要条件 - 约束规格)
Fritz John条件中,当
ω
0
=
0
\omega_0=0
ω 0 = 0 时,梯度组合未包含目标函数信息。著名的K-T条件,增加起作用约束的梯度线性无关 的约束规格。
若
x
∗
\bm x^*
x ∗ 是局部最优解,则存在非负数
ω
i
\omega_i
ω i ,
i
∈
I
i\in I
i ∈ I ,使得
∇
f
(
x
∗
)
+
∑
i
∈
I
ω
i
∇
g
i
(
x
∗
)
=
0
\nabla f(\bm x^*) + \sum_{i\in I}\omega_i\nabla g_i(\bm x^*)=\bm 0
∇ f ( x ∗ ) + i ∈ I ∑ ω i ∇ g i ( x ∗ ) = 0
证明方法(1) 由存在非零向量
ω
=
(
ω
0
,
ω
^
i
,
i
∈
I
)
≥
0
\bm \omega=(\omega_0,\hat \omega_i, i\in I) \geq \bm 0
ω = ( ω 0 , ω ^ i , i ∈ I ) ≥ 0 ,使得
ω
0
∇
f
(
x
∗
)
+
∑
i
∈
I
ω
^
i
∇
g
i
(
x
∗
)
=
0
\omega_0\nabla f(\bm x^*) + \sum_{i\in I} \hat \omega_i\nabla g_i(\bm x^*)=\bm 0
ω 0 ∇ f ( x ∗ ) + i ∈ I ∑ ω ^ i ∇ g i ( x ∗ ) = 0
显然
ω
0
≠
0
\omega_0\neq0
ω 0 ̸ = 0 ,因为
ω
0
=
0
\omega_0=0
ω 0 = 0 时,
{
∇
g
i
(
x
∗
)
 
∣
 
i
∈
I
}
\{\nabla g_i(\bm x^*)\,|\,i \in I\}
{ ∇ g i ( x ∗ ) ∣ i ∈ I } 线性相关,因此令
ω
i
=
ω
^
i
/
ω
0
\omega_i=\hat \omega_i/\omega_0
ω i = ω ^ i / ω 0 ,得
∇
f
(
x
∗
)
+
∑
i
∈
I
ω
i
∇
g
i
(
x
∗
)
=
0
,
ω
i
≥
0
\nabla f(\bm x^*) + \sum_{i\in I}\omega_i\nabla g_i(\bm x^*)=\bm 0, \qquad \omega_i\geq0
∇ f ( x ∗ ) + i ∈ I ∑ ω i ∇ g i ( x ∗ ) = 0 , ω i ≥ 0
证明方法(2) 引入辅助函数
L
(
x
,
ω
)
=
f
(
x
)
+
ω
T
g
(
x
)
L(\bm x, \bm\omega)=f(\bm x)+\bm\omega^Tg(\bm x)
L ( x , ω ) = f ( x ) + ω T g ( x ) ,假设
x
∗
\bm x^*
x ∗ 是原问题的最优解,由于
g
(
x
)
≤
0
g(\bm x)\leq\bm0
g ( x ) ≤ 0 ,
ω
≥
0
\bm\omega\geq\bm0
ω ≥ 0 ,故
L
(
x
,
ω
)
=
f
(
x
)
+
ω
T
g
(
x
)
≥
f
(
x
∗
)
L(\bm x, \bm\omega)=f(\bm x)+\bm\omega^Tg(\bm x)\geq f(\bm x^*)
L ( x , ω ) = f ( x ) + ω T g ( x ) ≥ f ( x ∗ )
因此,
L
(
x
,
ω
)
L(\bm x, \bm\omega)
L ( x , ω ) 在
x
∗
\bm x^*
x ∗ 处梯度为
0
\bm 0
0 ,即
∇
f
(
x
∗
)
+
∑
i
∈
I
ω
i
∇
g
i
(
x
∗
)
=
0
,
ω
i
≥
0
\nabla f(\bm x^*) + \sum_{i\in I}\omega_i\nabla g_i(\bm x^*)=\bm 0, \qquad \omega_i\geq0
∇ f ( x ∗ ) + i ∈ I ∑ ω i ∇ g i ( x ∗ ) = 0 , ω i ≥ 0
因此若
g
i
(
i
∉
I
)
g_i(i\notin I)
g i ( i ∈ / I ) 在
x
∗
\bm x^*
x ∗ 可微,则
K
−
T
K-T
K − T 条件的等价形式:
{
∇
f
(
x
∗
)
+
∑
i
=
1
m
ω
i
∇
g
i
(
x
∗
)
=
0
(
1
)
ω
i
g
i
(
x
∗
)
=
0
,
i
=
1
,
2
,
⋯
 
,
m
(
2
)
ω
i
≥
0
,
i
=
1
,
2
,
⋯
 
,
m
(
3
)
\begin{cases} \nabla f(\bm x^*) + \displaystyle\sum\limits_{i=1}^m \omega_i\nabla g_i(\bm x^*)=\bm 0 &\qquad(1)\\ \omega_ig_i(\bm x^*)=0, \qquad i=1,2,\cdots,m &\qquad(2)\\ \omega_i \geq 0,\qquad i=1,2,\cdots,m &\qquad(3) \end{cases}
⎩ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎧ ∇ f ( x ∗ ) + i = 1 ∑ m ω i ∇ g i ( x ∗ ) = 0 ω i g i ( x ∗ ) = 0 , i = 1 , 2 , ⋯ , m ω i ≥ 0 , i = 1 , 2 , ⋯ , m ( 1 ) ( 2 ) ( 3 )
当
i
∉
I
i\notin I
i ∈ / I 时,
g
i
(
x
∗
)
≠
0
g_i(\bm x^*)\neq0
g i ( x ∗ ) ̸ = 0 ,故
ω
i
=
0
\omega_i=0
ω i = 0 ,项
ω
i
∇
g
i
(
x
∗
)
\omega_i\nabla g_i(\bm x^*)
ω i ∇ g i ( x ∗ ) 从
(
1
)
(1)
( 1 ) 式中自然消去; 当
i
∈
I
i\in I
i ∈ I 时,
g
i
(
x
∗
)
=
0
g_i(\bm x^*)=\bm 0
g i ( x ∗ ) = 0 ,条件
(
2
)
(2)
( 2 ) 对
ω
i
\omega_i
ω i 没有限制,条件
(
2
)
(2)
( 2 ) 称为互补松弛条件 。
2.7 最优解必要条件
若非线性规划问题中,目标函数
f
(
x
)
f(\bm x)
f ( x ) 和
g
(
x
)
g(\bm x)
g ( x ) 均为凸函数 ,约束作用集
I
=
{
i
∣
g
i
(
x
∗
)
=
0
}
I = \{i\ |\ g_i(\bm x^*)=0\}
I = { i ∣ g i ( x ∗ ) = 0 } ,
f
f
f 和
g
i
(
i
∈
I
)
g_i(i\in I)
g i ( i ∈ I ) 在
x
∗
\bm x^*
x ∗ 处可微,
g
i
(
i
∉
I
)
g_i(i\notin I)
g i ( i ∈ / I ) 在点
x
∗
\bm x^*
x ∗ 处连续,若点
x
∗
\bm x^*
x ∗ 处K-T条件成立,则
x
∗
\bm x^*
x ∗ 为全局最优解 。
证明:显然可行域为凸集,
f
f
f 为凸函数,此问题为凸规划。 凸函数
f
(
x
)
f(\bm x)
f ( x ) ,满足
f
(
x
)
≥
f
(
x
∗
)
+
∇
f
(
x
∗
)
T
(
x
−
x
∗
)
f(\bm x) \geq f(\bm x^*)+\nabla f(\bm x^*)^T(\bm x- \bm x^*)
f ( x ) ≥ f ( x ∗ ) + ∇ f ( x ∗ ) T ( x − x ∗ )
由于
x
∗
\bm x^*
x ∗ 处K-T条件成立,故
∇
f
(
x
∗
)
=
−
∑
i
=
1
m
ω
i
∇
g
i
(
x
∗
)
\nabla f(\bm x^*) = - \displaystyle\sum\limits_{i=1}^m \omega_i\nabla g_i(\bm x^*)
∇ f ( x ∗ ) = − i = 1 ∑ m ω i ∇ g i ( x ∗ ) ,
ω
i
\omega_i
ω i 非负,因此
f
(
x
)
≥
f
(
x
∗
)
−
∑
i
∈
I
ω
i
∇
g
i
(
x
∗
)
T
(
x
−
x
∗
)
f(\bm x) \geq f(\bm x^*)-\sum\limits_{i\in I}\omega_i\nabla g_i(\bm x^*)^T(\bm x-\bm x^*)
f ( x ) ≥ f ( x ∗ ) − i ∈ I ∑ ω i ∇ g i ( x ∗ ) T ( x − x ∗ )
同理,由于
g
i
(
x
)
(
i
∈
I
)
g_i(\bm x)(i \in I)
g i ( x ) ( i ∈ I ) 为凸函数,满足
g
i
(
x
)
≥
g
i
(
x
∗
)
+
∇
g
i
(
x
∗
)
T
(
x
−
x
∗
)
g_i(\bm x) \geq g_i(\bm x^*)+\nabla g_i(\bm x^*)^T(\bm x- \bm x^*)
g i ( x ) ≥ g i ( x ∗ ) + ∇ g i ( x ∗ ) T ( x − x ∗ )
由于
g
i
(
x
∗
)
=
0
g_i(\bm x^*)=0
g i ( x ∗ ) = 0 ,
g
i
(
x
)
≥
0
g_i(\bm x)\geq0
g i ( x ) ≥ 0 ,故
∇
g
i
(
x
∗
)
T
(
x
−
x
∗
)
≤
0
\nabla g_i(\bm x^*)^T(\bm x- \bm x^*)\leq0
∇ g i ( x ∗ ) T ( x − x ∗ ) ≤ 0 ,因此
f
(
x
)
≥
f
(
x
∗
)
f(\bm x) \geq f(\bm x^*)
f ( x ) ≥ f ( x ∗ )
f
(
x
∗
)
f(\bm x^*)
f ( x ∗ ) 为最小值,问题得证。
3 对偶问题
考虑非线性规划问题,令
g
(
x
)
=
(
g
1
(
x
)
,
g
2
(
x
)
,
⋯
 
,
g
m
(
x
)
)
T
g(\bm x)=(g_1(\bm x), g_2(\bm x), \cdots, g_m(\bm x))^T
g ( x ) = ( g 1 ( x ) , g 2 ( x ) , ⋯ , g m ( x ) ) T ,
h
(
x
)
=
(
h
1
(
x
)
,
h
2
(
x
)
,
⋯
 
,
h
l
(
x
)
)
T
\bm h(\bm x)=(h_1(\bm x), h_2(\bm x), \cdots, h_l(\bm x))^T
h ( x ) = ( h 1 ( x ) , h 2 ( x ) , ⋯ , h l ( x ) ) T ,则
min
x
∈
R
n
f
(
x
)
s.t.
g
(
x
)
≤
0
h
(
x
)
=
0
\begin{aligned} \min\limits_{x\in\R^n} &\quad f(\bm x) \\ \text{s.t.} &\quad \bm g(\bm x)\leq \bm 0\\ &\quad \bm h(\bm x) = \bm 0 \end{aligned}
x ∈ R n min s.t. f ( x ) g ( x ) ≤ 0 h ( x ) = 0
可行域
S
=
{
x
∣
g
(
x
)
≤
0
;
h
(
x
)
=
0
}
S=\{\bm{x}\ |\ \bm g(\bm x)\leq \bm 0;\ \bm h(\bm x) = \bm 0\}
S = { x ∣ g ( x ) ≤ 0 ; h ( x ) = 0 } ,引入广义拉格朗日函数
L
(
x
,
ω
,
υ
)
=
f
(
x
)
+
ω
T
g
(
x
)
+
υ
T
h
(
x
)
L(\bm x, \bm\omega, \bm\upsilon)=f(\bm x)+\bm\omega^T\bm g(\bm x)+\bm\upsilon^T \bm h(\bm x)
L ( x , ω , υ ) = f ( x ) + ω T g ( x ) + υ T h ( x ) 。
3.1 原始问题的等价问题
对于上述非线性规划问题,,令
θ
P
(
x
)
=
max
ω
,
υ
L
(
x
,
ω
,
υ
)
\theta_P(\bm x) = \max\limits_{\bm\omega, \bm\upsilon} L(\bm x, \bm\omega, \bm\upsilon)
θ P ( x ) = ω , υ max L ( x , ω , υ )
(i)
x
\bm x
x 违反约束,
x
∉
S
\bm x \notin S
x ∈ / S ,此时
θ
P
(
x
)
→
+
∞
\theta_P(\bm x) \to +\infty
θ P ( x ) → + ∞ 当
g
i
(
x
∗
)
>
0
g_i(\bm x^*)>0
g i ( x ∗ ) > 0 ,则可令
ω
i
→
+
∞
\omega_i \to +\infty
ω i → + ∞ ,当
h
i
(
x
∗
)
≠
0
h_i(\bm x^*)\neq 0
h i ( x ∗ ) ̸ = 0 ,令
υ
i
h
i
(
x
∗
)
→
+
∞
\upsilon_ih_i(\bm x ^*) \to +\infty
υ i h i ( x ∗ ) → + ∞ ,而将其他
ω
j
\omega_j
ω j 和
υ
j
\upsilon_j
υ j 置0,则
θ
P
(
x
)
→
+
∞
\theta_P(\bm x) \to +\infty
θ P ( x ) → + ∞ 。
(ii)
x
\bm x
x 满足约束,
x
∈
S
\bm x \in S
x ∈ S ,此时
θ
P
(
x
)
=
f
(
x
)
\theta_P(\bm x) = f(\bm x)
θ P ( x ) = f ( x ) 当且仅当
x
x
x 位于约束边界时,
θ
P
(
x
)
=
f
(
x
)
\theta_P(\bm x) = f(\bm x)
θ P ( x ) = f ( x ) 。
综上所述,有
max
ω
,
υ
L
(
x
,
ω
,
υ
)
=
{
f
(
x
)
,
x
∈
S
+
∞
,
x
∉
S
\max\limits_{\bm\omega, \bm\upsilon} L(\bm x, \bm\omega, \bm\upsilon) = \begin{cases} f(\bm x), \quad \bm x \in S\\ +\infty, \quad \bm x \notin S \end{cases}
ω , υ max L ( x , ω , υ ) = { f ( x ) , x ∈ S + ∞ , x ∈ / S
因此,原始问题的等价问题:
min
x
max
ω
,
υ
L
(
x
,
ω
,
υ
)
\min\limits_{\bm x}\max\limits_{\bm\omega, \bm\upsilon} L(\bm x, \bm\omega, \bm\upsilon)
x min ω , υ max L ( x , ω , υ ) ,其中
x
∈
S
\bm x \in S
x ∈ S ,即拉格朗日极小极大问题 ,先求最优
ω
\bm\omega
ω 和
υ
\bm\upsilon
υ ,再求最优
x
\bm x
x 。
3.2 原始问题的对偶问题
原问题的对偶问题为
max
ω
,
υ
min
x
L
(
x
,
ω
,
υ
)
s.t.
ω
≥
0
\begin{aligned} \max\limits_{\bm \omega, \bm\upsilon} &\quad\min\limits_{\bm x}L(\bm x, \bm\omega, \bm\upsilon)\\ \text{s.t.} &\quad \bm\omega \geq\bm 0\\ \end{aligned}
ω , υ max s.t. x min L ( x , ω , υ ) ω ≥ 0
对偶问题为拉格朗日极大极小问题,先求最优
x
\bm x
x ,再求最优
ω
\bm\omega
ω 和
υ
\bm\upsilon
υ 。
3.3 原始问题与对偶问题关系
当
x
∈
S
\bm x \in S
x ∈ S 时,
g
(
x
)
≤
0
g(\bm x)\leq\bm0
g ( x ) ≤ 0 ,
h
(
x
)
=
0
h(\bm x)=\bm0
h ( x ) = 0 ,且
ω
≥
0
\bm\omega\geq0
ω ≥ 0 ,因此
min
x
L
(
x
,
ω
,
υ
)
=
min
x
f
(
x
)
+
min
x
ω
T
g
(
x
)
+
min
x
υ
T
h
(
x
)
≤
f
(
x
)
\min\limits_{\bm x}L(\bm x, \bm\omega, \bm\upsilon) =\min_{\bm x}f(\bm x) + \min_{\bm x}\bm\omega^T \bm g(\bm x)+\min_{\bm x}\bm\upsilon^T\bm h(\bm x) \leq f(\bm x)
x min L ( x , ω , υ ) = x min f ( x ) + x min ω T g ( x ) + x min υ T h ( x ) ≤ f ( x )
对上述不等式的左边取上界(max)、右边取下界(min),则不等式仍然成立,即
max
ω
,
υ
min
x
L
(
x
,
ω
,
υ
)
≤
min
x
f
(
x
)
=
min
x
max
ω
,
υ
L
(
x
,
ω
,
υ
)
\max\limits_{\bm\omega,\bm\upsilon}\min\limits_{\bm x}L(\bm x, \bm\omega, \bm\upsilon) \leq \min\limits_{\bm x}f(\bm x)=\min\limits_{\bm x}\max\limits_{\bm\omega, \bm\upsilon} L(\bm x, \bm\omega, \bm\upsilon)
ω , υ max x min L ( x , ω , υ ) ≤ x min f ( x ) = x min ω , υ max L ( x , ω , υ )
即原问题目标函数的最小值不小于对偶问题目标函数的最大值,弱对偶定理 。
原问题的解等价于对偶问题的解成立的条件是什么?(强对偶定理) (i) 若
f
f
f 和
g
g
g 是凸函数,
h
h
h 是仿射函数,若存在
x
\bm x
x ,对所有
i
i
i 满足
g
i
(
x
)
<
0
g_i(\bm x)\lt0
g i ( x ) < 0 ,则存在
x
∗
,
ω
∗
,
υ
∗
\bm x^*, \bm\omega^*,\bm\upsilon^*
x ∗ , ω ∗ , υ ∗ ,使
x
∗
\bm x^*
x ∗ 是原始问题的解,
ω
∗
,
υ
∗
\bm\omega^*,\bm\upsilon^*
ω ∗ , υ ∗ 是对偶问题的解,且目标值相同。
(ii) 若
f
f
f 和
g
g
g 是凸函数,
h
h
h 是仿射函数,且
g
i
(
x
)
≤
0
g_i(\bm x)\leq 0
g i ( x ) ≤ 0 ,则存在
x
∗
\bm x^*
x ∗ 和
ω
∗
,
υ
∗
\bm\omega^*,\bm\upsilon^*
ω ∗ , υ ∗ 分别是原始问题和对偶问题的解的充分必要条件是
x
∗
,
ω
∗
,
υ
∗
\bm x^*,\bm\omega^*,\bm\upsilon^*
x ∗ , ω ∗ , υ ∗ 满足KKT条件,即
{
∇
f
(
x
∗
)
+
∑
i
=
1
m
ω
i
∇
g
i
(
x
∗
)
=
0
ω
i
g
i
(
x
∗
)
=
0
,
i
=
1
,
2
,
⋯
 
,
m
g
i
(
x
∗
)
≤
0
,
i
=
1
,
2
,
⋯
 
,
m
ω
i
≥
0
,
i
=
1
,
2
,
⋯
 
,
m
h
j
(
x
∗
)
=
0
,
j
=
1
,
2
,
⋯
 
,
l
\begin{cases} \nabla f(\bm x^*) + \displaystyle\sum\limits_{i=1}^m \omega_i\nabla g_i(\bm x^*)=\bm 0 \\ \omega_ig_i(\bm x^*)=0, \qquad i=1,2,\cdots,m \\ g_i(\bm x^*)\leq 0, \qquad i=1,2,\cdots,m \\ \omega_i \geq 0,\qquad i=1,2,\cdots,m \\ h_j(\bm x^*)=0,\qquad j=1,2,\cdots,l \end{cases}
⎩ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎧ ∇ f ( x ∗ ) + i = 1 ∑ m ω i ∇ g i ( x ∗ ) = 0 ω i g i ( x ∗ ) = 0 , i = 1 , 2 , ⋯ , m g i ( x ∗ ) ≤ 0 , i = 1 , 2 , ⋯ , m ω i ≥ 0 , i = 1 , 2 , ⋯ , m h j ( x ∗ ) = 0 , j = 1 , 2 , ⋯ , l
参考文献:
约束优化方法之拉格朗日乘子法与KKT条件:https://www.cnblogs.com/ooon/p/5721119.html
约束最优化方法之最优性条件:https://blog.csdn.net/u012430664/article/details/78745729