跳到主要内容

京都大学 情報学研究科 数理工学専攻 2013年8月実施 オペレーションズ・リサーチ

Author

find #01058

Description

集合 III={1,,m}I=\{1, \ldots, m\} とし,関数 f:RnRf:\mathbb{R}^n\to\mathbb{R} を以下のように定義する.

f(x)=12xTMx+qTx\displaystyle f(\boldsymbol{x})=\frac{1}{2}\boldsymbol{x}^{\mathsf T}M\boldsymbol{x}+\boldsymbol{q}^{\mathsf T}\boldsymbol{x}

ただし,MMn×nn\times n 対称行列,q\boldsymbol{q}nn 次元ベクトルであり,T\mathsf T は転置記号を表す.

次の非線形計画問題 (P)(\text P) を考える.

(P):Minimizef(x)subject to(ai)Txbi(iI)\displaystyle (\mathrm P):\quad \begin{array}{ll}\text{Minimize} & f(\boldsymbol{x})\\ \text{subject to} & (\boldsymbol{a}^{i})^{\mathsf T}\boldsymbol{x}\le b_i\quad(i\in I)\end{array}

ここで,ai (iI)\boldsymbol{a}^{i}\ (i\in I)nn 次元定数ベクトルであり,bi (iI)b_i\ (i\in I) は定数である.

問題 (P)(\text P) に対して,次のカルーシュ・キューン・タッカー条件(Karush-Kuhn-Tucker\text{Karush-Kuhn-Tucker} 条件)をみたすベクトル xRn\boldsymbol{x}^{*}\in\mathbb{R}^nλ=(λ1,,λm)TRm\boldsymbol{\lambda}^{*}=(\lambda_1^{*}, \ldots, \lambda_m^{*})^{\mathsf T}\in\mathbb{R}^m が存在すると仮定する.

{f(x)+i=1mλiai=0(ai)Txbi, λi0, ((ai)Txbi)λi=0(iI)\displaystyle \left\{\begin{array}{l}\nabla f(\boldsymbol{x}^{*})+ \displaystyle\sum_{i=1}^{m}\lambda_i^{*}\boldsymbol{a}^{i}=\boldsymbol{0}\\ (\boldsymbol{a}^{i})^{\mathsf T}\boldsymbol{x}^{*}\le b_i, \ \lambda_i^{*}\ge 0, \ \bigl((\boldsymbol{a}^{i})^{\mathsf T}\boldsymbol{x}^{*}-b_i\bigr)\lambda_i^{*}=0\quad(i\in I)\end{array}\right.

さらに,J={iI(ai)Tx=bi}J=\{i\in I\mid(\boldsymbol{a}^{i})^{\mathsf T}\boldsymbol{x}^{*}=b_i\}C={dRn(ai)Td0 (iJ)}C=\{\boldsymbol{d}\in\mathbb{R}^n\mid(\boldsymbol{a}^{i})^{\mathsf T}\boldsymbol{d}\le 0\ (i\in J)\}C0={dRn(ai)Td=0 (iJ)}C^0=\{\boldsymbol{d}\in\mathbb{R}^n\mid(\boldsymbol{a}^{i})^{\mathsf T}\boldsymbol{d}=0\ (i\in J)\} とする.

以下の問 (i)(\rm i)-(v)(\rm v) に答えよ.

(i)(\rm{i}) 任意の dRn\boldsymbol{d}\in\mathbb{R}^n に対して,f(x+d)f(x)=12dTMd+f(x)Td\displaystyle f(\boldsymbol{x}+\boldsymbol{d})-f(\boldsymbol{x})=\frac{1}{2}\boldsymbol{d}^{\mathsf T}M\boldsymbol{d}+\nabla f(\boldsymbol{x})^{\mathsf T}\boldsymbol{d} となることを示せ.

(ii)(\rm{ii}) 任意の dC\boldsymbol{d}\in C に対して,f(x)Td0\displaystyle \nabla f(\boldsymbol{x}^{*})^{\mathsf T}\boldsymbol{d}\ge 0 となることを示せ.

(iii)(\rm{iii}) 問題 (P)(\text P) の任意の実行可能解 x\boldsymbol{x} に対して,xxC\boldsymbol{x}-\boldsymbol{x}^{*}\in C となることを示せ.

(iv)(\rm{iv}) 任意の dC\boldsymbol{d}\in C に対して,dTMd0\displaystyle \boldsymbol{d}^{\mathsf T}M\boldsymbol{d}\ge 0 が成り立つとする.このとき,x\boldsymbol{x}^{*} は問題 (P)(\text P) の大域的最適解となることを示せ.

(v)(\rm{v}) x\boldsymbol{x}^{*} が問題 (P)(\text P) の局所的最適解であれば,任意の dC0\boldsymbol{d}\in C^0 に対して,dTMd0\displaystyle \boldsymbol{d}^{\mathsf T}M\boldsymbol{d}\ge 0 が成り立つことを示せ.

Kai

(i)(\rm i)

由于 MM 为对称矩阵,即 MT=MM^{\mathsf T}=M,有

f(x)=12(M+MT)x+q=Mx+q\displaystyle \nabla f(\boldsymbol{x}) = \frac12(M+M^{\mathsf T})\boldsymbol{x} +\boldsymbol{q} = M\boldsymbol{x}+\boldsymbol{q}

于是,对于任意 dRn\boldsymbol{d}\in\mathbb{R}^n,

f(x+d)f(x)=12(x+d)TM(x+d)+qT(x+d)12xTMxqTx=12dTMd+12xTMd+12dTMx+qTd=12dTMd+xTMd+qTd=12dTMd+(Mx+q)Td=12dTMd+f(x)Td\displaystyle \begin{aligned} f(\boldsymbol{x}+\boldsymbol{d})-f(\boldsymbol{x}) &= \frac12(\boldsymbol{x}+\boldsymbol{d})^{\mathsf T} M(\boldsymbol{x}+\boldsymbol{d}) +\boldsymbol{q}^{\mathsf T}(\boldsymbol{x}+\boldsymbol{d}) -\frac12\boldsymbol{x}^{\mathsf T}M\boldsymbol{x} -\boldsymbol{q}^{\mathsf T}\boldsymbol{x} \\ &= \frac12\boldsymbol{d}^{\mathsf T}M\boldsymbol{d} +\frac12\boldsymbol{x}^{\mathsf T}M\boldsymbol{d} +\frac12\boldsymbol{d}^{\mathsf T}M\boldsymbol{x} +\boldsymbol{q}^{\mathsf T}\boldsymbol{d} \\ &= \frac12\boldsymbol{d}^{\mathsf T}M\boldsymbol{d} +\boldsymbol{x}^{\mathsf T}M\boldsymbol{d} +\boldsymbol{q}^{\mathsf T}\boldsymbol{d} \\ &= \frac12\boldsymbol{d}^{\mathsf T}M\boldsymbol{d} +(M\boldsymbol{x}+\boldsymbol{q})^{\mathsf T}\boldsymbol{d} \\ &= \frac12\boldsymbol{d}^{\mathsf T}M\boldsymbol{d} +\nabla f(\boldsymbol{x})^{\mathsf T}\boldsymbol{d} \end{aligned}

上面第三个等式利用了 xTMd=dTMx\boldsymbol{x}^{\mathsf T}M\boldsymbol{d}=\boldsymbol{d}^{\mathsf T}M\boldsymbol{x},第四个等式利用了 M=MTM=M^{\mathsf T}.

因此

f(x+d)f(x)=12dTMd+f(x)Td(dRn)\displaystyle f(\boldsymbol{x}+\boldsymbol{d})-f(\boldsymbol{x}) = \frac12\boldsymbol{d}^{\mathsf T}M\boldsymbol{d} +\nabla f(\boldsymbol{x})^{\mathsf T}\boldsymbol{d} \quad (\forall \boldsymbol{d}\in\mathbb{R}^n) \qquad \Box

(ii)(\rm ii)

由 KKT 条件

f(x)Td=i=1mλi(ai)Td=iJλi(ai)TdiIJλi(ai)Td(dC)\displaystyle \begin{aligned} \nabla f(\boldsymbol{x}^*)^{\mathsf T}\boldsymbol{d} &= -\sum_{i=1}^{m}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d} \\ &= -\sum_{i\in J}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d} -\sum_{i\in I\setminus J}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d} \quad (\forall \boldsymbol{d}\in C) \end{aligned}

乘子约束为 λi0 (iI)\lambda_i^*\ge0\ (i\in I). 当 iJi\in J 时,由 dC\boldsymbol{d}\in C, 有 (ai)Td0\displaystyle (\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d}\le0 . 从而 iJλi(ai)Td0\displaystyle -\sum_{i\in J}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d}\ge0

另一方面,当 iIJi\in I\setminus J 时,由 x\boldsymbol{x}^* 的可行性以及 iJi\notin J,有(ai)Txbi\displaystyle(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x}^*\le b_i(ai)Txbi(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x}^*\ne b_i 成立, 因此 (ai)Tx<bi.\displaystyle(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x}^*<b_i.

再由KKT条件中的互补松弛条件 ((ai)Txbi)λi=0\displaystyle \left((\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x}^*-b_i\right)\lambda_i^*=0, 可得 λi=0\lambda_i^*=0,从而 iIJλi(ai)Td=0.\displaystyle -\sum_{i\in I\setminus J}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d}=0.

综上所述

f(x)Td0(dC).\displaystyle \nabla f(\boldsymbol{x}^*)^{\mathsf T}\boldsymbol{d}\ge0 \quad (\forall\boldsymbol{d}\in C). \qquad \Box

(iii)(\rm iii)

d:=xx\displaystyle\boldsymbol{d}:=\boldsymbol{x}-\boldsymbol{x}^*. 由于 x\boldsymbol{x} 是问题 (P)(\text P) 的可行解,(ai)Txbi(iJI).\displaystyle(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x}\le b_i\quad(i\in J\subseteq I).

又由 JJ 的定义,(ai)Tx=bi(iJ).\displaystyle(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x}^*=b_i\quad(i\in J).

因此,对于任意 iJi\in J,

(ai)Td=(ai)T(xx)=(ai)Tx(ai)Tx0\displaystyle \begin{aligned} (\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d} &= (\boldsymbol{a}^i)^{\mathsf T}(\boldsymbol{x}-\boldsymbol{x}^*) \\ &= (\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x} -(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x}^* \\ &\le0 \end{aligned}

d=xxC.\displaystyle\boldsymbol{d}=\boldsymbol{x}-\boldsymbol{x}^*\in C.\qquad \Box

(iv)(\rm iv)

任取问题 (P)(\text P) 的一个可行解 x\boldsymbol{x}。由 (iii)(\rm iii),有 d=xxC.\displaystyle\boldsymbol{d}=\boldsymbol{x}-\boldsymbol{x}^*\in C.

(i)(\rm i)

f(x+d)f(x)=12dTMd+f(x)Tdf(x)Td(dTMd0)0\displaystyle \begin{aligned} f(\boldsymbol{x}^*+\boldsymbol{d})-f(\boldsymbol{x}^*) &= \frac12\boldsymbol{d}^{\mathsf T}M\boldsymbol{d} +\nabla f(\boldsymbol{x}^*)^{\mathsf T}\boldsymbol{d} \\ &\ge \nabla f(\boldsymbol{x}^*)^{\mathsf T}\boldsymbol{d} \qquad (\boldsymbol{d}^{\mathsf T}M\boldsymbol{d}\ge0) \\ &\ge0 \end{aligned}

其中最后一个不等式由 (ii)(\rm ii) 得到.

因此

f(x)f(x+d)=f(x).\displaystyle f(\boldsymbol{x}^*) \le f(\boldsymbol{x}^*+\boldsymbol{d}) = f(\boldsymbol{x}).

又因为 x\boldsymbol{x}^* 是问题 (P)(\text P) 的可行解,所以 x\boldsymbol{x}^* 是问题 (P)(\text P) 的全局最优解。\qquad \Box

(v)(\rm v)

设问题 (P)(\text P) 的可行域为 X:={xRn | (ai)Txbi, iI}.\displaystyle X:=\left\{\boldsymbol{x}\in\mathbb{R}^n\ \middle|\ (\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x}\le b_i, \ i\in I\right\}.

xX\boldsymbol{x}^*\in X,定义其 ε\varepsilon-邻域为 Bε(x):={xRn |  xx<ε}.\displaystyle B_{\varepsilon}(\boldsymbol{x}^*) :=\left\{\boldsymbol{x}\in\mathbb{R}^n\ \middle|\ \ ||\boldsymbol{x}-\boldsymbol{x}^*\|<\varepsilon\right\}.

由于 x\boldsymbol{x}^* 是问题 (P)(\text P) 的局部最优解,因此存在 ε>0\varepsilon>0,使得 f(x)f(x)\displaystyle f(\boldsymbol{x}^*)\le f(\boldsymbol{x}) 成立 (xBε(x)X)\quad (\forall\boldsymbol{x}\in B_{\varepsilon}(\boldsymbol{x}^*)\cap X)

任取 dC0\boldsymbol{d}\in C^0. 当 iJi\in J 时,有 (ai)Td=0\displaystyle(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d}=0, 从而 (ai)T(x+kd)=bi.(\boldsymbol{a}^i)^{\mathsf T}(\boldsymbol{x}^*+k\boldsymbol{d})=b_i.

另一方面, 当 iIJi\in I\setminus J 时,有 (ai)Tx<bi.\displaystyle (\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{x}^*<b_i. 因此存在充分小的 k>0k>0,使得 (ai)T(x+kd)<bi\displaystyle (\boldsymbol{a}^i)^{\mathsf T}(\boldsymbol{x}^*+k\boldsymbol{d})<b_i 成立.

再令 kd<εk\|\boldsymbol{d}\|<\varepsilon,则 x+kdBε(x)X.\displaystyle \boldsymbol{x}^*+k\boldsymbol{d} \in B_{\varepsilon}(\boldsymbol{x}^*)\cap X.

x:=x+kd\boldsymbol{x}:=\boldsymbol{x}^*+k\boldsymbol{d}。由 x\boldsymbol{x}^* 的局部最优性以及 (i)(\rm i), 有

f(x+kd)f(x)=12(kd)TM(kd)+f(x)T(kd)0.\displaystyle \begin{aligned} f(\boldsymbol{x}^*+k\boldsymbol{d})-f(\boldsymbol{x}^*) &= \frac12(k\boldsymbol{d})^{\mathsf T}M(k\boldsymbol{d}) +\nabla f(\boldsymbol{x}^*)^{\mathsf T}(k\boldsymbol{d})\ge0. \end{aligned}

k22dTMd+kf(x)Td0.()\displaystyle \frac{k^2}{2}\boldsymbol{d}^{\mathsf T}M\boldsymbol{d} +k\nabla f(\boldsymbol{x}^*)^{\mathsf T}\boldsymbol{d} \ge0. \qquad (*)

由于局部最优解 x\boldsymbol{x}^* 满足 KKT 条件,

f(x)Td=i=1mλi(ai)Td=iJλi(ai)TdiIJλi(ai)Td\displaystyle \begin{aligned} \nabla f(\boldsymbol{x}^*)^{\mathsf T}\boldsymbol{d} &= -\sum_{i=1}^{m}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d} \\ &= -\sum_{i\in J}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d} -\sum_{i\in I\setminus J}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d} \end{aligned}

iJi\in J 时,由 dC0\boldsymbol{d}\in C^0(ai)Td=0\displaystyle (\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d}=0 . 因此 iJλi(ai)Td=0.\displaystyle -\sum_{i\in J}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d}=0.

iIJi\in I\setminus J 时,和 (ii)(\rm ii) 同理,有 λi=0\lambda_i^*=0. 因此 iIJλi(ai)Td=0.\displaystyle-\sum_{i\in I\setminus J}\lambda_i^*(\boldsymbol{a}^i)^{\mathsf T}\boldsymbol{d}=0.

从而 kf(x)Td=0.\displaystyle k\nabla f(\boldsymbol{x}^*)^{\mathsf T}\boldsymbol{d}=0. 代入 ()(*),有 k22dTMd0.\displaystyle\frac{k^2}{2}\boldsymbol{d}^{\mathsf T}M\boldsymbol{d}\ge0. 又由 k>0k>0,得到 dTMd0(dC0)\displaystyle\boldsymbol{d}^{\mathsf T}M\boldsymbol{d}\ge0\quad(\forall\boldsymbol{d}\in C^0)\qquad \Box