高校数学で学ぶように,例えば$f(x)=x^3-x^2-x+1$のような1変数関数$f$が極値をとる$x$を知りたいとき,方程式$f'(x)=0$を解けば極値をもつ点$x$の候補が得られるのでした.
では,これが2変数関数になるとどうでしょうか?
$f(x,y)=5x^2+5y^2+6xy-2$で定まる2変数関数$f$が極値をとる点$(x,y)$の候補を求めよ.
2変数になると導関数は$\pd{f}{x}$, $\pd{f}{y}$の2つになりますが,1変数のときと同様に
を満たす点$(x,y)$を求めることによって,$f$が極値をとる点$(x,y)$の候補が得られます.
しかし,この問題が次のようになると,そう簡単ではなくなります.
制約条件$y=x-3$上で$f(x,y)=5x^2+5y^2+6xy-2$で定まる2変数関数$f$が極値をとる点$(x,y)$の候補を求めよ.
つまり,$x$と$y$に制約(この問題では$y=x-3$)があると単純に$f$の偏導関数から最小値を求めることができません.
この問題では制約条件$y=x-3$が簡単なので$y$を消去して1変数に帰着させても解けますが,もっと複雑な制約条件ならそうもいきませんね.
そこで,曲線や直線上といった「制約条件下」での関数の極値を求めるための方法として,Lagrange(ラグランジュ)の未定乗数法があります.
この記事では,ラグランジュの未定乗数法の直感的な考え方を説明し,具体例から使い方をみます.
目次
解説動画
この記事の解説動画をYouTubeにアップロードしています.
【ラグランジュの未定乗数法】「あの条件」は一瞬で導ける!(14分57秒)
この動画が良かった方は是非チャンネル登録をお願いします!
ラグランジュの未定乗数法の直感的な理解
1変数関数の場合には,定義域があっても単純な微分で極値点を求めることができるので,ラグランジュの未定乗数法は必要ありません.
そのため,ラグランジュの未定乗数法が必要となるのは2変数以上の場合です.
偏導関数
関数$f$の$x$に関する偏導関数$\displaystyle\pd{f}{x}$によって,$y$を固定したときの$f$の$x$の増減を考えることができます.
つまり,$\displaystyle\od{f}{x}$によって,$x$軸に平行な向きの増減が分かります.
このように,偏導関数を考えることで軸に平行な方向の増減を考えることはできますが,軸に平行でない直線や曲線上での増減は単純に偏導関数を考えるだけでは分かりません.
これにより,制約条件のもとでは単に偏導関数を考えるだけでは都合が悪いわけですね.
極値をとる2つのパターン
具体的に,冒頭で書いた次の問題を考えましょう.
制約条件$y=x-3$上で$f(x,y)=5x^2+5y^2+6xy-2$で定まる2変数関数$f$が極値をとる点$(x,y)$の候補を求めよ.
$z=f(x,y)$とすると$x$と$y$を決めると$z$が決まり,この方程式のグラフは$xyz$空間上に描くことができます.
この問題では,$f(x,y)$は2次の係数が全て正の2次式なので,$z=f(x,y)$のグラフは下に凸な以下のような「お椀型」の曲面となりますね.

このグラフの「等高線」は以下のようになります.
$z=0,2,6,14$と$z$が大きくなるにつれて等高線が広がっているわけですね.
パターン1
こうみるとうまく$z=C$を取れば,等高線$f(x,y)=C$は制約条件$y=x-3$のグラフと接するようにできそうです.
もし等高線$f(x,y)=C$と$y=x-3$が点$(a,b)$で接するなら,下図のようになります.
さて,この等高線$f(x,y)=C$は$xy$平面を2つの領域に分割しており,
- 等高線$f(x,y)=C$の内部では$f(x,y)<C$
- 等高線$f(x,y)=C$の外部では$f(x,y)>C$
となっていますから,制約条件$y=x-3$上の点$(x,y)$は$f(x,y)\ge C$を満たし,$f(a,b)=C$だから,制約条件$y=x-3$のもとでの$f(x,y)$の最小値は$C$であることが分かりますね.
このように「制約条件$g(x,y)=0$のグラフ」と「$z=f(x,y)$の等高線」が接するような点$(a,b)$を見つけることができれば,この点$(a,b)$は極値となりえますね.
いま考えている問題では$g(x,y)=y-x+3$とすれば,制約条件は$g(x,y)=0$となりますね.
さて,制約条件$g(x)=0$のグラフと等高線$f(x,y)=C$が点$(a,b)$で接するなら
- $g(x,y)=0$上の点$(a,b)$での法線ベクトル$\nabla g(a,b)=\bmat{\pd{g}{x}(a,b)\\\pd{g}{y}(a,b)}$
- $f(x,y)=C$上の点$(a,b)$での法線ベクトル$\nabla f(a,b)=\bmat{\pd{f}{x}(a,b)\\\pd{f}{y}(a,b)}$
は平行となりますね.
このとき,($\nabla{g}\neq\m{0}$なら)ある$\mu\in\R$が存在して
が成り立ちます.よって,この等式が成り立つとき,点$(a,b)$は極値となり得ます.
パターン2
今考えていた制約条件$y=x-3$は滑らかな曲線でしたが,制約条件によってはグラフが「尖る」ことがあります.
このような尖った点では接ベクトルを考えることができませんが,もしこのグラフの尖った点が等高線$f(x,y)=C$にタッチしてすぐに引き返す状況になっていれば極値をとりうるわけです.
のちにラグランジュの未定条数法の具体例を考えますが,そこでの例2がこのパターン2に相当します.
$g$が微分可能であるとすれば,制約条件$g(x,y)=0$のグラフが尖る可能性があるのは$g$の速度が0になるような場合です.つまり,$g(x,y)=0$上の点$(a,b)$が
を満たしていれば,$g(x,y)=0$のグラフは点$(a,b)$で尖っている可能性がありますね.
つまり,このような$(a,b)$は極値の候補になるわけですね.
ラグランジュの未定乗数法
以上の考察から以下が成り立ちそうで,実際に成り立つことが証明できます.
[ラグランジュの未定乗数法(2変数の場合)] 関数$f,g:\R^2\to\R$は共に$C^1$級であるとし,束縛条件$g(x,y)=0$のグラフを$S$とする.
このとき,次の1,2のいずれかを満たす点$(a,b)$のみ$f$の$S$上の極値点となりうる.
- $\bmat{\pd{g}{x}(a,b)\\\pd{g}{y}(a,b)}=\bmat{0\\0}$となる$(a,b)\in S$が存在する.
- $\bmat{\pd{f}{x}(a,b)\\\pd{f}{y}(a,b)}=\mu\bmat{\pd{g}{x}(a,b)\\\pd{g}{y}(a,b)}$かつ$g(a,b)=0$を満たす$(a,b)\in\R^2$, $\mu\in\R$が存在する.
ここで,点$(a_1,a_2)$が$f$の$S$上の極値点であるとは,点$(a_1,a_2)$の$\R^2$での近傍$W$が存在して,$S\cap W$上で$f$が最小値または最大値をとることをいいます.
この意味で,$S$を拘束条件や束縛条件などといいます.
のちに2変数とは限らない一般の場合の[ラグランジュの未定乗数法]の証明をしますが,2変数の場合の場合の証明も与えておきましょう.
点$(a,b)$が$f$の$S$上の極値点であるとし,$\bmat{\pd{g}{x}(a,b)\\\pd{g}{y}(a,b)}\neq\bmat{0\\0}$であるとし,条件2が成り立つこと示せばよい.
$\bmat{\pd{g}{x}(a,b)\\\pd{g}{y}(a,b)}\neq\bmat{0\\0}$が成り立つとき
- $\pd{g}{x}(a,b)\neq0$の場合
- $\pd{g}{y}(a,b)\neq0$の場合
がありうるが,どちらでも証明は同様なので$\pd{g}{x}(a,b)\neq0$の場合を考えても一般性を失わない.
ここで,$\mu\in\R$を
で定めると
- $a,b\in S$より$g(a,b)=0$
- $\mu$の定義より$\pd{f}{x}(a,b)-\mu\pd{g}{x}(a,b)=0$
が成り立つから,あとは$\pd{f}{y}(a,b)=\pd{g}{y}(a,b)$を示せばよい.
$\pd{g}{x}(a,b)\neq0$より陰関数定理が適用できる.すなわち
- $(a,b)$の近傍$W\times V\subset \R^2$ $(W\subset\R,V\subset\R)$
- $C^1$級関数$h:V\to W$
が存在して
- $(x,y)\in W\times V$なら,$(x,y)\in S \iff x=h(y)$
- $\pd{h}{y}(b)=-\frac{\pd{g}{y}(a,b)}{\pd{g}{x}(a,b)}$
をみたす.また,$F:V\to \R$を$F(y):=f(h(y))$で定めると
- $(h(b),b)\in S$
- $f$が$S$上の点$(a,b)\in S$で極値をとる
より,$F$は$V$上の点$b$で極値をもつから$\pd{F}{y}(b)=0$を満たす.よって,$\mu$の定義と併せると
だから$\pd{f}{y}(a,b)=\mu\pd{g}{y}(a,b)$が従う.
ラグランジュの未定乗数法は$S$上の極値をもつ時の必要条件を述べているだけであり,[条件1]または[条件2]を満たしていても極値となるかどうかは分からないことに注意してください.
ラグランジュ関数
このままでも何も間違いなはいのですが,このラグランジュの未定乗数法の[条件2]はもう少しすっきり表すこともできます.
で定まる関数$\Phi:\R^3\to\R$をLagrange関数とよびます.
このラグランジュ関数を用いると,
となるので,[条件2]は「$\nabla_{x,y,\lambda}\Phi(a,b,\mu)=\m{0}$を満たす$(a,b)\in\R^2$, $\mu\in\R$が存在する」とすっきり書き換えることができますね.
ラグランジュの未定乗数法の具体例
それでは,ラグランジュの未定乗数法の具体例な使い方をみましょう.
例1
関数$f$, $g$を
- $f(x,y)=(x-1)^2+(y-1)^2$
- $g(x,y)=x^2+y^2-4$
で定める.束縛条件$g(x,y)=0$のもとでの$f$の極値点の候補をLagrangeの未定乗数法により求めよ.
束縛条件$g(x,y)=0$のグラフ$S$は原点中心,半径2の円で,このグラフ$S$上の極値点$(a,b)$を求めましょう.
[1] $\pd{g}{x}(x,y)=2x$, $\pd{g}{y}(x,y)=2y$なので
ですが,$(0,0)\notin S$だから$\pd{g}{x}(a,b)=\pd{g}{y}(a,b)=0$となる$(a,b)\in\R^2$は存在しません.
[2] $\Phi(x,y,\lambda)=f(x,y)-\lambda g(x,y)$とおくと
であり,この連立方程式の解$(x,y,\lambda)=(a,b,\mu)$が存在すれば,点$(a,b)$が極値点の候補となります.
第3成分の両辺を$(1-\lambda)^2$倍して,$(1-\lambda)x=1$と$(1-\lambda)y=1$を代入することにより
であり,それぞれの$\lambda$を$(1-\lambda)x=1$と$(1-\lambda)y=1$に代入して,複号同順で
となって,$\nabla_{x,y,\lambda}\Phi(x,y,\lambda)=\m{0}$の解が求まりました(存在しました).
[1],[2]より,極値点の候補は$\bra{\pm\sqrt{2},\pm\sqrt{2}}$となります.
例2
関数$f$, $g$を
- $f(x,y)=(x-1)^2+y^3$
- $g(x,y)=x^2-y^3$
で定める.束縛条件$g(x,y)=0$のもとでの$f$の極値点の候補をLagrangeの未定乗数法により求めよ.
束縛条件$g(x,y)=0$のグラフ$S$上の極値点$(a,b)$を求めましょう.
[1] $\pd{g}{x}(x,y)=2x_1$, $\pd{g}{y}(x,y)=-3y$なので
であり,$(0,0)\in S$なので$(0,0)$がまず極値点の候補となりますね.
[2] $\Phi(x,y,\lambda)=f(x,y)-\lambda g(x,y)$とおくと
であり,この連立方程式の解$(x,y,\lambda)=(a,b,\mu)$が存在すれば,点$(a,b)$が極値点の候補となります.
第2成分より$\lambda=-1$または$y=0$が成り立つ.
もし$y=0$なら,第3成分から$x=0$となるが,これは第1成分に矛盾するから$y\neq0$である.
また,$\lambda=-1$なら,第1成分から$x=\frac{1}{2}$,さらに第3成分から$y=\frac{1}{\sqrt[3]{4}}$となって,$\nabla_{x,y,\lambda}\Phi(x,y,\lambda)=\m{0}$の解が求まりました(存在しました).
[1],[2]より,極値点の候補は$(0,0)$, $\bra{\dfrac{1}{2},\dfrac{1}{\sqrt[3]{4}}}$となります.
変数が3個以上の場合
2変数の場合のラグランジュの未定乗数法を理解できていれば,以下の一般の$N$変数の場合も同様に理解できます.
[ラグランジュの未定乗数法] 関数$f,g_1,\dots,g_k:\R^N\to\R$は全て$C^1$級であるとし,束縛条件$g_1(\m{x})=\dots=g_k(\m{x})=0$のグラフを$S$とする.
このとき,次の1,2のいずれかを満たす点$\m{a}=\bmat{a_1\\\vdots\\a_N}$のみ$f$の$S$上の極値点となりうる.
- $\rank{\bmat{\pd{g_1}{x_1}(\m{a})&\dots&\pd{g_1}{x_k}(\m{a})\\\vdots&\ddots&\vdots\\\pd{g_k}{x_1}(\m{a})&\dots&\pd{g_k}{x_k}(\m{a})}}<k$となる$\m{a}\in S$が存在する.
- $\Phi(\m{x},\m{\lambda})=f(\m{x})-\m{\lambda}\cdot\m{g}(\m{x})$で定まる$\Phi:\R^N\times\R^k\to\R$に対して,$\nabla_{\m{x},\m{\lambda}}{\Phi}(\m{a},\m{\mu})=\m{0}$となる$\m{a}\in\R^N$と$\m{\mu}\in\R^k$が存在する.
ただし,$\m{\lambda}=\bmat{\lambda_1\\\vdots\\\lambda_k}$, $\m{g}=\bmat{g_1\\\vdots\\g_k}$であり,$\m{\lambda}\cdot\m{g}(\m{x})$は$\m{\lambda}$と$\m{g}(\m{x})$の通常の内積である.
例えば$\m{x}=\bmat{x_1\\x_2\\x_3}$とし,関数$g_1,g_2:\R^3\to\R$を
で定め,束縛条件$g_1(\m{x})=g_2(\m{x})=0$の場合を考えます($N=3$, $k=2$の場合).
[1]
だから,$p\in\R$が存在して$\bmat{p\\p\\0}\in S$となれば,ラグランジュの未定乗数法の[条件1]が成り立ちます.
実際,$g_1(p,p,0)=2p$, $g_2(p,p,0)=2p^2$より$p=0$で$\bmat{p\\p\\0}\in S$となるので,点$\bmat{p\\p\\0}$でラグランジュの未定乗数法の[条件1]をみたし,極値点の候補となります.
[2] 関数$\Phi:\R^3\times\R^2\to\R$を
で定めます.このとき,
の解$(\m{x},\m{\lambda})$が極値点の候補となります(いまは$f$を与えていないのでここまで).
ラグランジュの未定乗数法の証明
それではラグランジュの未定乗数法を証明します.
[ラグランジュの未定乗数法(再掲)] 関数$f,g_1,\dots,g_k:\R^N\to\R$は全て$C^1$級であるとし,束縛条件$g_1(\m{x})=\dots=g_k(\m{x})=0$のグラフを$S$とする.
このとき,次の1,2のいずれかがが成り立つときの,点$\m{a}=\bmat{a_1\\\vdots\\a_N}$のみ$f$の$S$上の極値点となりうる.
- $\rank\brc{\displaystyle\pd{\m{g}}{x_1}(\m{a}),\dots,\pd{\m{g}}{x_N}(\m{a})}<k$となる$\m{a}\in S$が存在する.
- $\Phi(\m{x},\m{\lambda})=f(\m{x})-\m{\lambda}\cdot\m{g}(\m{x})$で定まる$\Phi:\R^N\times\R^k\to\R$に対して,$\nabla_{\m{x},\m{\lambda}}{\Phi}(\m{a},\m{\mu})=\m{0}$となる$\m{a}\in\R^N$と$\m{\mu}\in\R^k$が存在する.
ただし,$\m{\lambda}=\bmat{\lambda_1\\\vdots\\\lambda_k}$, $\m{g}=\bmat{g_1\\\vdots\\g_k}$であり,$\m{\lambda}\cdot\m{g}(\m{x})$は$\m{\lambda}$と$\m{g}(\m{x})$の通常の内積である.
1つ目の条件の行列は先ほどと少し違うように見えるかも知れませんが,任意の$i=1,\dots,N$に対して
なので,さっきと同じ行列であることが分かりますね.
点$\m{a}=\bmat{a_1\\\vdots\\a_N}$が$f$の$S$上の極値点であるとし,$\rank{\brc{\displaystyle\pd{\m{g}}{x_1}(\m{a}),\dots,\pd{\m{g}}{x_N}(\m{a})}}=k$であるとする.
このとき,$k\le N$であることに注意する.
また,$\rank{\displaystyle\brc{\pd{\m{g}}{x_1}(\m{a}),\dots,\pd{\m{g}}{x_k}(\m{a})}}=k$としても一般性を失わず,このとき逆行列$\brc{\displaystyle\pd{\m{g}}{x_1}(\m{a}),\dots,\pd{\m{g}}{x_k}(\m{a})}^{-1}$が存在する.
ここで,$\m{\mu}=\bmat{\mu_1\\\vdots\\\mu_k}$と$\Phi:\R^N\times\R^k\to\R$を
で定めると,点$\m{a}\in\R^N$, $\m{\mu}\in\R^k$が$\nabla_{\m{x},\m{\lambda}}{\Phi}(\m{a},\m{\mu})=\m{0}$を満たすことを,以下3ステップに分けて示す.
[Step 1]
$\displaystyle\pd{\Phi}{\lambda_i}(\m{a},\m{\mu})=0$ ($i=1,\dots,k$)を満たすことを示す.
$\m{a}\in S$より$g_i(\m{a})=0$ ($i=1,\dots,k$)なので
が従う.
[Step 2]
$\displaystyle\pd{\Phi}{x_i}(\m{a},\m{\mu})=0$ ($i=1,\dots,k$)を満たすことを示す.
$\Phi$と$\m{\mu}$の定義から,任意の$i=1,\dots,k$に対して
が従う.
[Step 3]
$\displaystyle\pd{\Phi}{x_i}(\m{a},\m{\mu})=0$ ($i=k+1,\dots,N$)を満たすことを示す.
$\rank{\brc{\displaystyle\pd{\m{g}}{x_1}(\m{a}),\dots,\pd{\m{g}}{x_k}(\m{a})}}=k$より陰関数定理が適用できる.
すなわち,$\m{a}$の近傍$W\times V\subset \R^N$ $(W\subset\R^k,V\subset\R^{N-k})$と,$C^1$級関数$\m{h}=\bmat{h_1\\\vdots\\h_k}:V\to W$が存在して,$\m{x}=(\m{x}’,\m{x}”)\in W\times V$とすると
かつ
をみたす.$\mu$の定義と併せると
だから,任意の$i=k+1,\dots,N$に対して,
となる.
また,$F:V\to \R$を
で定める.
$(h_1(\m{x}”),\dots,h_k(\m{x}”),\m{x}”) \in S$であり,$f$が$S$上の点$\m{a}$で極値をとるという仮定より,$F$は$V$上の点$\m{a}”$で極値をもつから,$\displaystyle\pd{F}{x_{k+1}}(\m{a}”)=\dots=\pd{F}{x_N}(\m{a}”)=0$を満たす.
よって,任意の$i=k+1,\dots,N$に対して,
が従う.
参考文献
以下は参考文献です.
解析入門
[杉浦光男 著/東京大学出版会]
解析学の教科書としては非常に有名で,理論系で解析がしっかり必要となる人は持っておいてよいテキストです.
- 第1巻で1変数の微分積分学
- 第2巻で多変数の微分積分学
を扱っています.本書に対応した演習書「解析演習」も出版されています.
本書の特徴としては
- 数学的に厳密に書かれている
- 基本的な微分積分学の知識体系は網羅されている
の2点が挙げられます.
このため,辞書的に使う教科書という位置付けて持っている人も多いようです.
なお,この記事の内容は第1巻に載っています.
微分積分学
[笠原晧司 著/サイエンス社]
微分積分学の教科書として有名な名著です.
具体例を多く扱いイメージを掴むことに重点を置きつつ,議論もきっちりしているため,大学1年生の微分積分学をしっかり学びたい人には心強い味方になると思います.
具体例のレベルは基本的なものに加えて少々難しいものも含まれているので,いろいろな具体例に触れたい人は持っておいてもよいでしょう.
このため,しっかり数学をやりたい人の微分積分学の導入としてオススメできる一冊です.
コメント
とても明快なご説明ありがとうございました。イメージがつかめず困っていたため、大変助かりました。
コメントをありがとうございます!
公式を見ても,なかなかイメージか掴みづらいものもありますよね.
お役に立てたようで良かったです!