このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
优化工具箱™ソルバーは4つの一般的なカテゴリに分類できます。
このグループのソルバーは,開始点x0
の近くにある目的関数の局所的最小値を見つけようとします。これらのソルバーは,制約なしの最適化,線形計画法,二次計画法,錐計画法,および一般的な非線形計画法の問題を扱います。
このグループのソルバーは,関数集合の最大値を最小化する(fminimax
)か関数集合が指定された値より小さくなる位置を見つけようとします(fgoalattain
)。
このグループのソルバーは,スカラーまたはベクトル値の非線形方程式f (x) = 0の解を開始点x0
の近くで見つけようとします。方程式を解くことはf (x)の最小ノルムをx0
の近くで探すことと等価であるため最適化の一形式と見なすことができます。
このグループのソルバーは,二乗和を最小化しようとします。この種の問題はモデルをデータに当てはめるときによく使われます。これらのソルバーは,非負の解を探す問題,境界値問題,線形制約問題,パラメーター化された非線形モデルをデータに当てはめる問題を扱います。
詳細は,优化工具箱の関数が扱う問題を参照してください。最小化用のソルバーの選択については、最適化の意思決定表を参照してください。
以下の形式の最小化の最適化問題では
一般的に制約が用いられます。f (x)は"目的関数"と呼ばれます。通常、f (x)は双
型のスカラー関数で,xは双
型のベクトルまたはスカラーです。ただし,多目的関数の最適化,方程式解法,および一部の二乗和の最小化は,双
型のベクトルまたは行列の目的関数F (x)をもつことができます。最小化ではなく最大化の Optimization Toolbox ソルバーを使用するには目的関数の最大化を参照してください。
ソルバーに渡すための目的関数は,関数ファイルまたは無名関数ハンドルを使って記述します。多くのソルバーに勾配∇f (x)を与えることができます。いくつかのソルバーにヘッシアンを与えることができます。詳細は,目的関数の作成を参照してください。制約は制約の作成で説明されるように特定の形式になります。