HOME .二変数[(1),(2)] 2.三変数一条件式二条件式] 3.多変数因関数未定乗数] 4.例題123] 5.文献

多変数関数の極値とラグランジュの未定乗数法

変分法におけるラグランジュの未定乗数法を解りやすく説明します。統計力学では必須の手法です。

1.二変数関数の条件つき極値

簡単に説明するために、まず二変数の関数f(x,y)を取り上げます。

)因関数定理による解法

.理論

 変数x,yが

なる関係式[これを条件式と言う]で制約されているときに、関数f(x,y)の極値を求める問題を考える。

 今、点0=(x0,y0においてf(x0,y0が、極値f(x0,y0)=α0を取ると仮定する。さらに、P0において(∂φ/∂x)、(∂φ/∂y)のうち少なくとも1つ以上が0でないとする。[すべてがゼロなら後で説明する勾配ベクトルが定義できない特異点になってしまう]。
 例えば点P0=(x0,y0)において(∂φ/∂x)≠0とすれば、因関数の存在定理により(1)からP0の近傍で

となる。
 これをf(x,y)に代入すれば、ここでの問題は

の様な一つの変数の関数F(y)の極値を求めることと同じです。その極値の必要条件は

であるが、与えられた関数f、φでもって(3)式を変形すると

を得る。

 つまり、f(x,y)が極値を取る点P0=(x0,y0)は(1)式と(4)式を同時に満足する点です。(1)式と(4)式を連立させて解いて極値をとる点(x0,y0)を求め、これをf(x,y)に代入すれば極値の値f(x0,y0)=α0が求まる。

補足説明1
 (4)式は極値を取るための必要条件ではあるが、十分条件ではない。この条件式だけでは点P0=(x0,y0)は停留点(例えばf(x)=x3のx0=0の点)であったり鞍点(例えばf(x)=xyのx0=0,y0=0の点)の様なものである可能性がある。
 その簡単な例が1.(1)3.の具体例の図で示す点(−1,0)です。

補足説明2
 上記(4)式は行列式で表すと

と書ける。この形は変数の数が増えたときには、特に見通しが良い形式です。
 (4’)式二変数・一条件式の場合ですが、三変数・二条件式の場合が、2.(2)3.[補足説明2](9)式で、n変数・p条件式の場合が、3.(1)(10)式です。

 

.具体例

 前節の説明だけでは何のことか解らないので例を用いて説明する。

 φ(x,y)=0として2−2y−1=0を考える。この制約条件の下で関数f(x,y)=−(x−1)2−(y−2)2の極値α0と極値を取る点(x0,y0を求める。

 この例について前節の(1)式(4)式を計算すると

が得られる。これらを(1’)に代入するとf(x,y)が極値を取る点P0の座標(x0,y0)として

が得られる。
 これらの座標値をf(x,y)に代入すると、それらの点(x0,y0)での極値α0=−1.25または停留値−8が得られる。

 

.具体例の幾何学的解釈

 解りやすく説明するために、2変数で構成されるx,y平面に垂直なz軸を取り、三次元座標上で幾何学的に考える。条件式 x2−2y−1=0 → y=0.5x2−0.5 と 関数 f(x,y)≡z=−(x−1)2−(y−2)2 のグラフを書くと下図のようになる。

 ここで条件式y=x2−0.5はz=0の(x,y)平面上の二次関数の曲線を表し、関数z≡f(x,y)は三次元(x,y,z)空間内の一つの曲面を表す。
 条件式の制約φ(x,y)=0の下で関数f(x,y)の極値を求める問題は、xy平面上の曲線y=0.5x2−0.5を曲面z=−(x−1)2−(y−2)2上に射影したときの軌跡(図中の青線)に沿って点(x,y,z)を動かしたときにf(x,y)≡zが極値を取るところを探すことと同じです。

 これを条件式 y=0.5x2−0.5曲線と曲面 z=−(x−1)2−(y−2)2等高線の関係で示すと、極値をとる座標点(x0,y0)を探す問題とは下図の様に曲面z≡f(x,y)の等高線がφ(x,y)=0の曲線に接する点を探すことと同じです。

 接点において関数f(x,y)が条件式φ(x,y)=0の制限の下で極値を取ることは、等高線の意味を考えると明らかです。
 前項の例では、点(2,1.5)において等高線が条件式曲線に接しており、且つその近傍では等高線は条件式曲線を境にして同一側にあるので極大点(このばあい最大点となる。一方、点(-1,0)では等高線が条件式曲線に接してはいるが、その近傍で等高線は条件式曲線の一方側から他方側へ変化しているので停留点となる。

 

HOME 二変数(1),(2)] 2.三変数一条件式二条件式] 3.多変数因関数未定乗数] 4.例題123] 5.文献

(2)ラグランジュの未定乗数法

.曲面の等高線と勾配ベクトル

 前節1.(1)3.の図を検討すると前節1.(1)1.で得られた(4)式の意味が明らかになる。
 三次元の曲面z=f(x,y)=−(x−1)2−(y−2)2

に対して

の様な全微分が定義できる。このとき

完全微分方程式と言うが、その意味はdzがゼロになる方向(dx,dy)が存在し、その方向の軌跡を定めるものです。すなわち曲面z=f(x,y)等高線を定める方程式です。そして(dx,dy)は等高線に沿った微少線分を意味する。
[この当たりは別稿「絶対温度とは何か(積分因子とは何か)」5.(2)3.で説明した。]

 このとき、(∂f/∂x,∂f/∂y)は二次元ベクトルの成分表示と見なせる。そして

は二つのベクトル(dx,dy)と(∂f/∂x,∂f/∂y)が等高線を記した二次元平面上で直交している事を表す。なぜなら、成分表示した二つのベクトルの内積がゼロなら二つのベクトルが直交しているからです。
[このことは、別稿「ベクトルの内積と外積の成分表示」1.(5)1.で説明した。]

 このとき(∂f/∂x,∂f/∂y)は曲面z≡f(x,y)の点(x,y)における勾配を表すベクトルとなる。これはベクトル解析で言うところの、スカラー関数f(x,y)のgrad f =∇f のことであり、勾配を表すベクトル(∂f/∂x,∂f/∂y)は等高線の線分ベクトル(dx,dy)に直交する。そして勾配ベクトルはzが大きくなる方向を向いている
 つまり等高線に直交する方向が勾配がもっとも大きくなる方向であり、(∂f/∂x,∂f/∂y)はその方向を表すベクトルの成分表示です。
 そのとき勾配の大きさは

で表される。
[この当たりは適当なベクトル解析の本を参照。]

 ここまでは、極値を求める関数f(x,y)についてのものであったが、条件式

についても同様な事が言える。この式は三次元空間での曲面を表す関数z=φ(x,y)=x2−2y−1の高さz=0等高線と見なせる。

 そのため(∂φ/∂x,∂φ/∂y)は曲面z=φ(x,y)の点(x,y)における勾配を表すベクトルとなる。(∂φ/∂x,∂φ/∂y)は勾配が最大の方向を表し、その絶対値

が勾配の大きさを表す。

 

.ラグランジュの未定乗数の導入

 前項の説明から明らかなように、1.(1)1.で求めた(4)式二つの曲面z=f(x,y)z=φ(x,y)の点(x0,y0)に於ける勾配を表す二つの二次元ベクトルの方向が平行になることを表している。
 実際、1.(1)2.の具体例では(2,1.5)と(-1,0)の二点で二つの関数曲面の等高線は互いに接していた。そのため、当然のことながら等高線と垂直な方向を示す二つのベクトル(∂φ/∂x,∂φ/∂y)と(∂f/∂x,∂f/∂y)は平行となる。同じ方向を向く場合と真反対を向く場合があるが平行になることは確かです。
 そのとき、(2,1.5)と(-1,0)の二点に於ける二つの曲面の勾配の大きさ

は一般に異なっており、(∂φ/∂x,∂φ/∂y)と(∂f/∂x,∂f/∂y)のそれぞれの成分の比例関係が言えるだけです。1.(1)1.で求めた(4)式はそのことを表している。
 (4)式において

と置いて、新しい未定乗数λを導入すれば、−λの絶対値は二つの勾配ベクトルの大きさの比

を表している。(5)式のλの前に負符号を付けているのは下記(6)式のλの前が+になるようにするためで特に意味はない。このように置くと二つのベクトルは、−λ>0なら同じ方向を、−λ<0ならば真反対の方向を向いていることになる。

 (5)式を変形すれば

となる。

 この(6)式と条件式(1)を三つの未知数(x,y,λ)に対する連立方程式と見なして解く方法をラグランジュの未定乗数法という。このλ未定乗数であるが、連立方程式を解くことにより最終的に決定できる。
 連立方程式の解(x0,y0,λ)の内(x0,y0は条件式(1)の制約下で関数f(x,y)が極値を取る座標であり、−λの絶対値は前節で説明した二つの曲面z=f(x,y)z=φ(x,y)の点(x0,y0)に於ける勾配ベクトルの大きさの比を表す。極値の値α0は(x0,y0)をf(x,y)に代入すれば求まる。すなわちα0=f(x0,y0となる。

 

.具体例のラグランジュの未定乗数法

 1.(1)2.の具体例をラグランジュの未定乗数法で解いてみる。
 (1)式(6)式より

となり、同様な結論が得られる。
 点(2,1.5)(-1,0)f(x0,y0に代入すると極値-1.25停留値-8が得られる。

補足説明1
 変数の数が少ない場合には、この方法による計算が特に簡単になるわけでは無いが、変数の数が多くなるとこの方法の威力が見えてくる。その当たりは3.(2)の[補足説明4参照。

補足説明2
 ここで述べるラグランジュの未定乗数法は下記のように表現される場合もある。
 束縛条件g(x,y)=0のもとで、f(x,y)が点(x0,y0)で極値を持つとする。ラグランジュの未定乗数λとして

とおく。
 点(x0,y0)で(∂φ/∂x)と(∂φ/∂y)の内で少なくとも1つ以上が0でないならば、λが存在して点(x0,y0)で

が成り立つ。
 つまり、3変数(x,y,λ)に対する関数F(x,y,λ)条件無しの極値問題になる。

 

.未定乗数λの意味

 二つの曲面z=f(x,y)z=φ(x,y)の勾配ベクトルの分布を図示すると前述の関係を確かめることができる。
曲面 z=f(x,y)=−(x−1)2−(y−2)2勾配ベクトルの分布は

となる。
 一方、曲面z=φ(x,y)=x2−2y−1勾配ベクトルの分布は

となる。
 曲面z=f(x,y)z=φ(x,y)勾配ベクトルの分布を重ね合わせると

となる。
 上図の点(2,1.5)において二つの勾配ベクトルは平行だか反対向き(−λ=−0.5<0だから)となり、その長さの比は0.5となる。また点(-1,0)において二つの勾配ベクトルは平行だが反対向き(−λ=−2<0だから)となり、その長さの比は2となる。

 

HOME 二変数(1)(2)] 2.三変数[一条件式、二条件式] 3.多変数因関数未定乗数] 4.例題123] 5.文献

2.三変数関数の条件つき極値(ラグランジュの未定乗数法による)

 一般的な多変数関数の説明に入る前に、三変数関数の条件つき極値問題についてラグランジュの未定乗数法の意味をもう一度確認する。

)条件式が一つの場合のラグランジュ未定乗数法

.理論

 変数x,y,zが

なる関係式[一条件式]で制約されているときに、関数f(x,y,z)の極値を求める問題を考える。

 関数f(x,y,z)に於いて変数(x,y,z)を定めるとf(x,y,z)はある値をとる。変数(x,y,z)を変化させると、三次元座標(x,y,z)の各点にf(x,y,z)の値が連続的に分布することになる。この値を表すために4次元目の座標軸を取ることができればよいのですが、三次元空間に住む我々には不可能です。図示することはできないが、三次元空間の各点(x,y,z)に付随する数値の集まりで表現することはできる。
 このとき、fの取る値としてある一つの値α1が定まったとする。そのときf(x,y,z)=α1三次元空間の中の一つの曲面を定める式となる。αをα2=α1+Δα、α3=α2+Δα、α4=α3+Δα、・・・・・と変化させるとf(x,y,z)=α (i=1,2,3,・・・・)はちょうどタマネギの皮が重なるように、次々と隣り合った曲面を構成する。これらの曲面群はちょうど二次元空間に於ける等高線に相当する。つまり、ある一定のαiに関する曲面を一つの等高曲面であると見なせる。

 ベクトル解析で習うように、grad f=∇f 、すなわち

は、上記の等高曲面に垂直な三次元ベクトルの成分表示です。そのベクトルの大きさは、その方向でのαの変化率(二次元に於ける曲面の勾配に相当)に比例する。つまり等高曲面が密に並んでいるとき大きく、疎らなときに小さくなる。このベクトルも三次元に於ける勾配ベクトルと呼ぶことにしよう。
[この当たりは別稿「保存力」4.で説明した、三次元空間での ポテンシャルV−grad V =−∇V=F で定義される力のベクトルFの関係と同じです。ただし、そこでは力の方向ポテンシャル値が減少する方向を向くように負符号をgradの前に付けている。]

 ここまでは、極値を求める関数f(x,y,z)についてのものであったが、条件式

についても同様な事が言える。φ(x,y,z)は三次元空間に連続的に分布する数値βの分布の様子を表しており、φ(x,y,z)=0は等高曲面を表す関数の集まりβ=φ(x,y,z)の高さβ=0等高曲面と見なすことができる。そして、等高曲面上の各点において、その曲面に垂直な勾配ベクトル

が存在する。

 前章の議論を振り返れば明らかなように、条件式(1)の制約のもとで関数f(x,y,z)の極値を求める問題は、前記の等高曲面φ(x,y,z)=0に接している等高曲面f(x,y,z)=αを求める事と同じです。その接する点(x0,y0,z0において関数f(x,y,z)は極値αiを取る。

 このことを数式で表すと次のようになる。関数f(x,y,z)が極値αiを取る点(x0,y0,z0において等高曲面f(x,y,z)=αiと等高曲面φ(x,y,z)=0が接しているということは、それぞれの等高曲面に垂直なそれぞれの勾配ベクトルの方向が平行であると言うことだから

が成り立つ。
 このとき(∂φ/∂x),(∂φ/∂y),(∂φ/∂z)のうち少なくとも1つ以上がゼロでないことが必要です。すべてがゼロなら勾配ベクトルが存在しない特異点となる。
 この場合もλの前に負符号をつけたのは(3)式のλの前が+になるようにしたいためで、特に意味はありません。最終的に得られるλの解釈が変わるだけです。
 この式は4変数x,y,z,λの連立方程式

と等価です。

 (3)式(1)式を併せた4式を、4変数(x,y,z,λ)の連立方程式と見なして解けばよい。その解(x0,y0,z0が関数f(x,y,z)極値を取る点であり、−λは、その点での二つの勾配ベクトルの大きさの比を与える。極値αi(x0,y0,z0を関数f(x,y,z)に代入すれば直ちに得られる。

(3)式を線形代数学に於ける列ベクトルで表現すると

となる。これは、まさに(x0,y0,z0において二つの勾配ベクトル grad f =∇fgrad φ =∇φ が平行で、その大きさの比が|−λ|となることを示している。

 

.具体例

 以下、具体的な例を用いて説明する。

 φ(x,y,z)=0 として 2−y−3z+7=0 を考える。この制約条件の下で関数 f(x,y,z)=(x−3)2+(y+2)2+z2 の極値αiと極値を取る点(x0,y0,z0を求める。

 条件式φ(x,y,z)=02−y−3z+7=0 は下図の様な一つの曲面を表す。

 このとき、この関数の勾配ベクトル

となる。

一方、f(x,y,z)=(x−3)2+(y+2)2+z2 は(3,-2,0)を中心とした同心球面上で同一の値をとる関数を表している。その様子を等高曲面f(x,y,z)=αの集合で図示すると下図の様になる。

それぞれの曲面のα値が図中に示してある。
 このとき勾配ベクトル

となる。

 連立方程式(1)、(3)式はそれぞれ

に置き換わる。(3’)式を解いて

が得られる。これを(1’)式に代入するとλの値として

が得られる。実数解は一つしかないのでf(x,y,z)はただ一点で極値を取る。
 実数解λ=2を前記の解(x,y,z)に代入すると、極値を取る点(二つの曲面が接する点)の座標(x0,y0,z0として(1,-1,3)が得られる。この座標値をf(x,y,z)=(x−3)2+(y+2)2+z2 に代入すれば極値αi=14が得られる。

 座標(1,-1,3)は、条件関数2−y−3z+7=0 が定める曲面に、関数 f(x,y,z)=(x−3)2+(y+2)2+z2一つの等高曲面が接している点であることが図から読み取れる。
 そして、接している等高曲面の高度を表すパラメーターの値αi=14が求めるべき極値(この例では最小値)です。αが14よりも大きくなると関数の等高曲面条件関数曲面が交わる領域(一つの閉曲線となる)が生じてきますが、その交線上でのα値はすべて14より大きくなります。

 

.未定乗数λの意味

 二つの関数α=f(x,y,z)β=φ(x,y,z) の勾配ベクトルの分布を図示して前述の関係を確かめてみる。
関数f(x,y,z)=(x−3)2+(y+2)2+z2勾配ベクトル(2(x-3),2(y+2),2z)の分布は

となる。
 一方、関数φ(x,y,z)=x2−y−3z+7等高曲面の分布の様子は

となる。図中の数値は等高曲面2−y−3z+7=ββ値の変化を示している。
 この関数2−y−3z+7勾配ベクトル(2x,-1,-3)の分布は

となる。
 二つの勾配ベクトル図の点(1,-1,3)に於ける勾配ベクトル(-4,2,6)(2,-1,-3)になる。これらは、この点においてのみ互いに平行だか反対向き(−λ=−2<0だから)となり、その長さの比は2となっていることを読み取ってください。

 

HOME 二変数(1)(2)] 2.三変数一条件式、二条件式] 3.多変数因関数未定乗数] 4.例題123] 5.文献

(2)条件式が二つの場合のラグランジュ未定乗数法

.等高曲面と勾配ベクトル

 変数x,y,zが

なる二つの関係式[二条件式]で制約されているときに、関数f(x,y,z)の極値を求める問題を考える。

 関数f(x,y,z)に於いて変数(x,y,z)を定めるとf(x,y,z)はある値をとる。変数(x,y,z)を変化させると、三次元座標(x,y,z)の各点にf(x,y,z)の値が連続的に分布することになる。つまり、三次元空間の各点(x,y,z)に付随する数値の集まりで表現することができる。
 このとき、fの取る値としてある一つの値α1が定まったとする。そのときf(x,y,z)=α1は三次元空間の中の一つの曲面を定める式となる。他のα値の場合も同様で、α2=α1+Δα、α3=α2+Δα、α4=α3+Δα、・・・・・と変化させたときのf(x,y,z)=α (i=1,2,3,・・・・)はちょうどタマネギの皮が重なるように、次々と重なる曲面を構成する。ある一定のαiに関して一つの等高曲面を構成する。

 ベクトル解析で習うように、grad f=∇f 、すなわち

は、上記の等高曲面に垂直な一つのベクトルです。そのベクトルの大きさは、その方向でのαの変化率(二次元に於ける曲面の勾配に相当)に比例する。つまり等高曲面が密に並んでいるとき大きく、疎らに並んでいるときに小さくなる。このベクトルも三次元に於ける勾配ベクトルと呼ぶことにしよう。
[この当たりは別稿「保存力」4.で説明した、三次元空間でのポテンシャルV−grad V =−∇V=Fで定義される力のベクトルFの関係と同じです。]

 条件式 φ1(x,y,z)=0 と φ2(x,y,z)=0 についても同様な事が言える。
 φ1(x,y,z)は三次元空間に連続的に分布する数値β1の分布の様子を表しており、φ1(x,y,z)=0は等高曲面を表す関数の集まりβ1=φ1(x,y,z)の高さβ1=0等高曲面と見なすことができる。
 φ2(x,y,z)も同様に三次元空間に連続的に分布する数値β2の分布の様子を表しており、φ2(x,y,z)=0は等高曲面を表す関数の集まりβ2=φ2(x,y,z)の高さβ2=0等高曲面と見なすことができる。
 等高曲面上の各点において、それぞれの曲面に垂直な勾配ベクトルは、それぞれ

となる。このときそれぞれの勾配ベクトルは、それぞれの等高曲面に垂直だから、二つの等高曲面が交わったところにできる曲線条件曲線と呼ぶことにする)に対しても垂直になる

 

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

 二つの条件式 φ1(x,y,z)=0 と φ2(x,y,z)=0 を満たすということは、変数(x,y,z)の動きが二つの等高曲面φ1(x,y,z)=0 と φ2(x,y,z)=0 が交わる所に生じる一つの曲線(条件曲線)上に制約される事を示している。
 だから二つの条件式のもとで関数f(x,y,z)の極値を求めることは、αを変化させることに依って得られる様々な等高曲面f(x,y,z)=αの中で、上記の条件曲線に接するものを選ぶ事と同じです。そのようにして選ばれた等高曲面のα値が、求める極値であり、その接点の座標(x0,y0,z0が極値を取る点です。

 その接点座標極値を求めるための方程式は

となる。
 極値を取る点において(8)式が成立するのは明らかです。なぜなら、等高曲面f(x,y,z)=αiは前項で説明した条件曲線に接しているので、その接点において(6)式、(7)式で表される三つの勾配ベクトルはすべて条件曲線に垂直になる。つまり等高曲面f(x,y,z)=αと条件曲線が互いに接している所の条件曲線線分に垂直な平面内に存在する。そのため−λ1−λ2を調整すれば必ず(8)式が成り立つようにできる。

 (5)式の2個条件式(8)の3個を併せた5個の式を、5個の未知数(x,y,z,λ1,λ2に対する連立方程式と見なして解けばよい。そのときの解(x0,y0,z0が関数f(x,y,z)極値を取る座標であり、それを代入したf(x0,y0,z0の値が極値αiです。

 

.未定定数λ1、λ2の意味

 [ベクトル(6)][二つのベクトル(7)]一次結合で表現できる。そのとき−λ1−λ2は(7)式の二つのベクトルの一次結合が(6)式のベクトルに一致するようにするために、二つのベクトルの大きさを調整する値を表している。これらは未定の乗数ですが、方程式を解くことで最終的にその値を決定できる。

 

補足説明1
 条件関数が3個ある場合は、3個の条件関数が定める曲面の交わる点のみが変数(x,y,z)の満足する範囲となります。その場合一般的に交差領域は点の集合になってしまいますので極値問題は成立しません。条件関数の数は必ず変数の数より少なくなければなりません

補足説明2
 (8)式のように、条件曲線線分に垂直な平面内にあるベクトル(6)が、同じくその平面内にある二つのベクトル(7)の一次結合で表されるためには、二つのベクトル(7)が平行(つまり同じ方向か真反対を向く)になっていてはいけません
 その為には、二つの条件関数φ1とφ2の(x,y),(x,z)または(y,z)に関する偏微分係数から作られる行列式

の内の少なくとも1つ以上が0でないことが必要です。
 なぜなら、もしこれらのすべてが0ならば

となるが、これらは、

と変形できます。この三つの式から

が得られますが、これは二つのベクトル(7)が平行になることを示しているからです。
 (7)式の二つのベクトルが平行になる場合には、一般的にベクトル(6)を二つのベクトル(7)の一次結合では表せなくなり、未定乗数法は使えません。このことは4.(1)2.の補足でもう一度確認します。
 
 そのため、前記の三つの二行二列の行列式の内の少なくとも1つ以上が0でないことが必要です。これは次に示す行列

階数(rank)2であることを意味します。
 また、ベクトル(6)が二つのベクトル(7)の一次結合で表される事は、次に示す行列

rank2で、この行列の三行三列の行列式の値が0になること、すなわち

を意味する。2次、3次の行列式の展開法はこちらを参照
 この(9)式と、二個の条件式(5)を併せた三つの式を未知数(x,y,z)の連立方程式として解いても極値を取る座標(x0,y0,z0を求めることができます。これは三変数・二条件式の極値問題を因関数定理で解く方法ですが3.(1)4.でもう一度確認します。
 
 これは、1.(1)1.で述べた二変数・一条件式の極値問題を因関数定理で解いた方法に対応しますが、3.(1)2.でもう一度確認します。
 
 2.(1)で説明した三変数・一条件式の極値問題を因関数定理で解くときの条件式がどのような行列式の組(二つ必要)になるのかは、3.(1)3.で検討します。
 
 n変数・p条件式の極値問題を因関数定理で解く方法は、3.(1)1.で説明します。
 
 上記の事柄に関しては3.(2)2.の[補足説明3]、[補足説明4]も参照してください。

 

HOME 二変数(1)(2)] 2.三変数一条件式二条件式] 3.多変数[因関数、未定乗数] 4.例題123] 5.文献

3.多変数関数の条件つき極値

 多変数関数条件つき極値問題を説明する。ただし、変数の数が3個以上になると幾何学的に理解するのは難しくなる。

)因関数定理による解法

.n変数・p条件式の場合

 n個の変数(x1,x2,・・・,xnが変化できる領域がp個の関数

で制約[p個の条件式]されているときに、関数 f(x1,x2,・・・,xn の極値を求める問題を考える。

 今仮に点0=(x10,x20,・・・,xn0において関数 f(x1,x2,・・・,xn が極値を取るとする。
 もしも0の近傍でφ1,φ2,・・・φp が互いに独立で、例えば以下の行列式について

が成り立つとする。ここでφ1,φ2,・・・φp1,x2,・・・,xpは必ずしも添え字の最初のp個になるとは限らないが、添え字の番号を付け替えれば最初のp個とする事ができる

 このとき、(1)式1,x2,・・・,xpについて解くことができて、1,x2,・・・,xpをその他の変数p+1,xp+2,・・・,xnの関数として表せる。[例えば参考文献1.の定理73などを参照]
  つまり

なる関数ψ1,ψ2,・・・,ψpが定まる。
 そのため、f(x1,x2,・・・,xnp+1,xp+2,・・・,xnのみの関数となり

と書くことができる。
 そのとき極値必要条件

となり、(1)式の条件付き極値問題条件無しの極値問題に還元される。

 この必要条件 および φ ( i=1,2,・・・,p)の偏微分商(∂f/∂x)、(∂φ/∂x ( i=1,2,・・・,p 、 j=p+1,p+2,・・・,n)を用いて書き表すことができる。
 (5)式から(n−p)個の方程式

が得られる。
 式中の(∂xi/∂xj( i=1,2,・・・,p 、 j=p+1,p+2,・・・,n)は(1)式から求めることができる。すなわち因関数の定理[例えば参考文献1.の定理75]を用いると



が成り立つ。
 (6)、(7)式をあわせたn個の方程式を並べ替えると



となる。
 これを行列列ベクトルの積で表現すると


ここで、線形代数学における定理

 連立1次同次方程式

において正方行列のとき、この方程式がx=0以外の解を持つための必要十分条件は||=0である。
ただし||は行列から作られる行列式を意味する。[証明は文献2の第5巻、あるいは文献3第4章を参照]

を用いると、上記(n−p)組の連立1次同次方程式(9)式は、次に記す(n−p)個の行列式0になることと等価です。



n次の行列式の展開法はこちらを参照行列式に対して成り立つ性質についてはこちらを参照

 すなわち点0=(x10,x20,・・・,xn0条件(2)式の下においてp個の(1)式(n−p)個の(10)式を併せたn個の連立方程式を満足しなければならない。これが関数 f(x1,x2,・・・,xn が点0=(x10,x20,・・・,xn0において極値を取るための必要条件です。
 この連立方程式を解いて得られる解(x10,x20,・・・,xn0を関数 f(x1,x2,・・・,xnに代入すれば極値が求まる。 

 以下で、変数の数が少ない場合の因関数定理の方法をもう一度確認する。

.二変数・一条件式

 1.(1)で論じたものですが、独立変数と考えて上記(1)〜(10)式に相当するものを書くと

(5’)式と(1’)式より

(6’)と(7’)式を一緒にすると

これを行列・列ベクトル表示にすると

となる。(1)式と(10’)式を未知数x,yの連立方程式として解くけば、関数f(x,y)が極値をとる座標(x,y)が得られる。
 1.(1)の記述と比較してみられたし。

 

.三変数・一条件式

 2.(1)ではラグランジュの未定乗数法で議論したが、因関数定理による解法で説明する。独立変数y,zとすると上記(1)〜(10)式に相当するものは

(5”)式と(1”)式より

(6”)と(7”)を一緒にして並べ替えると

これを行列・列ベクトル表示にすると


となる。(1”)式と2個の(10”)式の3個の式を未知数(x,y,z)の連立方程式と見なして解けば、関数f(x,y,z)が極値をとる座標(x,y,z)が得られる。

 2.(1)2.では具体例をラグランジュ未定乗数法で解いたが、ここで説明した因関数定理の方法でもう一度解いてみる。f(x,y,z)=(x−3)2+(y+2)2+z2 だから、(1”),(10”)式はそれぞれ

となる。(b),(c)を(a)に代入して、xについて解くと

が得られる。実数解x=1を選ぶと極値を取る座標値として(x0,y0,z0)=(1,-1,3)が得られる。これをf(x,y,z) に代入すれば極値14が得られる。

 2.(1)2.ラグランジュ未定乗数法(3)or(3’)式と、こちらの因関数定理の方法の(10”)or(b)(c)式を比較すると、(10”)式の方が少し複雑になることが解る。
 変数や条件式の数が増えると因関数定理の方法は急速に複雑・困難になります。

 

.三変数・二条件式

 この場合の因関数定理による解法は2.(2)3.[補足説明2]ですでに説明したが、独立変数として上記(1)〜(10)式に相当するものを改めて書いてみる。


(5’”)式と(1’”)式より

(6’”)と(7’”)を一緒にすると

これを行列・列ベクトル表示にすると


となる。2個の(1’”)式と1個の(10’”)の3式を未知数(x,y,z)の連立方程式と見なして解く。その解がf(x,y,z)が極値を取る座標であり、それをf(x,y,z)に代入して得られる値がf(x,y,z)の極値です。

 

HOME 二変数(1)(2)] 2.三変数一条件式二条件式] 3.多変数因関数、未定乗数] 4.例題123] 5.文献

(2)ラグランジュの未定乗数法

 前節では因関数定理による解法を説明したが、(10)式は非常に複雑な形をしており解くことは一般的に困難であるばかりか不可能な事もある
 そこで他の解法、すなわち未定乗数λ1,λ2,・・・,λpを利用するラグラジュの未定乗数法を説明する。

.簡単な説明

 n個の変数(x1,x2,・・・,xnが変化できる領域がp個の関数

で制約[p個の条件式]されているときに、点0=(x10,x20,・・・,xn0において関数 f(x1,x2,・・・,xn が極値を取るとする。
 その場合には(1)式の全微分

となるときに、関数 f(x1,x2,・・・,xn全微分

でなければならない。
 この事の幾何学的な意味は次項3.(2)2.を参照。

 つまり、(12)式

の様に書けるが、これは(11)式を以下のように書き直した

式からの帰結です。つまり関数 f(x1,x2,・・・,xn が極値を取るためには(14)式の条件の下で(13)式が成り立たねばならない。

 (14)式の方程式に未定乗数λ1,λ2,・・・,λpを乗じて項別に加え、これと(13)式を加えれば

となる。
 このうち独立でない変数の微分dx1,dx2,・・・dxpの係数が0となるように上記のp個の未定乗数λ1,λ2,・・・,λpを決めるとする。すなわち

の様にλ1,λ2,・・・,λpを決めるのです。

 そうすれば(15)式には独立変数の微分dxp+1,dxp+2,・・・,dxnを含むものだけが残ることになる。すなわち

となる。ところが、dxp+1,dxp+2,・・・,dxnは独立変数の微分ですから任意の数です。よってこのうち一つを1、他を0にとることにより、結局(15)の各係数はことごとく0でなければならないことになる。すなわち

が成り立つ。

 結局、p個の条件関数(1)式と、n個の(16)、(18)式を併せた(n+p)個の方程式を、(n+p)個の未知数(x1,x2,・・・xn,λ1,λ2,・・・,λpに対する連立方程式と見なして解けばよい。
 その解0=(x10,x20,・・・,xn0において関数 f(x1,x2,・・・,xn極値を取る。極値の値は解(x10,x20,・・・,xn0を関数 f(x1,x2,・・・,xnに代入すれば求まる。

補足説明1
 (1)(16)(18)を併せたものの形から解るように、関数f(x1,x2,・・・,xn条件つき極値になるような座標(x1,x2,・・・,xnを決定する問題は、関数

(n+p)個の変数(x1,x2,・・・xn,λ1,λ2,・・・,λpの関数であると見なして、これをすべての変数について偏微分したものが0に等しい

として解く条件無しの極値問題と同じです。

補足説明2
 上記の方法に於いて、関数 および条件式φ1,φ2,・・・φp偏導動関数の存在を仮定するとともに、(16)式からλ1,λ2,・・・,λp決定できると仮定していたことに注意されたし。そのため偏導関数が定義できない点やλが決定できない点での極値の存在は考慮されていない。そのような特異点に極値が存在する可能性がある
 このことについて簡単な例を4.(1)1.で取り上げる。
 
 また、ここでは必要条件のみ論じたのであって十分条件については議論されていない。そのため求めた極値座標0=(x10,x20,・・・,xn0に於いて、f(x1,x2,・・・,xn停留点鞍点のようなものになる可能性がある
 このことについて簡単な例を1.(1)3.ですでに説明した。
 
 本当は、この当たりの考察をさらに進めなければならないが、ここでは省略する。文献1や2をご覧ください。

 

.線形代数学の定理による説明

 前項の手法の幾何学的な意味を説明する。(13)(14)式を一緒にすると

となるが、これは1.(2)1.2.(2)1.で説明したのと同様に、n次元空間における(p+1)個のベクトル

のそれぞれが、次の線分ベクトル

と直交することを表している。

 このとき、上記の(p+1)個のベクトルから構成される(p+1行,n列)行列A

を考えると、この行列について次の線形代数学における定理が成り立つ。

 行列の階数がp(rank=p)ならば、行ベクトルの中に1次独立なものが個存在し、残りの行ベクトルはそれらの1次結合になる。列ベクトルについても同様なことが成り立つ。[証明は文献2の第5巻、あるいは文献3第5章を参照]

 ところで、前節3.(1)1.で仮定した(2)式

は、行列のrankがであることを示している。これはp個の勾配ベクトルがn次元空間内で独立であることを示している。つまり互いに同じ方向を向くことはなく、すべてバラバラの方向を向いている。この当たりは3次元空間における2.(3)3.[補足説明2]行列式の性質を参照。

 また、行列のrankがであることはの任意の(p+1)行(p+1)列の行列式が0となる(前節の(10)式を見よ)ことを示している。そのため(p+1)個目のベクトル

は、p個のベクトル

一次結合となる。すなわち

である。これはn次元空間の曲面f=αの勾配ベクトルが、n次元空間内でφ1=0,φ2=0,・・・φp=0曲面のp個の勾配ベクトルが張る部分空間に属していることを示している。この当たりは3次元空間における2.(2)2.行列式の性質を参照。よって以下の事が言えるのである。

 p個の条件関数(1)式と、n個の(16)、(18)式を併せた(n+p)個の方程式を、(n+p)個の未知数(x1,x2,・・・xn,λ1,λ2,・・・,λpに対する連立方程式と見なして解く。
 その解0=(x10,x20,・・・,xn0において関数 f(x1,x2,・・・,xn極値を取る。極値の値は解(x10,x20,・・・,xn0を関数 f(x1,x2,・・・,xnに代入すれば求まる。

補足説明3
 3.(1)で仮定した(2)式は、(9)式を構成する線形一次方程式の行列の階数がp(rank=p)である事を表している。そのため(9)式の係数から構成される(p+1行,p+1列)行列式はすべて0でなければならない。因関数定理の方法の(10)式はまさにその事実を表している。
 これは2.(2)3.[補足説明2]でも説明したことです。

補足説明4
 因関数定理の方法の(10)式ラグランジュの未定乗数法の(16)(18)式を比較したとき、(p+1行,p+1列)の行列式計算複雑さを考慮すると、後者の方程式を解く方が前者を解くより遙かに簡単です。
 前者の様にf(x1,x2,・・・,xnから与えられた束縛条件(1)を用いてp個の変数を消去すると極めて煩雑・複雑な条件式(10)になってしまう。
 ラグランジュの未定乗数法はその煩雑さをさける手際の良い方法です。
 
 なぜこの方法で簡単になるのかというと、因関数定理の解法は条件式を含めた関数全体の様子を解析するのに対して、ラグランジュの未定乗数法極値を取る点において勾配ベクトルが満足しなければならない性質のみを利用しているからです。ただし、その為に[補足説明2]で説明したような限界がある。

 

HOME 二変数(1)(2)] 2.三変数一条件式二条件式] 3.多変数因関数未定乗数] 4.例題[1,23] 5.文献

4.例題

)スミルノフ高等数学教程(第2巻§168の補足)

 ここで、 x,φy(∂f/∂x),(∂φ/∂y) を、また ω’(x)(dω/dx) を意味することに注意。

.二変数条件式の偏導関数の存在

 ここは、3.(2)1.[補足説明2]に関係する。





 

.三変数条件式の偏導関数の存在

 ここは2.(2)3.の[補足説明2]に関係する。



 

HOME 二変数(1)(2)] 2.三変数一条件式二条件式] 3.多変数因関数未定乗数] 4.例題1,2,3] 5.文献

(2)スミルノフ高等数学教程(第2巻§169の例)

 幾つかの計算例を挙げる。

例1


 

例2



 

例3




 

HOME 二変数(1)(2)] 2.三変数一条件式二条件式] 3.多変数因関数未定乗数] 4.例題12,3] 5.文献

(3)統計力学の例

 統計力学におけるラグランジュの未定乗数法の使用例です。別稿にて戸田盛和著「物理入門コース7 熱・統計力学」岩波書店(1985年刊)§5-1〜§5-5(p96〜116)からそのまま引用して説明しています。
 同様な例として別稿「プランクの熱輻射法則」9.(1)も参照されたし。

 

HOME 二変数(1)(2)] 2.三変数一条件式二条件式] 3.多変数因関数未定乗数] 4.例題123] 5.文献

5.参考文献

このページは別稿で用いるために作りました。ここの内容は主に文献1.と2.に依存しています。

  1. 高木貞治著「解析概論」岩波書店(1968年刊)第7章とくに§82〜83、§89
     これが一番解りやすい。
  2. スミルノフ著 「スミルノフ高等数学教程 第2巻(原本T巻第二分冊)」共立出版(1969年刊)第5章 第16節
    および、第5巻(原本V巻第一分冊)第1章 第2節 §19
     これにも解りやすく丁寧に説明されています。
  3. 占部実、光藤富士男編「代数・幾何教科書」共立出版(1966年刊)第5章の定理4、定理8の系
     これは私が大学1年のとき利用した教科書ですが、ここで使用した定理については線形代数学の教科書ならどれにでも載っていますので適当な本をご覧ください。
     この第4章 行列式の導入行列式行列式の性質余因数Cramerの公式行列式の積を引用。ただし上記の第5章の定理4、定理8の系はここでは引用していません。
  4. クーラン、ヒルベルト著「数理物理学の方法 1」東京図書(1972年刊)第4章の§1、§7、§9
     この本は、最初から読んでも難しくて役に立ちません。天才のあふれ出る着想や気付きを思いつくままにそのまま書き散らかした感じの本です。とても難解な本ですが、時々珠玉の様な明快解説があります。未定乗数法についても含蓄深い説明があります。
  5. 寺沢寛一編「自然科学者のための数学概論−応用編」岩波書店(1968年刊)C変分法の第1章§8
     この本だけから理解するのは難しいです。文献2の第5巻§19などと併せてお読みください。昔の学生は良く勧められましたが、数理物理のエッセンスだけを集めたような本で初学者には役に立ちません。
HOME 1.二変数(1)(2)] 2.三変数一条件式二条件式] 3.多変数因関数未定乗数] 4.例題123] 5.文献