CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣

要點

  • Hessian 矩陣是由多元函數(shù)的所有二階導(dǎo)數(shù)組成的矩陣。 

  • 當(dāng)計算 n 變量函數(shù)時,Hessian 矩陣是一個 n 階對稱方陣。 

  • 在優(yōu)化問題中,計算 Hessian 矩陣以獲得臨界點,例如感興趣的多變量函數(shù)的最大值/最小值。 

CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣的圖1

數(shù)學(xué)建模廣泛應(yīng)用于工程和技術(shù)系統(tǒng)中,因為它使我們能夠用數(shù)學(xué)術(shù)語描述現(xiàn)實生活中的問題。使用各種算法求解數(shù)學(xué)表達(dá)式和函數(shù),并對解決方案進行優(yōu)化以獲得更好的結(jié)果。優(yōu)化在基于數(shù)學(xué)模型解決工程問題中發(fā)揮著重要作用。獲得的解決方案應(yīng)滿足約束條件并產(chǎn)生最大的輸出和效率。

在優(yōu)化過程中,大多數(shù)方法都會計算Hessian矩陣。Hessian 矩陣是達(dá)到以數(shù)學(xué)函數(shù)表示的系統(tǒng)全局最優(yōu)值的一種方法。讓我們探討一下 Hessian 矩陣以及如何計算它。

什么是 Hessian 矩陣?

多變量函數(shù)在描述工程系統(tǒng)的數(shù)學(xué)模型中很常見。從多變量函數(shù)的二階導(dǎo)數(shù),可以了解函數(shù)的二階行為。二階導(dǎo)數(shù)在多變量函數(shù)中很重要,因為它們有助于確定優(yōu)化中的關(guān)鍵點。

通常,計算Hessian 矩陣是為了了解依賴于多個值的函數(shù)的行為。Hessian 矩陣是由多元函數(shù)的所有二階導(dǎo)數(shù)組成的矩陣。對于 n 個變量的函數(shù),Hessian 矩陣是一個 nxn 方陣。由于微分的階數(shù)不會帶來導(dǎo)數(shù)的變化,因此Hessian矩陣服從對稱性條件。當(dāng)計算 n 變量函數(shù)時,Hessian 矩陣是一個 n 階對稱方陣。下面給出了廣義 Hessian 矩陣 (Hf)。

CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣的圖2

Hessian 矩陣和標(biāo)量值函數(shù)

函數(shù)將單個數(shù)字與每個點相關(guān)聯(lián)的物理空間形成標(biāo)量場。標(biāo)量值函數(shù)可能采用多個輸入值,但始終返回單個值。當(dāng)標(biāo)量函數(shù)依賴于多個值時,它形成多變量函數(shù)。Hessian 矩陣的計算僅對標(biāo)量值函數(shù)有意義。在 Hessian 矩陣中,每個元素都是一個函數(shù),并且在某個點計算相同的值,例如 (x 0 .y 0 ,...)。

對于點 (x 0 .y 0 ,...),前面提到的 Hessian 矩陣泛化可以重寫為以下矩陣,假設(shè)標(biāo)量場中存在 Hf (x 0 .y 0 ,...): 

CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣的圖3

如何計算 Hessian 矩陣

考慮一個可微函數(shù) f:R n →R。該函數(shù)的 Hessian 矩陣可以按照下面給出的步驟計算。

  1. 取函數(shù) f 的梯度。設(shè)函數(shù)的梯度為 ▽f : R n →R

CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣的圖4

由一階偏導(dǎo)數(shù)形成的矩陣稱為雅可比矩陣或梯度矩陣。我們假設(shè)給定函數(shù)存在所有偏導(dǎo)數(shù)。

  1. 取矩陣 ▽f 的梯度或?qū)?shù)。得到的結(jié)果是n階方陣,構(gòu)成f的Hessian矩陣。

  2. 給定點(x 0 .y 0 ,...)處的Hessian矩陣可以通過代入Hessian矩陣的元素中的值來計算。

示例:計算 Hessian 矩陣 

例如,我們計算 Hessian 矩陣:

CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣的圖5

步驟 1:計算一階偏導(dǎo)數(shù)。

CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣的圖6

步驟 2:計算二階偏導(dǎo)數(shù)。

CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣的圖7

函數(shù)的 Hessian 矩陣為: 

CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣的圖8

步驟 3:計算 (x,y)=(1,2) 處的 Hessian 矩陣

CFD學(xué)習(xí):如何計算標(biāo)量值函數(shù)的 Hessian 矩陣的圖9

Hessian 矩陣對于優(yōu)化至關(guān)重要

在優(yōu)化問題中,我們計算 Hessian 矩陣以獲得臨界點,例如感興趣的多變量函數(shù)的最大值/最小值。在工程中,Hessian 矩陣對于圖像處理、計算機視覺和光譜中的頻率計算等至關(guān)重要。大多數(shù)優(yōu)化算法都會計算 Hessian 矩陣。

Cadence CFD 工具可以幫助您解決高度復(fù)雜的工程系統(tǒng)中的優(yōu)化問題。訂閱我們的時事通訊以獲取最新的 CFD 更新或瀏覽 Cadence 的CFD 軟件套件(包括Fidelity和Fidelity Pointwise),以了解有關(guān) Cadence 如何為您提供解決方案的更多信息。 

登錄后免費查看全文
立即登錄
App下載
技術(shù)鄰APP
工程師必備
  • 項目客服
  • 培訓(xùn)客服
  • 平臺客服

TOP