カルーシュ・クーン・タッカー条件

カルーシュ・クーン・タッカー条件: Karush-Kuhn-Tucker condition)あるいはKKT条件とは、非線形計画において最適点での一階導関数が満たすべき条件を指す。ラグランジュの未定乗数法が等式制約のみを扱うのに対して、KKT条件を用いた解法は不等式制約も扱うことができる。KKT条件に対応する連立方程式は、特殊な場合を除くと解析的に閉じた形の式により直接的に解くことはできない(通常は反復法を用いることになる)。すでにKKT条件の連立方程式の数値的な解法は数多く確立されており、それらを用いることが一般的である。KKT条件は線形計画法における主双対内点法などの解法において、重要な役割を持つ。 なお、カルーシュの先行が広く知られるようになる以前の文献等ではクーン・タッカー条件(KT条件)と書かれていた。

対象となる非線形計画問題

次のような非線形計画問題を考える。

Minimize f ( x ) {\displaystyle {\text{Minimize}}\;f(x)}
subject to g i ( x ) 0 , h j ( x ) = 0 {\displaystyle {\text{subject to}}\;g_{i}(x)\leq 0,\;h_{j}(x)=0}

このとき、x が変数、f が目的関数、gi (i = 1, 2, ... , m) は不等式制約を表す関数、hj (j = 1, 2, ... , l) は等式制約を表す関数である。不等式制約と等式制約の数はそれぞれ m および l で表す。

この際、KKT条件が局所値の必要条件となるためには、正規条件と呼ばれるいくつかの条件のうちの1つを満たす必要がある。一例として、f凸関数で、かつ gi および hjアフィン関数であるなどの条件がある.

(なお、不等式制約条件 g i ( x ) 0 {\displaystyle \;g_{i}(x)\leq 0\;} は無制約のスラック変数 s i {\displaystyle s_{i}} を用いることで、 等式制約条件 g i ( x ) + s i 2 = 0 {\displaystyle \;g_{i}(x)+s_{i}^{2}=0} に置きかえて扱うこともできる.)

必要条件

目的関数 f : R n R {\displaystyle f\colon \mathbb {R} ^{n}\to \mathbb {R} } と制約の関数 g i : R n R , h j : R n R {\displaystyle g_{i}\colon \mathbb {R} ^{n}\to \mathbb {R} ,\,h_{j}\colon \mathbb {R} ^{n}\to \mathbb {R} } x {\displaystyle x^{*}} において連続かつ微分可能であるとする。もし x {\displaystyle x^{*}} が目的関数の極小値を与えるのなら、KKT乗数と呼ばれる μ i ( i = 1 , , m ) , λ j ( j = 1 , , l ) {\displaystyle \mu _{i}(i=1,\dots ,m),\lambda _{j}(j=1,\dots ,l)} で以下を満たすものが存在する。

停留性
For maximizing f(x): f ( x ) = i = 1 m μ i g i ( x ) + j = 1 l λ j h j ( x ) , {\displaystyle \nabla f(x^{*})=\sum _{i=1}^{m}\mu _{i}\nabla g_{i}(x^{*})+\sum _{j=1}^{l}\lambda _{j}\nabla h_{j}(x^{*}),}
For minimizing f(x): f ( x ) = i = 1 m μ i g i ( x ) + j = 1 l λ j h j ( x ) , {\displaystyle -\nabla f(x^{*})=\sum _{i=1}^{m}\mu _{i}\nabla g_{i}(x^{*})+\sum _{j=1}^{l}\lambda _{j}\nabla h_{j}(x^{*}),}
主問題の実行可能条件
g i ( x ) 0 ,  for all  i = 1 , , m {\displaystyle g_{i}(x^{*})\leq 0,{\mbox{ for all }}i=1,\ldots ,m}
h j ( x ) = 0 ,  for all  j = 1 , , l {\displaystyle h_{j}(x^{*})=0,{\mbox{ for all }}j=1,\ldots ,l\,\!}
双対問題の実行可能条件
μ i 0 ,  for all  i = 1 , , m {\displaystyle \mu _{i}\geq 0,{\mbox{ for all }}i=1,\ldots ,m}
スラック変数に関する条件
μ i g i ( x ) = 0 , for all i = 1 , , m . {\displaystyle \mu _{i}g_{i}(x^{*})=0,{\mbox{for all}}\;i=1,\ldots ,m.}

特に m = 0 の場合は等式制約のみを持つ問題となるので、KKT条件はラグランジュの未定乗数が満たすべき条件と同値になり、KKT乗数はラグランジュ乗数と呼ばれる。仮に、いくつかの関数が微分不可能である場合、劣微分を用いたKKT条件を同様に定めることができる。

注記:制約条件が「制約想定」と呼ばれる条件を満たしていない場合には、KKT条件から求めた解は必ずしも最適性を満たさないことに注意が必要である. KKT条件が最適性条件となるためには、その制約条件が「Guinard制約想定」と呼ばれる条件を満たしていることが必要十分である(参考:福島,2001年).

関連項目

参考文献

  • 福島雅夫,「非線形最適化の基礎」,朝倉書店,(2001年4月20日).ISBN 978-4-254-28001-2。
  • 田村, 明久、村松, 正和『最適化法』共立出版〈工系数学講座 17〉、2002年4月1日。ISBN 4-320-01616-5。 
  • 「制約想定を必要としない新しい最適性必要条件の導出」(京都大学、2020年11月09日)
  • 表示
  • 編集