「最適性条件 (非線形計画における)」の版間の差分
細 ("最適性条件 (非線形計画における)" を保護しました。 [edit=sysop:move=sysop]) |
(基礎編と用語編のマージ) |
||
(他の1人の利用者による、間の1版が非表示) | |||
1行目: | 1行目: | ||
'''【さいてきせいじょうけん (optimality condition)】''' | '''【さいてきせいじょうけん (optimality condition)】''' | ||
+ | === 概要 === | ||
非線形計画問題において, 最適解が満たすべき条件, あるいは最適解になることを保証する条件の総称. 通常, それらは目的関数と制約関数の勾配ベクトルやヘッセ行列を用いて表現される. 最適性条件には, 1次の最適性条件, 2次の最適性必要条件, 2次の最適性十分条件等があるが, 最も基本的なのがカルーシュ・キューン・タッカー条件である. | 非線形計画問題において, 最適解が満たすべき条件, あるいは最適解になることを保証する条件の総称. 通常, それらは目的関数と制約関数の勾配ベクトルやヘッセ行列を用いて表現される. 最適性条件には, 1次の最適性条件, 2次の最適性必要条件, 2次の最適性十分条件等があるが, 最も基本的なのがカルーシュ・キューン・タッカー条件である. | ||
+ | |||
+ | === 詳説 === | ||
+ | 非線形計画問題とは,有限個の不等式,等式制約条件の下で,目的関数を最小(最大)化する問題であり,次のように表される. | ||
+ | |||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td><math> | ||
+ | \begin{array}{ll} | ||
+ | \min. & f(x) \\ | ||
+ | \mbox{s. t.} & g(x) \le 0, \\ | ||
+ | & h(x) = 0. | ||
+ | \end{array} | ||
+ | </math> | ||
+ | </td> | ||
+ | <td width="100" align="right"><math>(1) \,</math> </td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | ここで <math>x=(x_1,\dots,x_n)^{\top}</math> (<math>^{\top}</math> は転置記号), 関数 <math>f(x)\,</math>, <math>g(x)=(g_1(x),\dots,g_m(x))^{\top}</math>,<math>h(x)=(h_1(x),\dots,h_{\ell}(x))^{\top}</math> は微分可能で,導関数は連続と仮定する.制約条件を満たす点 <math>\bar{x}\,</math> を実行可能解(以下,可能解という)と呼ぶ.任意の可能解 <math>x\,</math> に対して <math>f(\bar{x})\leq f(x)</math> が成立するとき, <math>\bar{x}\,</math> を最適解と呼ぶ.しかしながら,一般には非線形計画問題の最適解を求めることは容易ではなく,局所的に最適な解である局所的最適解を考えることが多い.即ち,可能解 <math>\bar{x}\,</math> で,適当な半径 <math>\delta>0\,</math> を選べば,<math>\bar{x}\,</math> を中心とする半径 <math>\delta\,</math> 内にあるどの可能解 <math>x\,</math> に対しても <math>f(\bar{x})\leq f(x)</math> が成立するものを局所的最適解と呼ぶ. | ||
+ | |||
+ | 局所的最適解を求める際,局所的最適解が満たすべき条件,局所的最適解であることを保証する条件が基本的な役割を果たすが,それらを総称して[[最適性条件 (非線形計画における)|最適性条件]](optimality condition)と呼ぶ.通常,最適性条件は目的関数,制約関数の勾配ベクトル <math>\nabla f(x):=(\partial f/\partial x_1,\dots,\partial f/\partial x_n)^{\top}</math> や,<math>(i,j)\,</math> 成分が <math>\partial^2 f/\partial x_i\partial x_j</math> で定義されるヘッセ行列 <math>\nabla^2 f(x)</math> を用いて記述されるが,特に勾配ベクトルのみで表された最適性条件を[[1次の最適性条件]](first-order optimality condition),ヘッセ行列も利用して表されたものを2次の最適性条件と呼ぶ. | ||
+ | |||
+ | 1次の最適性条件で,最もよく利用されるのが次の [[カルーシュ・キューン・タッカー条件]](Karush-Kuhn-Tucker condition,KKT条件)である. | ||
+ | |||
+ | 点 <math>\bar{x}\,</math> が局所的最適解ならば,後述する制約想定の下で,適当なベクトル <math>(\lambda,\mu)\in \mathbf{R}^{m+\ell}</math> が存在して,ラグランジュ関数を <math>L(x,\lambda,\mu):=f(x)+\sum_{j=1}^m\lambda_jg_j(x)+\sum_{k=1}^{\ell}\mu_kh_k(x)</math> と定義するとき,次のKKT条件が成立する. | ||
+ | |||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td><math>\left\{\begin{array}{l} | ||
+ | \nabla_x L(\bar{x},\lambda,\mu)= | ||
+ | \nabla f(\bar{x})+\sum_{j=1}^m\lambda_j\nabla g_j(\bar{x})+ | ||
+ | \sum_{k=1}^{\ell}\mu_k\nabla h_k(\bar{x})=0, \\ | ||
+ | g_j(\bar{x})\leq 0,\ \lambda_j\geq 0,\ \lambda_jg_j(\bar{x})=0 | ||
+ | \ (j=1,\dots,m),\ \ h(\bar{x})=0, | ||
+ | \end{array}\right.</math> | ||
+ | </td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | ここで,ベクトル <math>(\lambda,\mu)</math> はラグランジュ乗数,条件 <math>\lambda_jg_j(\bar{x})=0</math> は相補性条件と呼ばれる. | ||
+ | |||
+ | 一方, KKT条件は次の等式,不等式系が解 <math>y\in \mathbf{R}^n</math> を持たないことを,二者択一定理を用いて言い換えた条件でもある. | ||
+ | |||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td><math>\nabla f(\bar{x})^{\top}y<0, \nabla h(\bar{x})^{\top}y=0,\ \ | ||
+ | \nabla g_j(\bar{x})^{\top}y\leq 0\ (j\in I(\bar{x})). | ||
+ | </math></td> | ||
+ | <td width="100" align="right"><math>(2) \,</math> </td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | ただし,<math>I(\bar{x}) := \{j:\, g_j(\bar{x})=0\}</math> はアクティブな不等式制約, すなわち点 <math>\bar{x}\,</math> において等号が成り立つ不等式制約の集合を表わす.条件(2)に現れる集合 <math>\{y:\,\nabla g_j(\bar{x})^{\top}y\leq 0\ (j\in I(\bar{x})),\ \nabla h(\bar{x})^{\top}y=0\}</math> は実行可能集合 <math>\{x:\,g(x)\leq 0,\ h(x)=0\}</math> の,点 <math>\bar{x}\,</math> における近似集合と考えられるが,実際に良い近似になるのは,何らかの仮定を満たす場合に限られる.この種の仮定を総称して,[[制約想定]] (constraint qualification,CQ),あるいは正則条件と呼ぶ.キューン・タッカーの制約想定をはじめとして,数多くの制約想定が提案されているが,なかでも1次独立制約想定(LICQ)とマンガサリアン・フロモヴィッツ条件(MF 条件)が重要である. | ||
+ | |||
+ | |||
+ | :LICQ: <math>\nabla g_j(\bar{x})\ (j\in I(\bar{x})), | ||
+ | \ \nabla h_k(\bar{x})\ (k=1,\dots,\ell)</math> は1次独立である. | ||
+ | |||
+ | :MF条件:(i) <math>\nabla h_k(\bar{x})\ (k=1,\dots,\ell)</math> は1次独立である.(ii) <math>\nabla h(\bar{x})^{\top}z=0, \nabla g_j(\bar{x})^{\top}z<0 (j\in I(\bar{x}))</math>を満たす <math>z\in \mathbf{R}^n</math> が存在する. | ||
+ | |||
+ | |||
+ | LICQ は MF 条件より強い仮定であり,LICQ が成立するとき,ラグランジュ乗数 <math>(\lambda,\mu)\,</math> は一意に決まる.他方,制約想定が満たされない場合でも,点 <math>\bar{x}</math> が局所的最適解ならば,ゼロでないベクトル <math>(\lambda_0,\lambda,\mu)\in \mathbf{R}^{1+m+\ell}</math>が存在して,次のフリッツ・ジョン条件が成立する. | ||
+ | |||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td><math>\left\{\begin{array}{l} | ||
+ | \lambda_0\nabla f(\bar{x})+\sum_{j=1}^m\lambda_j\nabla g_j(\bar{x})+ | ||
+ | \sum_{k=1}^{\ell}\mu_k\nabla h_k(\bar{x})=0,\ \ \lambda_0\geq 0 \\ | ||
+ | g_j(\bar{x})\leq 0,\ \lambda_j\geq 0,\ \lambda_jg_j(\bar{x})=0\ | ||
+ | (j=1,\dots,m), | ||
+ | \ \ h(\bar{x})=0. | ||
+ | \end{array}\right.</math></td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | フリッツ・ジョン条件は,<math>\lambda_0\neq 0</math> のとき(従って <math>\lambda_0=1</math> としてよい),KKT 条件に一致する.これにより,<math>\lambda_0\neq 0</math> を保証する条件を制約想定と呼ぶことも多い. | ||
+ | |||
+ | 凸計画問題の場合,<math>(\bar{x},\lambda,\mu)</math> がKKT条件を満たせば,<math>\bar{x}</math> は最適解になる.しかし一般には,KKT条件は最適性を保証するとは限らない.最適性を詳しく調べるには,2次の最適性条件が必要になる.以下において,各関数は2回連続微分可能であると仮定する.即ち,2回までの偏導関数は全て連続とする.[[2次の最適性十分条件]](second-order sufficient optimality condition)としては,次の定理がよく利用される. | ||
+ | |||
+ | 今,<math>(\bar{x},\lambda,\mu)</math> がKKT条件を満たすとする.さらに3つの条件 (a) <math>\nabla g_j(\bar{x})^{\top}y=0\ \mbox{if}\ \lambda_j>0</math>, (b) <math>\nabla g_j(\bar{x})^{\top}y\leq 0\ \mbox{if}\ j\in I(\bar{x})\ \mbox{and}\ \lambda_j=0</math>, (c) <math>\nabla h(\bar{x})^{\top}y=0</math> を満たすゼロベクトルでない任意の <math>y\in \mathbf{R}^n</math> に対し,<math>y^{\top} \nabla_x^2 L(\bar{x},\lambda,\mu)y>0</math> が成立するならば,<math>\bar{x}\,</math> は孤立局所最適解になる.すなわち,適当な半径 <math>\delta>0\,</math> を選べば,<math>\bar{x}\,</math> を中心とする半径 <math>\delta\,</math> 内にある任意の可能解 <math>x\neq \bar{x}\,</math> に対して,<math>f(\bar{x})<f(x)\,</math> が成立する.ここで,<math>\nabla_x^2 L\,</math> はラグランジュ関数の<math>x\,</math> に関するヘッセ行列を表わす. | ||
+ | |||
+ | この十分条件と対をなす[[2次の最適性必要条件]](second-order necessary optimality condition)としては,次の定理が知られている. | ||
+ | |||
+ | 可能解 <math>\bar{x}</math> が局所的最適解で,<math>(\bar{x},\lambda,\mu)</math> はKKT条件を満たすとする.このとき,1次独立制約想定の下で,(a)-(c)を満たす任意の <math>y\in \mathbf{R}^n</math> に対し,<math>y^{\top} \nabla_x^2 L(\bar{x},\lambda,\mu)y\geq 0</math> が成立する. | ||
+ | |||
+ | 2次の最適性十分条件は,最適性の判定以外にも,安定性理論,感度分析,アルゴリズムの収束の議論において重要な役割を演じる.[[安定性理論 (数理計画の)|安定性理論]](stability theory)と[[感度分析 (数理計画の)|感度分析]](sensitivity analysis)は,目的関数や制約関数を微小変化させたとき,最適解や最適値関数がどのように変化するかを調べる問題であり,主としてそれらの連続性を論じるのが安定性理論,微分可能性や変化率を取り扱うのが感度分析である.通常,パラメトリックな問題 | ||
+ | |||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td> | ||
+ | <math> | ||
+ | \begin{array}{ll} | ||
+ | \min. & f(x,u) \\ | ||
+ | \mbox{s. t.} & g(x,u) \le 0, \\ | ||
+ | & h(x,u) = 0, | ||
+ | \end{array} | ||
+ | </math></td> | ||
+ | <td width="100" align="right"><math>(3) \,</math> </td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | や,その一般化を舞台に,最適値関数 <math>\phi (u)=\inf\{f(x,u): g(x,u)\leq 0, h(x,u)=0\}</math>と最適解集合 <math>\Phi (u)=\{x:\, f(x,u)=\phi(u), g(x,u)\leq 0, h(x,u)=0\}</math> の挙動を考察する.ただし,<math>u\in \mathbf{R}^q</math> はパラメータであり,<math>u=\bar{u}</math> のとき(3)は非線形計画問題 (1) に一致するものとする. | ||
+ | |||
+ | このとき, もし各関数が <math>(x, u)\,</math> に関して2回連続微分可能で, <math>(\bar{x}, \lambda, \mu)</math> が 3つの条件 | ||
+ | |||
+ | :(i) 2次の最適性十分条件, | ||
+ | :(ii) 1次独立制約想定, | ||
+ | :(iii) 狭義の相補性, | ||
+ | |||
+ | すなわち, 全ての <math>j \in I(\bar{x})\,</math> に対し<math>\lambda_j > 0\,</math>, を満たすならば, <math>\bar{u}\,</math> に十分近い任意の <math>u\,</math> に対して, 問題 (3) に対するKKT条件を満たす <math>(x(u),\lambda(u),\mu(u))\,</math> が <math>(\bar{x},\lambda,\mu)\,</math> の近くにただひとつ存在する.また,それらは2回連続微分可能で,条件 (i)-(iii) を満たし,<math>x(u)\,</math> は (3) の孤立局所最適解になる. さらに,それらの1回,2回の微分は (3) に対するKKT条件を用いて計算できる.この結果,ラグランジュ乗数が経済学の重要な概念であるシャドープライスを表すことがわかる. | ||
+ | |||
+ | |||
+ | |||
+ | ---- | ||
+ | '''参考文献''' | ||
+ | |||
+ | [1] J.F. Bonnans and A. Shapiro, ''Perturbation Analysis of Optimization Problems'', Springer, 2000. | ||
+ | |||
+ | [2] A.V. Fiacco, ''Introduction to Sensitivity and Stability Analysis in Nonlinear Programming'', Academic Press, 1983. | ||
+ | |||
+ | [3] A.V. Fiacco and G.P. McCormick, ''Nonlinear Programming'', SIAM, 1990. | ||
+ | |||
+ | [4] 福島雅夫,非線形最適化の基礎,朝倉書店,2001. | ||
+ | |||
+ | [5] 今野浩,山下浩,非線形計画法,日科技連,1978. | ||
+ | |||
+ | [6] 川崎英文,極値問題,横浜図書,2004. | ||
+ | |||
+ | [[Category:非線形計画|さいてきせいじょうけん]] |
2008年3月13日 (木) 22:43時点における最新版
【さいてきせいじょうけん (optimality condition)】
概要
非線形計画問題において, 最適解が満たすべき条件, あるいは最適解になることを保証する条件の総称. 通常, それらは目的関数と制約関数の勾配ベクトルやヘッセ行列を用いて表現される. 最適性条件には, 1次の最適性条件, 2次の最適性必要条件, 2次の最適性十分条件等があるが, 最も基本的なのがカルーシュ・キューン・タッカー条件である.
詳説
非線形計画問題とは,有限個の不等式,等式制約条件の下で,目的関数を最小(最大)化する問題であり,次のように表される.
ここで ( は転置記号), 関数 , , は微分可能で,導関数は連続と仮定する.制約条件を満たす点 を実行可能解(以下,可能解という)と呼ぶ.任意の可能解 に対して が成立するとき, を最適解と呼ぶ.しかしながら,一般には非線形計画問題の最適解を求めることは容易ではなく,局所的に最適な解である局所的最適解を考えることが多い.即ち,可能解 で,適当な半径 を選べば, を中心とする半径 内にあるどの可能解 に対しても が成立するものを局所的最適解と呼ぶ.
局所的最適解を求める際,局所的最適解が満たすべき条件,局所的最適解であることを保証する条件が基本的な役割を果たすが,それらを総称して最適性条件(optimality condition)と呼ぶ.通常,最適性条件は目的関数,制約関数の勾配ベクトル や, 成分が で定義されるヘッセ行列 を用いて記述されるが,特に勾配ベクトルのみで表された最適性条件を1次の最適性条件(first-order optimality condition),ヘッセ行列も利用して表されたものを2次の最適性条件と呼ぶ.
1次の最適性条件で,最もよく利用されるのが次の カルーシュ・キューン・タッカー条件(Karush-Kuhn-Tucker condition,KKT条件)である.
点 が局所的最適解ならば,後述する制約想定の下で,適当なベクトル が存在して,ラグランジュ関数を と定義するとき,次のKKT条件が成立する.
ここで,ベクトル はラグランジュ乗数,条件 は相補性条件と呼ばれる.
一方, KKT条件は次の等式,不等式系が解 を持たないことを,二者択一定理を用いて言い換えた条件でもある.
ただし, はアクティブな不等式制約, すなわち点 において等号が成り立つ不等式制約の集合を表わす.条件(2)に現れる集合 は実行可能集合 の,点 における近似集合と考えられるが,実際に良い近似になるのは,何らかの仮定を満たす場合に限られる.この種の仮定を総称して,制約想定 (constraint qualification,CQ),あるいは正則条件と呼ぶ.キューン・タッカーの制約想定をはじめとして,数多くの制約想定が提案されているが,なかでも1次独立制約想定(LICQ)とマンガサリアン・フロモヴィッツ条件(MF 条件)が重要である.
- LICQ: は1次独立である.
- MF条件:(i) は1次独立である.(ii) を満たす が存在する.
LICQ は MF 条件より強い仮定であり,LICQ が成立するとき,ラグランジュ乗数 は一意に決まる.他方,制約想定が満たされない場合でも,点 が局所的最適解ならば,ゼロでないベクトル が存在して,次のフリッツ・ジョン条件が成立する.
フリッツ・ジョン条件は, のとき(従って としてよい),KKT 条件に一致する.これにより, を保証する条件を制約想定と呼ぶことも多い.
凸計画問題の場合, がKKT条件を満たせば, は最適解になる.しかし一般には,KKT条件は最適性を保証するとは限らない.最適性を詳しく調べるには,2次の最適性条件が必要になる.以下において,各関数は2回連続微分可能であると仮定する.即ち,2回までの偏導関数は全て連続とする.2次の最適性十分条件(second-order sufficient optimality condition)としては,次の定理がよく利用される.
今, がKKT条件を満たすとする.さらに3つの条件 (a) , (b) , (c) を満たすゼロベクトルでない任意の に対し, が成立するならば, は孤立局所最適解になる.すなわち,適当な半径 を選べば, を中心とする半径 内にある任意の可能解 に対して, が成立する.ここで, はラグランジュ関数の に関するヘッセ行列を表わす.
この十分条件と対をなす2次の最適性必要条件(second-order necessary optimality condition)としては,次の定理が知られている.
可能解 が局所的最適解で, はKKT条件を満たすとする.このとき,1次独立制約想定の下で,(a)-(c)を満たす任意の に対し, が成立する.
2次の最適性十分条件は,最適性の判定以外にも,安定性理論,感度分析,アルゴリズムの収束の議論において重要な役割を演じる.安定性理論(stability theory)と感度分析(sensitivity analysis)は,目的関数や制約関数を微小変化させたとき,最適解や最適値関数がどのように変化するかを調べる問題であり,主としてそれらの連続性を論じるのが安定性理論,微分可能性や変化率を取り扱うのが感度分析である.通常,パラメトリックな問題
や,その一般化を舞台に,最適値関数 と最適解集合 の挙動を考察する.ただし, はパラメータであり, のとき(3)は非線形計画問題 (1) に一致するものとする.
このとき, もし各関数が に関して2回連続微分可能で, が 3つの条件
- (i) 2次の最適性十分条件,
- (ii) 1次独立制約想定,
- (iii) 狭義の相補性,
すなわち, 全ての に対し, を満たすならば, に十分近い任意の に対して, 問題 (3) に対するKKT条件を満たす が の近くにただひとつ存在する.また,それらは2回連続微分可能で,条件 (i)-(iii) を満たし, は (3) の孤立局所最適解になる. さらに,それらの1回,2回の微分は (3) に対するKKT条件を用いて計算できる.この結果,ラグランジュ乗数が経済学の重要な概念であるシャドープライスを表すことがわかる.
参考文献
[1] J.F. Bonnans and A. Shapiro, Perturbation Analysis of Optimization Problems, Springer, 2000.
[2] A.V. Fiacco, Introduction to Sensitivity and Stability Analysis in Nonlinear Programming, Academic Press, 1983.
[3] A.V. Fiacco and G.P. McCormick, Nonlinear Programming, SIAM, 1990.
[4] 福島雅夫,非線形最適化の基礎,朝倉書店,2001.
[5] 今野浩,山下浩,非線形計画法,日科技連,1978.
[6] 川崎英文,極値問題,横浜図書,2004.