HomeBlogTopicsPublish
  • rss

  • contact

© 2025 MIT Licensed

Topics→Machine Learning→Lagrangian Conditions under Equality Constraints

Machine Learning

Fundamentals
Decision TreeBackpropagationLinear 1Linear 2Linear 3Linear DualLinear IntroML Numerical MethodsNaive SolveLagrangian Conditions under Equality ConstraintsLagrangian Conditions under Inequality ConstraintsSupport Vector Machine 1Support Vector Machine 2Support Vector Machine 3Convex
Deep Learning Acceleration
Paper DartsPaper MobileNetsPaper ShuffleNetPaper HashingTricksPaper ShuffleNetV2Neural Architecture Search MilestonePyTorch Training Acceleration
Computer Vision
Paper RobotPaper InceptionV4Dataset Cityscapes
Reinforcement Learning
Paper Deep Q-Network

Lagrangian Conditions under Equality Constraints

September 29, 2017

by Frank

**正则点**:对于满足约束 的点,如果梯度向量 是线性无关的,则称是该约束的一个正则点。

基本概念

本文将讨论下类形状的优化问题

min⁡x∈Rnf(x)s.t. h(x)=0\min_{x \in \mathbb{R}^n} f(x) \quad \text{s.t. } h(x) = 0x∈Rnmin​f(x)s.t. h(x)=0

其中

  • x∈Rnx \in \mathbb{R}^{n}x∈Rn,
  • f:Rn→Rf:\mathbb{R}^{n}\to \mathbb{R}f:Rn→R,
  • h:Rn→Rm,  h=[h1,...,hm]T,  m≤nh:\mathbb{R}^{n}\to \mathbb{R}^{m}, \; h=[h_{1},...,h_{m}]^{T}, \; m\le nh:Rn→Rm,h=[h1​,...,hm​]T,m≤n。

假定函数 hhh 连续可微,即 h∈C1h\in C^{1}h∈C1。


正则点

设点 x∗x^{*}x∗ 满足约束条件

h1(x∗)=0,…,hm(x∗)=0,h_{1}(x^{*})=0,\ldots,h_{m}(x^{*})=0,h1​(x∗)=0,…,hm​(x∗)=0,

如果梯度向量 ∇h1(x∗),…,∇hm(x∗)\nabla h_{1}(x^{*}),\ldots,\nabla h_{m}(x^{*})∇h1​(x∗),…,∇hm​(x∗) 线性无关,则称 x∗x^{*}x∗ 是该约束的一个 正则点。


切线空间

曲面

S={x∈Rn:h(x)=0}S=\{x\in \mathbb{R}^{n}:h(x)=0\}S={x∈Rn:h(x)=0}

在点 x∗x^{*}x∗ 处的切线空间为

T(x∗)={y∈Rn:Dh(x∗)y=0}.T(x^{*})=\{ y \in \mathbb{R}^n : Dh(x^{*})y=0\}.T(x∗)={y∈Rn:Dh(x∗)y=0}.

可见切线空间 T(x∗)T(x^{*})T(x∗) 就是矩阵 Dh(x∗)Dh(x^{*})Dh(x∗) 的零空间:

T(x∗)=N(Dh(x∗)).T(x^{*}) = \mathcal{N}(Dh(x^{*})).T(x∗)=N(Dh(x∗)).

法线空间

曲面

S={x∈Rn:h(x)=0}S=\{x\in \mathbb{R}^{n}:h(x)=0\}S={x∈Rn:h(x)=0}

在点 x∗x^{*}x∗ 处的法线空间为

N(x∗)={Dh(x∗)Tz:z∈Rm}.N(x^{*})=\{ Dh(x^{*})^{T}z : z\in \mathbb{R}^{m}\}.N(x∗)={Dh(x∗)Tz:z∈Rm}.

因此,法线空间是矩阵 Dh(x∗)TDh(x^{*})^{T}Dh(x∗)T 的值域:

N(x∗)=R(Dh(x∗)T).N(x^{*}) = \mathcal{R}(Dh(x^{*})^{T}).N(x∗)=R(Dh(x∗)T).

拉格朗日条件

首先考虑只包含两个决策变量和一个等式约束的优化问题。令h:R2→Rh:R^{2}\to Rh:R2→R为约束函数,可知函数定义域中xxx处的梯度∇h(x)\nabla h(x)∇h(x)与通过该点的h(x)h(x)h(x)水平集正交,选择点x∗=[x1∗,x1∗]Tx^{*}=[x^{*}_{1},x^{*}_{1}]^{T}x∗=[x1∗​,x1∗​]T使得h(x∗)=0h(x^{*})=0h(x∗)=0,且∇h(x∗)≠0\nabla h(x^{*})\neq 0∇h(x∗)=0,经过点x∗x^{*}x∗的水平集为集合{x:h(x)=0}\{ x:h(x)=0\}{x:h(x)=0}。可利用曲线x(t)x(t)x(t)在x∗x^{*}x∗领域内进行参数化,x(t)x(t)x(t)是一个连续可微的向量函数h:R→R2h:R\to R^{2}h:R→R2:

x(t)=[x1(t),x1(t)]T,t∈(a,b),x∗=x(t∗),x˙(t∗)≠0,t∗∈(a,b)\begin{align*} x(t)=[x_{1}(t),x_{1}(t)]^{T},t\in (a,b),x^{*}=x(t^{*}),\dot{x}(t^{*})\neq 0,t^{*}\in (a,b) \end{align*}x(t)=[x1​(t),x1​(t)]T,t∈(a,b),x∗=x(t∗),x˙(t∗)=0,t∗∈(a,b)​

接下来可以证明,∇h(x∗)\nabla h(x^{*})∇h(x∗)与x˙(t∗)\dot{x}(t^{*})x˙(t∗)正交。由于hhh在曲线{x(t):t∈(a,b)}\{x(t):t\in (a,b)\}{x(t):t∈(a,b)}上是常数 0,即对于所有的t∈(a,b)t\in (a,b)t∈(a,b)都有

h(x(t))=0h(x(t))=0h(x(t))=0

因此对于任意的t∈(a,b)t\in(a,b)t∈(a,b)都有

ddth(x(t))=0\frac{d}{dt}h(x(t))=0dtd​h(x(t))=0

利用链式法则可以得到

ddth(x(t))=∇h(x(t))Tx˙(t)=0\frac{d}{dt}h(x(t))=\nabla h(x(t))^{T}\dot{x}(t)=0dtd​h(x(t))=∇h(x(t))Tx˙(t)=0

因此∇h(x∗)\nabla h(x^{*})∇h(x∗)和x˙(t∗)\dot{x}(t^{*})x˙(t∗)正交 当x∗x^{*}x∗是f:R→R2f:R\to R^{2}f:R→R2在满足h(x)=0h(x)=0h(x)=0上的极小点的时候,可以证明,∇f(x∗)\nabla f(x^{*})∇f(x∗)与x˙(t∗)\dot{x}(t^{*})x˙(t∗)正交,构造关于ttt的复合函数:

ϕ(t)=f(x(t))\phi(t)=f(x(t))ϕ(t)=f(x(t))

当t=t∗t=t^{*}t=t∗的时候取得极小值,根据无约束极值问题的一阶必要条件可知

dϕdt(t∗)=0\frac{d\phi}{dt}(t^{*})=0dtdϕ​(t∗)=0

利用链式法则可以得到

ddtϕ(t∗)=∇f(x(t∗))Tx˙(t∗)=∇f(x∗)Tx˙(t∗)=0\frac{d}{dt}\phi(t^{*})=\nabla f(x(t^{*}))^{T}\dot{x}(t^{*})=\nabla f(x^{*})^{T}\dot{x}(t^{*})=0dtd​ϕ(t∗)=∇f(x(t∗))Tx˙(t∗)=∇f(x∗)Tx˙(t∗)=0

因此,∇f(x∗)\nabla f(x^{*})∇f(x∗)和x˙(t∗)\dot{x}(t^{*})x˙(t∗)正交,上面已经证明∇f(x∗)\nabla f(x^{*})∇f(x∗)与x˙(t∗)\dot{x}(t^{*})x˙(t∗)正交,那么向量∇f(x∗)\nabla f(x^{*})∇f(x∗)和∇h(x∗)\nabla h(x^{*})∇h(x∗)平行,那么可以得到这种情况下的拉格朗日定理:

n=2,m=3 时的拉格朗日定理: 设点x∗x^{*}x∗是函数f:R2→Rf:R^{2}\to Rf:R2→R的一个极小点,约束条件是h(x)=0,h:R2→Rh(x)=0,h:R^{2}\to Rh(x)=0,h:R2→R,那么∇f(x∗)\nabla f(x^{*})∇f(x∗)和∇h(x∗)\nabla h(x^{*})∇h(x∗)平行,即如果∇h(x∗)≠0\nabla h(x^{*})\neq 0∇h(x∗)=0,则存在标量λ∗\lambda^{*}λ∗,使得

∇f(x∗)+λ∗∇h(x∗)=0\nabla f(x^{*})+\lambda^{*}\nabla h(x^{*})=0∇f(x∗)+λ∗∇h(x∗)=0

其中λ∗\lambda^{*}λ∗为拉格朗日乘子。 将这个定理推广到一般情况下,即f:Rn→R,h:Rn→Rm,m≤nf:R^{n}\to R,h:R^{n}\to R^{m},m\le nf:Rn→R,h:Rn→Rm,m≤n的时候,可以得到: 拉格朗日定理: x∗x^{*}x∗是f:Rn→Rf:R^{n}\to Rf:Rn→R的局部极小点(或极大点),约束条件为h(x)=0,h:Rn→Rm,m≤nh(x)=0,h:R^{n}\to R^{m},m\le nh(x)=0,h:Rn→Rm,m≤n。如果x∗x^{*}x∗是正则点,那么存在λ∗∈Rm\lambda^{*}\in R^{m}λ∗∈Rm使得

Df(x∗)+λ∗TDh(x∗)=0D f(x^{*})+\lambda^{*T}D h(x^{*})=0Df(x∗)+λ∗TDh(x∗)=0

二阶条件

二阶必要条件: 设x∗x^{*}x∗是f:Rn→Rf:R^{n}\to Rf:Rn→R在约束条件h(x)=0,h:Rn→Rm,m≤n,f,h∈C2h(x)=0,h:R^{n}\to R^{m},m\le n,f,h\in C^{2}h(x)=0,h:Rn→Rm,m≤n,f,h∈C2下的局部极小点。如果x∗x^{*}x∗是正则点,那么存在λ∗∈Rm\lambda^{*}\in R^{m}λ∗∈Rm使得

1.Df(x∗)+λ∗TDh(x∗)=0TD f(x^{*})+\lambda^{*T}D h(x^{*})=0^{T}Df(x∗)+λ∗TDh(x∗)=0T 2.对于所有的y∈T(x∗)y\in T(x^{*})y∈T(x∗),都有yTL(x∗,λ∗)y≥0y^{T}L(x^{*},\lambda^{*})y\ge 0yTL(x∗,λ∗)y≥0

二阶充分条件: 函数f,h∈C2f,h\in C^{2}f,h∈C2,如果存在点x∗∈Rnx^{*}\in R^{n}x∗∈Rn和λ∗∈Rm\lambda^{*}\in R^{m}λ∗∈Rm,使得

1.Df(x∗)+λ∗TDh(x∗)=0TD f(x^{*})+\lambda^{*T}D h(x^{*})=0^{T}Df(x∗)+λ∗TDh(x∗)=0T 2.对于所有的y∈T(x∗)y\in T(x^{*})y∈T(x∗),都有yTL(x∗,λ∗)y>0y^{T}L(x^{*},\lambda^{*})y> 0yTL(x∗,λ∗)y>0

那么x∗x^{*}x∗是fff在约束条件h(x)=0h(x)=0h(x)=0下的严格局部极小点

本文介绍了等式约束下的拉格朗日乘子法,后面还将会介绍不等式约束下的拉格朗日乘子法以及 KKT 条件等

←Previous: Naive SolveNext: Lagrangian Conditions under Inequality Constraints→

Comments