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

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索

ラグランジュの未定乗数法(ラグランジュのみていじょうすうほう、: method of Lagrange multiplier)とは、束縛条件のもとで最適化を行うための数学解析学)的な方法である。いくつかの変数に対して、いくつかの関数の値を固定するという束縛条件のもとで、別のある1つの関数の極値を求めるという問題を考える。各束縛条件に対して定数(未定乗数Lagrange multiplier)を用意し、これらを係数とする線形結合を新しい関数(未定乗数も新たな変数とする)として考えることで、束縛問題を普通の極値問題として解くことができる方法である。

定理[編集]

ラグランジュの未定乗数法は、次のような定理として記述される。

2次元の場合[編集]

束縛条件g (x , y ) = 0 のもとで、f (x , y )が点(a , b )で極値を持つとする。ラグランジュ乗数をλとし、

F(x,y,\lambda) = f(x,y) - \lambda g(x,y)

とおく。点(a , b )で∂g/∂x も∂g/∂y も0でないならば、αが存在して点(a , b , α)で

\frac{\partial F}{\partial x} =  \frac{\partial F}{\partial y} = \frac{\partial F}{\partial \lambda} = 0

が成り立つ[1]

一般の多次元の場合[編集]

n 次元空間の点x = (x1, ... ,xn ) のある領域R を定義域とする被評価関数z = f (x ) が、同じ領域を定義域とするm 次元ベクトル値関数

\boldsymbol{G}(\boldsymbol{x}) = \begin{pmatrix}g_1(x_1,\dots,x_n)\\ \vdots \\ g_m(x_1,\dots,x_n)\end{pmatrix} = \boldsymbol{0}\qquad (1)

のもとで、R 内の点x において極値をとるための必要条件は、その点におけるf勾配ベクトル

\nabla f = ^t\begin{pmatrix}\frac{\part f}{\part x_1},\dots,\frac{\part f}{\part x_n}\end{pmatrix}

が、その点で、m 個のgi それぞれの勾配ベクトルが張るm 次元線型部分空間に含まれること、すなわち、スカラーの組 λ = (λ1, ... ,λm ) を用いて、

\nabla f = \sum_{i=1}^{m}\lambda_i \nabla g_i \qquad (2)

が成り立つことである。移項して∇を取れば、

 f(\boldsymbol{x}) - \sum_{i=1}^{m}\lambda_i g_i(\boldsymbol{x})

停留点をとることである。ただし、{∇g1, ... ,∇gm } は一次独立、すなわち

\dim(\nabla g_1,\dots,\nabla g_m) = m

でなければならない。式(1)のm 本と式(2)のn 本の式を連立させて、xλの(n +m ) 個の未知数について解けば、f の極値を与える候補点が得られる[2]

解釈[編集]

幾何学的な説明[編集]

図1: 束縛条件g (x,y ) = cに対して関数f (x,y ) を最大化する場合。
図2: 図1の等高線地図。赤い線は束縛条件g(x,y)=cを示す。青い線はf(x,y)の等高線。赤い線が青い等高線に接する点が解。

簡単のため2次元の場合を考えよう。g (x,y ) = c(ここでc は与えられた定数である)に対し、関数f (x,y ) を最大化するものとしよう。f の値を高さとしたグラフを考える。d のいろいろな値に対しf (x,y ) = d で与えられるf の軌道が考えられる。束縛条件はg の値をc に固定してg が1つの軌道にあるとすることである。g = c の軌道に沿って歩くと、fg の軌道は違うから、この軌道は一般に多数のf 軌道を横切ることになる。そこでd の異なる値に対して横切るいろいろなf =d の軌道に注目しよう。軌道を横切るとすると、坂を上ればf の値は増加する(下れば減少する)。

ただし横切ろうとしている軌道f =d が実際は軌道g =c(束縛条件)と交差せず接触だけする場合に限り、f の値は変化しない(束縛条件下でf が最大となる点ではまさにそうである)。ここではfg との勾配ベクトル(各変数による偏微分を成分とする)の向きが同じになる。

ここで0でないスカラー λ を導入し、f − λg を考える。上の点の条件は、λ のある値に対してf − λg の勾配が0であるということに等しい(λ はfg の勾配の比)。

物理的な解釈[編集]

物理学の問題を解くとき、ラグランジュの未定乗数は単なる方便ではなく、ある物理量を表すことが多い。

たとえば、流体力学において、非圧縮性流れナビエ-ストークス方程式を解く場合、圧力は速度ベクトル場が連続の式という束縛条件を満たすための未定乗数として求められる[3]

変則版[編集]

2次元問題で、束縛条件が1つの場合には、以下のように連立方程式を作っても良い:

\frac{\partial f}{\partial x} + \lambda' \frac{\partial f}{\partial y} = 0
\frac{\partial g}{\partial x} + \lambda' \frac{\partial g}{\partial y} = 0
g(x,y) = 0

ただしこの場合のλ'は、もとの定理のλとは異なる。

この変則版は、極値となる点で全微分df = 0 となる方向と、dg = 0 となる方向が平行であることから導かれる。

[編集]

情報理論エントロピーが最大となる離散的確率分布を見出すことを考えよう。このときエントロピーは確率を変数とする関数で、

f(p_1,p_2,\dots,p_n) = -\sum_{k=1}^n p_k\log_2 p_k

となる。もちろんこれらの確率の合計は1に等しく、束縛条件を表す関数は

g(p_1,p_2,\dots,p_n)=\sum_{k=1}^n p_k-1

となる。ラグランジュ乗数を用いてエントロピー最大の点を見つけよう。すべてのi (1から n をとる)に対して次の条件が必要である:

\frac{\partial}{\partial p_i}(f+\lambda g)=0

従って

\frac{\partial}{\partial p_i}\left(-\sum_{k=1}^n p_k \log_2 p_k + \lambda(\sum_{k=1}^n p_k-1)\right) = 0

これらn 個の方程式から次の式が得られる:

-\left(\frac{1}{\ln 2}+\log_2 p_i \right)  + \lambda = 0

これは、すべてのpi が等しいということを示している(変数はλ だけだから)。

束縛条件 ∑k pk = 1 を使って、

p_i = \frac{1}{n}

がわかる。すなわち、すべての事象が等確率の一様分布がエントロピー最大の分布である:つまり他のどんな確率分布の場合よりも、確率変数が実際に観測されたときに得られる情報量の期待値が大きいということである。

参考文献[編集]

  1. ^ 三宅敏恒 (1992). 入門微分積分. 培風館. p. 104. ISBN 4-563-00221-6. 
  2. ^ 清水昭比古「学力低下時代の教え方 第4回 ラグランジの未定係数法」、『日本機械学会誌』第112巻第1093号、一般社団法人日本機械学会、2009年12月、 987-992頁。
  3. ^ Joel H. Ferziger; Milovan Perić; 小林敏雄、谷口伸行、坪倉誠訳 『コンピュータによる流体力学』 シュプリンガー・フェアラーク東京、2003年、195-197頁。ISBN 4-431-70842-1 

関連項目[編集]