非線形計画法

非線形計画法

執筆済 最適化数理最適化NLP

目的関数か制約のどちらかが非線形な最適化問題。Nonlinear Programming、NLP。

minxf(x)s.t.gi(x)0,hj(x)=0

最適性の条件#

制約付きの点が最適である条件は KKT 条件で与えられる。 凸問題なら必要十分、非凸なら必要条件にとどまる。

主な解法#

手法 考え方
逐次二次計画法 (SQP) 各反復で二次計画に近似して解く
内点法 制約を対数バリアで目的関数に取り込み、内部から近づく
拡張ラグランジュ法 ペナルティと乗数を併用
有効制約法 いま効いている制約だけを等式として扱う

大規模で滑らかな問題では内点法、中規模で高精度が要るなら SQP、 という使い分けがおおよその目安。

何が保証されるのか#

非凸の NLP で得られるのは、原則として 局所最適解(正確には KKT 点)。 大域最適性を主張するには凸性か、大域最適化専用の手法が要る。

参考文献#

ノート一覧を閉じる