tecktom.com

等高線とラグランジュの未定乗数法

2026年度 中3詳説2026年10月6日29分で読めます塾講師木下図形と式
目次
  1. 1. 等位線は地図の等高線
  2. 2. 最大・最小はどこで起こるか
  3. 3. 偏微分と勾配:斜面の傾きを数で表す
  4. 偏微分
  5. 一次近似
  6. 勾配
  7. 内部の点で最大・最小になる条件
  8. 4. 接する=勾配が平行:ラグランジュの未定乗数法
  9. 5. 例題で使う
  10. 6. 注意点と手順のまとめ

前の記事では、領域 RR と図形 f(x,y)=kf(x,y)=k が共有点をもつような kk の全体が、RR の上で f(x,y)f(x,y) が取る値の全体になることを確かめた。そして、等位線 f(x,y)=kf(x,y)=k が領域の頂点を通るときか境界に接するときに最大値・最小値が現れるので、両方を候補に挙げて値を比べる、と結んだ。この記事では、前の記事で答えなかった問いを二つ扱う。

  1. 境界のなめらかな部分で最大・最小になるとき、等位線がそこで境界に接するのはなぜか。
  2. 接する点を、図を描かずに計算だけで見つけるにはどうすればよいか。

二つ目の答えが、大学1年で習うラグランジュの未定乗数法である。使う道具は多項式の微分(xnx^n を微分するとnxn−1nx^{n-1}、微分係数はグラフの接線の傾き)と、図形と式で習った直線の傾き・垂直の条件だけである。ただし途中で大学の数学を前提として借りる箇所が三つあり、借りた箇所ではそう明記する(最後の節に一覧がある)。計算と図の座標はすべて計算機で照合した1Python の数式処理ライブラリ sympy で書いた検算に、偏微分・一次近似・例題と練習の答え・未定乗数 λ\lambda の値・図に描いた接点や半径を入れ、121 項目がすべて一致することを確かめた。下の脚注へ。

1. 等位線は地図の等高線

前の記事では、平面のどの点にも f(x,y)f(x,y) の値が1つずつ書き込まれていると考えた。この値を高さだと思うと、話が立体になる。平面を水平な床に置き、床の点 (x,y)(x,y) の真上に高さ f(x,y)f(x,y) の点を立てる。(x,y)(x,y) を床全体で動かすと、立てた点は空間の中に1枚の曲面を作る。これをz=f(x,y)z=f(x,y) のグラフという(高さの向きにzz 軸をとる)。1変数の関数 y=f(x)y=f(x) のグラフが曲線になるのに対し、2変数の関数のグラフは曲面になる。

この曲面を地形と見ると、前の記事の等位線 f(x,y)=kf(x,y)=k は「高さがちょうど kk の点を床に写したもの」になる。これは地図の等高線と同じものである。地図は山を真上から見た図で、標高 100 m100\,\mathrm{m}、200 m200\,\mathrm{m}、…\dots の点をそれぞれ線でつないで描く。前の記事で述べた「値の違う等位線ははじめから全部そこにある」は、地図に等高線が全部描き込まれていることにあたる。

この見方で前の記事の原理を言い直すと次のようになる。

R の上で f(x,y) の最大値を求める  ⟺  R の真上にある地形のうち、いちばん高い地点を探す\begin{gathered}R\ \text{の上で}\ f(x,y)\ \text{の最大値を求める}\\\iff R\ \text{の真上にある地形のうち、いちばん高い地点を探す}\end{gathered}

最大値は「RR と交わる等高線のうち、いちばん高いもの」の高さである。

f(x,y)=x2+y2f(x,y)=x^2+y^2 のグラフは、原点の真上が高さ 00 で、原点から離れるほど高くなるお椀の形をしている。高さ kk で水平に切った切り口は半径 k\sqrt{k} の円で、これが等高線になる(図1)。

図1(グラフ) 図1(等高線の地図)
図1:z=x2+y2z=x^2+y^2 のグラフと、それを真上から見た等高線の地図。数字は高さ kk。

等高線の地図では、外側ほど等高線の間隔が狭い(半径 1, 2, 3, 21,\ \sqrt2,\ \sqrt3,\ 2 の差は 0.41, 0.32, 0.270.41,\ 0.32,\ 0.27 と縮む)。地図と同じく、等高線が密なところは斜面が急である。お椀は外側ほど急に立ち上がっている。前の記事の問題12塾の授業で扱った問題は塾の教材なので、数値を変えた類題に差し替えています。下の脚注への f(x,y)=x+3yf(x,y)=x+3y のグラフは傾いた平らな板(斜面)で、等高線は平行な直線、kk を等間隔に選べば等高線の間隔も等しい。傾きが場所によらず一定の坂である。

2. 最大・最小はどこで起こるか

RR の点を三種類に分けて、それぞれ最大値を与えうるかを考える。RR は円や多角形のように、なめらかな曲線や線分で囲まれた範囲とする。

内部の点で最大になるには、そこが周囲のどこより高い「山頂」か、平らな場所でなければならない。少しでも上り坂の向きがあれば、その向きに動けば高くなるからである。f(x,y)=x+3yf(x,y)=x+3y の斜面にはどこにも山頂がないので、最大値は必ず境界でとる。前の記事の問題1で最大値が三角形の頂点に現れたのはこのためである。

境界のなめらかな部分の点では、等高線が境界と交わるか接するかで話が分かれる。図2は、円板 x2+y2≦1x^2+y^2\leqq1 を RR、f(x,y)=yf(x,y)=y(北へ行くほど高い斜面)としたものである。等高線は水平な直線 y=ky=k になる。

図2
図2:等高線 y=12y=\tfrac12 は円と点 Q で交わり、y=1y=1 は点 P で接する。

点 Q では等高線 y=12y=\tfrac12 が円を横切っている。円に沿って Q から反時計回りに動くと等高線の上側に入って値が増え、時計回りに動くと下側に入って値が減る。円周上の点は RR の点なので、Q より値の大きい RR の点がQ のすぐ隣にあり、Q は最大値を与えない。同じ理由で最小値も与えない。一方、点 P では等高線 y=1y=1 が円に接していて、円に沿ってどちらへ動いても等高線の下側に入る。円の上での yy の最大値 11 は P でとる。

境界のなめらかな部分で最大・最小になる点

境界のなめらかな部分の点で ff が最大(または最小)になるなら、その点を通る等高線は境界に接している。

角の点ではこの議論が使えない。境界が折れ曲がっているので、等高線が境界を横切っていても、境界に沿って動ける向きが両方とも下りになることがある。前の記事の問題1の頂点 (1,2)(1,2) がその例である。だから角の点は、接するかどうかに関係なく候補に入れる。

以上で「頂点か接点を候補にする」という前の記事の結論の理由が分かった。ただし「交わるなら片側で値が増える」と書いたとき、等高線のすぐ上側で値が kk より大きいことを当然としていた。山頂や峠のように斜面が平らになる所ではこれが成り立たない。この点を正確に扱い、さらに接点を計算で求めるために、斜面の傾きを数で表す道具を用意する。

3. 偏微分と勾配:斜面の傾きを数で表す

偏微分

f(x,y)f(x,y) の文字 yy を定数とみなし、xx だけの関数として微分したものを、ff のxx についての偏微分といいfxf_x と書く。同じように xx を定数とみなして yy で微分したものを fyf_y と書く。大学の本では∂f∂x\dfrac{\partial f}{\partial x}、∂f∂y\dfrac{\partial f}{\partial y} とも書き、∂\partial は「ラウンド」や「デル」と読む。「偏」は、変数が二つあるうちの片方に偏って微分する、という意味である。

偏微分の計算

f(x,y)=x2+3xy+y3f(x,y)=x^2+3xy+y^3 のとき、yy を定数とみると 3xy3xy は「3y3y 倍の xx」、y3y^3 は定数なので

fx=2x+3y,fy=3x+3y2.f_x=2x+3y,\qquad f_y=3x+3y^2.

f(x,y)=x2+y2f(x,y)=x^2+y^2 なら fx=2xf_x=2x、fy=2yf_y=2y。f(x,y)=x+3yf(x,y)=x+3y なら fx=1f_x=1、fy=3f_y=3。

fxf_x の意味は、1変数のときの微分係数と同じく傾きである。点 (a,b)(a,b) から yy を変えずに xx の正の向き(東)へ進むとき、地形の断面はxx だけの関数 f(x,b)f(x,b) のグラフになり、その接線の傾きが fx(a,b)f_x(a,b) である。fy(a,b)f_y(a,b) は北へ進むときの傾きである。

一次近似

東でも北でもない向きに進むときの高さの変化は、fxf_x と fyf_y から組み立てられる。ff が多項式なら、次が成り立つ。

一次近似(多項式の場合)

点 (a,b)(a,b) から (a+h, b+k)(a+h,\ b+k) へ動くとき

f(a+h, b+k)=f(a,b)+fx(a,b) h+fy(a,b) k+(h, k について2次以上の項).f(a+h,\ b+k)=f(a,b)+f_x(a,b)\,h+f_y(a,b)\,k+\bigl(h,\,k\text{ について2次以上の項}\bigr).

理由.  多項式は xmynx^my^n の形の項の和なので、1つの項 xmynx^my^n で確かめればよい。二項定理で展開すると

(a+h)m(b+k)n=(am+mam−1h+⋯ )(bn+nbn−1k+⋯ )=ambn+mam−1bn h+nambn−1 k+⋯\begin{aligned}(a+h)^m(b+k)^n&=\bigl(a^m+ma^{m-1}h+\cdots\bigr)\bigl(b^n+nb^{n-1}k+\cdots\bigr)\\&=a^mb^n+ma^{m-1}b^n\,h+na^mb^{n-1}\,k+\cdots\end{aligned}

で、「⋯\cdots」は h2, hk, k2h^2,\ hk,\ k^2 以上の項である。h, kh,\,k の1次の係数 mam−1bnma^{m-1}b^n と nambn−1na^mb^{n-1} は、xmynx^my^n の偏微分 mxm−1ynmx^{m-1}y^n、nxmyn−1nx^my^{n-1} に (a,b)(a,b) を代入したものにちょうど一致する。■\blacksquare

たとえば f(x,y)=x2+3xy+y3f(x,y)=x^2+3xy+y^3 を (1,1)(1,1) のまわりで展開すると

f(1+h, 1+k)=5+5h+6k+(h2+3hk+3k2+k3)f(1+h,\ 1+k)=5+5h+6k+\bigl(h^2+3hk+3k^2+k^3\bigr)

で、f(1,1)=5f(1,1)=5、fx(1,1)=5f_x(1,1)=5、fy(1,1)=6f_y(1,1)=6 が確かに並ぶ。h=0.01h=0.01、k=0.02k=0.02 とすると、1次の部分は5h+6k=0.175h+6k=0.17、かっこの中は 0.0019080.001908 で、実際の変化 0.1719080.171908 のほとんどを1次の部分が占める。h, kh,\,k が小さいほど2次以上の項は1次の部分に比べて小さくなるので、短い移動では

(高さの変化)≒fx h+fy k(\text{高さの変化})\fallingdotseq f_x\,h+f_y\,k

と考えてよい。「小さくなる」をきちんと述べるには極限の言葉が必要で、それは大学で扱う(借りる箇所その1)。多項式でない関数でも、なめらかなら同じ式が成り立つことも大学で示す。

勾配

二つの偏微分を組にした矢印 (fx, fy)(f_x,\ f_y) を、ff の勾配といい ∇f\nabla f と書く(∇\nabla は「ナブラ」と読む。grad f\mathrm{grad}\,f とも書く)。点ごとに矢印が1本決まり、点 (a,b)(a,b) での勾配は、始点を (a,b)(a,b) に置いてxx 方向に fx(a,b)f_x(a,b)、yy 方向に fy(a,b)f_y(a,b) だけ進んだ点を終点とする矢印である。勾配には次の三つの性質がある。

勾配の性質(∇f≠(0,0)\nabla f\neq(0,0) の点で)

  1. 勾配は、その点を通る等高線に垂直である。
  2. 勾配の向きに少し進むと、ff の値は増える。逆向きに進むと減る。
  3. 同じ距離だけ進むとき、値がいちばん大きく増えるのは勾配の向きで、勾配の長さ fx 2+fy 2\sqrt{f_x^{\,2}+f_y^{\,2}} が斜面の急さを表す。

1の理由.  等高線に沿って (h,k)(h,k) だけ動いても高さは変わらないので、一次近似から fx h+fy k≒0f_x\,h+f_y\,k\fallingdotseq0 である。等高線の向きは、短い移動 (h,k)(h,k) を限りなく短くしたときの向きなので、fx h+fy k=0f_x\,h+f_y\,k=0 を満たす。一方、向き (h,k)(h,k) と向き (p,q)(p,q) について、傾き kh\dfrac{k}{h} と qp\dfrac{q}{p} の積が −1-1 になる条件を分母を払って書き直すと ph+qk=0ph+qk=0 になる(h=0h=0 や p=0p=0 のときも、垂直の条件はこの形のまま成り立つ)。(p,q)=(fx,fy)(p,q)=(f_x,f_y) とおけば、等高線の向きと勾配が垂直であることが分かる。

2の理由.  勾配の向きに (h,k)=(tfx, tfy)(h,k)=(t f_x,\ t f_y)(tt は小さい正の数)だけ進むと、変化はfx⋅tfx+fy⋅tfy=t(fx 2+fy 2)>0f_x\cdot tf_x+f_y\cdot tf_y=t\bigl(f_x^{\,2}+f_y^{\,2}\bigr)>0 である。

3の理由.  長さ rr の移動(h2+k2=r2h^2+k^2=r^2)での変化 fx h+fy kf_x\,h+f_y\,k を、コーシー=シュワルツの不等式で上から抑える。恒等式

(fx 2+fy 2)(h2+k2)−(fx h+fy k)2=(fx k−fy h)2≧0\bigl(f_x^{\,2}+f_y^{\,2}\bigr)\bigl(h^2+k^2\bigr)-\bigl(f_x\,h+f_y\,k\bigr)^2=\bigl(f_x\,k-f_y\,h\bigr)^2\geqq0

から fx h+fy k≦fx 2+fy 2  rf_x\,h+f_y\,k\leqq\sqrt{f_x^{\,2}+f_y^{\,2}}\;r で、等号は fx k=fy hf_x\,k=f_y\,h、つまり (h,k)(h,k) が勾配と同じ向きのときに限る。だから同じ距離なら勾配の向きがいちばん上り、その上り幅は勾配の長さに比例する。■\blacksquare

図3
図3:f(x,y)=x2+y2f(x,y)=x^2+y^2 の等高線(高さ 1,2,3,41,2,3,4)と勾配 ∇f=(2x, 2y)\nabla f=(2x,\,2y)。矢印は長さを 14\tfrac14 に縮めて描いた。

図3で、勾配はどれも原点から外へ向かい(上り坂の向き)、円の等高線に垂直である。外側の円の上の矢印は内側の2倍の長さで、等高線が外ほど密になっていることと対応している。

内部の点で最大・最小になる条件

勾配の性質2から、RR の内部の点で ∇f≠(0,0)\nabla f\neq(0,0) なら、勾配の向きへ進めば値が増え、逆へ進めば減る。内部の点はどの向きにも少し動けるので、そこは最大にも最小にもならない。

内部の点の条件

RR の内部の点で ff が最大(または最小)になるなら、そこで fx=0f_x=0 かつ fy=0f_y=0、つまり ∇f=(0,0)\nabla f=(0,0)。

これは1変数の「極値をとる点では f′(x)=0f'(x)=0」の2変数版である。逆は成り立たない。f(x,y)=xyf(x,y)=xy では fx=yf_x=y、fy=xf_y=x なので原点で ∇f=(0,0)\nabla f=(0,0) になるが、直線 y=xy=x に沿えば f=x2≧0f=x^2\geqq0、直線 y=−xy=-x に沿えば f=−x2≦0f=-x^2\leqq0 で、原点はある向きには谷底、別の向きには尾根になっている。山道の峠と同じ形で、数学では鞍点(馬の鞍の形)という。

4. 接する=勾配が平行:ラグランジュの未定乗数法

境界の話に戻る。境界のなめらかな部分が、ある多項式 gg を使って方程式 g(x,y)=0g(x,y)=0 で表されているとし、この曲線を CC とよぶ。円 x2+y2=1x^2+y^2=1 なら g(x,y)=x2+y2−1g(x,y)=x^2+y^2-1、直線 3x+4y=123x+4y=12 なら g(x,y)=3x+4y−12g(x,y)=3x+4y-12 である。

CC は「gg の高さが 00 の等高線」でもある。だから勾配の性質1を gg に使うと、∇g\nabla g は CC に垂直である。一方、CC 上の点 P で ff が最大になるなら、第2節により P を通る ff の等高線は CC に接する。接するとは、P で二つの曲線が同じ接線をもつことである。∇f\nabla f は ff の等高線に垂直、∇g\nabla g は CC に垂直で、二つの曲線の接線が共通なので、∇f\nabla f と ∇g\nabla g はどちらも同じ直線に垂直になり、互いに平行になる。これを式で書いたものが次の定理である。

ラグランジュの未定乗数法

曲線 C: g(x,y)=0C:\ g(x,y)=0 の上で f(x,y)f(x,y) が点 P において最大(または最小)になり、P で ∇g≠(0,0)\nabla g\neq(0,0) ならば、ある実数 λ\lambda があって

fx=λ gx,fy=λ gy(P での値)f_x=\lambda\,g_x,\qquad f_y=\lambda\,g_y\qquad(\text{P での値})

が成り立つ。λ\lambda(ラムダ)をラグランジュの未定乗数という。

理由.  P での CC の接線の向きを (h,k)(h,k) とする。勾配の性質1を gg に使って gx h+gy k=0g_x\,h+g_y\,k=0 である。もし fx h+fy k≠0f_x\,h+f_y\,k\neq0なら、CC に沿って P から接線の向きへ少し進むと、一次近似により ff の値は fx h+fy kf_x\,h+f_y\,k に比例して変わり、逆向きに進むと反対に変わる。どちらか一方は値が増えるので P は最大値を与えない。よって最大値(最小値)を与える P ではfx h+fy k=0f_x\,h+f_y\,k=0 で、∇f\nabla f も ∇g\nabla g も向き (h,k)(h,k) に垂直である。∇g≠(0,0)\nabla g\neq(0,0) なので、(h,k)(h,k) に垂直な矢印は ∇g\nabla g の何倍かとして表せる。その倍率が λ\lambda である。■\blacksquare

この理由のなかで、「∇g≠(0,0)\nabla g\neq(0,0) の点の近くでは、CC は途切れずに続くなめらかな曲線で、接線の向きに沿ってたどれる」ことと、「接線そのものでなく曲線に沿って進んでも、値の変化は一次近似で読める」ことを当然としている。前者は陰関数定理という大学の定理で保証される(借りる箇所その2)。

使うときは、未知数 x, y, λx,\ y,\ \lambda についての3本の方程式

fx=λ gx,fy=λ gy,g(x,y)=0f_x=\lambda\,g_x,\qquad f_y=\lambda\,g_y,\qquad g(x,y)=0

を連立して解く。λ\lambda は最後の答えには現れない補助の未知数で、「乗数」は ∇g\nabla g に掛ける数の意味、「未定」は前もって分からない数の意味である。L(x,y,λ)=f(x,y)−λ g(x,y)L(x,y,\lambda)=f(x,y)-\lambda\,g(x,y) とおくと、上の3本はLL を x, y, λx,\ y,\ \lambda のそれぞれで偏微分して 00 とおいた式になるので、大学の本ではこの形で書くことも多い。

絵との対応を確かめておく。前の記事で「等位線を動かして、境界に接するところを探す」と言っていた操作を、∇f\nabla f と ∇g\nabla g が平行になる点を探す計算に置き換えたものが未定乗数法である。

5. 例題で使う

例1 オリジナル

x2+y2=1x^2+y^2=1 のとき、3x+4y3x+4y の最大値と最小値を求めよ。

解.  f=3x+4yf=3x+4y、g=x2+y2−1g=x^2+y^2-1 とおく。∇f=(3,4)\nabla f=(3,4)、∇g=(2x,2y)\nabla g=(2x,2y) なので、方程式は

3=2λx,4=2λy,x2+y2=1.3=2\lambda x,\qquad 4=2\lambda y,\qquad x^2+y^2=1.

λ=0\lambda=0 だと 3=03=0 になるので λ≠0\lambda\neq0。x=32λx=\dfrac{3}{2\lambda}、y=2λy=\dfrac{2}{\lambda} を3本目に入れると254λ2=1\dfrac{25}{4\lambda^2}=1、λ=±52\lambda=\pm\dfrac52。

  • λ=52\lambda=\dfrac52 のとき (x,y)=(35, 45)(x,y)=\left(\dfrac35,\ \dfrac45\right)、3x+4y=53x+4y=5。
  • λ=−52\lambda=-\dfrac52 のとき (x,y)=(−35, −45)(x,y)=\left(-\dfrac35,\ -\dfrac45\right)、3x+4y=−53x+4y=-5。

円周には角がなく、どの点でも ∇g≠(0,0)\nabla g\neq(0,0)(∇g=(0,0)\nabla g=(0,0) は原点だけで、原点は円周上にない)。円周のように閉じていて有界な図形の上では、多項式は必ず最大値と最小値をもつ(借りる箇所その3)。それらは上の候補のどれかでとるので、最大値 55(x=35, y=45x=\frac35,\ y=\frac45)、最小値 −5-5(x=−35, y=−45x=-\frac35,\ y=-\frac45)。

図4
図4:例1。直線は等高線 3x+4y=k3x+4y=k(k=−5, −2.5, 0, 2.5, 5k=-5,\,-2.5,\,0,\,2.5,\,5)。黒い矢印が ∇f\nabla f、灰の太い矢印が ∇g\nabla g。
接点 P では二つが平行、等高線が円を横切る点 Q では平行でない。

例1は、ほかに二通りの解き方がある。どちらも中学・高校の範囲で解け、未定乗数法と同じ構造が見える。

次の2題は前の記事の問題1・2の解き直しである。領域の端(境界と頂点)を候補として全部調べ、前の記事と同じ答えになることを確かめる。

例2(前の記事の問題1)

f(x,y)=x+3yf(x,y)=x+3y、RR は頂点 (1,2)(1,2)、(2,−1)(2,-1)、(−2,0)(-2,0) の三角形(周と内部)。ff の最大値と最小値を求めよ。

内部.  ∇f=(1,3)\nabla f=(1,3) はどこでも (0,0)(0,0) でないので、内部の点は候補にならない。

辺.  三つの辺はそれぞれ直線 3x+y=53x+y=5、x+4y=−2x+4y=-2、2x−3y=−42x-3y=-4 の上にある。直線 ax+by=cax+by=c を g=ax+by−cg=ax+by-c と表すと ∇g=(a,b)\nabla g=(a,b) で、∇f=λ∇g\nabla f=\lambda\nabla g は (1,3)(1,3) と (a,b)(a,b) が平行であることを意味する。(3,1)(3,1)、(1,4)(1,4)、(2,−3)(2,-3) はどれも (1,3)(1,3) と平行でない(b−3a≠0b-3a\neq0)ので、辺の途中の点も候補にならない。

頂点.  残る候補は頂点だけで、f(1,2)=7f(1,2)=7、f(2,−1)=−1f(2,-1)=-1、f(−2,0)=−2f(-2,0)=-2。

よって最大値 77、最小値 −2-2。前の記事の答え(−2≦k≦7-2\leqq k\leqq7)と一致する。

もし三角形の辺の1本が等高線と平行(∇g\nabla g が (1,3)(1,3) と平行)なら、その辺の上では ff が一定で、辺の点がすべて未定乗数法の解になる。その場合も辺の両端(頂点)で同じ値をとるので、頂点を比べれば答えは出る。

例3(前の記事の問題2)

f(x,y)=x2+y2f(x,y)=x^2+y^2、RR は頂点 O(0,0)\mathrm{O}(0,0)、A(6,0)\mathrm{A}(6,0)、B(0,3)\mathrm{B}(0,3) の三角形(周と内部)。ff の最大値と最小値を求めよ。

内部.  ∇f=(2x,2y)=(0,0)\nabla f=(2x,2y)=(0,0) となるのは原点だけで、原点は頂点 O なので内部の候補はない。

辺 OA と OB.  辺 OA の上では y=0y=0 なので f=x2f=x^2(0≦x≦60\leqq x\leqq6)、辺 OB の上では f=y2f=y^2(0≦y≦30\leqq y\leqq3)。どちらも端点の外に候補はない。

辺 AB.  辺 AB は直線 x+2y=6x+2y=6 の上にある。g=x+2y−6g=x+2y-6 として

2x=λ,2y=2λ,x+2y=6.2x=\lambda,\qquad 2y=2\lambda,\qquad x+2y=6.

x=λ2x=\dfrac{\lambda}{2}、y=λy=\lambda を3本目に入れると 5λ2=6\dfrac{5\lambda}{2}=6、λ=125\lambda=\dfrac{12}{5} で、点 P(65, 125)\mathrm{P}\left(\dfrac{6}{5},\ \dfrac{12}{5}\right) を得る。0<65<60<\dfrac{6}{5}<6 なので P は辺 AB の途中にあり、f(P)=365=7.2f(\mathrm{P})=\dfrac{36}{5}=7.2。

頂点.  f(O)=0f(\mathrm{O})=0、f(A)=36f(\mathrm{A})=36、f(B)=9f(\mathrm{B})=9。

候補の値 0, 36, 9, 7.20,\ 36,\ 9,\ 7.2 を比べて、最大値 3636(A)、最小値 00(O)。前の記事の答え(0≦k≦360\leqq k\leqq36)と一致する。

図5
図5:例3。等高線は半径 65, 3, 6\frac{6}{\sqrt5},\ 3,\ 6 の円(高さ 365, 9, 36\frac{36}{5},\ 9,\ 36)。半径 65\frac{6}{\sqrt5} の円は辺 AB に P で接する。

例3の点 P は、辺 AB の上だけで見れば ff の最小値を与える点である(P は原点から辺 AB に下ろした垂線の足で、原点からの距離は 65\frac{6}{\sqrt5})。しかし三角形全体で見ると、P の値 7.27.2 は最大値でも最小値でもない。未定乗数法が出すのは候補であって答えではなく、内部・辺・頂点の候補を全部並べて比べる手順が必要になる。

例4 オリジナル

x2+y2≦2x^2+y^2\leqq2 のとき、xyxy の最大値と最小値を求めよ。

内部.  ∇f=(y,x)=(0,0)\nabla f=(y,x)=(0,0) より原点 (0,0)(0,0) が候補で、値は 00。

境界.  境界は円 x2+y2=2x^2+y^2=2 で角がない。g=x2+y2−2g=x^2+y^2-2 として

y=2λx,x=2λy,x2+y2=2.y=2\lambda x,\qquad x=2\lambda y,\qquad x^2+y^2=2.

1本目を2本目に入れると x=4λ2xx=4\lambda^2x。x=0x=0 なら1本目から y=0y=0 で、これは円の上にないので x≠0x\neq0、4λ2=14\lambda^2=1、λ=±12\lambda=\pm\frac12。λ=12\lambda=\frac12 なら y=xy=x で (1,1)(1,1)、(−1,−1)(-1,-1)、値はどちらも 11。λ=−12\lambda=-\frac12 なら y=−xy=-x で(1,−1)(1,-1)、(−1,1)(-1,1)、値はどちらも −1-1。

候補の値 0, 1, −10,\ 1,\ -1 を比べて、最大値 11、最小値 −1-1。

図6
図6:例4。等高線 xy=kxy=k は双曲線。k=±1k=\pm1 の双曲線は円に4点 (±1,±1)(\pm1,\pm1) で接し、k=±0.4k=\pm0.4 の双曲線(灰)は円を横切る。

例4の原点は ∇f=(0,0)\nabla f=(0,0) を満たすが、第3節で見た峠(鞍点)なので最大でも最小でもない。ここでも候補の中に答えでないものが混ざっている。なお例4は x2+y2≧2∣xy∣x^2+y^2\geqq2|xy|((x±y)2≧0(x\pm y)^2\geqq0 から出る)を使えば ∣xy∣≦1|xy|\leqq1 がすぐ出る。相加平均と相乗平均の関係を使う問題も、同じように未定乗数法で解き直せる。

例5 オリジナル

x>0x>0、y>0y>0、xy=4xy=4 のとき、x+yx+y の最小値を求めよ。

解.  g=xy−4g=xy-4 として 1=λy1=\lambda y、1=λx1=\lambda x、xy=4xy=4。前の2本から x=y=1λx=y=\dfrac1\lambda で、x,y>0x,y>0 と3本目からx=y=2x=y=2(λ=12\lambda=\frac12)。候補はこの1点で、値は 44。

相加平均と相乗平均の関係 x+y≧2xy=4x+y\geqq2\sqrt{xy}=4(等号は x=y=2x=y=2)からも同じ答え 最小値 44 が出る。

例5では、未定乗数法の候補が1つだけ出て、それが最小値だった。しかしこの1点が最大か最小かは未定乗数法からは分からない。実際、曲線 xy=4xy=4(x>0x>0)は xx をいくらでも大きくできる有界でない曲線で、x+yx+y はいくらでも大きくなるので最大値は存在しない。例1のような「閉じていて有界な図形なら最大値・最小値が必ずある」という保証が無いとき、候補が最小値であることは相加相乗のような別の議論で確かめる必要がある。

λ\lambda の意味:条件を少し緩めたときの増え方

λ\lambda は補助の未知数として導入したが、値そのものにも意味がある。例1の条件を x2+y2=cx^2+y^2=c に変えると、同じ計算で最大値は 5c5\sqrt{c} になる。c=1+εc=1+\varepsilon(ε\varepsilon は小さい数)とすると、(1+ε2)2=1+ε+ε24(1+\frac{\varepsilon}{2})^2=1+\varepsilon+\frac{\varepsilon^2}{4}から 1+ε≒1+ε2\sqrt{1+\varepsilon}\fallingdotseq1+\frac{\varepsilon}{2} なので、最大値は 5+52ε5+\frac52\varepsilon くらいになる。条件の右辺を ε\varepsilon だけ増やすと、最大値はその 52\frac52 倍だけ増える。この 52\frac52 が例1の λ\lambda と一致する。例5でも、xy=4+εxy=4+\varepsilon のときの最小値は 24+ε≒4+12ε2\sqrt{4+\varepsilon}\fallingdotseq4+\frac12\varepsilon で、増え方 12\frac12 がλ\lambda に一致する。経済学では、予算や資源の制約を表す gg について λ\lambda を「影の価格」とよび、制約を1単位緩めたら目的の量がどれだけ増えるかを表す数として使う。

6. 注意点と手順のまとめ

領域 RR での最大・最小を求める手順

  1. 内部:fx=0, fy=0f_x=0,\ f_y=0 を満たす点を候補にする。
  2. 境界のなめらかな部分(g=0g=0 で ∇g≠(0,0)\nabla g\neq(0,0)):fx=λgx, fy=λgy, g=0f_x=\lambda g_x,\ f_y=\lambda g_y,\ g=0 の解を候補にする。
  3. そのほかの点:多角形の頂点、境界の線分の端、∇g=(0,0)\nabla g=(0,0) になる境界の点をすべて候補にする。
  4. 候補での ff の値を比べ、いちばん大きいものが最大値、いちばん小さいものが最小値。ただし RR が閉じていて有界であることを確かめておく(そうでなければ最大値・最小値が存在しないことがある)。

この手順の1と2は必要条件にすぎない。最大・最小になる点は候補の中に必ずあるが、候補がすべて最大・最小になるわけではない(例3の P、例4の原点)。だから手順4で値を比べる。

手順3の「∇g=(0,0)\nabla g=(0,0) になる点」を候補に入れ忘れると、答えの点が候補に入らないことがある。曲線 y2=x3y^2=x^3 の上で f=xf=x の最小値を考える。曲線の点は(t2, t3)(t^2,\ t^3) と書けるので x=t2≧0x=t^2\geqq0 で、最小値は原点での 00 である。ところが g=y2−x3g=y^2-x^3 として未定乗数法の式を立てると

1=λ⋅(−3x2),0=λ⋅2y,y2=x3\begin{aligned}&1=\lambda\cdot(-3x^2),\quad 0=\lambda\cdot2y,\quad y^2=x^3\end{aligned}

で、2本目から λ=0\lambda=0 か y=0y=0。λ=0\lambda=0 なら1本目が 1=01=0、y=0y=0 なら3本目から x=0x=0 で1本目が 1=01=0 になり、解は1つもない。原点では ∇g=(−3x2, 2y)=(0,0)\nabla g=(-3x^2,\ 2y)=(0,0) で、曲線はそこで折り返すようにとがっていて、なめらかでない。この点は多角形の頂点と同じく、未定乗数法の前提(∇g≠(0,0)\nabla g\neq(0,0))から外れるので、別に候補に入れる必要がある。

この記事が証明せずに使ったこと

  1. 一次近似の誤差が小さいこと(第3節)。h, kh,\,k を 00 に近づけると、2次以上の項が1次の部分よりずっと速く00 に近づくこと。多項式なら展開の形から見当はつくが、正確に述べるには極限の定義が必要になる。
  2. 陰関数定理(第4節)。∇g≠(0,0)\nabla g\neq(0,0) の点の近くで、g=0g=0 が途切れないなめらかな曲線になり、接線の向きに沿ってたどれること。
  3. 最大値・最小値の定理(第5節)。閉じていて有界な範囲の上で、連続な関数は最大値と最小値をもつこと。証明には実数の連続性(数直線に隙間がないこと)を使う。

三つとも大学1年の微分積分で証明する。また、ここでは2変数1条件だけを扱ったが、変数が3個以上・条件が2本以上でも、「∇f\nabla f が条件の勾配たちの組み合わせになる」という同じ形の定理が成り立つ。

練習 オリジナル

  1. (1) x+y=1x+y=1 のとき、x2+y2x^2+y^2 の最小値を未定乗数法で求めよ。また、最大値がないことを説明せよ。
  2. (2) x2+y2≦1x^2+y^2\leqq1 のとき、f(x,y)=x2+2y2−xf(x,y)=x^2+2y^2-x の最大値と最小値を求めよ。

練習の答え

(1)  g=x+y−1g=x+y-1 として 2x=λ2x=\lambda、2y=λ2y=\lambda、x+y=1x+y=1。x=y=12x=y=\frac12(λ=1\lambda=1)で値は 12\frac12。前の記事の方法で見ると、等高線 x2+y2=kx^2+y^2=k は半径 k\sqrt{k} の円で、直線 x+y=1x+y=1 に接するのは半径が原点と直線の距離12\frac{1}{\sqrt2} のとき、つまり k=12k=\frac12 のときである。最小値 12\frac12。直線は有界でなく、(x,y)=(t, 1−t)(x,y)=(t,\ 1-t) で tt を大きくすれば x2+y2x^2+y^2 はいくらでも大きくなるので、最大値はない。

(2)  内部:fx=2x−1=0f_x=2x-1=0、fy=4y=0f_y=4y=0 より (12, 0)\left(\frac12,\ 0\right)、値 −14-\frac14。
境界:g=x2+y2−1g=x^2+y^2-1 として 2x−1=2λx2x-1=2\lambda x、4y=2λy4y=2\lambda y、x2+y2=1x^2+y^2=1。2本目から y=0y=0 か λ=2\lambda=2。

  • y=0y=0 のとき x=±1x=\pm1。f(1,0)=0f(1,0)=0(λ=12\lambda=\frac12)、f(−1,0)=2f(-1,0)=2(λ=32\lambda=\frac32)。
  • λ=2\lambda=2 のとき 2x−1=4x2x-1=4x より x=−12x=-\frac12、y=±32y=\pm\frac{\sqrt3}{2}。値はどちらも 14+32+12=94\frac14+\frac32+\frac12=\frac94。

円板は閉じていて有界で、境界の円には角がない。候補の値 −14, 0, 2, 94-\frac14,\ 0,\ 2,\ \frac94 を比べて、最大値 94\frac94(x=−12, y=±32x=-\frac12,\ y=\pm\frac{\sqrt3}{2})、最小値 −14-\frac14(x=12, y=0x=\frac12,\ y=0)。最小値は内部の候補、最大値は境界の候補で、両方を調べないと答えが出ない。検算として、円の上では y2=1−x2y^2=1-x^2 なので f=2−x2−xf=2-x^2-x(−1≦x≦1-1\leqq x\leqq1)となり、この2次関数の最大値 94\frac94(x=−12x=-\frac12)・最小値 00(x=1x=1)が境界の候補と一致する。

1 Python の数式処理ライブラリ sympy で書いた検算に、偏微分・一次近似・例題と練習の答え・未定乗数 λ\lambda の値・図に描いた接点や半径を入れ、121 項目がすべて一致することを確かめた。

2 塾の授業で扱った問題は塾の教材なので、数値を変えた類題に差し替えています。

塾の授業で配った補足資料をもとに、問題を類題に差し替えて書き直しました。

← 塾講師木下の記事一覧へ