制約付き最適化とは? わかりやすく解説

Weblio 辞書 > 同じ種類の言葉 > 情報 > コンピュータ > 最適化 > 制約付き最適化の意味・解説 

制約付き最適化

読み方せいやくつきさいてきか
【英】:constrained optimization

概要

制約付き最適化とは, ベクトル空間上の連続関数適当な(連続)集合上で最適化する問題およびその解法である. 代表的な制約付き最適化問題には線形計画問題, 2次計画問題, 多面体上の凸(非線形)関数最適化問題, 凸計画問題などがあり, 問題応じた解法考案されている. 一般的な問題にも適用できる解法としては, 逐次2次計画法内点法がある.

詳説

制約付き最適化とは, n\,次元ベクトル空間上の連続関数f(x)\,適当な(連続)集合上で最適化する問題一般に次の形で記述される.


\begin{array}{ll}
\mbox{min}_x & f(x) \\
\mbox{s. t.} & g_i(x) \le 0 \ (i=1,\ldots, m), 
\ \ \ h_j(x) = 0 \ (j=1,\ldots, l).
\end{array} (1)\,


代表的な制約付き最適化問題には (A) 線形計画問題 (linear programming); (B) 2次計画問題 (quadratic programming); (C) 多面体上の凸(非線形)計画問題; (D) 凸計画問題 (convex programming); (E) (一般の) 非線形計画問題 (nonlinear programming)(g, h, f\,一般の非線形関数である場合);があり, 各問題特徴生かした解法研究されている.以下では主として(E)解法について述べる.

 問題(1)対すラグランジュ関数 (Lagrangian function)を次のように定義する.


L(x,\lambda, \zeta) := f(x) + \sum_{i=1}^m \lambda_i g_i(x) 
+ \sum_{j=1}^l \zeta_j h_j(x).


解法は, 最適性必要条件であるカルーシュ・キューン・タッカー条件 (Karush-Kuhn-Tucker condition)


\begin{array}{l}
\nabla_x L(x,\lambda,\zeta)=0, \\
\lambda_i g_i(x) = 0 \qquad (i=1, \ldots, m), \\
g_i(x) \leq 0, \ \lambda_i \geq 0 \qquad (i=1, \ldots, m), \\
h_j(x) = 0 \qquad (j=1, \ldots, l), 
\end{array} (2)\,
    


満たす点(KKT点)を求めることを目的として設計される.探索方向定めその方向に適当なステップ幅だけ進むことを繰り返して漸近的にKKT点に収束する点列生成する. 主な解法としては, (1) 射影勾配法 (gradient projection method)および有効制約法 (active set method); (2) ペナルティ関数法 (penalty function method); (3) 乗数法 (multiplier method); (4) 逐次2次計画法 (sequential quadratic programming method); (5) 内点法 (interior point method)が知られている. これらの内で実用性が高いとされるのは逐次2次計画法内点法であるが, 制約領域多面体である場合は有効制約法も用いられる.現状では, 逐次2次計画法により数百変数程度中規模問題が, さらに内点法によって数千, 数万変数大規模問題ある程度解けるようになりつつある.

 勾配射影法は, 実行可能領域 (やその境界) の接平面集合上に目的関数勾配射影してその(逆)方向に進む方法で、等式制約のみの問題対するものが基本形である [2].有効制約法は制約領域多面体である場合対す勾配射影法拡張である [2].

 ペナルティ関数法は, 問題を無制約最適化問題変換して解く方法であり,60年代研究された[2, 4].この方法では, 目的関数制約満たさないことに対すペナルティ項を付加したペナルティ関数 (penalty function) を導入する. ペナルティ項が十分大きければ, ペナルティ関数最小化することによって問題近似的に解けるわけである. 典型的なペナルティ関数一つ


F_\rho^{\rm P}(x) := f(x) + \rho_1 \max_i[0, g_i(x)]^2 + \rho_2 \|h(x)\|^2 (3)\,


である. \rho = (\rho_1,\rho_2)\,は正のパラメータでこれをペナルティパラメータと呼ぶ. 実際には, 大きな\rho\,の値に対してF_\rho^{\rm P}\,をいきなり最適化するのではなく, \rho\,の値を徐々に大きくしながらF_\rho^{\rm P}\,を無制約最適化するというステップ繰り返して問題を解く.\rho\,大きくなるにつれてF_\rho^{\rm P}\,悪条件になり無制約最適化難しくなることが欠点とされる. 類似の方法不等式制約を必ず満たすようにペナルティ項を付加したものは, 障壁関数法 (barrier function method)と呼ばれる.

 上に述べたペナルティ法の欠点克服するために考えられたのが乗数法である [1, 3]. 乗数法は, 基本的に等式制約のみの問題を扱うための解法であり,\rho\,の他にラグランジュ乗数(Lagrangian multiplier)\zeta_i\,導入して次のように定義される拡張ラグランジュ関数 (augumented Lagrangian function)


F_{(\rho,\zeta)}^{\rm M}(x) :=
f(x) + \sum \zeta_j h_j(x) + \rho \|h(x)\|^2


の無制約最適化行って問題を解くものである.\rho\,が十分大きく\zeta\,が元の問題KKT点におけるラグランジュ乗数である時には, KKT点はF_{(\rho,\zeta)}^{\rm M}(x)\,極小点になる. そこで,\rho\,十分に大きくとった上で, (i)適当な方法\zeta\,推定し, (ii)F_{(\rho,\zeta)}^{\rm M}(x)\,を無制約最適化する; という2つステップ繰り返すことで, \rho\,更新することなくKKT点に収束する解法得られる. 不等式制約g_i(x)\leq0\,を持つ問題に対しては, スラック変数s_i\,導入してg_i(x) + s_i^2 = 0\, として, 等式制約直した上でこの方法を適用すればよい. 乗数法70年代研究された.

 次に70年代後半から80年代入って研究されたのが,逐次2次計画法である [2, 4, 6].逐次2次計画法では, 点x^k\,において, ラグランジュ関数L(x,\lambda,\zeta)\,2次近似し, 制約条件1次近似し得られる2次計画問題


\begin{array}{lll}
\mbox{min}_x & \frac12 (x - x^k)^{\top} H^k (x-x^k) + (x-x^k)^{\top} \nabla f(x^k) & \\
\mbox{s. t.} & g_i(x^k) + (x - x^k)^{\top} \nabla g_i(x^k) \le 0 & (i=1,\ldots,m), \\
 & h_j(x^k)+ (x-x^k)^{\top} \nabla h_j(x^k) = 0 & (j=1, \ldots, l),
\end{array}


解いてその方向に進んで次のx^{k+1}\,定める. ここでH^k\,x^k\,におけるL(x,\lambda,\zeta)\,変数x\,に関するヘッセ行列\nabla_{xx}L\,あるいはその近似行列である.

 1984年カーマーカー法(Karmarkar method)の登場以来, 内点法さまざまな制約付き最適化問題拡張された[5, 7]. 内点法には主内点法 (primal interior point method)と主双対内点法 (primal-dual interiorpoint method)の2種類がある.主内点法は, 基本的に不等式制約条件のみの最適化問題取り扱う方法で,不等式制約厳密に満たす点から出発して対数障壁関数 (log barrier function) \textstyle F_\nu^{\rm B}(x) := f(x) - \nu \sum_i \log[ - g_i(x)]逐次最小化して問題を解くものである.各\nu>0に対してF_\nu^{\rm B}\,最小化する点が作る集合中心曲線(central trajectory)という.\nu\,小さくしながらF_\nu^{\rm B}(x)\,ニュートン法 によって最小化して中心曲線追跡して問題を解く. 対数障壁関数は各不等式制約定数倍する変換に対して不変であるという自然な性質を持つ.

 現在主流となりつつある主双対内点法は, 線形計画問題対するものを拡張した次のような方法である[7]. この方法では新たに正のパラメータ\nu\,導入し,カルーシュ・キューン・タッカー条件(2)の内, \lambda_i g_i(x) = 0\,g_i(x) \leq 0\,を,


\lambda_i s_i=\nu, \ \ \ g_i(x) + s_i=0,\ \ \ s_i \geq 0\ \ \ (i=1, ..., m)


置き換え, この条件を満たす点の集合中心曲線とする. \nu\,小さくしながらニュートン法中心曲線上の点を求めることを繰り返してKKT点に収束する点列生成する.主双対内点法では,ラグランジュ乗数\lambda_i\,導入することでペナルティ関数などの欠点であったKKT点の近くでの悪条件克服している.

 上述の各解法においてはKKT点や中心曲線上の点への近さ適当なメリット関数(merit function)で測り,各反復ではそれを減少させるようにステップ幅を選ぶ. メリット関数探索方向生成法並んで解法設計上重要な要素である. 無制約最小化することで元の制約付き最適化問題KKT点が得られるような関数を厳密ペナルティ関数(exact penalty function)という. ペナルティ関数(3)で項\rho_1\max[0, g_i(x)]^2\,, \rho_2\|h\|^2それぞれ\rho_1\max[0, g_i(x)],\rho_2\|h\|_1置き換えたものはL_1\,厳密ペナルティ関数呼ばれ, 乗数法逐次2次計画法対すメリット関数としてよく用いられる.

 なお, 非線形関数勾配ヘッセ行列効率的な計算には高速自動微分法が有効であり,ヘッセ行列近似行列逐次構成する方法としては準ニュートン法がある. また, 線形計画問題対す多項式内点法理論凸計画問題拡張されている[5].



参考文献

[1] D. P. Bertsekas: Nonlinear Programming, Athena Scientific, 1997.

[2] R. Fletcher: Practical Methods of Optimization, John Wiley, 1987.

[3] 藤田宏, 今野浩, 田邊國士:『最適化法』, 岩波書店, 1994.

[4] 福島雅夫:『数理計画入門』, 朝倉書店, 1996.

[5] Y. Nesterov and A. Nemirovskii: Interior Point Polynomial Algorithms in Convex Programming, SIAM, 1994.

[6] J. Nocedal and S. Wright: Numerical Optimization, Springer, 1999.

[7] 小島政和土谷隆,水野眞治,矢部博:『内点法』,朝倉書店2001

「OR事典」の他の用語
非線形計画:  分数計画問題  分枝限定法  制約なし最適化  制約付き最適化  劣勾配  勾配  勾配法




制約付き最適化と同じ種類の言葉


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「制約付き最適化」の関連用語

制約付き最適化のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



制約付き最適化のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本オペレーションズ・リサーチ学会日本オペレーションズ・リサーチ学会
Copyright (C) 2024 (社)日本オペレーションズ・リサーチ学会 All rights reserved.

©2024 GRAS Group, Inc.RSS