多个等式束的拉格朗日乘子问题(详细证明)

UTF8gbsn

多约束的拉格朗日乘子问题.

f ( x ) h 1 ( x ) = 0 ⋮ h m ( x ) = 0 \left. \begin{aligned} \quad & f(x)\\ \quad& h_1(x)=0\\ & \quad \quad \vdots\\ & h_m(x)=0 \end{aligned} \right. f(x)h1(x)=0hm(x)=0

假设这个问题的解是 x ∗ x^{*} x. 那么, 以下命题成立
∇ f ( x ∗ ) = ∑ i = 1 m λ i ∇ h i ( x ∗ ) \nabla f(x^{*}) = \sum_{i=1}^{m} \lambda_i\nabla h_i(x^{*}) f(x)=i=1mλihi(x)

接下来, 我们就要来证明这个命题.

证明:

假设所有约束条件的相交部分组成一个hypersurface S S S. 并且 x ∗ x^{*} x S S S
上的一点. 接下来先来证明 ∇ f ( x ∗ ) \nabla f(x^{*}) f(x) 垂直于过点 x ∗ x^{*} x,
S S S的切平面 T T T. 假设 x ( t ) x(t) x(t) S S S上任意一条曲线,
切满足 x ( 0 ) = x ∗ x(0)=x^{*} x(0)=x.那么可得.

f ( x ) = f ( x ( t ) ) f ( x ∗ ) = f ( x ( 0 ) ) ∇ f ( x ∗ ) = ∇ f ( x ∗ ) ⋅ ∇ x ( 0 ) = 0 \left. \begin{aligned} &f(x)=f(x(t))\\ &f(x^{*})=f(x(0))\\ &\nabla f(x^{*})=\nabla f(x^{*}) \cdot \nabla x(0) = 0 \end{aligned} \right. f(x)=f(x(t))f(x)=f(x(0))f(x)=f(x)x(0)=0

最后一个等式之所以是0, 是因为对于一元可导函数 f ( x ( t ) ) f(x(t)) f(x(t))来说,
极值点的导数为0. 又因为 x ( t ) x(t) x(t)为任意曲线. 所以 ∇ f ( x ∗ ) \nabla f(x^{*}) f(x)
垂直于过点 x ∗ x^{*} x, S S S的切平面 T T T.

  • 至此我们证明了 ∇ f ( x ∗ ) \nabla f(x^{*}) f(x) 垂直于切平面 T T T

接下来, 我们需要设一个假设,
也就是假设 ∇ h i ( x ∗ ) , i ∈ 1 , 2 , ⋯   , m \nabla h_{i}(x^{*}), i\in {1, 2, \cdots,m} hi(x),i1,2,,m 线性无关.
我们把这种条件下的极值点 x ∗ x^{*} x叫做regular point.
接下来定义一个集合如下.

M = { y ∣ ∑ i = 1 m y i ∇ h i ( x ∗ ) = 0 ( m ) } , y ∈ R m , ∇ h i ( x ∗ ) ∈ R m , 0 ( m ) ∈ R m M=\{y|\sum_{i=1}^{m}y_i\nabla h_{i}(x^{*})=0^{(m)}\}, y\in R^{m}, \nabla h_{i}(x^{*}) \in R^m, 0^{(m)}\in R^m M={yi=1myihi(x)=0(m)},yRm,hi(x)Rm,0(m)Rm

接下来, 我们需要证明 T ≡ M T \equiv M TM, 如果证明 T ≡ M T\equiv M TM,
那么就可以说 ∇ f ( x ∗ ) ∈ s p a n { ∇ h i ( x ∗ ) } , i ∈ { 1 , 2 , ⋯   , m } \nabla f(x^{*})\in span\{\nabla h_{i}(x^{*})\}, i\in \{1,2,\cdots, m\} f(x)span{hi(x)},i{1,2,,m},
也就是说 ∇ f ( x ∗ ) \nabla f(x^{*}) f(x)可以由 ∇ h i ( x ∗ ) , i ∈ { 1 , 2 , ⋯   , m } \nabla h_{i}(x^{*}), i\in \{1,2,\cdots, m\} hi(x),i{1,2,,m}线性表示出来.

∇ f ( x ∗ ) = ∑ i = 1 m λ i ∇ h i ( x ∗ ) \nabla f(x^{*}) = \sum_{i=1}^{m} \lambda_i\nabla h_i(x^{*}) f(x)=i=1mλihi(x)

证明 T=M

还是分两步走 T ⊂ M T\subset M TM M ⊂ T M\subset T MT来证明 T = M T=M T=M.

T ⊂ M T\subset M TM

切平面上的向量, 根据定义必然垂直于约束的表面法向量.
所以可得 T ⊂ M T\subset M TM.

M ⊂ T M\subset T MT

反过来, 现在需要证明对于任意的 y ∈ M y\in M yM, 在 S S S上存在一条曲线 x ( t ) x(t) x(t)
它在 x ∗ x^{*} x 处的导数为 y y y. 也就是证明 M ⊂ T M\subset T MT. 现在假设

h ( x ∗ + t y + ∇ h T ( x ∗ ) u ( t ) ) = 0 ( m ) , 0 ( m ) ∈ R m h(x^{*}+ty+\nabla h^T(x^{*})u(t))=0^{(m)}, 0^{(m)}\in R^m h(x+ty+hT(x)u(t))=0(m),0(m)Rm

注意, ∇ h T ( x ∗ ) \nabla h^{T}(x^{*}) hT(x)是一个 n × m n\times m n×m的矩阵,
假设 x ∈ R n , u ( t ) ∈ R m x\in R^n, u(t)\in R^{m} xRn,u(t)Rm,
现在假设 A = s p a n { ∇ h i ( x ∗ ) , i ∈ { 1 , 2 , ⋯   , m } } A=span\{\nabla h_i(x^{*}), i\in \{1,2,\cdots, m\}\} A=span{hi(x),i{1,2,,m}},
因为 ∇ h i ( x ∗ ) , i ∈ { 1 , 2 , ⋯   , m } \nabla h_{i}(x^{*}), i\in \{1,2,\cdots, m\} hi(x),i{1,2,,m}是线性无关的.
M = N u l l ( A ) M=Null(A) M=Null(A),可见 r a n k ( A ) + r a n k ( M ) = n rank(A)+rank(M)=n rank(A)+rank(M)=n.即然如此,

t y + ∇ h T ( x ∗ ) u ( t ) ∈ R n ty+\nabla h^T(x^{*})u(t) \in R^{n} ty+hT(x)u(t)Rn

就可以表示空间中任意的一条向量. 所以取合适的 u ( t ) ∈ R m u(t)\in R^m u(t)Rm, 可使得
h ( x ∗ + t y + ∇ h ( x ∗ ) T u ( t ) ) = 0 m , 0 m ∈ R m h(x^{*}+ty+\nabla h(x^{*})^Tu(t))=0^{m}, 0^{m}\in R^m h(x+ty+h(x)Tu(t))=0m,0mRm 成立.
下面我们要证明 x ∗ + t y + ∇ h ( x ∗ ) T u ( t ) ∈ S x^{*}+ty+\nabla h(x^{*})^Tu(t) \in S x+ty+h(x)Tu(t)S 而且其连续可导.

  • 先来对 u u u进行求导得 ∇ h ( x ∗ ) ∇ h ( x ∗ ) T \nabla h(x^{*}) \nabla h(x^{*})^T h(x)h(x)T

    这个Jacobian矩阵, 是非奇异的. 因为 ∇ h i ( x ∗ ) \nabla h_{i}(x^{*}) hi(x)线性无关.
    t = 0 t=0 t=0处,有一个解为 u ( 0 ) = 0 u(0)=0 u(0)=0, 由此可见我们可以根据隐函数定理得.
    根据约束方程组 h ( x ∗ + t y + ∇ h ( x ∗ ) T u ( t ) ) = 0 ( m ) , 0 ( m ) ∈ R m h(x^{*}+ty+\nabla h(x^{*})^Tu(t))=0^{(m)}, 0^{(m)}\in R^m h(x+ty+h(x)Tu(t))=0(m),0(m)Rm.
    可得一系列连续可导的方程解 u ( t ) u(t) u(t), 注意 u ( t ) u(t) u(t)是一个函数向量,
    里面有m个函数.
    这里有一个逻辑就是只要 u ( t ) u(t) u(t)连续可导.那么下面的这条曲线也是连续可导的.
    x ( t ) = x ∗ + t y + ∇ h ( x ∗ ) T u ( t ) x(t)=x^{*}+ty+\nabla h(x^{*})^Tu(t) x(t)=x+ty+h(x)Tu(t)

    并且 x ( t ) ∈ S x(t)\in S x(t)S.

  • 因为 h ( x ∗ + t y + ∇ h ( x ∗ ) T u ( t ) ) = 0 ( m ) , 0 ( m ) ∈ R m h(x^{*}+ty+\nabla h(x^{*})^Tu(t))=0^{(m)}, 0^{(m)}\in R^m h(x+ty+h(x)Tu(t))=0(m),0(m)Rm
    是恒等于 0 ( m ) 0^{(m)} 0(m).所以以下导数成立

    0 ( m ) = ∇ h ( x ( t ) ) ∣ t = 0 = ∇ h ( x ∗ ) y + ∇ h ( x ∗ ) ∇ h ( x ∗ ) u ( 0 ) 0^{(m)}=\nabla h(x(t))|_{t=0}=\nabla h(x^{*}) y+\nabla h(x^{*}) \nabla h(x^{*})u(0) 0(m)=h(x(t))t=0=h(x)y+h(x)h(x)u(0)

    因为 u ( 0 ) = 0 u(0)=0 u(0)=0, 最后可得

    ∇ h ( x ∗ ) y = 0 \nabla h(x^{*}) y = 0 h(x)y=0

    S S S上参数曲线 x ( t ) = x ∗ + t y + ∇ h ( x ∗ ) T u ( t ) x(t)=x^{*}+ty+\nabla h(x^{*})^Tu(t) x(t)=x+ty+h(x)Tu(t), 求导可得

    x ˙ ( 0 ) = y + ∇ h ( x ∗ ) T x ˙ ( 0 ) = y \dot{\mathbf{x}}(0)=\mathbf{y}+\nabla \mathbf{h}\left(\mathbf{x}^{*}\right)^{T} \dot{\mathbf{x}}(0)=\mathbf{y} x˙(0)=y+h(x)Tx˙(0)=y

最后得证,
∀ y ∈ M , ∃ x ( t ) ∈ S → x ˙ ( 0 ) = y ⇒ M ⊂ T \forall y\in M, \exists x(t) \in S \rightarrow \dot{x}(0)=y \Rightarrow M \subset T yM,x(t)Sx˙(0)=yMT
于是原命题 ∇ f ( x ∗ ) = ∑ i = 1 m λ i ∇ h i ( x ∗ ) \nabla f(x^{*}) = \sum_{i=1}^{m} \lambda_i\nabla h_i(x^{*}) f(x)=i=1mλihi(x)得证.

多约束拉格朗日乘子

L ( x ) = f ( x ) + ∑ i = 1 m λ i h i ( x ) L(x)=f(x)+\sum_{i=1}^{m}\lambda_i h_i(x) L(x)=f(x)+i=1mλihi(x)

求导并令其等于0正好就是我们的原命题要求的点.

∇ f ( x ) + ∑ i = 1 m λ i h i ( x ) = 0 \nabla f(x)+\sum_{i=1}^{m}\lambda_ih_i(x)=0 f(x)+i=1mλihi(x)=0

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值