反復法による多変数の最適化問題(制約なし)の簡易まとめ

反復法については複数のアプローチがあるけど、わかりやすくまとめたものがあまり無いなぁ、と思って検索していたら、
次の東工大卒業論文が簡潔でわかりやすかった。

■「無制約非線形最適化問題に対するアルゴリズムの比較」
http://www.is.titech.ac.jp/~kojima/lab/thesis/2007/0211889.pdf

反復法による解法は、「探索ベクトル」の決定方法と「ステップ幅」の決定方法で大きくわけることができる。

■探索方向ベクトルの決定

  • 最急降下法
    • 目的関数の勾配ベクトルの逆方向に探索方向ベクトルを取る。実装が簡単。収束が遅い。
  • ニュートン法
    • 目的関数を局所的に2次近似して、探索方向ベクトルを決める。少ない反復回数で収束する。探索方向を決めるためにヘッセ行列の計算が必要。ヘッセ行列が正定値であることが前提。
  • レーベンバーグ・マーカート法(修正ニュートン法
    • ヘッセ行列が正定値になるように修正をして探索方向を決める。
  • 準ニュートン法
  • 共役勾配法
    • 共約勾配方向に探索方向を取る。目的関数が2次関数の場合は実装が容易で最終降下法よりも収束が早い。

■ステップ幅の決定

  • 直線探索
  • Armijoの基準
  • Wolfeの基準

これなら分かる最適化数学―基礎原理から計算手法まで

これなら分かる最適化数学―基礎原理から計算手法まで


ニューメリカルレシピ・イン・シー 日本語版―C言語による数値計算のレシピ

ニューメリカルレシピ・イン・シー 日本語版―C言語による数値計算のレシピ