逐次二次計画法
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/02/16 15:02 UTC 版)
逐次二次計画法(ちくじにじけいかくほう、英: sequential quadratic programming)は非線形最適化のための反復解法の一つである。逐次二次計画法は目的関数と制約関数の両方が二階微分可能であるような問題に対して使われる。
逐次二次計画法は逐次的に二次の部分最適化問題を解く。それぞれの部分最適化問題は最適解に向かう探索方向を未知数とする二次計画問題になる。この際、問題に与えられている制約は探索方向に対して線形の条件に置き換えられる。問題が制約なしの最適化であるならば、勾配がゼロである点を見つけ出す一般のニュートン法と同様の定式化となる。また、問題が等式制約のみを持つ場合には、カルーシュ・クーン・タッカー条件(KKT条件)に対するニュートン法と同様の定式化となる。逐次二次計画法はNPSOLやSNOPT、NLPQL、OPSYC、OPTIMA、MATLAB、GNU Octave等、多数のプログラム関数ライブラリに実装されている。
基本アルゴリズム
次のような制約つきの非線形最適化問題を考える。
Optimization computes maxima and minima.
一般 | |
---|---|
微分可能 |
|
凸縮小化 | |||||||
---|---|---|---|---|---|---|---|
線形 および 二次 |
|
系列範例 (Paradigms) | |||||
---|---|---|---|---|---|
グラフ理論 |
| ||||
ネットワークフロー (最大流問題) |
|