作者znmkhxrw (QQ)
看板Math
標題Re: [微積] 關於Lagrange multiplier的課文內容
時間Tue Nov 22 12:07:30 2022
※ 引述《attack2000 (柏修斯)》之銘言:
: 以下是課文內容:
: https://i.imgur.com/OKQhYhj.jpg
: https://i.imgur.com/MjdheK4.jpg
: 我看了半天,還是不知道這個部份的數學式想表達什麼
: 因為這本課本只是把Lagrange multiplier當成一種工具介紹,所以沒有對它進行詳細的說
: 明。
: 希望板友能告訴我,課文的這部份主要是在寫些什麼,謝謝。
:
想了很久要怎麼切入以及順序, 最後決定用以下這幾個段落說明
重點在【定理步驟解釋】, 只是怕裡面有些名詞看不懂所以建議照順序閱讀
【前言】
Lagrange乘數法最粗淺的理解就是會算就好, 最深的理解就是高微的隱函數定理去敘述
與證明。而過渡的理解包括: (1) n=2,m=1 或是 n=3,m=1的等高線示意圖
(2) 泰勒展開式的簡易忽略
(3) any other...
只要某個理解是讀者的數學背景可以接受的, 那對他而言就是好的理解方式
不過過渡的理解方式都有不嚴謹的地方, 視個人感受度忽略即可
這篇是採取嚴謹的敘述加入幾何的概念, 算是非常逼近最深的理解方式
不過強調一點是, 嚴格證明仍是
避不開隱函數定理, 因為幾何性質就是由隱函數定理得到
只是幾何(切平面)有圖形比較容易接受, 有這圖形當橋梁就可忽略隱函數定理
【切入步驟】
Step1: 從原PO圖片的結果(即L乘數的計算方式)看似單純只會偏導數即可
Step2: 引入線性代數的概念, f的梯度▽f可寫成▽g_k的線性組合
Step3: 引入切平面的概念, 與坊間的等高線解釋方式是相容的
因此, L乘數的嚴格幾何解釋即是高微+幾何+線代的綜合體罷了
【先備知識】
(1) 令S是R^n的集合, p€S
在p點的切平面
T_p(S)定義為
在p點的所有切線成的集合
即 T_p(S) := {α'(0)│α:(-a,a)→S, α(0)=p, α在0可微}
P.S. T_p(S)很可能因為S在p點附近長的很崎嶇而導致所有切線都不存在
不過L乘數的條件會讓這種事不會發生
(2) 令A是mxn的矩陣
A^t:= A的轉置
R(A):= A的值域, range
N(A):= A的零域, null space
rank(A):= dim(R(A)), 值域的維度
nullity(A):= dim(N(A)), 零域的維度
則 (a) n = rank(A) + nullity(A) (維度定理)
(b) N(A)^⊥ = R(A^t), ⊥為垂直記號
至於維度、span與線性組合/相依、垂直空間...這些東西不贅述
(W的垂直空間W^⊥是收集所有跟W垂直的向量)
(3) 令g:V→R^m為一函數, V是包含某點p€R^n的開集合(不知道的話當成子集合即可)
定義
g連續可微為g的
在各分量的各階偏導數都是連續的
並且定義在p點的微分矩陣為Dg(p) = [▽g_1 ▽g_2 ... ▽g_m]^t
此矩陣為mxn的矩陣
(4) Chain rule, D(f。g)(x) = Df(g(x)) Dg(x), 兩矩陣相乘
【L乘數法之定理敘述】
令f:U→R, g:V→R^m為兩函數, U,V都是R^n的開集合
g=(g_1,...,g_k)
a=(a_1,...,a_m)€R^m為一定點
S={x€V│g(x)=a}, 即
約束條件g_k=a_k所形成集合
若p€S滿足 (1) f與g在p附近皆連續可微
(2) rank(Dg(p)) = m
(3) f約束在S時, 在p上有區域極值
則存在
唯一的λ_k, k=1~m, 使得▽f(p) = Σ_{k=1~m}λ_k*▽g_k(p)
P.S. (1) 定理敘述為極值的必要條件, 並非充分條件
也就是說, 方程組解出來的是所有可能的極值點, 但不是每個都是甚至都沒有
不過題目通常會設計讓你解出來就是極值點
(2) rank(Dg(p)) = m 極為重要, 不過通常題目設計都會滿足這條件
(3) 定理無法判斷是極大還是極小
【定理步驟解釋】
Step1: T_p(S) = N(Dg(p)), 即在p點的切平面為矩陣Dg(p)的零空間
(解釋: 在S上通過p點的曲線α都有g(α(t)) = a
因此Chain rule後取t=0得到
Dg(p)α'(0) = 0
因此切向量α'(0)在Dg(p)的零空間
至於另外一個方向需要隱函數定理, 忽略
因此可以說只要你
接受T_p(S)就可忽略隱函數定理)
Step2: ▽f(p)€T_p(S)^⊥, 即▽f(p)落在切平面的垂直空間上
(解釋: 因為f約束在S上在p點有極值
所以f約束在S的通過p點的曲線也會有極值
即在
較大範圍有極值的話, 較小範圍也會是極值
因此對於任何切線α'(0)€T_p(S), 考慮f(α(t)), 知道在t=0有極值
因此Chain rule後取t=0得到
Df(p)α'(0) = 0
回顧Df(p) = ▽f(p)^t, 我們有
<▽f(p), α'(0)> = 0
也就是說, ▽f(p)垂直於T_p(S)的所有向量, 即
▽f(p)€T_p(S)^⊥)
Step3: 結合Step1,2以及
rank(Dg(p)) = m以及【先備知識】, 我們有
T_p(S)^⊥ = N(Dg(p))^⊥ = R(Dg(p)^t) = R([▽g_1 ▽g_2 ... ▽g_m])
因此, ▽f(p)€T_p(S)^⊥ = R([▽g_1(p) ▽g_2(p) ... ▽g_m(p)])
即
▽f(p)是column vector ▽g_k(p) 的唯一係數線性組合, 證畢
簡潔來說, 是證明▽f(p), ▽g_k(p)共n+1條向量都垂直於切平面T_p(S)
而剛好▽g_k(p)共n條向量就是垂直空間T_p(S)^⊥的基底
因此▽f(p)就是▽g_k(p)的線性組合
【rank未滿的情況】
若rank(Dg(p)) < m, 則只有得到{▽g_k(p)│k=1~m} in T_p(S)^⊥
接著考慮▽f(p)€T_p(S)^⊥,
▽f(p)可能不落在column vector ▽g_k(p)所展開的空間
因此L乘數法一定要求rank(Dg(p)) = m才能找到
所有極值可能
【補充】
dim(T_p(S)) = dim(N(Dg(p))) = n-m
因此坊間n=3, m=1的狀況下, dim(T_p(S)) = 2, 畫出來就確實是
二維平面的切平面
而在
m=1(一個約束條件)的狀況下, 垂直空間dim(T_p(S)^⊥) = 1
因此在只有一個約束條件時就會有常看到的
▽f(p)= λ*▽g(p)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.102.225.191 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Math/M.1669090052.A.40B.html
推 daoeasy : 出書較實在 11/23 02:34
推 attack2000 : 感謝回覆 11/24 03:31
※ 編輯: znmkhxrw (59.102.225.191 臺灣), 11/24/2022 13:23:53