先摆公式,再说推导。
求二元函数z=f(x,y)在条件φ(x,y)=0下的极值。
(1)作Lagrange函数
F(x,y,λ)=f(x,y)+λφ(x,y);
(2)求F(x,y,λ)的驻点(x0,y0,λ0)
FxFyFλ=fx(x,y)+λ⋅φx(x,y)=0;=fy(x,y)+λ⋅φy(x,y)=0;=φ(x,y)=0
(3)(x0,y0)便是可能的条件极值点
拉格朗日乘数法所得的极点会包含原问题的所有极值点,但并不保证每个极值点都是原问题的极值点。(维基百科)
例如,目标函数:z=xy,约束条件:x+y=1
解: 作Lagrange函数
F(x,y,λ)=xy+λ(x+y−1)
求F的驻点:
FxFyFλ⟹=y+λ=0=x+λ=0=x+y−1=0x=12;y=12;λ=−12
公式推导
条件极值:在一定约束条件下(一般为方程)的极值就称为条件极值。
条件极值的几何解释:

约束条件φ(x,y)=0是指,在曲线φ(x,y)上取一点,使得f(x,y)有极值(由图可知为极大值)
条件极值的必要条件:
函数z=f(x,y)在条件φ(x,y)=0,下的极值的必要条件是什么?
先看一个比较直观的图

图中黑色曲线为z=f(x,y)的等值线,红色曲线为约束条件φ(x,y)=0,那么函数f(x,y)在哪里取得条件最大值?
推导:
设z0=f(x0,y0)是z=f(x,y)在条件φ(x,y)=0下的条件极值。设y=y(x)是约束条件φ(x,y)=0所确定的隐函数。
则:z=f(x,y(x))此时就变成了一个一元函数,且在x=x0处取得极值。
(1)由一元函数极值的必要条件可知:(若f(x)在x=x0处取得极值,且f′(x0)存在,则有f′(x0)=0)
所以有:
dzdx⟹⟹=fx⋅1+fy⋅dydx=0fx(x0,y0)+fy(x0,y0)⋅y′(x0)=0y′(x0)=−fx(x0,y0)fy(x0,y0)(1)
(2)由隐函数求导公式可知
y′(x0)由(1)(2)⟹⟹=−φx(x0,y0)φy(x0,y0)fx(x0,y0)fy(x0,y0)=φx(x0,y0)φy(x0,y0)fx(x0,y0)φx(x0,y0)=fy(x0,y0)φy(x0,y0)(2)
那么此时我们可以理解成{fx(x0,y0),fy(x0,y0)}//{φx(x0,y0),φy(x0,y0)},即两个向量平行
⟹Δf(x0,y0)//Δφ(x0,y0)
我们知道某一点的梯度就是,该点所在平面对应的一个法向量。(知道的可以略过这点,不知道的接着往下看)
证明:
设二元函数F(x,y)=0,则其在点x=x0处的斜率k=−Fx(x0,y0)Fy(x0,y0).设A(x1,y1),B(x2,y2)为该切线上的两个点,则k又可以写成k=y2−y1x2−x1
⟹⟹⟹⟹⟹AB−→−=(x2−x1,y2−y1)1x2−x1⋅AB−→−=(1,y2−y1x2−x1)λ⋅AB−→−=(1,k)=(1,−Fx(x0,y0)Fy(x0,y0))λ⋅Fy(x0,y0)⋅AB−→−=(Fy(x0,y0),−Fx(x0,y0))μ⋅AB−→−=(Fy(x0,y0),−Fx(x0,y0))
于是我们可以得到的结论就是,
若直线斜率为k,则他的一个方向向量为a⃗ =(1,k)
我们又知道,F(x,y)=0在点(x0,y0)处,所在平面(曲面在某一点的切平面)的法向量,垂直于该点所在平面的任意直线,当然也就包括切于该点的所有切线。于是该点法线的斜率k′=−1k。
法线的一个方向向量为a⃗ a⃗ ⋅Fx(x0,y0)=(1,−1k)=(1,Fy(x0,y0)Fx(x0,y0))=(Fx(x0,y0),Fy(x0,y0))
所以取
a⃗ =(Fx(x0,y0),Fy(x0,y0))=ΔF(x0,y0),
Fx(x0,y0)为常数,不影响。
证毕
由Δf(x0,y0)//Δφ(x0,y0)可知:
∃λ0,使得⟹⟹⟹Δf(x0,y0)=−λ0⋅Δφ(x0,y0)Δf(x0,y0)+λ0⋅Δφ(x0,y0)=0⃗ Δ{f(x0,y0)+λ0⋅φ(x0,y0)}=0⃗ Δ(f+λ0φ)=0⃗
此时我们可以用最原始的定义来求解上面的例题,即:
⟹⟹⟹x+y=1,⟹Δz(x,y)+λ⋅Δφ(x,y)=0⃗ (y,x)+λ(1,1)=0⃗ (分别求梯度)y+λ=0,x+λ=0x=y=−λx=y=12,λ=−12
由此我们可以得到的结论是:
令函数F(x,y,λ)=f(x,y)+λφ(x,y),若ΔF(x0,y0,λ0)=0⃗ ,则(x0,y0,λ0)是函数F(x,y,λ)的驻点,通过如下步骤,就可以就得驻点的值。
⎧⎩⎨⎪⎪⎪⎪Fx=0Fy=0Fλ=0
F(x,y,λ)称为拉格朗日函数,λ称为拉格朗日乘数(Lagrange multiplier)
另外,由下图也可以直观的看出,在约束条件下,z=xye−(x2+y2)取得极值。且此时,z=xye−(x2+y2)在点P处的法向量与xy=1在P处的法向量平行。

从等高线图来看:

总结一句话,拉格朗日乘除法就是根据在P点出两个法向量平行这个条件推导出来的。
感谢徐小湛老师的《高等数学》视频