「条件付停留値問題」の版間の差分
(→条件付き停留値問題への応用) |
(→条件付き停留値問題への応用) |
||
39行: | 39行: | ||
{{eqn|<math>\delta G_l({\boldsymbol x}) = \mathrm{grad}G_l({\boldsymbol x})\cdot\delta{\boldsymbol x} = 0 (l=1\sim K)</math>|4}} | {{eqn|<math>\delta G_l({\boldsymbol x}) = \mathrm{grad}G_l({\boldsymbol x})\cdot\delta{\boldsymbol x} = 0 (l=1\sim K)</math>|4}} | ||
+ | |||
が成り立つようにしか <math>{\boldsymbol x}</math> は変化できません。 | が成り立つようにしか <math>{\boldsymbol x}</math> は変化できません。 | ||
関数 <math>f({\boldsymbol x})</math> が停留値を持つということは、<math>{\boldsymbol x}</math> の微小変化量 <math>\delta{\boldsymbol x}=\left(\begin{array}{c} \delta x_1 \\ \delta x_2 \\ \vdots \\ \delta x_n \end{array}\right)</math> に対し <math>f({\boldsymbol x})</math> が変化しないということなので | 関数 <math>f({\boldsymbol x})</math> が停留値を持つということは、<math>{\boldsymbol x}</math> の微小変化量 <math>\delta{\boldsymbol x}=\left(\begin{array}{c} \delta x_1 \\ \delta x_2 \\ \vdots \\ \delta x_n \end{array}\right)</math> に対し <math>f({\boldsymbol x})</math> が変化しないということなので | ||
+ | |||
{{eqn|<math> | {{eqn|<math> | ||
55行: | 57行: | ||
− | {{eqn|<math>\delta f({\boldsymbol x}) = \mathrm{grad}f({\boldsymbol x})\cdot\delta{\boldsymbol x} = 0 | + | {{eqn|<math>\delta f({\boldsymbol x}) = \mathrm{grad}f({\boldsymbol x})\cdot\delta{\boldsymbol x} = 0 </math>|6}} |
+ | |||
[[ラグランジュ未定乗数法の基本部分]] で示しましたように、<math>\mathrm{grad}f({\boldsymbol x})</math> は <math>\delta{\boldsymbol x}</math> が所属する部分空間の直交補空間に属します。従って、適当な係数 <math>\lambda_1, \lambda_2, \cdots , \lambda_K</math>を使って | [[ラグランジュ未定乗数法の基本部分]] で示しましたように、<math>\mathrm{grad}f({\boldsymbol x})</math> は <math>\delta{\boldsymbol x}</math> が所属する部分空間の直交補空間に属します。従って、適当な係数 <math>\lambda_1, \lambda_2, \cdots , \lambda_K</math>を使って | ||
− | <math> \mathrm{grad}f({\boldsymbol x}) = -\lambda_1\mathrm{grad}G_1({\boldsymbol x}) - \lambda_2\mathrm{grad}G_2({\boldsymbol x})\cdots -\lambda_K\mathrm{grad}G_K({\boldsymbol x}) | + | |
− | + | {{eqn|<math> \mathrm{grad}f({\boldsymbol x}) = -\lambda_1\mathrm{grad}G_1({\boldsymbol x}) - \lambda_2\mathrm{grad}G_2({\boldsymbol x})\cdots -\lambda_K\mathrm{grad}G_K({\boldsymbol x})</math>|7}} | |
+ | |||
とかけます。この式の意味は停留値を取るような <math>{\boldsymbol x}</math> はこの式を満たすということであり、<math>\mathrm{grad}f({\boldsymbol x})</math> が | とかけます。この式の意味は停留値を取るような <math>{\boldsymbol x}</math> はこの式を満たすということであり、<math>\mathrm{grad}f({\boldsymbol x})</math> が | ||
<math>-\lambda_1\mathrm{grad}G_1({\boldsymbol x}) - \lambda_2\mathrm{grad}G_2({\boldsymbol x})\cdots -\lambda_K\mathrm{grad}G_K({\boldsymbol x})</math> であらわされる部分空間全体になるわけではありません。 | <math>-\lambda_1\mathrm{grad}G_1({\boldsymbol x}) - \lambda_2\mathrm{grad}G_2({\boldsymbol x})\cdots -\lambda_K\mathrm{grad}G_K({\boldsymbol x})</math> であらわされる部分空間全体になるわけではありません。 | ||
− | <math>g({\boldsymbol x}) = f({\boldsymbol x}) + \lambda_1 G_1({\boldsymbol x}) + \lambda_2 G_2({\boldsymbol x})\cdots +\lambda_K G_K({\boldsymbol x}) | + | |
+ | {{eqn|<math>g({\boldsymbol x}) = f({\boldsymbol x}) + \lambda_1 G_1({\boldsymbol x}) + \lambda_2 G_2({\boldsymbol x})\cdots +\lambda_K G_K({\boldsymbol x})</math>|8}} | ||
+ | |||
+ | |||
とすると、 | とすると、 | ||
− | <math>\mathrm{grad}g({\boldsymbol x}) = 0 | + | {{eqn|<math>\mathrm{grad}g({\boldsymbol x}) = 0</math>|9}} |
− | つまり | + | つまり '''(2)''' と '''(9)''' が停留値の条件となります。式 '''(2)''' と '''(9)''' は <math>n + K</math> 個の方程式を含みますから、 |
− | 全ての未知数を求められますので、これで十分です。実際、ラグランジュの未定乗数法というのは 式 | + | 全ての未知数を求められますので、これで十分です。実際、ラグランジュの未定乗数法というのは 式 '''(2)''' と '''(9)''' から停留点を求めるのが普通ですが、ここでもうひとひねりしてみましょう。 |
<math>\lambda_1, \lambda_2, \cdots , \lambda_K</math> を関数の独立変数とすれば | <math>\lambda_1, \lambda_2, \cdots , \lambda_K</math> を関数の独立変数とすれば | ||
− | <math>h({\boldsymbol x}, \lambda_1, \lambda_2, \cdots , \lambda_K) = f({\boldsymbol x}) + \lambda_1 G_1({\boldsymbol x}) + \lambda_2 G_2({\boldsymbol x})\cdots +\lambda_K G_K({\boldsymbol x}) | + | |
− | + | {{eqn|<math>h({\boldsymbol x}, \lambda_1, \lambda_2, \cdots , \lambda_K) = f({\boldsymbol x}) + \lambda_1 G_1({\boldsymbol x}) + \lambda_2 G_2({\boldsymbol x})\cdots +\lambda_K G_K({\boldsymbol x}) | |
− | </math> | + | </math>|10}} |
+ | |||
と書けます。<math>\frac{\partial h}{\partial h\lambda_i} = G_i = 0</math> は拘束条件そのものなので、<math>\mathrm{grad}</math>を <math>\lambda_1, \lambda_2, \cdots , \lambda_K</math> にまで拡張すれば | と書けます。<math>\frac{\partial h}{\partial h\lambda_i} = G_i = 0</math> は拘束条件そのものなので、<math>\mathrm{grad}</math>を <math>\lambda_1, \lambda_2, \cdots , \lambda_K</math> にまで拡張すれば | ||
− | <math>\mathrm{grad}h({\boldsymbol x}, \lambda_1, \lambda_2, \cdots , \lambda_K) = 0\label{eq11} </math> | + | |
+ | {{eqn|<math>\mathrm{grad}h({\boldsymbol x}, \lambda_1, \lambda_2, \cdots , \lambda_K) = 0\label{eq11} </math>|11} | ||
+ | |||
が <math>f</math> が停留値を持つ条件です。拘束条件は \ref{eq11} に取り込まれてしまった上、式 \ref{eq11} は独立変数を <math>\lambda_1, \lambda_2, \cdots , \lambda_K</math> にまで拡大した停留点を求める方程式になっています。 | が <math>f</math> が停留値を持つ条件です。拘束条件は \ref{eq11} に取り込まれてしまった上、式 \ref{eq11} は独立変数を <math>\lambda_1, \lambda_2, \cdots , \lambda_K</math> にまで拡大した停留点を求める方程式になっています。 |
2014年12月29日 (月) 02:02時点における版
条件付き停留値問題への応用
ここまでで、ラグランジュの未定乗数法の根本は直交補空間の直交補空間だと述べてきましたが、 これの条件付停留値問題への応用を示しましょう。
ベクトル の関数
が停留値を持つのは
![]() |
( 1 ) |
の時ですが、
ベクトル に対し、K個の条件(拘束条件)
![]() |
( 2 ) |
がある場合、関数 が停留値を取る条件は変わってきます。これを考えてみましょう。
の微小変化量を
とすると、
![]() |
( 3 ) |
![]() |
( 4 ) |
が成り立つようにしか は変化できません。
関数 が停留値を持つということは、
の微小変化量
に対し
が変化しないということなので
![]() |
( 5 ) |
![]() |
( 6 ) |
ラグランジュ未定乗数法の基本部分 で示しましたように、 は
が所属する部分空間の直交補空間に属します。従って、適当な係数
を使って
![]() |
( 7 ) |
とかけます。この式の意味は停留値を取るような はこの式を満たすということであり、
が
であらわされる部分空間全体になるわけではありません。
![]() |
( 8 ) |
とすると、
![]() |
( 9 ) |
つまり (2) と (9) が停留値の条件となります。式 (2) と (9) は 個の方程式を含みますから、
全ての未知数を求められますので、これで十分です。実際、ラグランジュの未定乗数法というのは 式 (2) と (9) から停留点を求めるのが普通ですが、ここでもうひとひねりしてみましょう。
を関数の独立変数とすれば
![]() |
( 10 ) |
と書けます。 は拘束条件そのものなので、
を
にまで拡張すれば
{{eqn|構文解析に失敗 (不明な関数「\label」): \mathrm{grad}h({\boldsymbol x}, \lambda_1, \lambda_2, \cdots , \lambda_K) = 0\label{eq11}
|11}
が が停留値を持つ条件です。拘束条件は \ref{eq11} に取り込まれてしまった上、式 \ref{eq11} は独立変数を
にまで拡大した停留点を求める方程式になっています。
つまり、ラグランジュの未定乗数法は、束縛条件付き停留値問題を束縛条件なしの停留値問題に巧妙に変換するのです。
まとめ
条件付き停留値問題を、条件なし停留値問題に変換する手順は以下の通りです。
1. 元の関数 と束縛条件
から式
- を作ります。
2. 以下の式より、停留値での を求めます。