為甚麼看線段?
導數提供局部資訊。若要比較兩點的函數值,或量化近似誤差,可用線段連接兩點,再對所得的一元複合函數應用微積分。整條線段必須留在定義域內;單靠不連通定義域上的導數界,不能比較不同連通部分的值。本節 a,h∈Rn,除非另有說明,f 是實值函數;[a,a+h] 指整條線段。
中值定理與估計
定理
一元中值定理
若 ϕ 在 [0,1] 上連續、在 (0,1) 上可微,則存在 c∈(0,1),使 ϕ(1)−ϕ(0)=ϕ′(c)。
設 f 在包含 [a,b] 的開集上可微,令 ϕ(t)=f(a+t(b−a))。鏈式法則給出某個 c∈(0,1),使
f(b)−f(a)=∇f(a+c(b−a))⋅(b−a).
特別地,若線段上 ∥∇f∥≤M,則
∣f(b)−f(a)∣≤M∥b−a∥.
上面的同一中間點等式只適用於實值函數。對向量值 F,不可假設存在一個共同中間點使 F(b)−F(a)=DF(ξ)(b−a);不同分量可能需要不同中間點。若線段上 ∥DF(x)∥op≤M,仍可得到 ∥F(b)−F(a)∥≤M∥b−a∥;例如在 F 屬 C1 時,可沿線段積分 DF(a+t(b−a))(b−a)。
證明
線段估計的證明
該複合函數在 [0,1] 連續、內部可微。應用一元定理、鏈式法則及柯西—施瓦茨不等式即可。若整個凸定義域上的梯度都有同一界,便得到 Lipschitz 條件,因為任意兩點間的線段均留在定義域內。
例題
不必找出中間點
令 f(x,y)=sin(xy),定義在 [−1,1]2。由 ∇f=(ycos(xy),xcos(xy)),得 ∥∇f∥≤2。取 a=(0,1)、b=(0.02,0.97),線段都在方形內,因此
∣f(b)−f(a)∣≤20.022+(−0.03)2=0.0026.這個界是可靠的,但不一定最精確,亦無須猜中間點。
泰勒多項式
定義
海森矩陣與二階泰勒多項式
若 f 在 a 附近屬 C2,其海森矩陣為 Hf(a)=(∂i∂jf(a))i,j。以 h 表示位移,a 處的二階泰勒多項式為
T2(a+h)=f(a)+∇f(a)⋅h+21hTHf(a)h.二元情況 h=(u,v) 的二次項為 21(fxxu2+2fxyuv+fyyv2),所有偏導數均在 a 評估。
定理
二階泰勒展開
若 f 在 a 附近屬 C2,則當 h→0 時,
f(a+h)=T2(a+h)+o(∥h∥2).若 f 在線段的某個鄰域屬 C3,令 ϕ(t)=f(a+th),則對某個 θ∈(0,1),餘項等於 ϕ′′′(θ)/6。特別地,若線段上 ∣ϕ′′′(t)∣≤K∥h∥3,餘項絕對值不超過 K∥h∥3/6。
由 C2 條件,混合二階偏導數相等,所以海森矩陣對稱。三階導數 ϕ′′′(t) 是各 i,j,k 的 ∂ijkf(a+th)hihjhk 之和;如果逐項給偏導數界,須把整個和計算在內。小 o 結論說明誤差除以 ∥h∥2 趨零;更強的三次誤差界需要額外控制。這兩個結論本身均不保證無窮泰勒級數收斂至原函數。
證明
化為一元問題
令 ϕ(t)=f(a+th)。鏈式法則給 ϕ′(0)=∇f(a)⋅h 及 ϕ′′(0)=hTHf(a)h。應用一元泰勒定理。對小 o 形式,海森矩陣的連續性使二階誤差隨 h→0 一致地變小;對拉格朗日餘項,使用 C3 條件與一元三階導數公式。
例題
二階近似與嚴格誤差界
取 f(x,y)=excosy,在 (0,0) 處有 f=1、∇f=(1,0) 及 Hf=diag(1,−1)。因此
T2(x,y)=1+x+21(x2−y2).取 h=(0.1,0.2),近似值為 1.085。沿 th,ϕ(t)=e0.1tcos(0.2t)。由於 ϕ′′′ 是 (0.1+0.2i)3e(0.1+0.2i)t 的實部,
∣ϕ′′′(t)∣≤(0.12+0.22)3/2e0.1<0.01236.故 ∣f(h)−1.085∣<0.00206。近似值和誤差界是不同的;實際誤差可以小得多。
泰勒級數與有限多項式
若 f 在 a 附近光滑,可用各階導數形式上組成泰勒多項式。但級數在某一點代表 f,必須該點的餘項趨零;無窮可微並不足夠。例子是 t=0 時令 g(t)=e−1/t2,並設 g(0)=0。它在零點的所有導數均為零,但 t=0 時 g(t)>0。因此其零點泰勒級數恆為零,在其他點不等於 g。讓函數忽略其餘坐標,就得到多元反例。
如何選方法
- 比較兩點: 梯度有界且線段留在定義域時,用線段中值估計。
- 預測小變化: 只需一階精度時用線性項;要考慮曲率或二階精度時加入海森矩陣。
- 驗證數值誤差: 要證明餘項界,不能只寫出近似值。
- 分類駐點: 用二次型的正負定性;下一節會說明假設和不能判定的情況。
練習
- 在 [−1,1]2 上,利用梯度證明 f(x,y)=x2+y2 是 Lipschitz 函數,並給出一個有效常數。
- 求 f(x,y)=x2ey 在 (1,0) 的 T2,再用它近似 f(1.1,0.1)。
- 解釋為何 f(x,y)=x3 不等於原點的二階泰勒多項式,即使該多項式是有效的二階近似。
- 令 F(t)=(t2,t3),t∈[0,1]。證明不存在 c∈(0,1) 使 F(1)−F(0)=F′(c),儘管一元中值定理對各分量分別成立。
詳解
- ∇f=(2x,2y),在方形內其範數不超過 22。方形為凸集,所以線段估計給 ∣f(b)−f(a)∣≤22∥b−a∥。
- 基點處 f=1、∇f=(2,1)、Hf=(2221)。設 u=x−1,v=y,則 T2=1+2u+v+u2+2uv+v2/2;在 (u,v)=(0.1,0.1) 時得 1.335。
- 原點處函數值、梯度及海森矩陣都為零,所以 T2=0。差值 x3 並非恆零,但 ∣x3∣/x2+y22≤x2+y2→0。
- F(1)−F(0)=(1,1),而 F′(c)=(2c,3c2)。第一分量迫使 c=1/2,但此時第二分量為 3/4=1。兩個實值分量各自需要不同中間點。
總結
鏈式法則把多元問題帶到線段上。中值定理控制有限變化;泰勒多項式保留曲率,改善局部線性近似。結論依賴定義域和光滑性假設,而數值近似的好壞與多項式公式本身是兩個不同問題。