✔ 最佳答案
Lagrange Multiplier 原理
假定想求f(x,y)的極大或極小值﹐g(x,y)=0是其限制式
用Taylor's formula
df=(∂f / ∂x) dx+ (∂f / ∂y) dy
若果沒有限制式﹐則dx,dy獨立﹐則在極值點處 df=0=>∂f / ∂x = ∂f / ∂y = 0 。 但因有限制式﹐dx,dy 并不獨立﹐因此要尋求其它方法。
考慮g(x,y)=0,dg=(∂g / ∂x) dx+ (∂g / ∂y) dy = 0
=>dy/dx=(-∂g / ∂x)/(∂g / ∂y) 這再一次表明dy和dx不是獨立
將dy代入df中
df
=(∂f / ∂x) dx+ (∂f / ∂y) dy
=(∂f / ∂x) dx+ (∂f / ∂y) (-∂g / ∂x)/(∂g / ∂y) dx
=[1/(∂g / ∂y)][(∂f / ∂x)(∂g / ∂y) - (∂f / ∂y) (∂g / ∂x)] dx = 0
因此 (∂f / ∂x)(∂g / ∂y) - (∂f / ∂y) (∂g / ∂x) = 0
換句話說 dy/dx= (∂f / ∂x)/(∂f / ∂y) = (-∂g / ∂x)/(∂g / ∂y)
即是曲線f(x,y) = c 和 g(x,y) = 0 在極值點上的斜率互相垂直
以上用代數角度導出了Lagrange Multiplier﹐以下再用幾何說明
圖片參考:
http://upload.wikimedia.org/wikipedia/commons/thumb/f/fa/Lagrange_multiplier.png/300px-Lagrange_multiplier.png
由上圖得知﹐在極值點﹐f(x,y)=c會和g(x,y)=0相切﹐因此它們的gradient vector 會有相同或相反的方向
∇f= -λ∇g=>∇f +λ∇g = 0
展開便得到
∂f / ∂x + λ∂g / ∂x = 0
∂f / ∂y + λ∂g / ∂y = 0