u++の備忘録

2変数関数の極小値・極大値・鞍点の求め方

はじめに

先日話題になっていた下記の記事を読んで、大学1年次に勉強した極小値・極大値・鞍点の求め方を復習しようと思った。
qiita.com

例題と解法

下記サイトから引用。
mathtrain.jp

例題

 f(x,y)=x3+2xy+y2−x極値をできる限り求めよ。

解法(方針)

  1. 極値のための必要条件として偏微分=0を解き、候補の組を得る
  2. ヘッセ行列を導出する
  3. 候補の組をヘッセ行列 Hにそれぞれ代入し、形状から極小値・極大値・鞍点のいずれであるかを判定する

(詳細は引用の範囲を超えるので、上記リンクへ)

解説

下記の書籍の「6.3.2 2変数関数の極値問題」から抜粋。

www.shoeisha.co.jp

テイラーの公式を n=3まで展開し、以下を導く(ただしは Hはヘッセ行列、 R(x,y)は剰余項)。

 f(x,y) - f(x_0,y_0) = \frac{1}{2}H
\left(
\begin{array}{rr}
x-x_0 \\
y-y_0 \\
\end{array}
\right)+R(x,y)

ここで、候補の組 (x_0,y_0)をヘッセ行列 Hに代入した際に常に H>0であれば、(剰余項を無視すると)常に f(x,y) - f(x_0,y_0)>0であるため、その組 (x_0,y_0)は極小値である。同様に常に H<0であれば、その組 (x_0,y_0)は極大値である。どちらとも言えなければ、鞍点である。

剰余項を考慮した場合の議論は上の書籍参照。