拉格朗日乘數法

拉格朗日乘數法

在數學最優問題中,拉格朗日乘數法(以數學家約瑟夫·路易斯·拉格朗日命名)是一種尋找變數受一個或多個條件所限制的多元函式極值的方法。這種方法將一個有n 個變數與k 個約束條件最最佳化問題轉換為一個有n + k個變數的方程組的極值問題,其變數不受任何約束。這種方法引入了一種新的標量未知數,即拉格朗日乘數:約束方程的梯度(gradient)的線性組合里每個向量的係數。此方法的證明牽涉到偏微分,全微分或鏈法,從而找到能讓設出的隱函式的微分為零的未知數的值。

基本介紹

  • 中文名拉格朗日乘數法
  • 外文名:Lagrange Multiplier Method
  • 表達式:L=f(x,y,z)+λφ(x,y,z)
  • 提出者:Joseph Lagrange
  • 提出時間:1791年
  • 套用學科:高等數學 個體經濟學
  • 適用領域範圍:函式
  • 適用領域範圍:多元函式極值
基本信息,定義介紹,幾何意義,證明,求極值,解題思路,套用舉例,例題一,例題二,例題三,

基本信息

定義介紹

設給定二元函式z=ƒ(x,y)和附加條件φ(x,y)=0,為尋找z=ƒ(x,y)在附加條件下的極值點,先做拉格朗日函式
,其中λ為參數。
令F(x,y,λ)對x和y和λ的一階偏導數等於零,即
F'x=ƒ'x(x,y)+λφ'x(x,y)=0
F'y=ƒ'y(x,y)+λφ'y(x,y)=0
F'λ=φ(x,y)=0
由上述方程組解出x,y及λ,如此求得的(x,y),就是函式z=ƒ(x,y)在附加條件φ(x,y)=0下的可能極值點
若這樣的點只有一個,由實際問題可直接確定此即所求的點。

幾何意義

設給定目標函式
約束條件
如圖所示,曲線
為約束條件
為目標函式的等值線族。
拉格朗日乘數法
偏導數都連續的條件下,目標函式
在約束條件
下的可能極值點
,從幾何上看,必是目標函式等值線曲線族中與約束條件曲線能相切的那個切點。
因為兩曲線在切點處必有公法線,所以目標函式等值線在點
處法向量
與約束條件曲線在點
處法向量
平行,即
也就是說,存在實數
,使下式成立
需要注意的是,目標函式等值線與約束條件曲線的切點未必就是目標函式
在約束條件
下的極值點(如圖中的
點)。

證明

以三元函式為例,即求目標函式:u=f(x,y,z) 在限制條件:①G(x,y,z)=0 ② H(x,y,z)=0下的極值。
假定f,G,H具有連續的偏導數,且Jacobi矩陣:
注釋:這裡表示的是2x3的矩陣,Hx和Gx分別表示H,G對x求偏導。
在滿足約束條件的點處是行滿秩,即Rank(J)=2。
先考慮取到條件極值的必要條件,上述約束條件實際是空間曲線的方程。設曲線上一點(
,
,
) 為條件極值點,由於在該點處rank(J)=0,不妨假設在(
,
,
)點處
,則由隱函式存在定理,在點(
,
,
)附近由該方程可以確定 y=y(x),z=z(x),其中
=y(
),
=z(
),它是這個曲線方程的參數形式。
將它們帶入目標函式,原問題就轉化為函式:
的無條件極值問題,
是函式
(x)的極值點,因此有
'(x)=0。
也就是
這說明向量gradf(
,
,
)與向量
正交,即與曲線在點(
,
,
)的切向量正交,因此這點的梯度grad f(,,)可以看做是曲線在點 (
,
,
) 處的法平面上的向量。在根據平面上任意一個向量都可以有一對不共線的向量線性表示,又由於這個法平面是由grad G(x0,y0,z0)gradH(
,
,
)張成的,因此,存在常數a,b使得 gradf(
,
,
)=a*grad G(x0,y0,z0)+b*gradH(x0,y0,z0)
這就是點(,,)為條件極值點的必要條件。
將上述方程寫成分量的形式,就可以得到。

求極值

求函式f(x,y,z)在條件φ(x,y,z)=0下的極值。
方法(步驟)是:
1.做拉格朗日函式L=f(x,y,z)+λφ(x,y,z),λ稱拉格朗日乘數;
2.求L分別對x,y,z,λ求偏導,得方程組,求出駐點P(x,y,z);
如果這個實際問題的最大或最小值存在,一般說來駐點只有一個,於是最值可求。
條件極值問題也可以化為無條件極值求解,但有些條件關係比較複雜,代換和運算很繁,而相對來說“拉格朗日乘數法”不需代換,運算簡單一點,這就是優勢。
條件φ(x,y,z)一定是個等式,不妨設為φ(x,y,z)=m
則再建一個函式g(x,y,z)=φ(x,y,z)-m
g(x,y,z)=0以g(x,y,z)代替φ(x,y,z)
在許多極值問題中,函式的自變數往往要受到一些條件的限制,比如,要設計一個容積為 V的長方體形開口水箱,確定長、寬和高,使水箱的表面積最小.。設水箱的長、寬、高分別為 x,y,z, 則水箱容積V=xyz。
焊制水箱用去的鋼板面積為 S=2xz+2yz+xy
這實際上是求函式 S 在 V 限制下的最小值問題。
這類附有條件限制的極值問題稱為條件極值問題,其一般形式是在條件限制下,求函式F的極值。
條件極值與無條件極值的區別
條件極值是限制在一個子流形上的極值,條件極值存在時無條件極值不一定存在,即使存在二者也不一定相等。
例如,求馬鞍面 z=x^2-y^2+1 被平面XOZ 平面所截的曲線上的最低點。
從其幾何圖形可以看出整個馬鞍面沒有極值點,但限制在馬鞍面被平面 平面所截的曲線上,有極小值 1,這個極小值就稱為條件極值。
必要條件
設在約束條件之下求函式的極值。滿足約束條件的點是函式的條件極值點,且在該點函式滿足隱函式存在條件時, 由方程定隱函式 ,於是點就是一元函式的極限點。
Lagrange乘數法
由上述討論可見,函式在約束條件之下的條件極值點應是方程組的解。
引進所謂Lagrange函式(稱其中的實數 為Lagrange乘數 ),則上述方程組即為方程組。
因此,解決條件極值通常有三種方法:
1)直接的方法是從方程組(1)中解出 並將其表示為 代入 消去 成為變數為 的函式將問題化為函式無條件極值問題;
2)在一般情形下,要從方程組(1)中解出 來是困難的,甚至是不可能的,因此上面求解方法往往是行不通的。通常採用的拉格朗日乘數法,是免去解方程組(1)的困難,將求 的條件極值問題化為求下面拉格朗日函式的穩定點問題,然後根據所討論的實際問題的特性判斷出哪些穩定點是所求的極值的。
3)在給定的條件下,若是可以將未知數代換或是解出,則可以將條件極值轉化為無條件極值,從而避免引入拉格朗日乘數的麻煩。
注意:▽φ(x,y,z)=0 且 φ(x,y,z)=0的點不會被該方法計算到,因此,若求最大值或最小值時,應把這些點列出來並單獨計算。

解題思路

我們知道,對於“限制條件為等式,x值均為正值"的最大化問題, 滿足最大化的x組合一定滿足:F(i)(x*)-Σλj Gj(i)(x*)=0, i=1,2,3,.....n, j=1,2,...m. 從這裡我們看到,如果限制條件 Gj(x*)=cj 中的 cj 變化 dcj ,如果全部作用於x(i),那么引起的dx(i)=dcj/Gj(i)(x*),從而導致目標方程取值變化dF=F(i)(x*)dcj/Gj(i)(x*)=λj*dcj 。
那么我們得到:λj=dF/dcj。也就是說,拉格朗日乘數其實代表的是cj對最大化目標函式F的邊際影響。雖然這裡考慮的是僅僅cj發生變化,我們可以對此加以推廣,比如整體的c向量發生變化到 c+dc,dc是一個m-維向量,那么F的總變化量dF就是Σλj dCj, j=1,2,...m
舉一個具體的實例:假如一個計畫經濟體系下,政府實施如前所述的最大化問題(在有限資源如勞動力、自然礦產,人力資本等的限制下使社會整體效用/福利最大化),並已經找到了滿足最大化條件的x組合。假設萬能的上帝允許該國的勞動力資源可以額外增加dc1,那么根據拉格朗日乘數的經濟學含義我們知道給整個社會帶來的福利將是λ1*dc1。但是上帝說:要獲得這個額外的勞動力資源,你們必須以一定數量的其他資源比如土地來跟我交換,以示公平。那么我們人類政府該拿多少土地來跟上帝換呢?指定該土地數量為dx2,那么由此減少的社會福利是λ2*dc2。如果λ1*dc1>λ2*dc2,上帝不會答應,如果反之我們不會答應。所以必然有λ1*dc1=λ2*dc2,也就是dc2=(λ1/λ2)dc1。學過初級微觀的朋友馬上可以看出,這跟個體經濟學中相對價格的概念十分相似。相對價格反映物與物之間的交換價值,即人們願意怎么樣進行物與物的交換。不同的是,這裡的價格不是以錢來計算,而是以社會福利來衡量;這裡的相對價格λ1/λ2中的λ1和λ2是基於解決社會福利最大化問題而計算出來的,不同於市場中的價格P1,P2。由於這個原因,我們把λ叫做"影子價格"(shadow price)。如果我們偶爾發現某個市場經濟下市場價格之比恰恰等於影子價格之比,我們稱這個市場被一雙看不見的手所指引,因為該市場居然可以自發調整解決社會福利的最大化問題。
再來考慮"限制條件為非等式"的情況。 我們知道市場價格通常都不可能為零或負數,但是影子價格確不同,它描述的是限制方程右方cj對整體目標函式值的邊際影響。在限制條件Gj為非等式的情況下,增加額外的cj不一定就意味著目標函式值的增加。比如:限制條件為"社會某消費產品不得高於cj",目標函式為投資量,如果cj提高,那么消費該產品增加,導致投資量減少,目標函式值減少,這時影子價格就是一個負值。再比如:目標函式為產量,限制條件為"同時參加勞動的工人數量不得高於cj"。如果cj增加,那么同時勞動的工人數量增加,可能導致勞動力邊際產量遞減效應的發生,這時總產量可能不增反降。這時我們情願不增加工人。換句話說,我們情願把一些資源放在一旁不予利用(free dsiposal).這時候再增加這些勞動力資源,對總產量已經沒有作用了,所以影子價格為零。 事實上,根據庫恩-塔克定理,這一點是很明顯的。庫恩-塔克定理說,滿足最大化問題解的x一定使得下面的條件滿足:
Lλ(x, λ)>=0, λ>=0, 互補鬆散
就是說,如果Lλ(x, λ)=c-G(x*)>0,那么說明有資源餘缺閒置,這時λ=0。如果Lλ(x, λ)=c-G(x*)=0,那么說明資源全部被使用,其邊際效用λ>0。
注意:這裡我們通過對拉格朗日乘數的解釋考查了cj的微小變動dcj對目標函式最大值的變化的影響,這就是開篇所說的比較靜態研究—研究參數θ的變化對最大值的影響。所以我們在進行比較靜態研究的時候必須把目標函式看成是同時關於x和參數θ的函式,基於這一點,我們從另一個角度來看λ的確定,考察參數cj。如果cj變化一點點到cj+dcj,那么相應地最佳組合x*變動到x*+dx*,最大目標值也由F(x*)變化為F(x*+dx*)。由泰勒一階展開我們得到:dF=F(x*+dx*)-F(x*)=Fx(x*)dx*+Fcj(x*)dcj。根據拉格朗日乘數法一階必要條件,我們有Fx(x*)=λj Gx(x*),所以dF=λj Gx(x*)dx*+Fcj(x*)dcj=λj Gx(x*)dx*,我們又知道根據限制條件方程G(x*)=cj,在cj變化到cj+dcj的過程中,Gx(x*)dx*=dcj,所以dF=λj dcj。同樣推導出了λ的定義式。更一般地,如果F和G都是關於x和參數θ的函式,如果參數θ變動到θ+dθ,x隨之變動到x+dx,那么:
dF=F(x+dx,θ+dθ)-F(x,θ)=Fx(x,θ)dx+Fθ(x,θ)dθ=λGx(x,θ)dx+Fθ(x,θ)dθ...(1)
由於G是關於x和θ的函式G(x,θ)=c,所以在θ變化的過程中始終有
Gx(x,θ)dx+Gθ(x,θ)dθ=dc...................................................(2)
代入(1)式,我們得到:
dF=λdc -λGθ(x,θ)dθ+Fθ(x,θ)dθ=Lθ(x,λ,θ)dθ+λdc....................(3)
這就是最一般化的比較靜態公式。我們在研究影子價格λ的時候,沒有考慮任何參數θ的變化,所以公式(3)的第一項為零,這樣dF=λdc。反之,我們在某些情況下不考慮c的變化,而側重於參數θ的變化,這時公式(3)變化為: dF=Lθ(x,λ,θ)dθ。如果只有函式F跟θ有關,而G跟θ無關,那么公式(3)簡化為dF=Fθ(x,θ)dθ。
注意:
1、在參數θ變化的過程中,θ-->θ+dθ,x-->x+dx,但是對目標函式值的影響卻只要考慮拉格朗日函式對θ的偏微分,而且該偏微分在原來最優點x處取值,這是我們用泰勒一階展開應該得到的結論。
2、這裡的x雖然沒有標上星號*,但不言自明的是它們都應該是最優組合,而且它們也都是關於參數θ的函式x(θ)。如果我們把最大化了的F定義成一個新函式最優目標方程V(θ),那么由剛剛推導出來的公式(3)dF=Fθ(x,θ)dθ 我們有 Vθ(θ)=Fθ(x(θ),θ)。再次提醒注意,這裡的x(θ)是滿足最大化條件的最優點。
如果我們再定義一個普通目標函式F(x',θ),但是這裡的x'是任意值,不一定是最優點x(θ)。假設對應這個x'的能使 F 函式值最大的θ是θ',那么V(θ)在θ'點處的斜率為:Vθ(θ')=Fθ(x(θ'),θ')。但我們知道,x(θ')=x',所以Fθ(x(θ'),θ')=Fθ(x',θ')。而後者就是函式F(x',θ)在點θ'的斜率,這就是說函式V(θ)和函式F(x',θ)在點(x',θ')處的斜率相等。這個結論對於x'取任意一個固定值都是成立的,所以從幾何圖形上來看:最優目標函式V(θ)把普通目標函式曲線族緊緊包圍。因此dF=Fθ(x,θ)dθ 往往又稱為"包絡定理"(envelope theorem)。個體經濟學裡面的短期成本和長期成本之間的關係就是符合信封定理的,因為這裡的成本都是滿足了成本最小化之後的成本。
均衡原則
個體經濟學研究消費者行為時,所要闡述的核心問題是消費者均衡的原則。所謂消費者均衡指的是一個有理性的消費者所採取的均衡購買行為。進一步說,它是指保證消費者實現效用最大化的均衡購買行為。
但人的需要或欲望是無限的,而滿足需要的手段是有限的。所以個體經濟學所說的效用最大化只能是一種有限制的效用最大化。而這種限制的因素就是各種商品的價格和消費者的貨幣收入水平。
首先,我們先引入一些名詞解釋:
總效用(TU):消費者在一定時間內消費一定數量某種商品或商品組合所得到的總的滿足。
邊際效用(MU):消費者在所有其它商品的消費水平保持不變時,增加消費一單位某種商品所帶來的滿足程度的增加,也就是說指增加一單位某種商品所引起的總效用的增加。
商品數量(Q),商品價格(P), 收入(I)
邊際效用的公式表達為:MU=∂TU/∂Q
那么如何才能實現制約條件下的效用最大化的商品組合呢?
就是當消費者把全部收入用於購買各種商品時,他從所購買的每一種商品所得到的邊際效用與其價格的比例都相同,這樣的商品組合就是最佳的或均衡的商品組合。
假設當消費者選擇兩種商品x,y時,消費者均衡原則的公式表達為:
MUx/Px = MUy/Py("/"為分數線)
制約條件的公式表達式為:I=Px∙Qx+Py∙Qy。那么這一結論是如何推導出來的呢?解決這一問題最直接的方法就是拉格朗日乘數法。
上面說到:在利用偏導數求多元函式的極值時,若函式的自變數有附加條件,則稱之為條件極值。這時,可用拉格朗日乘數法求條件極值。具體方法如下:
設給定二元函式z=ƒ(x,y)和附加條件φ(x,y)=0,為尋找z=ƒ(x,y)在附加條件下的極值點,先做拉格朗日函式L(x,y)=ƒ(x,y)+λφ(x,y),其中λ為參數。求L(x,y)對x和y的一階偏導數,令它們等於零,並與附加條件聯立,即
L'x(x,y)=ƒ'x(x,y)+λφ'x(x,y)=0
L'y(x,y)=ƒ'y(x,y)+λφ'y(x,y)=0
φ(x,y)=0
套用到個體經濟學裡面:設效用函式U(Qx,Qy),為使它在制約條件下取得極值,首先建立拉格朗日函式:L=U(Qx,Qy)+λ( I-Px∙Qx-Py∙Qy),λ為參數。求L(x,y)對x和y的一階偏導數,令它們等於零,並與附加條件連立。
∂L/∂Qx=∂U/∂Qx-λPx=0 (1)
∂L/∂Qy=∂U/∂Qy-λPy=0 (2)
I-Px∙Qx-Py∙Qy=0 (3)
方程(1)除以方程(2),得:
∂U/∂Qx =Px 即 MUx = MUy
∂U/∂Qy =Py
所以,消費者要實現兩種商品的效用最大化,邊際效用的比率應該等於價格比率。
以上是關於x和y兩種商品所說的,是否同樣適用於多種商品呢?答案是肯定的。如果消費者在n種商品中做出選擇,則消費者均衡的原則可表達為:
MU1=MU2 =MU3 = …=MUn
P1= P2= P3=...= Pn
這一結論同樣可用拉格朗日乘數法證明。
拉格朗日乘數法可推廣到求n元函式ƒ(x1,x2,…,xn)在m個附加條件φ(x1,x2,…,xn)下的條件極值。
方法如下:
(1)做拉格朗日函式L(x1,x2,…,xn)=ƒ(x1,x2,…,xn)+ ∑λiφi(x1,…x2);
(2)求L(x1,…xn)關於x1,…xn的偏導數,令它們等於零,並與附加條件聯立,即
L'xi==ƒ'xi+ ∑λiφ'i=0 ,i=1,2,…,n
φk(x1,x2,…,xn)=0 ,k=1,2,…,n
求解此方程組,可得到極值點
回到我們的問題中,設效用函式U(Qx1,Qx2,…Qxn),為使它在制約條件下取得極值,首先建立拉格朗日函式
L=U(Qx1,Qx2,…Qxn )+λ(I-Px1∙Qx1-P2∙Qy2-…-Pxn∙Qxn),λ為參數。求L(x1,x2,…xn)對x1,…,xn的一階偏導數,令它們等於零,並與附加條件聯立。
∂L/∂Qx1=∂U/∂Qx1-λPx1=0 (1)
∂L/∂Qx2=∂U/∂Qx2-λPx2=0 (2)
…… …
∂L/∂Qxn=∂U/∂Qxn-λPxn=0 (n)
I-Px1∙Qx1-P2∙Qy2-…-Pxn∙Qxn
將方程(1)到(n)相除,即得,
MUx1 = MUx2 =…=MUxn
Px1 =Px2 =...=Pn
所以,消費者要實現n種商品的效用最大化,邊際效用的比率應該等於價格比率。

套用舉例

例題一

拋物面被平面截成一個橢圓。 求該橢圓到坐標原點的最長和最短距離。
以上面水箱設計為例,看一看拉格朗日乘數法求解條件極值的過程。
解: 這個問題的實質是求函式在條件下的最小值問題, 套用拉格朗日乘法,令
L='2*(x*z+y*z)+x*y+v*(x*y*z-V)'
dLdx=diff(L,'x')
dLdy=diff(L,'y')
dLdz=diff(L,'z')
dLdv=diff(L,'v')
dLdx =2*z+y+v*y*z
dLdy =2*z+x+v*x*z
dLdz =2*x+2*y+v*x*y
dLdv =x*y*z-V
令 L 的各偏導等零,解方程組求穩定點。
s1='2*z+y+v*y*z';
s2='2*z+x+v*x*z';
s3='2*x+2*y+v*x*y';
s4='x*y*z-V';
[v,x0,y0,z0]=solve(s1,s2,s3,s4)
v =
[ -2*2^(2/3)/V^(1/3)]
[ -8*(-1/4*2^(1/3)*V^(1/3)+1/4*i*3^(1/2)*2^(1/3)*V^(1/3))^2/V]
[ -8*(-1/4*2^(1/3)*V^(1/3)-1/4*i*3^(1/2)*2^(1/3)*V^(1/3))^2/V]
x0 =[ 2^(1/3)*V^(1/3)]
y0 =[ 2^(1/3)*V^(1/3)]
z0 =[ 1/2*2^(1/3)*V^(1/3)]
這裡顯然只有實數解才有意義,所以 L 的穩定點只有下面一個。
又已知所求的問題確實存在最小值,從而解出的穩定點就是最小值點,即水箱長寬與為高的2倍時用鋼板最省。

例題二

再看一個條件極值求解問題。
拋物面被平面截成一個橢圓,求這個橢圓到坐標原點的最長最短距離。
解 這個問題的實質是求函式在條件下的最大、最小值問題,套用拉格朗日乘法,令
L='x^2+y^2+z^2+v*(x^2+y^2-z)+h*(x+y+z-1)'
dLdx=diff(L,'x')
dLdy=diff(L,'y')
dLdz=diff(L,'z')
dLdv=diff(L,'v')
dLdh=diff(L,'h')
dLdx =2*x+2*v*x+h
dLdy =2*y+2*v*y+h
dLdz =2*z-v+h
dLdv =x^2+y^2-z
dLdh =x+y+z-1
s1='2*x+2*v*x+h'
s2='2*y+2*v*y+h'
s3='2*z-v+h'
s4='x^2+y^2-z'
s5='x+y+z-1'
[h,v,x0,y0,z0]=solve(s1,s2,s3,s4,s5)
x0,y0,z0
x0 =
[ 3/4-1/4*i*13^(1/2)]
[ 3/4+1/4*i*13^(1/2)]
[ -1/2+1/2*3^(1/2)]
[ -1/2-1/2*3^(1/2)]
y0 =
[ 3/4+1/4*i*13^(1/2)]
[ 3/4-1/4*i*13^(1/2)]
[ -1/2+1/2*3^(1/2)]
[ -1/2-1/2*3^(1/2)]
z0 = -1/2,-1/2, 2-3^(1/2),2+3^(1/2)
即穩定點有兩個
因為函式在有界閉集 上連續,必有最大值和最小值,而求得的穩定點又恰是兩個,所以它們一個是最大點,另一個是最小。
x1=-1/2+1/2*3^(1/2)
x2=-1/2-1/2*3^(1/2)
y1=-1/2+1/2*3^(1/2)
y2=-1/2-1/2*3^(1/2)
z1=2-3^(1/2)
z2=2+3^(1/2)
f1=(x1^2+y1^2+z1^2)^(1/2)
f2=(x2^2+y2^2+z2^2)^(1/2)
f1 = 0.5829 ; f2 = 4.2024

例題三

求此方程的最大值:
同時未知數滿足:
因為只有一個未知數的限制條件,我們只需要用一個乘數
將所有
方程的偏微分設為零,得到一個方程組,最大值是以下方程組的解中的一個:

相關詞條

熱門詞條

聯絡我們