制御工学で非線形計画のKarush-Kuhn-Tucker条件(KKT条件)を触れることがあったのでまとめる。非専門分野なのでご指摘頂けると嬉しいです。
この節では、不等式制約と等式制約付き非線形計画のKKT条件について触れる。KKT条件は、非線形計画問題の最適性の必要条件である。非線形計画は下式で与えるとする。
\begin{eqnarray} \min & &f(x) \\ s.t. & &g_i(x)\leq 0\\ & &h_j(x) = 0 \tag{1} \end{eqnarray}
このときのKKT条件は下式で与えられる。このKKT条件を導出するのが本記事の目的である。
\begin{eqnarray} &\nabla f(x) + \sum_{i=1}^m y_i &\nabla g_i(x) + \sum_{j=1}^l z_i \nabla &h_j(x)=0\tag{2.1},\\ &h_j(x) = 0\tag{2.2},\\ &g_i(x) \leq 0\tag{2.3},\\ &y_i \geq 0, \tag{2.4} \\ &y_i g_i (x) = 0 \tag{2.5} \end{eqnarray}
KKT条件をFarkasの補題を用いて導出する。局所最適解近傍に着目してFarkasの補題を用いて導出するのが基本的な方針である。
任意の行列$A$と任意のベクトル$b$に対して次の命題がいずれか一方が成り立つ。
(1) $Ax =b$、$x\geq0$を満たす$x$が存在する。
(2) $A^Ty \leq 0$、$b^Ty > 0$を満たす$y$が存在する。
Farkasの補題から簡単な式変形をすることで系1を得る。
次の命題がいずれか一方が成り立つ。
(1) $Au+Bv+c =0$、$u\geq0$を満たす$u$、$v$が存在する。
(2) $A^Ty \leq 0$、$B^Ty = 0$、$c^Ty < 0$を満たす$y$が存在する。
$A = [A,B,-B], x = [u,v_+,v_-]^T, v =v_+ -v_-, b=-c$とおく。Farkasの補題より系1が求まる。
Mangasarizan-Fronovitz制約を想定する(MF制約想定)。
MF制約想定とは
$\nabla h_j(x) (j=1,2,..l)$は1次独立である。$\nabla g_i(x)^Ts<0$かつ$\nabla h_j(x)^Ts=0$を満たす$s$が存在する。ただし、$I(x) = {i | g_i(x)=0 }$である。
$x^*$を式(1)の局所最適解とする。ただし、$f$、$h_j$は微分可能であるものとする。このとき、以下を満たす$s$は存在しない。
\begin{eqnarray} \nabla f(x)^Ts < 0 \\ \nabla g_i(x)^Ts < 0\\ \nabla h_j(x)^Ts = 0 \tag{3} \end{eqnarray}
許容方向$s$が存在すると仮定する。$x^*$が局所最適解であるとする。
不等式制約について、
\begin{eqnarray} g_i(x^*+ \alpha s) = g_i(x^*)+\alpha \nabla g_i(x^*)^Ts +o(\alpha) \end{eqnarray}
十分小さい$\alpha$では$g_i(x^*+\alpha s)<0$であり、不等式制約を満たすことがわかる。
等式制約について
\begin{eqnarray} h_j(x^*+\alpha s) = h_j(x^*)+\alpha \nabla h_j(x^*)^Ts +o(\alpha) \end{eqnarray}
十分小さい$\alpha$では$h_j(x^*+\alpha s)=0$であり、等式制約を満たすことがわかる。
$x^{*}$は局所最適解であるので、十分小さい$\alpha$では下式が成り立つ。
\begin{eqnarray} f(x^*+\alpha s)=f(x^*)+\alpha f(x^*)^Ts\geq f(x^*) \end{eqnarray}
しかし、$\nabla f(x^*)^Ts < 0$なので矛盾する。よって、$s$は存在しない。
&&& KKT条件
\begin{eqnarray}
&\nabla f(x) + \sum_{i=1}^m y_i &\nabla g_i(x) + \sum_{j=1}^l z_i \nabla &h_j(x)=0\tag{2.1},\\
&h_j(x) = 0\tag{2.2},\\
&g_i(x) \leq 0\tag{2.3},\\
&y_i \geq 0, \tag{2.4} \\
&y_i g_i (x) = 0 \tag{2.5}
\end{eqnarray}
&&&prf KKT条件の導出
式(3)より系1(2)が成り立たないことがわかる。よって、系1(1)が成り立つ。
\begin{eqnarray} &\nabla f(x) + \sum_{i\in I(x)} y_i &\nabla g_i(x) + \sum_{j=1}^l z_i \nabla &h_j(x)=0\\ &y_i \geq 0 \end{eqnarray}
$i\notin I(x)$のとき$y_i=0$とおけば、$y_i \nabla g_i(x) = 0$、$y_i g_i(x) = 0$である。
\begin{eqnarray} &\nabla f(x) + \sum_{i=1}^m y_i &\nabla g_i(x) + \sum_{j=1}^l z_i \nabla &h_j(x)=0\\ &y_i \geq 0\\ &y_i g_i (x) = 0 \end{eqnarray}
等式制約と不等式制約を満足する必要があることを思い出せば下式を得る。
\begin{eqnarray} &h_j(x) = 0,\\ &g_i(x) \leq 0 \end{eqnarray}
以上より、式(2.1)~(2.5)のKKT条件を得る。
引用
KKT条件をラグランジュ双対関数を用いて導出する。ラグランジュ双対関数とSlaterの制約に着目して、強双対定理を仮定してKKT条件を導出するのが基本的な方針である。
引用
この節では、不等式制約付き非線形計画のKKT条件について触れる。
非線形計画は下式で与えるとする。
\begin{eqnarray} \min & &f(x) \\ s.t. & &g_i(x)\leq 0 \tag{4} \end{eqnarray}
このときのKKT条件は下式で与えられる。このKKT条件を導出するのが本記事の目的である。
\begin{eqnarray} &\nabla f(x) + \sum_{i=1}^m y_i &\nabla g_i(x)=0\tag{5.1},\\ &g_i(x) \leq 0\tag{5.2},\\ &y_i \geq 0, \tag{5.3} \\ &y_i g_i (x) = 0 \tag{5.4} \end{eqnarray}
KKT条件をFritz Johnの定理を用いて導出する。
局所最適解近傍に着目してGordanの二者択一の定理を用いてFritz Johnの定理を導出し、その後線形独立制約を想定してKKT条件を導出するのが基本的な方針である。はじめにFritz Johnの定理とGordanの二者択一定理を紹介し、Fritz Johnの定理を導出する。
不等式制約つき問題の局所最適解$x$において、$f$、$g_i$が微分可能ならば、$\left(z_{0},z\right) \neq (0,0)$となる実数$z_0$と$l$次元ベクトル$z$が存在し、式(6)が成り立つ。
\begin{eqnarray} &z_0 \nabla f(x) +\sum_{i=1}^{l}z_i\nabla g_i(x) = 0,\\ &g_i(x) \leq 0,\\ &z_i \leq 0, \\ &z_i g_i(x) = 0. \tag{6} \end{eqnarray}
任意の行列$A$に対して次の命題がいずれか一方が成り立つ。
(1) $Ax > 0 $を満たす$x$が存在する。
(2) $A^Ty = 0$、$y \geq 0$、$y \neq 0$を満たす$y$が存在する。
$x^{*}$が局所最適解ならば式7を満たすベクトル$s$は存在しない。
\begin{eqnarray} \nabla f(x)^Ts < 0 \\ \nabla g_i(x)^Ts < 0 ,i \in I(x) \tag{7} \end{eqnarray}
式7より、$Ax>0$を満たす$x$は存在しない。
ただし、
\begin{eqnarray} A = \left( \begin{array}{ccc} -\nabla f(x)^T & \\ -\nabla g_1(x)^T &\\ \vdots &\\ -\nabla g_k(x)^T \end{array} \right) \end{eqnarray}
Gordanの二者択一定理(1)が成り立たないので(2)が成り立つ。つまり、$A^Ty = 0$、$y \geq 0$、$y \neq 0$を満たす$y$が存在する。
\begin{eqnarray} A^Ty = \left(-\nabla f(x),-\nabla g_1(x),\cdots ,-\nabla g_k(x)\right)\left( \begin{array}{ccc} y_0 \\ y_1 \\ \vdots \\ y_k \end{array} \right)\\ = -y_0 \nabla f(x) - y_1 \nabla g_1(x) \cdots - y_k \nabla g_k(x) = 0 \end{eqnarray}
まとめると、
\begin{eqnarray} y_0 \nabla f(x) + \sum_{i \in I(x)}y_i \nabla g_i(x) = 0 \end{eqnarray}
$i \notin I(x)$のとき、$y_i = 0$とおけば、$y_i \nabla g_i(x) = 0$、$y_i g_i(x) = 0$である。
$i \in I(x)$のとき$g_i(x)=0$なので$y_i g_i(x) = 0$である。
不等式制約$g_i(x) \leq 0$を満たす必要があることを思い出せば、Fritz Johnの定理を得る。
\begin{eqnarray} &y_0 \nabla f(x) +\sum_{i=1}^{l}y_i\nabla g_i(x) = 0,\\ &g_i(x) \leq 0,\\ &y_i \leq 0, \\ &y_i g_i(x) = 0. \end{eqnarray}
線形独立制約を想定する。Fritz Johnの定理より$y_0=0$と仮定すると、線形独立制約想定より$y_i=0$となり矛盾する。よって、$y_0 > 0$である。$y_i = y_i /y_0$と改めて書き直せばKKT条件をえる。
\begin{eqnarray} &\nabla f(x) + \sum_{i=1}^m y_i &\nabla g_i(x)=0,\\ &g_i(x) \leq 0,\\ &y_i \geq 0, \\ &y_i g_i (x) = 0 \end{eqnarray}
引用
Slaterの制約想定を仮定するとラグランジュ双対関数において強双対定理がなぜ成り立つのかまだ理解できていないです。
引用