Lagrangeの未定乗数法


たまに出てくるけど、その時には何だったか忘れている、そんなLagrangeの未定乗数法について簡単にまとめてみる。厳密な証明ではないので、その点はご了承されたし。

(Theorem) Lagrangeの未定乗数法 (2変数で拘束条件が1つの場合)

拘束条件 $g(x, y) = c$ かつ $c=const.$ の下で $f(x, y)=z$ の極値を求める問題を考えるとき, $\bm{\nabla} g \neq 0$ ならば $\bm{\nabla} f = \lambda \bm{\nabla} g$ を満たす $\lambda$ が存在する.

Lagrangeの未定乗数法には大きく2通りの表現が知られていて、上記の表現はメジャーな書き方ではない。ただ、個人的にはこちらの書き方のほうが分かりやすかったので、まず上記の表現について説明する。

まず、ここでの目的は2変数関数$f(x, y)=z$の極値を知ることである。 関数の極致を求めるとき、何も条件がない場合は、$\nabla f =0$となる点を探せばよいだけだが、拘束条件$g(x, y) = c$がある場合にはそう単純ではなくなる。なぜかというと、変数$x$と$y$が条件$g$によって、お互いに独立ではなくなるからである。何を言っているかというと、$g$の右辺の$c$は単なる定数なので、この式は単に$x$と$y$の関係を表す式となっており、もとの関数$f$の変数$x$と$y$について、条件を追加したことを意味している。これによって、$x$と$y$は自由に動くことができず、$g$を満たす2次元平面内の直線状を動くようになる。 このような状況で$f$の極致を求める方法を示してくれるのがLagrangeの未定乗数法である。

早速、説明に入ろう。 $g$と$f$について全微分を考え、極値を求めたいので、$df=0$となるとする。

\begin{align} dg &= \frac{\partial g}{\partial x} dx + \frac{\partial g}{\partial y} dy = 0 \label{dg} \\ df &= \frac{\partial f}{\partial x} dx + \frac{\partial f}{\partial y} dy = 0 \label{df} \end{align}

ここで$\eqref{dg}$は、

\begin{align} dy &= - \left( \frac{\partial g}{\partial x} \right) \left( \frac{\partial g}{\partial y} \right)^{-1} dx \end{align}

と表せるので、これを$\eqref{df}$に代入して整理すると、

\begin{align} df &= \left[ \frac{\partial f}{\partial x} - \frac{\partial f}{\partial y} \left( \frac{\partial g}{\partial x} \right) \left( \frac{\partial g}{\partial y} \right)^{-1} \right] dx = 0 \label{df_dx} \end{align}

となる。

ここで、一般に$dx \neq 0$なので、カッコ内が$0$になる必要があることがわかる。よって、$\eqref{df_dx}$で

\begin{align} \lambda &= \frac{\partial f}{\partial y} \left( \frac{\partial g}{\partial y} \right)^{-1} \label{lambda} \end{align}

とおくと

\begin{align} \frac{\partial f}{\partial x} &= \lambda \frac{\partial g}{\partial x} \end{align}

となる。 また、$y$方向についても同様に示せるし、もっと言えば$\eqref{lambda}$がすでに$y$方向の式である。 まとめると、

\begin{align} \bm{\nabla} f = \lambda \bm{\nabla} g \label{nabla_f} \end{align}

と表せる。ただし$\lambda$の定義から明らかなように、$\bm{\nabla} g \neq 0$である。これで示すことができた。

次に、Lagrangeの未定乗数法のメジャーな表現について考えてみる。それは以下のように表される

拘束条件 $g(x, y) = c$ かつ $c=const.$ の下で $f(x, y)=z$ の極値を求める問題を考えるとき, $F(x, y, \lambda) = f(x, y) - \lambda (g(x, y) - c)$
という関数を考えると、 $\frac{\partial F}{\partial x} = \frac{\partial F}{\partial y} = \frac{\partial F}{\partial \lambda} = 0$ を満たす点が求めたい極値になる。

拘束条件付きの極致問題を解くときに上のような関数の極致問題としてとらえ直すことができるのは大変便利だが、そもそも、ここで唐突に出てくる

\begin{align} F(x, y, \lambda) = f(x, y) - \lambda (g(x, y) - c) \label{modified_f} \end{align}

とは何だろうか。 一見すると$g(x, y) - c = 0$であるので、右辺の第2項は無意味にも思える。 確かにそうなのだが、それゆえに$\lambda$の値は有限である限り何でもよいことになる。 これは、拘束条件$g$を考慮しつつ、もとの関数$f$に不定性を追加したと考えることもできそうだ。 そうだとしても、まだわからないことがある。 第2項をマイナスで入れるのはなぜだろうか?

それを確かめるために、この$\eqref{modified_f}$をそれぞれの変数で微分して$0$とすると、

\begin{align} \frac{\partial f}{\partial x} &= \lambda \frac{\partial g}{\partial x} \label{f_x} \\ \frac{\partial f}{\partial y} &= \lambda \frac{\partial g}{\partial y} \label{f_y} \\ g(x, y) &= c \end{align}

が得られる。 ここで1番目と2番目の式は先ほど示した$\eqref{nabla_f}$である。また、最後の式は元々の拘束条件そのものである。 結局、微分したときに$\eqref{nabla_f}$となるように符号を決めていたということである。この事情を見ると、重要であるのは$\eqref{nabla_f}$が成り立つという事実であると考えたので、ここでは先に$\eqref{nabla_f}$を示すことにしたのである。

最後に、$\eqref{nabla_f}$の視覚的なイメージについて少し触れておく。このことは他の多くの解説サイトにも載っていることだが、念のため。。。 $\eqref{nabla_f}$は関数$f$の勾配が$g$の勾配と平行になっているということを表している。つまり、今の例では拘束条件$g$はある2次元平面にへばりついた図形になっていて、関数$f$のほうは3次元で書けるグラフになっているので、$g$を含む断面で切り取った$f$のうち、勾配の方向が互いに平行になっている点が極値の候補になるということである。このことの図は例えば 数学の景色/ラグランジュの未定乗数法とは~意味と証明~ を参考にするとわかりやすい。


ページTOPに戻る