{ min ? f 0 ( x ) s.t. f i ( x ) ≤ 0 , i = 1 , ? ? , p , h j ( x ) = 0 , j = 1 , ? ? , q , x ∈ Ω , \begin{align}\begin{cases}\min f_0(x)\\[1ex]\text{s.t.} f_i(x)\le0,\quad i=1,\cdots,p,\\[1ex]h_j(x)=0,\quad j=1,\cdots,q,\\[1ex]x\in\Omega,\end{cases}\end{align} ? ? ??minf0?(x)s.t.fi?(x)≤0,i=1,?,p,hj?(x)=0,j=1,?,q,x∈Ω,???
其中 f 0 : R n → R f_0:\mathbb{R}^n\to\mathbb{R} f0?:Rn→R 称为目标函数, f i : R n → R f_i:\mathbb{R}^n\to\mathbb{R} fi?:Rn→R 和 h j : R n → R h_j:\mathbb{R}^n\to\mathbb{R} hj?:Rn→R 称为约束函数. f i ( x ) ≤ 0 f_i(x)\leq0 fi?(x)≤0 称为不等式约束, h j ( x ) = 0 h_j(x)=0 hj?(x)=0 称为等式约束. Ω 称为约束集. 称 D = { x ∈ Ω ∣ f i ( x ) ≤ 0 , ? i = 1 , ? ? , p ; ? h j ( x ) = 0 , ? j = 1 , ? ? , q } {\mathcal D}=\{x\in\Omega|f_{i}(x)\leq0,\:i=1,\cdots,p;\:h_{j}(x)=0,\:j=1,\cdots,q\} D={x∈Ω∣fi?(x)≤0,i=1,?,p;hj?(x)=0,j=1,?,q}为其可行集.如果没有约束,即 p = q = 0 p=q=0 p=q=0 且 Ω = R n \Omega=\mathbb{R}^n Ω=Rn 时,则称该问题为无约束优化问题, 此时 D = R n . \mathcal{D}=\mathbb{R}^n. D=Rn.
优化问题(1)的含义是: 在可行集
D
D
D 中求使得
f
0
(
x
)
f_0(x)
f0?(x) 具有最小值的点,即求
x
?
∈
D
x^*\in\mathcal{D}
x?∈D 使得:
f
0
(
x
?
)
≤
f
0
(
x
)
,
?
?
x
∈
D
f_0(x^*)\leq f_0(x),\:\forall x\in\mathcal{D}
f0?(x?)≤f0?(x),?x∈D.这个问题可简记为
min
?
x
∈
D
f
0
(
x
)
,
\begin{align} \min_{x\in\mathcal{D}}f_0(x),\end{align}
x∈Dmin?f0?(x),??亦记为
(
f
0
,
D
)
.
(f_0,\mathcal{D}).
(f0?,D).
可行集
D
\mathcal{D}
D 中的点称为可行点. 当
D
\mathcal{D}
D 非空时,称优化问题(2)是可行的; 否则称为不可行的. 称
ξ
?
:
=
inf
?
x
∈
D
f
0
(
x
)
\xi^*:=\inf_{x\in\mathcal{D}}f_0(x)
ξ?:=x∈Dinf?f0?(x)为优化问题(2)的最优值 (始终默认空集上的下确界为
∞
)
\infty)
∞). 若存在
x
?
∈
D
x^*\in\mathcal{D}
x?∈D 使得
f
0
(
x
?
)
=
ξ
?
f_0(x^*)=\xi^*
f0?(x?)=ξ?, 则称该问题是可解的,并称
f
0
(
x
?
)
=
ξ
?
f_0(x^*)=\xi^*
f0?(x?)=ξ? 的点
x
?
∈
D
x^*\in\mathcal{D}
x?∈D 为该问题的一个解,亦称为最优解,最优点,或全局解,常记为
x
?
∈
argmin
?
x
∈
D
f
0
(
x
)
.
\begin{align} x^*\in\operatorname*{argmin}_{x\in\mathcal{D}}f_0(x).\end{align}
x?∈x∈Dargmin?f0?(x).??所有最优点所构成的集合称为最优集,记为
X
o
p
t
?
.
X_\mathrm{opt}^*.
Xopt??.
除全局解的概念以外,还有如下几种意义的解:
(1) 全局严格最优解: f 0 ( x ? ) < f 0 ( x ) , ? ? x ∈ D ? { x ? } ; f_0(x^*)<f_0(x),~\forall x\in\mathcal{D}\setminus\{x^*\}; f0?(x?)<f0?(x),??x∈D?{x?};
(2) 局部最优解: 存在 r > 0 r>0 r>0,使得 f 0 ( x ? ) ≤ f 0 ( x ) , ? ? x ∈ D ∩ B ( x ? , r ) ; f_0(x^*)\leq f_0(x),\:\forall x\in\mathcal{D}\cap B(x^*,r); f0?(x?)≤f0?(x),?x∈D∩B(x?,r);
(3) 局部严格最优解: 存在 r > 0 r>0 r>0,使得 f 0 ( x ? ) < f 0 ( x ) , ? x ∈ D ∩ B ( x ? , r ) ? { x ? } . f_0(x^*)<f_0(x),\quad\forall x\in\mathcal{D}\cap B(x^*,r)\setminus\{x^*\}. f0?(x?)<f0?(x),?x∈D∩B(x?,r)?{x?}.
定义 1.2.1: (可行方向,feasible direction) 设 D \mathcal{D} D 是优化问题(2)的可行集, x ? ∈ D x^*\in\mathcal{D} x?∈D, d ∈ ? B ( 0 , 1 ) d\in\partial B(0,1) d∈?B(0,1).如果当 δ > 0 \delta>0 δ>0 充分小时,有 x ? + δ d ∈ D x^*+\delta d\in\mathcal{D} x?+δd∈D,则称 d d d 是该优化问题在 x ? x^* x? 处的一个可行方向,记为 d ∈ F D ( x ? ) . d\in\mathbf{FD}(x^*). d∈FD(x?).
在实际问题中,约束条件常常使得可行集
D
\mathcal{D}
D 并不一定能够包含一段完整的线段. 例如,如果某个等式约束条件是
h
j
(
x
)
:
=
x
1
2
+
?
+
x
n
2
?
1
=
0
,
h_{j}(x):=x_{1}^{2}+\cdots+x_{n}^{2}-1=0,
hj?(x):=x12?+?+xn2??1=0,
即
R
n
\mathbb{R}^n
Rn 中单位球面,那么该球面上任何一点
x
?
x^*
x? 都不存在可行方向. 当我们考虑点列
{
x
k
}
\{x_k\}
{xk?} 沿着球面趋于
x
?
x^*
x? 时,那么,方向
d
k
:
=
(
x
k
?
x
?
)
/
∥
x
k
?
x
?
∥
2
d_k:=(x_k-x^*)/\|x_k-x^*\|_2
dk?:=(xk??x?)/∥xk??x?∥2? 逐步靠近球面在
x
?
x^*
x? 点的切平面.如果
{
d
k
}
\{d_k\}
{dk?} 有极限,我们便称其极限为一个序列可行方向.
定义 1.2.2: (序列可行方向,sequential feasible direction) 设 D 是约束优化问题(4.1.2)的可行集, x ? ∈ D , ? d ∈ ? B ( 0 , 1 ) x^*\in\mathcal{D},\:d\in\partial B(0,1) x?∈D,d∈?B(0,1), 如果存在 d k → d d_k\to d dk?→d 与正数列 δ k → 0 \delta_k\to0 δk?→0,使得 x ? + δ k d k ∈ D , ? k ∈ N x^*+\delta_kd_k\in\mathcal{D},\forall k\in\mathbb{N} x?+δk?dk?∈D,?k∈N,即 d k : = x k ? x ? ∣ ∣ x k ? x ? ∥ 2 d_k:=\frac{x_k-x^*}{||x_k-x^*\|_2} dk?:=∣∣xk??x?∥2?xk??x??的极限存在则称 d d d 是该优化问题在 x ? x^* x? 处的一个序列可行方向,记为 d ∈ S F D ( x ? ) . d\in\mathbf{SFD}(x^*). d∈SFD(x?).
引理 1.2.1: (可行方向的性质) 设 x ? ∈ D x^*\in\mathcal{D} x?∈D,那么 S F D ( x ? ) \mathbf{SFD}(x^*) SFD(x?) 是一个闭集,且 c l ( F D ( x ? ) ) ? S F D ( x ? ) ? U ( x ? ) ∩ ? B ( 0 , 1 ) ? V D ∩ ? B ( 0 , 1 ) , \begin{align} \mathbf{cl}(\mathbf{FD}(x^{*}))\subset\mathbf{SFD}(x^{*})\subset\mathbf{U}(x^{*})\cap\partial B(0,1)\subset V_{\mathcal{D}}\cap\partial B(0,1),\end{align} cl(FD(x?))?SFD(x?)?U(x?)∩?B(0,1)?VD?∩?B(0,1),??其中 U ( x ? ) : = c l [ ? r > 0 r ( D ? x ? ) ] . \begin{align} \mathbf{U}(x^*):=\mathbf{cl}\big[\bigcup_{r>0}r(\mathcal{D}-x^*)\big].\end{align} U(x?):=cl[r>0??r(D?x?)].??特别
(1) 当 x ? ∈ r i ( D ) x^*\in\mathbf{ri}(\mathcal{D}) x?∈ri(D) 时,有 V P ∩ ? B ( 0 , 1 ) ? F D ( x ? ) V_{\mathcal{P}}\cap\partial B(0,1)\subset\mathbf{FD}(x^*) VP?∩?B(0,1)?FD(x?),因而(4)中四个集合均相等,
(2)当 D \mathcal{D} D 是凸集时,(4)中前三个集合相等.
引理 1.2.2 设 x ? ∈ D , ξ ∈ R n , G ∈ R n × n x^{*}\in\mathcal{D},\xi\in\mathbb{R}^{n},G\in\mathbb{R}^{n\times n} x?∈D,ξ∈Rn,G∈Rn×n 考虑条件 { ( a ) ξ T d ≥ 0 , ? d ∈ S F D ( x ? ) , ( b ) ξ T ( x ? x ? ) ≥ 0 , ? x ∈ D , ( c ) ξ T d = 0 , ? d ∈ V D \begin{cases}(a)\xi^Td\ge0,&\forall d\in\mathbf{SFD}(x^*),\\(b)\xi^T(x-x^*)\ge0,&\forall x\in\mathcal{D},\\(c)\xi^Td=0,&\forall d\in V_{\mathcal{D}}\end{cases} ? ? ??(a)ξTd≥0,(b)ξT(x?x?)≥0,(c)ξTd=0,??d∈SFD(x?),?x∈D,?d∈VD??和 { ( i ) ? d T G d ≥ 0 , ? d ∈ S F D ( x ? ) , ( i i ) ? ( x ? x ? ) T G ( x ? x ? ) ≥ 0 , ? x ∈ D , ( i i i ) ? d T G d ≥ 0 , ? d ∈ V D . \begin{cases}(i)~d^TGd\geq0,&\forall d\in\mathbf{SFD}(x^*),\\(ii)~(x-x^*)^TG(x-x^*)\geq0,&\forall x\in\mathcal{D},\\(iii)~d^TGd\geq0,&\forall d\in V_{\mathcal{D}}.\end{cases} ? ? ??(i)?dTGd≥0,(ii)?(x?x?)TG(x?x?)≥0,(iii)?dTGd≥0,??d∈SFD(x?),?x∈D,?d∈VD?.?
那么 ( c ) ?? ? ?? ( b ) ?? ? ?? ( a ) , ? ( i i i ) ?? ? ?? ( i i ) ?? ? ?? ( i ) (c)\implies(b)\implies(a),\:(iii)\implies(ii)\implies(i) (c)?(b)?(a),(iii)?(ii)?(i).特别
(1) 当 x ? ∈ r i ( D ) x^* \in \mathbf{ri}( \mathcal{D}) x?∈ri(D) 时,有 ( a ) ?? ? ?? ( b ) ?? ? ?? ( c ) , ( i ) ?? ? ?? ( i i ) ?? ? ?? ( i i i ) (a)\iff(b)\iff(c),(i)\iff(ii)\iff(iii) (a)?(b)?(c),(i)?(ii)?(iii)
(2) 当 D {\cal D} D 是凸集时,有 ( a ) ?? ? ?? ( b ) , ? ( i ) ? ? ? ( i i ) . (a)\iff(b),\:(i)\:\Longleftrightarrow\:(ii). (a)?(b),(i)?(ii).
命题 1.2.1:(必要条件) 设 x ? x^* x? 是优化问题 ( f , D ) (f,D) (f,D) 的一个局部解,那么
(1) 若目标函数
f
f
f 在
x
?
x^*
x? 处可微,则
?
f
(
x
?
)
T
d
≥
0
,
?
d
∈
S
F
D
(
x
?
)
.
\begin{align} \nabla f(x^{*})^{T}d\geq0,\quad\forall d\in\mathbf{SFD}(x^{*}).\end{align}
?f(x?)Td≥0,?d∈SFD(x?).??(2)若
f
f
f 在
x
?
x^*
x? 处二阶连续可微,且
x
?
∈
r
i
(
D
)
x^*\in\mathbf{ri}(\mathcal{D})
x?∈ri(D),则
?
f
(
x
?
)
T
d
=
0
,
d
T
?
2
f
(
x
?
)
d
≥
0
,
?
d
∈
V
D
.
\begin{align} \nabla f(x^{*})^{T}d=0,\quad d^{T}\nabla^{2}f(x^{*})d\geq0,\quad\forall d\in V_{\mathcal{D}}.\end{align}
?f(x?)Td=0,dT?2f(x?)d≥0,?d∈VD?.??
例 1.2.1 (等式约束优化问题之必要条件) 设 A ∈ R m × n , b ∈ R m A\in\mathbb{R}^{m\times n},\quad b\in\mathbb{R}^m A∈Rm×n,b∈Rm 使得集合 D : = { x ∈ \mathcal{D}:=\{x\in D:={x∈ R n ∣ A x = b } \mathbb{R}^n|Ax=b\} Rn∣Ax=b} 非空,又设函数 f f f 在 x ? x^* x? 处可微. 那么,等式约束优化问题
{ min ? f ( x ) s.t A x = b \begin{align} \begin{cases}\min f(x)\\\text{s.t}\quad Ax=b\end{cases}\end{align} {minf(x)s.tAx=b???的局部最优解 x ? ∈ R n x^*\in\mathbb{R}^n x?∈Rn 满足: ? f ( x ? ) ∈ r a n ( A T ) , A x ? = b , \begin{align} \nabla f(x^{*})\in\mathbf{ran}(A^{T}),\quad Ax^{*}=b,\end{align} ?f(x?)∈ran(AT),Ax?=b,??其中 r a n ( A T ) \mathbf{ran}( A^T) ran(AT) 是 A T A^T AT 的列向量所张成的空间.
命题 1.2.2: (一阶充分条件) 设 x ? ∈ D x^*\in\mathcal{D} x?∈D, f f f 在 x ? x^* x? 处可微,满足
? f ( x ? ) T d > 0 , ? d ∈ S F D ( x ? ) . \begin{align} \nabla f(x^*)^Td>0,\quad\forall d\in\mathbf{SFD}(x^*).\end{align} ?f(x?)Td>0,?d∈SFD(x?).??那么, x ? x^* x? 是 ( f , D ) f,D) f,D) 的一个严格局部极小点
命题 1.2.3:(二阶充分条件) 设
x
?
∈
r
i
(
D
)
,
f
x^*\in\mathbf{ri}(\mathcal{D}),f
x?∈ri(D),f 在
x
?
x^*
x? 处二阶连续可微,且
?
f
(
x
?
)
T
d
=
0
,
d
T
?
2
f
(
x
?
)
d
>
0
,
?
d
∈
V
D
?
{
0
}
,
\nabla f(x^*)^Td=0,\quad d^T\nabla^2f(x^*)d>0,\quad\forall d\in V_{\mathcal{D}}\setminus\{0\},
?f(x?)Td=0,dT?2f(x?)d>0,?d∈VD??{0},那么,
x
?
x^*
x? 是
(
f
,
D
)
(f,D)
(f,D) 的一个严格局部极小点
上一小节的几个关于优化问题 ( f , D ) (f, \mathcal{D}) (f,D) 的局部最优解的的必要和充分条件都依赖于序列可行方向 S F D ( x ? ) \mathbf{SFD}(x^*) SFD(x?). 在实际问题中, 约束条件常常是由若干个不等式或等式给出的, 凭借这些不等式来判断一个方向是否为序列可行方向不是一件容易的事情. 所以, 有必要将这些必要与充分条件转换为由约束函数表述的相关条件, 使之便于检验和应用. 在这一小节, 通过 Abadie 约束条件将 S F D ( x ? ) \mathbf{SFD}(x^*) SFD(x?)与一个所谓线性化可行方向集 L F D ( x ? ) \mathbf{LFD}(x^*) LFD(x?) 关联起来, 然后利用 Farkas 引理实现了这种转换, 建立起了由约束函数表述的必要充分条件.
本节考虑不含约束集 Ω 的约束优化问题 { min ? f 0 ( x ) s . t f i ( x ) ≤ 0 , i = 1 , ? ? , p , h j ( x ) = 0 , j = 1 , ? ? , q . \begin{align} \begin{cases}\min f_0(x)\\\mathrm{s.t}\quad f_i(x)\leq0,\quad i=1,\cdots,p,\\h_j(x)=0,\quad j=1,\cdots,q.\end{cases}\end{align} ? ? ??minf0?(x)s.tfi?(x)≤0,i=1,?,p,hj?(x)=0,j=1,?,q.???此时,可行集为 D = { x ∈ R n ∣ f i ( x ) ≤ 0 , ? i = 1 , ? ? , p ; ? h j ( x ) = 0 , ? j = 1 , ? ? , q } . \mathcal{D}=\{x\in\mathbb{R}^{n}|f_{i}(x)\leq0,\:i=1,\cdots,p;\:h_{j}(x)=0,\:j=1,\cdots,q\}. D={x∈Rn∣fi?(x)≤0,i=1,?,p;hj?(x)=0,j=1,?,q}.在上述优化问题(11)中,序列可行方向 S F D ( x ? ) \mathbf{SFD}(x^*) SFD(x?)需要根据给出的若干个不等式或等式来判断,但这不是一件容易的事情. 在第2节中,将致力于将该隐式条件转化为易于处理的等价形式, 由此导出著名的 KKT 条件.
首先给出如下定义:
定义 2.1.1: (有效约束) 对于约束优化问题(11), 设
x
?
∈
D
x^*\in\mathcal{D}
x?∈D,记
A
(
x
?
)
:
=
{
i
∣
1
≤
i
≤
p
,
?
f
i
(
x
?
)
=
0
}
.
\mathcal{A}(x^*):=\{i|1\leq i\leq p,~f_i(x^*)=0\}.
A(x?):={i∣1≤i≤p,?fi?(x?)=0}.称下标在
A
(
x
?
)
A(x^*)
A(x?) 的约束为在
x
?
x^*
x? 处的有效约束 (或起作用的约束), 其余的称为
x
?
x^*
x? 处的无效约束.
命题 2.1.1: (序列可行方向的必要条件) 对于优化问题(11), 设 x ? ∈ D , { f i } i ∈ A ( x ? ) x^*\in\mathcal{D},\{f_i\}_{i\in\mathcal{A}(x^*)} x?∈D,{fi?}i∈A(x?)?, { h j } j = 1 q \{h_j\}_{j=1}^q {hj?}j=1q? 均在 x ? x^* x? 处可微,那么, ? d ∈ S F D ( x ? ) \forall d\in\mathbf{SFD}(x^*) ?d∈SFD(x?),有 ? f i ( x ? ) T d ≤ 0 , ? i ∈ A ( x ? ) , ? h j ( x ? ) T d = 0 , ? j = 1 , ? q . \begin{align} \nabla f_i(x^*)^Td\leq0,\quad\forall i\in\mathcal{A}(x^*),\quad\nabla h_j(x^*)^Td=0,\quad\forall j=1,\cdots q.\end{align} ?fi?(x?)Td≤0,?i∈A(x?),?hj?(x?)Td=0,?j=1,?q.??
证:因 d ∈ S F D ( x ? ) d\in\mathbf{SFD}(x^*) d∈SFD(x?),故存在 { d k } ? ? B ( 0 , 1 ) \{d_k\}\subset\partial B(0,1) {dk?}??B(0,1) 和 δ k → 0 + \delta_k\to0+ δk?→0+, 使得 d k → d , x ? + δ k d k ∈ D . d_k\to d,x^*+\delta_kd_k\in\mathcal{D}. dk?→d,x?+δk?dk?∈D. 对任意的 i ∈ A ( x ? ) i\in\mathcal{A}(x^*) i∈A(x?), 有 0 ≥ f i ( x ? + δ k d k ) = f i ( x ? ) + δ k ? f i ( x ? ) T d k + o ( δ k ) = δ k ? f i ( x ? ) T d k + o ( δ k ) . 0\geq f_i(x^*+\delta_kd_k)=f_i(x^*)+\delta_k\nabla f_i(x^*)^Td_k+o(\delta_k)=\delta_k\nabla f_i(x^*)^Td_k+o(\delta_k). 0≥fi?(x?+δk?dk?)=fi?(x?)+δk??fi?(x?)Tdk?+o(δk?)=δk??fi?(x?)Tdk?+o(δk?).两边除以 δ k \delta_k δk?,并令 k → ∞ k\to\infty k→∞,得 ? f i ( x ? ) T d ≤ 0. \nabla f_i(x^*)^Td\leq0. ?fi?(x?)Td≤0. 类似地可证 ? h j ( x ? ) T d = 0 , ? j = 1 , ? ? , q . \nabla h_j(x^*)^Td=0,\:j=1,\cdots,q. ?hj?(x?)Td=0,j=1,?,q.
注: 条件(12)说明,在 x ? x^* x? 处沿着序列可行方向, f i f_i fi? 必须是下降的,而 h j h_j hj? 必须是不升不降的.
定义 2.1.2: (线性化可行方向 (Linearized Feasible Direction)) 对于优化问题(11),设 x ? ∈ D , ? { f i } i ∈ A ( x ? ) , ? { h j } j = 1 q x^*\in\mathcal{D},\:\{f_i\}_{i\in\mathcal{A}(x^*)},\:\{h_j\}_{j=1}^q x?∈D,{fi?}i∈A(x?)?,{hj?}j=1q? 均在 x ? x^* x? 处可微。称 L F D ( x ? ) : = { d ∈ ? B ( 0 , 1 ) ∣ 满足 ( 12 ) } \mathbf{LFD}(x^*):=\left\{d\in\partial B(0,1)|\text{满足}(12)\right\} LFD(x?):={d∈?B(0,1)∣满足(12)}中的向量 d d d 为在 x ? x^* x? 处的线性化可行方向.
命题 2.1.2 表明,当 x ? ∈ D x^*\in\mathcal{D} x?∈D,且 { f i } i ∈ A ( x ? ) \{f_i\}_{i\in\mathcal{A}(x^*)} {fi?}i∈A(x?)? 和 { h j } j = 1 q \{h_j\}_{j=1}^q {hj?}j=1q? 均在 x ? x^* x? 处可微时,有 S F D ( x ? ) ? \mathbf{SFD}(x^*)\subset SFD(x?)? L F D ( x ? ) . \mathbf{LFD}(x^*). LFD(x?). 一般而言,等式 S F D ( x ? ) = L F D ( x ? ) \begin{align} \mathbf{SFD}(x^*)=\mathbf{LFD}(x^*)\end{align} SFD(x?)=LFD(x?)??不一定成立. 若它成立,我们便称优化问题(11)在 x ? x^* x? 处满足 Abadie 约束条件 (Abadie constraint qualification,简称为 ACQ).与 S F D ( x ? ) \mathbf{SFD}(x^*) SFD(x?) 不同的是, S F D ( x ? ) \mathbf{SFD}(x^*) SFD(x?) 通过(12)由约束函数对序列可行方向给出代数刻画.
定义 2.1.3: (正则点) 对于优化问题(11), 设 x ? ∈ D , { f i } i ∈ A ( x ? ) , { h j } j = 1 q x^*\in\mathcal{D},\{f_i\}_{i\in\mathcal{A}(x^*)},\{h_j\}_{j=1}^q x?∈D,{fi?}i∈A(x?)?,{hj?}j=1q? 均在 x ? x^* x? 的某邻域内有连续的偏导数,若如下条件之一成立
( 1 ) ? { f i } i ∈ A ( x ? ) , ? { h j } j = 1 q (1)\:\{f_i\}_{i\in\mathcal{A}(x^*)},\:\{h_j\}_{j=1}^q (1){fi?}i∈A(x?)?,{hj?}j=1q? 均为仿射函数;
(2) 梯度向量族 { ? f i ( x ? ) , ? ? h j ( x ? ) ∣ i ∈ A ( x ? ) , ? j = 1 , ? ? , q } \{\nabla f_i(x^*),\:\nabla h_j(x^*)|i\in\mathcal{A}(x^*),\:j=1,\cdots,q\} {?fi?(x?),?hj?(x?)∣i∈A(x?),j=1,?,q} 线性无关,
则称 x ? x^* x? 是该问题的一个正则点.
命题 2.1.3 :(ACQ 的充分条件) 若 x ? x^* x? 是优化问题(11)的一个正则点,那么 A b a d i e Abadie Abadie 约束条件(13)成立.
下面将在 Abadie 约束条件下,利用 Farkas 引理将命题 1.2.1的必要条件写成由约束函数所表达的条件,从而导出优化问题(11)之局部解的必要条件. 为达到这个目的首先引入如下定义的 Lagrange 函数
L
(
x
,
λ
,
μ
)
:
=
f
0
(
x
)
+
∑
i
=
1
p
λ
i
f
i
(
x
)
+
∑
j
=
1
q
μ
j
h
j
(
x
)
.
\begin{align} L(x,\lambda,\mu):=f_0(x)+\sum_{i=1}^p\lambda_if_i(x)+\sum_{j=1}^q\mu_jh_j(x).\end{align}
L(x,λ,μ):=f0?(x)+i=1∑p?λi?fi?(x)+j=1∑q?μj?hj?(x).??称
λ
i
\lambda_i
λi? 和
μ
j
\mu_j
μj? 分别为对应于约束函数
f
i
f_i
fi? 和
h
j
h_j
hj? 的 Lagrange 乘子.
( 4.2.7 ) \begin{pmatrix}4.2.7\end{pmatrix} (4.2.7?)
引理 2.2.1: 对于优化问题(11), 设
x
?
∈
R
n
,
{
f
i
}
i
=
0
p
,
{
h
j
}
j
=
1
q
x^*\in\mathbb{R}^n,\{f_i\}_{i=0}^p,\{h_j\}_{j=1}^q
x?∈Rn,{fi?}i=0p?,{hj?}j=1q? 均在
x
?
x^*
x? 处可微,则
x
?
∈
D
,
?
f
0
(
x
?
)
T
d
≥
0
,
?
d
∈
L
F
D
(
x
?
)
,
\begin{align} x^*\in\mathcal{D},\quad\nabla f_0(x^*)^Td\geq0,\quad\forall d\in\mathbf{LFD}(x^*),\end{align}
x?∈D,?f0?(x?)Td≥0,?d∈LFD(x?),??当且仅当存在
λ
?
∈
R
p
\lambda^*\in\mathbb{R}^p
λ?∈Rp 和
μ
?
∈
R
q
\mu^*\in\mathbb{R}^q
μ?∈Rq,使得如下
K
K
T
KKT
KKT 条件成立:
{
x
?
∈
D
;
λ
i
?
≥
0
,
i
=
1
,
?
?
,
p
;
λ
i
?
f
i
(
x
?
)
=
0
,
i
=
1
,
?
?
,
p
;
?
x
L
(
x
?
,
λ
?
,
μ
?
)
=
0.
\begin{align} \begin{cases}x^*\in\mathcal{D};\\\lambda_i^*\geq0,\quad i=1,\cdots,p;\\\lambda_i^*f_i(x^*)=0,\quad i=1,\cdots,p;\\\nabla_xL(x^*,\lambda^*,\mu^*)=0.\end{cases}\end{align}
?
?
??x?∈D;λi??≥0,i=1,?,p;λi??fi?(x?)=0,i=1,?,p;?x?L(x?,λ?,μ?)=0.???证. 如果问题(11)是无约束的,那么
L
F
D
(
x
?
)
=
?
B
(
0
,
1
)
\mathbf{LFD}(x^*)=\partial B(0,1)
LFD(x?)=?B(0,1). 此时,(15)等价于
?
f
0
(
x
?
)
=
0
\nabla f_0(x^*)=0
?f0?(x?)=0,即 KKT 条件(16)成立. 下面设问题(11)是有约束的.
必要性.设
x
?
∈
D
x^*\in\mathcal{D}
x?∈D 且(15)成立,显然(16)的第一式成立. 下面证(16)的后三式.
根据(15), 对任意的
d
∈
L
F
D
(
x
?
)
d\in\mathbf{LFD}(x^*)
d∈LFD(x?) 有 -
?
f
0
(
x
?
)
T
d
≤
0
\nabla f_0(x^*)^Td\leq0
?f0?(x?)Td≤0. 根据 Farkas 引理,存在
λ
i
?
≥
0
,
?
i
∈
A
(
x
?
)
\lambda_i^*\geq0,\:i\in\mathcal{A}(x^*)
λi??≥0,i∈A(x?),以及
μ
j
+
≥
0
,
?
μ
j
?
≥
0
,
?
j
=
1
,
?
?
,
q
\mu_j^+\geq0,\:\mu_j^-\geq0,\:j=1,\cdots,q
μj+?≥0,μj??≥0,j=1,?,q, 使得
?
?
f
0
(
x
?
)
=
∑
i
∈
A
(
x
?
)
λ
i
?
?
f
i
(
x
?
)
+
∑
j
=
1
q
(
μ
i
+
?
μ
i
?
)
?
h
j
(
x
?
)
.
-\nabla f_0(x^*)=\sum_{i\in\mathcal{A}(x^*)}\lambda_i^*\nabla f_i(x^*)+\sum_{j=1}^q(\mu_i^+-\mu_i^-)\nabla h_j(x^*).
??f0?(x?)=i∈A(x?)∑?λi???fi?(x?)+j=1∑q?(μi+??μi??)?hj?(x?).记
λ
i
?
:
=
0
,
?
?
i
∈
{
1
,
?
?
,
p
}
?
A
(
x
?
)
,
μ
j
?
:
=
μ
j
+
?
μ
j
?
,
?
j
=
1
,
?
?
,
q
,
\lambda_i^*:=0,\:\forall i\in\{1,\cdots,p\}\setminus\mathcal{A}(x^*),\quad\mu_j^*:=\mu_j^+-\mu_j^-,\:j=1,\cdots,q,
λi??:=0,?i∈{1,?,p}?A(x?),μj??:=μj+??μj??,j=1,?,q,便得
λ
i
?
≥
0
,
λ
i
?
f
i
(
x
?
)
=
0
,
i
=
1
,
?
?
,
p
\lambda_i^*\geq0,\lambda_i^*f_i(x^*)=0, i=1,\cdots,p
λi??≥0,λi??fi?(x?)=0,i=1,?,p, 且
?
x
L
(
x
?
,
λ
?
,
μ
?
)
=
0
\nabla_xL(x^*,\lambda^*,\mu^*)=0
?x?L(x?,λ?,μ?)=0.即(16)的后三式成立. 必要性获证.
充分性,由(16)可知 x ? ∈ D x^*\in\mathcal{D} x?∈D 且 ? f 0 ( x ? ) + ∑ i ∈ A ( x ? ) λ i ? ? f i ( x ? ) + ∑ j = 1 q μ j ? ? h j ( x ? ) = 0. \nabla f_0(x^*)+\sum_{i\in\mathcal{A}(x^*)}\lambda_i^*\nabla f_i(x^*)+\sum_{j=1}^q\mu_j^*\nabla h_j(x^*)=0. ?f0?(x?)+i∈A(x?)∑?λi???fi?(x?)+j=1∑q?μj???hj?(x?)=0.于是, ? d ∈ L F D ( x ? ) \forall d\in\mathbf{LFD}(x^*) ?d∈LFD(x?),由 ? f i ( x ? ) T d ≤ 0 , ? ? i ∈ A ( x ? ) \nabla f_i(x^*)^Td\leq0,\:\forall i\in\mathcal{A}(x^*) ?fi?(x?)Td≤0,?i∈A(x?), 且 h j ( x ? ) T d = 0 , ? j = 1 , ? ? , q h_j(x^*)^Td=0,\:j=1,\cdots,q hj?(x?)Td=0,j=1,?,q, 立得 ? f 0 ( x ? ) T d ≥ 0 \nabla f_0(x^*)^Td\geq0 ?f0?(x?)Td≥0. 即(15)成立.
注 1: KKT 是 Karush-Kuhn-Tucker 的缩写.
注 2: KKT 条件中 “ λ i ? f i ( x ? ) = 0 , ? i = 1 , ? ? , p ” “\lambda_i^*f_i(x^*)=0,\:i=1,\cdots,p” “λi??fi?(x?)=0,i=1,?,p” 称为互补松弛条件.
命题 2.2.4: (一阶必要条件,KKT) 设 x ? x^* x? 是优化问题(11)的一个正则点和局部解,则存在 λ ? ∈ R + p , μ ? ∈ R q \lambda^*\in\mathbb{R}_+^p,\quad\mu^*\in\mathbb{R}^q λ?∈R+p?,μ?∈Rq,满足 K K T KKT KKT 条件(16).
证. 因为 x ? x^* x?是正则点,根据正则点的定义可以知道目标函数 f f f 在 x ? x^* x? 处可微,且由于 x ? x^* x?是局部解,则由命题 1.2.1可以得到 ? f ( x ? ) T d ≥ 0 , ? d ∈ S F D ( x ? ) \nabla f(x^{*})^{T}d\geq0,\forall d\in\mathbf{SFD}(x^{*}) ?f(x?)Td≥0,?d∈SFD(x?).
再由命题 2.1.3可以得到 A b a d i e Abadie Abadie 约束条件满足,即 S F D ( x ? ) = L F D ( x ? ) \mathbf{SFD}(x^{*})=\mathbf{LFD}(x^{*}) SFD(x?)=LFD(x?),从而引理 2.2.1 的条件 (15) 成立,于是可知 KKT 条件 (16) 成立.
若目标函数
f
f
f 在
x
?
x^*
x? 处可微,则
?
f
(
x
?
)
T
d
≥
0
,
?
d
∈
S
F
D
(
x
?
)
.
\begin{align}\nabla f(x^{*})^{T}d\geq0,\quad\forall d\in\mathbf{SFD}(x^{*}).\end{align}
?f(x?)Td≥0,?d∈SFD(x?).??(2)若
f
f
f 在
x
?
x^*
x? 处二阶连续可微,且
x
?
∈
r
i
(
D
)
x^*\in\mathbf{ri}(\mathcal{D})
x?∈ri(D),则在建立二阶必要条件之前,先引入切空间的概念: 称
T
(
x
?
)
:
=
(
span
?
{
(
?
f
i
(
x
?
)
)
i
∈
A
(
x
?
)
,
?
(
?
h
j
(
x
?
)
)
j
=
1
q
}
)
⊥
.
\begin{align} \mathcal{T}(x^*):=\left(\operatorname{span}\{\left(\nabla f_i(x^*)\right)_{i\in\mathcal{A}(x^*)},\:\left(\nabla h_j(x^*)\right)_{j=1}^q\}\right)^\perp.\end{align}
T(x?):=(span{(?fi?(x?))i∈A(x?)?,(?hj?(x?))j=1q?})⊥.??为优化问题(11)的有效约束所生成的切空间.显然有
T
(
x
?
)
∩
?
B
(
0
,
1
)
?
L
F
D
(
x
?
)
\mathcal{T}(x^*)\cap\partial B(0,1)\subset\mathbf{LFD}(x^*)
T(x?)∩?B(0,1)?LFD(x?). 当问题仅含等式约束时,有
T
(
x
?
)
∩
?
B
(
0
,
1
)
=
L
F
D
(
x
?
)
.
\mathcal{T}(x^*)\cap\partial B(0,1)=\mathbf{LFD}(x^*).
T(x?)∩?B(0,1)=LFD(x?).
命题 2.2.5: (二阶必要条件) 设 x ? ∈ D , { f i } i = 0 p , { h j } j = 1 q x^*\in\mathcal{D},\{f_i\}_{i=0}^p,\quad\{h_j\}_{j=1}^q x?∈D,{fi?}i=0p?,{hj?}j=1q? 均在 x ? x^* x? 处二阶连续可微,若 x ? x^* x? 为优化问题(11)的正则点和局部解,则存在 λ ? ∈ R + p , μ ? ∈ R q \lambda^*\in\mathbb{R}_+^p,\mu^*\in\mathbb{R}^q λ?∈R+p?,μ?∈Rq,满足 K K T KKT KKT 条件(16),且 d T ? x 2 L ( x ? , λ ? , μ ? ) d ≥ 0 , ? d ∈ T ( x ? ) . \begin{align} d^T\nabla_x^2L(x^*,\lambda^*,\mu^*)d\geq0,\quad\forall d\in\mathcal{T}(x^*).\end{align} dT?x2?L(x?,λ?,μ?)d≥0,?d∈T(x?).??
证. 根据一阶必要条件 (命题 2.2.4), 存在
λ
?
∈
R
+
p
,
μ
?
∈
R
q
\lambda^*\in\mathbb{R}_+^p,\mu^*\in\mathbb{R}^q
λ?∈R+p?,μ?∈Rq, 满足 KKT 条件 (16) ,于是
?
x
L
(
x
?
,
λ
?
,
μ
?
)
=
0
\nabla_xL(x^*,\lambda^*,\mu^*)=0
?x?L(x?,λ?,μ?)=0. 考虑等式约束优化问题
{
min
?
f
0
(
x
)
s
.
t
f
i
(
x
)
=
0
,
i
∈
A
(
x
?
)
,
h
j
(
x
)
=
0
,
j
=
1
,
?
?
,
q
.
\begin{align} \begin{cases}\min f_0(x)\\\mathrm{s.t}\quad f_i(x)=0,\quad i\in\mathcal{A}(x^*),\\h_j(x)=0,\quad j=1,\cdots,q.\end{cases}\end{align}
?
?
??minf0?(x)s.tfi?(x)=0,i∈A(x?),hj?(x)=0,j=1,?,q.???将问题(20)的可行集,序列可行方向集和线性化可行方向集分别记为
D
~
,
S
F
D
~
(
x
?
)
\widetilde{\mathcal{D}},\widetilde{\mathbf{SFD}}(x^*)
D
,SFD
(x?) 和
L
F
D
~
(
x
?
)
\widetilde{\mathbf{LFD}}(x^*)
LFD
(x?),由于问题 (20) 是仅含等式约束的优化问题,于是根据且空间的性质有
L
F
D
~
(
x
?
)
=
T
(
x
?
)
∩
?
B
(
0
,
1
)
\widetilde{\mathbf{LFD}}(x^*)=\mathcal{T}(x^*)\cap\partial B(0,1)
LFD
(x?)=T(x?)∩?B(0,1),即
x
?
x^*
x? 是问题(20)的正则点,且
S
F
D
~
(
x
?
)
=
L
F
D
~
(
x
?
)
=
T
(
x
?
)
∩
?
B
(
0
,
1
)
.
\widetilde{\mathbf{SFD}}(x^*)=\widetilde{\mathbf{LFD}}(x^*)=\mathcal{T}(x^*)\cap\partial B(0,1).
SFD
(x?)=LFD
(x?)=T(x?)∩?B(0,1).由于
x
?
∈
D
~
x^*\in\widetilde{\mathcal{D}}
x?∈D
.取
δ
>
0
\delta>0
δ>0,使得
f
i
(
x
)
<
0
,
?
?
x
∈
B
(
x
?
,
δ
)
,
?
?
i
?
A
(
x
?
)
f_i(x)<0,\:\forall x\in B(x^*,\delta),\:\forall i\notin\mathcal{A}(x^*)
fi?(x)<0,?x∈B(x?,δ),?i∈/A(x?). 易见
?
x
∈
\forall x\in
?x∈
D
~
∩
B
(
x
?
,
δ
)
\widetilde{\mathcal{D}}\cap B(x^*,\delta)
D
∩B(x?,δ),有
x
∈
D
x\in\mathcal{D}
x∈D.因而
f
0
(
x
)
≥
f
0
(
x
?
)
f_0(x)\geq f_0(x^*)
f0?(x)≥f0?(x?).即
x
?
x^*
x? 是问题 (20) 的局部最优解. 下面证明 (19) .
设
d
∈
T
(
x
?
)
∩
?
B
(
0
,
1
)
d\in\mathcal{T}(x^*)\cap\partial B(0,1)
d∈T(x?)∩?B(0,1),由于
S
F
D
~
(
x
?
)
=
L
F
D
~
(
x
?
)
=
T
(
x
?
)
∩
?
B
(
0
,
1
)
\widetilde{\mathbf{SFD}}(x^*)=\widetilde{\mathbf{LFD}}(x^*)=\mathcal{T}(x^*)\cap\partial B(0,1)
SFD
(x?)=LFD
(x?)=T(x?)∩?B(0,1),有
d
∈
S
F
D
~
(
x
?
)
d\in\widetilde{\mathbf{SFD}}(x^*)
d∈SFD
(x?),根据
S
F
D
(
x
?
)
\mathbf{SFD}(x^*)
SFD(x?)的定义以及最优解的定义,存在
δ
k
→
0
+
\delta_k\to0+
δk?→0+ 以及
d
k
→
d
d_k\to d
dk?→d, 使得
x
k
:
=
x
?
+
δ
k
d
k
∈
D
~
x_k:=x^*+\delta_kd_k\in\widetilde{\mathcal{D}}
xk?:=x?+δk?dk?∈D
.从而
L
(
x
k
,
λ
?
,
μ
?
)
=
f
0
(
x
k
)
≥
f
0
(
x
?
)
=
L
(
x
?
,
λ
?
,
μ
?
)
,
\begin{aligned}L(x_k,\lambda^*,\mu^*)=f_0(x_k)\geq f_0(x^*)=L(x^*,\lambda^*,\mu^*),\end{aligned}
L(xk?,λ?,μ?)=f0?(xk?)≥f0?(x?)=L(x?,λ?,μ?),?其中
L
L
L 是原问题(11)的 Lagrange 函数.将
L
(
x
k
,
λ
?
,
μ
?
)
L(x_k,\lambda^*,\mu^*)
L(xk?,λ?,μ?) 在
x
?
x^*
x? 点做 Taylor 展开,并利用 KKT 条件中的等式
?
x
L
(
x
?
,
λ
?
,
μ
?
)
=
0
\nabla_xL(x^*,\lambda^*,\mu^*)=0
?x?L(x?,λ?,μ?)=0,带入到Taylor展开式后,得
L
(
x
k
,
λ
?
,
μ
?
)
=
L
(
x
?
,
λ
?
,
μ
?
)
+
1
2
δ
k
2
d
k
T
?
x
x
2
L
(
x
?
,
λ
?
,
μ
?
)
T
d
k
+
o
(
δ
k
2
)
.
L(x_k,\lambda^*,\mu^*)=L(x^*,\lambda^*,\mu^*)+\frac12\delta_k^2d_k^T\nabla_{xx}^2L(x^*,\lambda^*,\mu^*)^Td_k+o(\delta_k^2).
L(xk?,λ?,μ?)=L(x?,λ?,μ?)+21?δk2?dkT??xx2?L(x?,λ?,μ?)Tdk?+o(δk2?).由于
L
(
x
k
,
λ
?
,
μ
?
)
=
f
0
(
x
k
)
≥
f
0
(
x
?
)
=
L
(
x
?
,
λ
?
,
μ
?
)
\begin{aligned}L(x_k,\lambda^*,\mu^*)=f_0(x_k)\geq f_0(x^*)=L(x^*,\lambda^*,\mu^*)\end{aligned}
L(xk?,λ?,μ?)=f0?(xk?)≥f0?(x?)=L(x?,λ?,μ?)?,所以
δ
k
2
d
k
T
?
x
x
2
L
(
x
?
,
λ
?
,
μ
?
)
T
d
k
+
o
(
δ
k
2
)
≥
0.
\delta_k^2d_k^T\nabla_{xx}^2L(x^*,\lambda^*,\mu^*)^Td_k+o(\delta_k^2)\geq0.
δk2?dkT??xx2?L(x?,λ?,μ?)Tdk?+o(δk2?)≥0.两边除以
δ
k
2
\delta_k^2
δk2? 并令
k
→
∞
k\to\infty
k→∞, 即得(19).
命题 2.3.1: (二阶充分条件) 设 { f i } i = 0 p , { h j } j = 1 q \{f_i\}_{i=0}^p,\{h_j\}_{j=1}^q {fi?}i=0p?,{hj?}j=1q? 均在 x ? ∈ R n x^*\in\mathbb{R}^n x?∈Rn 处二阶连续可微,且存在 λ i ? ∈ R p , μ ? ∈ R q \lambda_i^*\in\mathbb{R}^p,\quad\mu^*\in\mathbb{R}^q λi??∈Rp,μ?∈Rq,满足 K K T KKT KKT 条件 (16). 如果 d T ? x x 2 L ( x ? , λ ? , μ ? ) d > γ , ? d ∈ T ( x ? , λ ? ) ∩ ? B ( 0 , 1 ) , \begin{align} d^T\nabla_{xx}^2L(x^*,\lambda^*,\mu^*)d>\gamma,\quad\forall d\in\mathcal{T}(x^*,\lambda^*)\cap\partial B(0,1),\end{align} dT?xx2?L(x?,λ?,μ?)d>γ,?d∈T(x?,λ?)∩?B(0,1),??其中 γ \gamma γ 是一个正常数,且 T ( x ? , λ ? ) : = ( span ? { ? f 0 ( x ? ) , ( ? f i ( x ? ) ) i ∈ A ( x ? , λ ? ) , ( ? h j ( x ? ) ) j = 1 q } ) ⊥ , A ( x ? , λ ? ) : = { i ∈ A ( x ? ) ∣ λ i ? > 0 } . \begin{aligned}\mathcal{T}(x^*,\lambda^*)&:=\Big(\operatorname{span}\big\{\nabla f_0(x^*),\big(\nabla f_i(x^*)\big)_{i\in\mathcal{A}(x^*,\lambda^*)},\big(\nabla h_j(x^*)\big)_{j=1}^q\big\}\Big)^\perp,\\ \\ \mathcal{A}(x^*,\lambda^*)&:=\{i\in\mathcal{A}(x^*)|\lambda_i^*>0\}.\end{aligned} T(x?,λ?)A(x?,λ?)?:=(span{?f0?(x?),(?fi?(x?))i∈A(x?,λ?)?,(?hj?(x?))j=1q?})⊥,:={i∈A(x?)∣λi??>0}.?则存在 δ > 0 \delta>0 δ>0, 使得 f 0 ( x ) ≥ f 0 ( x ? ) + 1 2 γ ∥ x ? x ? ∥ 2 2 , ? x ∈ D ∩ B ( x ? , δ ) . \begin{align} f_0(x)\geq f_0(x^*)+\frac12\gamma\|x-x^*\|_2^2,\quad\forall x\in\mathcal{D}\cap B(x^*,\delta).\end{align} f0?(x)≥f0?(x?)+21?γ∥x?x?∥22?,?x∈D∩B(x?,δ).??因而 x ? x^* x? 是优化问题(11)的一个严格局部解.