等式约束的优化问题求解
基本概念
本文将讨论下类形状的优化问题
minimizef(x)subject toh(x)=0
其中
x∈Rn,f:Rn→R,h:Rn→Rm,h=[h1,...,hm]T,m≤n,假定函数
h连续可微,即
h∈C1。
下面介绍几个基本概念:
正则点:对于满足约束h1(x∗)=0,...,hm(x∗)=0的点x∗,如果梯度向量∇h1(x∗),...,∇hm(x∗)是线性无关的,则称x∗是该约束的一个正则点。
切线空间:曲面S=x∈Rn:h(x)=0中点x∗处的切线空间为集合T(x∗)={y:Dh(x∗)y=0}。可以看出切线空间T(x∗)是矩阵Dh(x∗)的零空间,即T(x∗)=N(Dh(x∗))。
法线空间:曲面S=x∈Rn:h(x)=0中点x∗处的法线空间为集合N(x∗)={x∈Rn:x=Dh(x∗)Tz,z∈Rm}。可以看出法线空间N(x∗)是矩阵Dh(x∗)的零空间,即N(x∗)=R(Dh(x∗)T)。
拉格朗日条件
首先考虑只包含两个决策变量和一个等式约束的优化问题。令h:R2→R为约束函数,可知函数定义域中x处的梯度∇h(x)与通过该点的h(x)水平集正交,选择点x∗=[x∗1,x∗1]T使得h(x∗)=0,且∇h(x∗)≠0,经过点x∗的水平集为集合{x:h(x)=0}。可利用曲线x(t)在x∗领域内进行参数化,x(t)是一个连续可微的向量函数h:R→R2:
x(t)=[x1(t),x1(t)]T,t∈(a,b),x∗=x(t∗),x˙(t∗)≠0,t∗∈(a,b)
接下来可以证明,
∇h(x∗)与
x˙(t∗)正交。由于
h在曲线
{x(t):t∈(a,b)}上是常数0,即对于所有的
t∈(a,b)都有
h(x(t))=0
因此对于任意的
t∈(a,b)都有
ddth(x(t))=0
利用链式法则可以得到
ddth(x(t))=∇h(x(t))Tx˙(t)=0
因此
∇h(x∗)和
x˙(t∗)正交
当
x∗是
f:R→R2在满足
h(x)=0上的极小点的时候,可以证明,
∇f(x∗)与
x˙(t∗)正交,构造关于
t的复合函数:
ϕ(t)=f(x(t))
当
t=t∗的时候取得极小值,根据无约束极值问题的一阶必要条件可知
dϕdt(t∗)=0
利用链式法则可以得到
ddtϕ(t∗)=∇f(x(t∗))Tx˙(t∗)=∇f(x∗)Tx˙(t∗)=0
因此,
∇f(x∗)和
x˙(t∗)正交,上面已经证明
∇f(x∗)与
x˙(t∗)正交,那么向量
∇f(x∗)和
∇h(x∗)平行,那么可以得到这种情况下的拉格朗日定理:
n=2,m=3时的拉格朗日定理:设点x∗是函数f:R2→R的一个极小点,约束条件是h(x)=0,h:R2→R,那么∇f(x∗)和∇h(x∗)平行,即如果∇h(x∗)≠0,则存在标量λ∗,使得
∇f(x∗)+λ∗∇h(x∗)=0
其中
λ∗为拉格朗日乘子。
将这个定理推广到一般情况下,即
f:Rn→R,h:Rn→Rm,m≤n的时候,可以得到:
拉格朗日定理:x∗是
f:Rn→R的局部极小点(或极大点),约束条件为
h(x)=0,h:Rn→Rm,m≤n。如果
x∗是正则点,那么存在
λ∗∈Rm使得
Df(x∗)+λ∗TDh(x∗)=0
二阶条件
二阶必要条件:设x∗是f:Rn→R在约束条件h(x)=0,h:Rn→Rm,m≤n,f,h∈C2下的局部极小点。如果x∗是正则点,那么存在λ∗∈Rm使得
1.Df(x∗)+λ∗TDh(x∗)=0T
2.对于所有的y∈T(x∗),都有yTL(x∗,λ∗)y≥0
二阶充分条件:函数f,h∈C2,如果存在点x∗∈Rn和λ∗∈Rm,使得
1.Df(x∗)+λ∗TDh(x∗)=0T
2.对于所有的y∈T(x∗),都有yTL(x∗,λ∗)y>0
那么x∗是f在约束条件h(x)=0下的严格局部极小点
本文介绍了等式约束下的拉格朗日乘子法,后面还将会介绍不等式约束下的拉格朗日乘子法以及KKT条件等,To be continue…