第 5 回までは、主に
r(t)
のようなベクトル値関数を微分して、曲線の接ベクトルや速度ベクトルを見てきました。
今回は少し視点を変えて、
各点に実数が割り当てられる関数
を考えます。
ベクトル解析では、温度、濃度、電位、地形の高さなど、
を扱うことが非常に多いです。
このような量を表す関数に対して、どの方向へ行くと増えるのか、どのくらい急に増えるのかを調べるのが今回のテーマです。
ここで最初に出てくるのが
∇f
すなわち 勾配 です。
1. 今回学ぶこと
この記事では、次の内容を扱います。
- スカラー場
- 偏微分
- 方向微分
- 勾配ベクトル
- 最大増加方向
ゴールは
多変数関数の変化を、偏微分と勾配を使って読めるようになること
です。
2. 直感的なイメージ
まず 2 変数関数
f(x,y)
を考えます。
これは平面上の各点 (x,y) に対して、1 つの実数を対応させる関数です。
たとえば、
- 地図上の各点に高さを対応させる
- 部屋の各位置に温度を対応させる
といったイメージです。
このとき知りたいのは、
- x 方向へ進むとどれだけ変わるか
- y 方向へ進むとどれだけ変わるか
- 任意の方向へ進むとどれだけ変わるか
です。
偏微分は、座標軸方向の変化を見ています。
方向微分は、好きな方向の変化を見ています。
そして勾配ベクトルは、
最も急に増える方向
をまとめて教えてくれるベクトルです。
3. 基本事項
3.1 スカラー場
ベクトル解析では、各点に 1 つの実数を対応させる関数をよく扱います。
たとえば
f(x,y,z)
のような関数です。
このような関数を スカラー場 といいます。
ここで「スカラー」とは、向きを持たないただの数のことです。
したがってスカラー場とは、
- 各点にベクトルが対応するのではなく
- 各点に実数が対応する
ような場だと思えばよいです。
たとえば
f(x,y)=x2+y2
なら、原点から遠ざかるほど値が大きくなります。
また
f(x,y,z)=z
なら、高さそのものを表していると見ることができます。
3.2 偏微分
1 変数関数では、微分は「入力を少し変えたときの変化率」でした。
多変数関数では、どの変数を動かすかを指定しないといけません。
たとえば 2 変数関数
f(x,y)
に対して、x だけを動かして y を固定したときの変化率を
∂x∂f
と書きます。
同様に、y だけを動かしたときの変化率を
∂y∂f
と書きます。
これが 偏微分 です。
つまり偏微分とは、
他の変数を固定して、1 つの変数だけを動かしたときの変化率
です。
3.3 偏微分の例
たとえば
f(x,y)=x2+3xy+y2
を考えます。
x で偏微分するときは、y を定数として扱うので
∂x∂f=2x+3y
です。
同様に、y で偏微分すると
∂y∂f=3x+2y
です。
ここで大事なのは、偏微分の結果もまた点 (x,y) によって変わる関数になっていることです。
つまり偏微分は、各点での変化率を新しく作っていることになります。
3.4 勾配ベクトル
偏微分をまとめて 1 つのベクトルにしたものが 勾配ベクトル です。
2 変数なら
∇f=∂x∂f∂y∂f
3 変数なら
∇f=∂x∂f∂y∂f∂z∂f
と定めます。
なお、勾配は
gradf
と書かれることもあります。
これは gradient(グラディエント) の grad を使った書き方です。
日本語では 勾配ベクトル と呼ぶのが普通で、意味は ∇f と同じです。
ここで
∇=∂x∂∂y∂
あるいは 3 次元では
∇=∂x∂∂y∂∂z∂
という ベクトル演算子 と見ると、∇f がなぜ偏微分を並べた形になるのかが分かりやすくなります。
実際、
∇f=∂x∂∂y∂f=∂x∂f∂y∂f
となるので、grad f は「ベクトル演算子 ∇ を関数 f に作用させたもの」だと読めます。
これは単に偏微分を並べただけではありません。
勾配ベクトルは、その点で関数が最も急に増える方向を表しています。
したがって、
を表していると思うとよいです。
3.5 方向微分
偏微分は座標軸方向の変化でしたが、実際には任意の方向の変化を知りたいことが多いです。
そこで、単位ベクトル
u
の方向における変化率を考えます。
これを 方向微分 といいます。
方向微分は
Duf=∇f⋅u
で与えられます。
これは第 2 回で見た内積の意味とつながっています。
つまり勾配ベクトルのうち、方向 u にどれだけ成分を持っているかを取り出しているわけです。
3.6 なぜ勾配が最大増加方向になるのか
方向微分の式
Duf=∇f⋅u
に、第 2 回の内積の公式
∇f⋅u=∥∇f∥∥u∥cosθ
を使います。
ここで u は単位ベクトルなので
∥u∥=1
です。
したがって
Duf=∥∇f∥cosθ
となります。
この値が最大になるのは
cosθ=1
すなわち
θ=0
のときです。
つまり方向 u が勾配ベクトル ∇f と同じ向きのとき、方向微分は最大になります。
したがって勾配ベクトルは、
その点で最も急に増える方向
を表しています。

3.7 等高線との関係
2 変数関数
f(x,y)
では、値が一定の曲線
f(x,y)=c
を 等高線 と見なすことができます。
等高線に沿って動くと、関数の値は変わりません。
つまりその方向の方向微分は 0 です。
方向微分が 0 ということは、その方向ベクトル v に対して
∇f⋅v=0
です。
したがって、勾配ベクトルは等高線に接する方向と直交します。
つまり勾配ベクトルは、等高線に垂直に交わりながら、高い方へ向くベクトルです。
これは「地形で最も急に登る方向」を考えるとかなり自然です。
3.8 例
関数
f(x,y)=x2+y2
を考えます。
偏微分すると
∂x∂f=2x,∂y∂f=2y
なので、
∇f=(2x2y)
です。
このベクトルは、各点で原点から外向きの方向を向いています。
また大きさは
∥∇f∥=2x2+y2
なので、原点から離れるほど増えていきます。
したがってこの関数では、原点から外へ向かう方向が最も急に増える方向です。
これは f(x,y)=x2+y2 が原点を底にしたお椀型の形をしていることと一致しています。
4. 例題
例題 1
f(x,y)=x2+xy
に対して、
∂x∂f,∂y∂f
を求めよ。
解答
x で偏微分すると
∂x∂f=2x+y
です。
y で偏微分すると
∂y∂f=x
です。
例題 2
f(x,y)=x2+y2
の勾配ベクトルを求めよ。
解答
偏微分すると
∂x∂f=2x,∂y∂f=2y
なので、
∇f=(2x2y)
です。
例題 3
f(x,y)=x2+y2
に対して、点 (1,2) における勾配ベクトルを求めよ。
解答
勾配ベクトルは
∇f=(2x2y)
なので、(1,2) では
∇f(1,2)=(24)
です。
5. 練習問題
練習問題 1
f(x,y)=3x2−2xy+y2
の偏微分
∂x∂f,∂y∂f
を求めてください。
解答を見る
∂x∂f=6x−2y,∂y∂f=−2x+2y
です。
練習問題 2
f(x,y)=x2−xy
の勾配ベクトルを求めてください。
解答を見る
∂x∂f=2x−y,∂y∂f=−x
なので、
∇f=(2x−y−x)
です。
練習問題 3
f(x,y)=x2+y2
に対して、点 (1,0) における勾配ベクトルを求めてください。
解答を見る
∇f=(2x2y)
なので、
∇f(1,0)=(20)
です。
練習問題 4
勾配ベクトルが等高線に垂直になる理由を、方向微分の言葉で説明してください。
解答を見る
等高線に沿って動くと関数の値は変わらないので、その方向の方向微分は 0 です。
したがって、等高線に接する方向ベクトル v に対して
∇f⋅v=0
が成り立ちます。
つまり勾配ベクトル ∇f は、等高線に接する方向と直交するので、等高線に垂直です。
6. まとめ
今回は、多変数関数の変化を偏微分と勾配で見ました。
重要だったのは、
- スカラー場は各点に実数を対応させる関数である
- 偏微分は 1 つの変数だけを動かしたときの変化率である
- 勾配ベクトル ∇f は偏微分を並べたものである
- 勾配ベクトルは gradient とも呼ばれ、gradf と書くこともある
- 方向微分は ∇f⋅u で表される
- 勾配ベクトルは最も急に増える方向を向く
- 勾配ベクトルは等高線に垂直である
という点です。
ここで初めて
∇
が本格的に現れました。
次回は、このナブラをさらに使って、
を見ていきます。
スカラー場の次は、各点にベクトルが対応する世界へ進みます。