多変数関数とその微分

 今日はまず、下の図(実際に授業で使ったのはandroidアプリのバージョン)で2変数関数のイメージを持ってもらった。

↓の図は、マウスで向きを変えることができるので、ぐるぐる回して横から見たり上からみたりしながら「2変数関数のイメージ」をつけて欲しい。

 1変数関数では、

$$f(x)=c_0+ c_1x +c_2x^2+\cdots$$

のように展開できる関数のとき、$c_1$が一階微分(すなわち「傾き」)を表す項、$c_2$が二階微分(すなわち「曲がり具合」)を表す項であった。

 2変数関数では、

$$f(x,y)=c_0 + c_{x1}x+c_{y1}y+c_{x2}x^2+c_{y2}y^2+c_{xy}xy+\cdots$$

のように展開できて、$c_{x1}$と$c_{x2}$が一階微分(すなわち傾き)を表す項である。

 「傾き〜微分〜1次の項の係数」というつながりを確認し実感するために、上の図のスライダを動かして、$c_{x1}x+c_{y1}y$のような1次の項のみがある状態にして、傾きの変化がどのように「形」を変えるかを見よう。

↑はxの係数を変化させたところ。

 この「面を傾ける方向」が独立に二つあるのが、偏微分が二つあることに対応している。

 次に二階微分は「曲がり具合」である。x2の係数だけを変えたときの図が、↓である。

 x2の係数とy2の係数の正負により、↓のような様々な状態が起こりえる。

 以上のように、一階微分と二階微分の値によりいろいろな状況が有り得る。1変数の場合に比べ、「傾き」や「曲がり具合」に複数のパターンがあることが大事である。

多変数関数の方向微分と極大・極小

第27講へ 講義録目次ページに戻る

多変数関数の方向微分と極大・極小

方向微分

 2変数の場合で話をする。

$f({x},{y})$の「偏係数」は$\left({\partial f({x},{y})\over \partial x}\right)_{\!\!{y}}$と$\left({\partial f({x},{y})\over \partial y}\right)_{\!\!{x}}$の二つがある(「偏微分係数」と呼ぼう)。この二つは「${x}$方向に移動した場合」「${y}$方向に移動した場合」の微小変化の微分係数である。こう考えると「斜めに移動した場合の微係数だって考えていいではないか」という気分になるのは当然である。そこで、図のように傾いた方向に$a$だけ動いた場合の変化を考えよう。つまり、$\Delta x=a\cos\alpha,\Delta y=a\sin \alpha$と選ぶわけである。こうしておいて$f$の変化量を計算したのち、結果を移動量(今の場合$a$)で割ってから極限を取ると、

\begin{equation} \lim_{a\to0}{ f({x}+ \overbrace{a\cos\alpha}^{{\Delta x}},{y}+\overbrace{a\sin\alpha}^{{\Delta y}})-f({x},{y})\over a } =\left({\partial f({x},{y})\over \partial x}\right)_{\!\!{y}} \cos\alpha +\left({\partial f({x},{y})\over \partial y}\right)_{\!\!{x}} \sin\alpha\label{houkoubibun} \end{equation}

となる。この微分は角度$\alpha$で表される方向への「方向微分」と呼ぶ。この式はベクトル$\left(\left({\partial f({x},{y})\over \partial x}\right)_{\!\!{y}},\left({\partial f({x},{y})\over \partial y}\right)_{\!\!{x}}\right)$このベクトルのことを、${\rm grad}~ f({x},{y})$または$\vec\nabla f({x},{y})$と表現することもある。とベクトル$\left(\cos \alpha,\sin \alpha\right)$の内積になっている。

関数$f({x},{y})$を決めれば、各点各点でのベクトル$\left(\left({\partial f({x},{y})\over \partial x}\right)_{\!\!{y}},\left({\partial f({x},{y})\over \partial y}\right)_{\!\!{x}}\right)$が決まる。そしてそのベクトルは場所によって違ういろんな方向を向いている。$\left(\cos \alpha,\sin \alpha\right)$を様々な方向に向ければ方向微分の大きさが

\begin{equation} - \sqrt{ \left({\partial f\over \partial x}\right)^2+ \left({\partial f\over \partial y}\right)^2} \leq \left({\partial f\over \partial x}\right) \cos\alpha +\left({\partial f\over \partial y}\right) \sin\alpha \leq \sqrt{ \left({\partial f\over \partial x}\right)^2+ \left({\partial f\over \partial y}\right)^2} \end{equation}

の範囲で変化する(長くなるので引数$({x},{y})$等を省略した)二つのベクトル$\vec a,\vec b$の内積$\vec a\cdot\vec b$の値は$-|\vec a||\vec b|\leq\vec a\cdot\vec b\leq \vec a\cdot \vec b$の範囲であり、今の場合の$\vec b$にあたる$\left(\cos \alpha,\sin \alpha\right)$の長さは1である。。特別な場合として

という二つの場合を考えよう。

方向微分が0になる場合の$\left(\cos \alpha,\sin \alpha\right)$と、方向微分が最大となる場合の$\left(\cos \alpha,\sin \alpha\right)$は直交している。山の斜面に立ったとき「傾きがない方向(等高線に沿って移動する方向)」と「傾きが最大の方向(山を登る方向)」は常に直交している、ということになる。

たとえば前に考えた$f({x},{y})=\sqrt{{x}^2+{y}^2}$という関数の場合、偏微分係数の作るベクトルは

\begin{equation} \begin{array}{rl} & \left(\left({\partial f({x},{y})\over \partial x}\right)_{\!\!{y}},\left({\partial f({x},{y})\over \partial y}\right)_{\!\!{x}} \right) =\left( {{x}\over\sqrt{{x}^2+{y}^2} } , {{y}\over\sqrt{{x}^2+{y}^2} } \right) \end{array} \end{equation}

である。

↑の図に示した黒矢印がこの偏微分係数のベクトルである(各点ごとに違う方向を向く)。一方、これに垂直なベクトルを白矢印で示した。白矢印の方向は「$\sqrt{{x}^2+{y}^2}$のこの方向への微分が0になる方向」すなわち、「$\sqrt{{x}^2+{y}^2}$が変化しない方向」である(今の場合は$\sqrt{{x}^2+{y}^2}$が原点からの距離であることを思えば自明)。

 この偏微分係数のベクトル(gradと呼ばれることもある)
↓はマウスで動かせる$r$方向のベクトルと$\theta$方向のベクトルの図である。
x=2,
y=2,
r=2.82842712474619,
θ=0.78539816339745,
(∂/∂r)=0.70710678118655(∂/∂x)+0.70710678118655(∂/∂y)
(1/r)(∂/∂θ)=0.70710678118655(∂/∂x)+0.70710678118655(∂/∂y)
下に座標が出ているので確認しておこう。最後に偏微分と偏微分の関係もついているが、それは来週講義する。

極大・極小

1変数関数の極大・極小点では微分が0になったが、多変数(ここでは「2変数」のみを扱う)関数の場合も微分が0の点が極大極小点になるのは同じである。ただし、多変数なら「微分の方向」があるので「ある方向の微分は0だが、別の方向では0でない」ということが起こりえる。

次の図に示したのは$f({x},{y})={x}^2+{y}^2,-{x}^2-{y}^2,{x}^2-{y}^2$の三つの関数の3次元グラフで、どの場合も原点においてどの方向の微分も0であるが、二階微分の値の正負が違う。

どの方向に対しても一階微分が0で二階微分が負なら、それは極大点である。逆に、どの方向に対しても一階微分が0で二階微分が正なら、それは極小点である(ここまでは1変数の時の素直な拡張である)。多変数で現れる新しい状況として「一階微分はどの方向に対しても0であるが、二階微分の正負は方向により異なる」という場合があり、この場合は(図に示したように馬の鞍の形なので)「鞍点」と呼ぶ。

上の図では示してないが、ある方向の二階微分が0であるという状況ももちろんある。というより、鞍点の場合「二階微分が正である方向」と「負である方向」があるのだから、その境界の方向では二階微分は必ず0になる。
↓は極大点・極小点・鞍点の違いをイメージするために教室で見せた踊り。ぐるぐる周りながらそれぞれの状況の応じて手を上下して山や谷を作る。

 上では比較的単純な例を提示したので、${\partial^2 f\over \partial x^2}$と${\partial^2 f\over \partial y^2}$の正負を見て場合分けできたが、2変数関数の二階微分はもう一つ、${\partial^2 f\over \partial x\partial y}$があることを忘れてはいけない(上の例では全て${\partial^2 f\over \partial x\partial y}=0$なので気にしなくてもよかった)。

 逆に${\partial^2 f\over \partial x\partial y}\neq0$である例として、$f({x},{y})={x}{y}$を考えてみると、この場合も鞍点になっている実はこのグラフは$f({x},{y})={x}^2-{y}^2$を${\pi\over 4}$だけ回転して、少し高さを調整したものになっている。

 一般の2変数関数で、一階微分が全て0である点(このような点は「\newwordruby{ていりゅうてん}{停留点}」と呼ぶ停留点の中には、極大点と極小点と鞍点が含まれる。)が見つかったとして、その点が極大なのか極小なのかそれとも鞍点なのかを知りたい「別にそんなの知りたくない」って?---この関数がたとえば貴方の所有している財産の価値だったら、「ここが極大かどうか」を知りたくならないかな?場合は、次の節で考える多変数関数のテイラー展開の2次の項を調べる必要がある。

多変数関数のテイラー展開

 1変数の関数$f({x})$のテイラー展開

\begin{equation} f({x})=f(a)+f'(a)({x}-a)+{1\over 2}f''(a)({x}-a)^2+{1\over 3!}f'''(a)({x}-a)^3+\cdots \end{equation}

は「点${x}=a$における0階微分、1階微分、2階微分、$\cdots$が同じになる多項式を作る」という手順(両辺を${x}$で微分してから${x}=a$を代入すると一致する)で見つけることができたから、同様に考えるもちろん、どんな関数でもテイラー展開できるわけではない。ここではできるものだけを扱う。と、

2変数関数のテイラー展開

\begin{equation} \begin{array}{rl} f({x},{y}) =&f(a,b) +{\partial f\over \partial x}({x}-a) +{\partial f\over \partial y}({y}-b)\\ +&{1\over 2}{\partial^2 f\over \partial x^2}({x}-a)^2 +{\partial^2 f\over \partial x\partial y}({x}-a)({y}-b) +{1\over 2}{\partial^2 f\over \partial y^2}({y}-b)^2 \\ +&{1\over 3!}{\partial^3 f\over \partial x^3}({x}-a)^3 +{1\over 2}{\partial^3 f\over \partial x^2\partial y}({x}-a)^2({y}-b) +{1\over 2}{\partial^3 f\over \partial x\partial y^2}({x}-a)({y}-b)^2 +\cdots \end{array} \end{equation}

のようになる。スペースが足りないので省略して書いているが、すべての偏微分は$({x},{y})=(a,b)$での値である(${x}$で偏微分する時は${y}$は一定とする。逆も同様)。

実際に、微分の結果が一致することを確認してみよ。

一般項を和記号で表現すると

\begin{equation} f({x},{y})=\sum_{m=0}^\infty\sum_{n=0}^\infty {1\over m! n!}{\partial^{m+n} f({x},{y})\over \partial x^m \partial y^n}\biggr|_{{x}=a\atop {y}=b}({x}-a)^m({y}-b)^n \end{equation}

である。1変数の時と同様に、和を途中で打ち切る場合には余剰項が出る。また、テイラー展開には有効な範囲(収束半径)があることも1変数の場合と同様である。

前節最後で述べた「停留点が極大・極小・鞍点のどれになっているかを判定する方法」をここで考えよう。$(a,b)$が停留点とすればそこで一階微分は0だから、$({x}-a)={\Delta x},({y}-b)={\Delta y}$と書けば、

\begin{equation} f({x},{y}) =f(a,b) +\underbrace{\overbrace{{1\over 2}{\partial^2 f\over \partial x^2}}^a({\Delta x})^2 +\overbrace{{\partial^2 f\over \partial x\partial y}}^b{\Delta x}{\Delta y} +\overbrace{{1\over 2}{\partial^2 f\over \partial y^2}}^c({\Delta y})^2}_{曲がり具合を表現する部分} +\cdots \end{equation}

となる。3次以上の項は省略した。式に示したように、係数を以下$a,b,c$で表す。

 上の「曲がり具合を表現する部分」がどのような${\Delta x},{\Delta y}$に対しても正であるならばこの点は極小点、逆に常に負ならば極大点である。正にも負にもなる場合は鞍点だと言える(他の可能性としては正、負ではなく0以上や0以下という可能性もある)。この式は

\begin{equation} a({\Delta x})^2 + b{\Delta x}{\Delta y}+c({\Delta y})^2 =\underbrace{({\Delta y})^2}_{常に正}\underbrace{ \left( a\left({{\Delta x}\over{\Delta y} }\right)^2 +b{{\Delta x}\over{\Delta y} }+c \right)}_{この部分の正負が問題} \end{equation}

となるから、後は「二次式$ax^2+bx+c$の正負を場合分けせよ」という問題${{\Delta x}\over{\Delta y} }$の変域は実数全体である。${\Delta x}=a\cos\alpha,{\Delta y}=a\sin\alpha$と置けば、${{\Delta x}\over{\Delta y} }=\cot \alpha$となる。になり、二次方程式の判別式を使うこととで状況を分類することができる。結果は以下の通り$b^2-4ac=0$の場合は省略したが、正(もしくは負)が0以上(もしくは0以下)になるという違いである。

この判別式$b^2-4ac$というのは実は$\left(\begin{array}{cc}{\partial^2 f\over \partial x^2}&{\partial^2 f\over \partial x\partial y}\\{\partial^2 f\over \partial y\partial x}&{\partial^2 f\over \partial y^2}\end{array}\right)$という行列(「ヘッセ行列」と呼ぶ)の行列式の$-4$倍である。行列の形で書くと、3変数以上の場合にも拡張できる。
多変数関数とその微分 受講者の感想・コメント

第27講へ 講義録目次ページに戻る

受講者の感想・コメント

 青字は受講者からの声、赤字は前野よりの返答です。

タブレットを使って3Dの図形を操作したのでイメージがしやすくなった。
イメージを掴んでおきましょう。

立体に考えることがアンドロイドを使ってやるとイメージがしやすくて、理解できました。今まで平面にしか考えてなかった分、難しく感じたけど、慣れてできるようになりたいと思いました。
関数や数式をイメージできるように、慣れていってください。

androidのグラフが分かりやすかったです!
それはよかった。イメージを作っておいてください。

タブレットを使いグラフを3次元的に感じる事ができたので楽しかった。
3次元的イメージを持ってくださいね。

2変数のグラフが楽しかった。
楽しんで勉強してください。

今日作ったアンドロイドのプログラムみたいなのって、勉強すれば作れるようになるのでしょうか。
そりゃもちろん。あれ私が(勉強して)作ったものだし。

内積の、出に向かっていくと正、直交の向きに向かうと0、下る向きに進むと負が、わかりやすかった。
ベクトルのイメージを持っておきましょう。

複雑な式を定数の記号でおくなどして簡略化すれば、考えやすいということがわかった。
それは常に使えることですね。

2変数関数では方向が無限に存在して、その方向に微分するというアイデアを知った。ある方向では極大、ある方向では極小の点を鞍点ということを知った。2変数関数では変曲点という言葉があるのか気になった。
2変数の場合の変曲点は当然あるわけですが、言葉として使うことはあまりないですね。

式からどういう形のグラフかを頭に浮かべれるようにしたいきたいと思いました。
とりあえずは「一階微分→傾き」「二階微分→曲がり具合」というイメージを持つところから行きましょう。

難しそうなところも、今までにならったことがでてくるとできるような気がします。
数学は積み重ねなので、全体を見ると難しそうでも、一歩一歩は難しくありません。確実に進んでいきましょう。

大学でならうむずかしそうなのも、高校の内容におきかえてくれてわかりやすかったです。
最初はそれでいいけど、少しずつ大学の数学に慣れていってください。

鞍点、極大、極小を判別するときに必要なのは二次方程式を考えているときと同じだったが、計算が大変そう。
まぁ、大学の数学なのだからややこしいのは仕方ない。大変でもがんばろう。

とても難しかった。二階微分=0の場合にも変曲点はあるのでしょうか。
当然、変曲点にあたるものもあります(ある方向には変曲点である方向には極大とか、いろいろある)。

鞍点という名前を始めて知って感動した。
ちょっと面白い名前ですよね。

テイラー展開や多変数関数のグラフなど、始めて習ったことが多い講義だったので、復習が必要だと感じた。
復習して、自分のものにしておいてください。

1変数ではいいけど、2変数の偏微分を用いると次数が増えていく毎にごっちゃになるのでしっかりおさえたい。
ごっちゃにならないよう、練習して慣れておきましょう。

2変数関数では極大・極小の他に鞍点もあるので、すぐに決めつけず、しっかり計算して見極めようと思いました。
いろいろ注意していきましょう。

極大・極小・鞍点を学ぶことができました。2変数関数でも1変数関数でも考え方は同じだということがわかりました。
根本のところは同じですね。

鞍点の「あん」って読む漢字が個人的に覚えにくいです。
英語で「サドルポイント」と書いた方が覚えやすいかな。

2変数関数にもテイラー展開があるとは思わなかった。
あるに決まっているではないですか。というか、ないとすごく困るじゃないですか。

グラフの画像があったので、曲がり方とか傾きとかがよくわかった。
イメージを持っておきましょう。

複雑なグラフになってきていますが、基本的なところは同じなので、こわがらずにやろうと思います。
じっくり考えていけば、きっとわかります。

極大、極小、鞍点の話がよくわかった。工場とかの生産量がもし極小だったらその工場は未来があるなと思いました。
どう変換させても好転しますからね(^_^;)。「今まで何やってたの?」とは言いたくなりますが。

今日の講義は集中して受けることができた。前回の小テストが100点で嬉しかったです。もう少し勉強して理解を深めたいと思った。
集中していきましょう。

多変数関数の方向微分のことが理解できた。2変数関数のテイラー展開理解した。完全には理解してないので、完全に理解できるようにしたい。
じっくり復習し練習して、理解していってください。

grad f(勾配ベクトル)…方向微分を確認できました。
gradはいろいろと使い途のある計算法です。

極大・極小・鞍点の考え方は面白いなと思いました。自分で勉強して理解を深めたい。
ちょっと休んでましたね。取り返していってください。

あの極大極小ダンスを今日のツイッターのネタになるのだろうと思いながら見てました。
と、書かれたのでネタにしました。

$\sqrt{x^2+y^2}$の${\partial f\over \partial x}$ってどう解くんでしたか? ${\partial^2 f\over \partial x\partial y}$って何ですか???
だ〜〜〜か〜〜〜ら〜〜〜。こういうことは授業中に質問する。授業中が恥ずかしいならせめて授業終わってすぐに質問するべし。この狭い場所に答は書いてられない(そもそもこれは質問シートではない)。あと、「解く」のは方程式。

勉強のモチベーションを保つにはどうすればよいですか?
う〜ん、人によって違うだろうから答えにくいけど、「次々新しいことを勉強すること」というのは一つの手かな。

いろんな方向の増加について考えることが難しかった。しっかり理解し、使えるようにしたい。
がんばりましょう。

自分の気持ちが分からないということが果たしてあるのでしょうか?(真剣)
人間なら、そういうこともあるとは思います。

そろそろテスト近いのでできるか不安です。
その不安を解消するには、勉強するしかないです。

授業を理解することができてよかった。
それはよかった。

久々に判別式がでてきて、こんな所でも判別式を使うんだな〜と思いました。
いろんなところで使いますよ、あれ。

少し難しいと感じたのでしっかりと復習して理解を深めたい。
是非、復習してください。

わかったような、なんかう〜ん。
そういう時こそ、計算やってみたり絵を描いてみたり、いろいろ勉強してみてください。

多変数関数の方向微分と極大・極小

第27講へ 講義録目次ページに戻る