MATLAB Function Reference    

optimset

最適化オプションパラメータ構造体を作成、または、編集

表示

詳細

options = optimset('param1',value1,'param2',value2,...) は、options と名付けた最適化オプション構造体を作成します。この中で、指定したパラメータ (param) は、指定した値をもっています。いくつかの指定しないパラメータは、[] で設定されます(値 [] をもつパラメータは、options が、最適化関数に渡されたとき、そのパラメータにデフォルト値を使用することを意味しています)。パラメータ名をユニークに識別できることが目的で、フルに名前を設定する必要はありません。パラメータ名に対して、大文字、小文字の区別はありません。

optimset は、引数を設定しないで、それ自身で使用すると、正しい値をもつパラメータの一覧を表示します。

options = optimset (入力引数なし) は、すべてのフィールドに [] が設定されているオプション構造体 options を作成します。

options = optimset(optimfun) は、最適化関数 optimfun でのすべてのパラメータ名とそのデフォルト値をもつ最適化構造体 options を作成します。

options = optimset(oldopts,'param1',value1,...) は、oldopts をコピーし、指定したパラメータに指定した値を設定したものを作成します。

options = optimset(oldopts,newopts) は、既に存在しているオプション構造体 oldopts と新しいオプション構造体 newopts を組み合わせて、新しい構造体を作成します。newopts の中の空でないパラメータが、対応する oldopts の中の古いパラメータを書き換えます。

パラメータ

MATLAB 関数や Optimization Toolbox の関数で使用される最適化パラメータ

パラメータ

詳細
Display
'off' | 'iter' | {'final'}
表示レベル。'off' は、表示なし。'iter' は、各繰り返しで出力を表示。'final' は、最終出力のみを表示。
MaxFunEvals
正の整数
使用できる関数計算の最大回数
MaxIter
正の整数
使用できる最大回数
TolFun
positive scalar
関数値に関する許容誤差
TolX
正のスカラ
関する許容誤差

Optimization Toolbox の関数で使用する最適化パラメータ(各パラメータに関する詳細な情報については、Optimization Toolbox User's Guide の中のOptimization Options Parameters とこれらのパラメータを使用している最適化関数を参照してください)。

プロパティ

詳細
DerivativeCheck
'on' | {'off'}
ユーザが設定する解析的な微係数(勾配、または、ヤコビアン)と有限差分微係数を比較
Diagnostics
'on' | {'off'}
最小化、または、解く関数に関する警告情報を印刷
DiffMaxChange
正のスカラ | {1e-1}
有限差分による微係数を計算するときの変数の中の最大変化量
DiffMinChange
正のスカラ | {1e-8}
有限差分による微係数を計算するときの変数の中の最小変化量
GoalsExactAchieve
正のスカラ 整数 | {0}
厳密な意味で、達成したゴールの数(過達成、または、劣達成ではない)
GradConstr
'on' | {'off'}
ユーザにより定義された非線形制約に対する勾配
GradObj
'on' | {'off'}
ユーザ定義の目的関数に対する勾配
Hessian
'on' | {'off'}
Hessian for the objective function defined by the user.
HessMult
function | {[]}
ユーザ定義の目的関数に対するヘシアン
HessPattern
sparse matrix |{sparse matrix of all ones}
有限差分に関するヘシアンのスパースパターン。行列のサイズは、n 行 n 列です。ここで、n は、初期出発点 x0 の中の要素数です。
HessUpdate
{'bfgs'} | 'dfp' | 'gillmurray' | 'steepdesc'
準ニュートン更新法
Jacobian
'on' | {'off'}
ユーザ定義の目的関数に対するヤコビアン
JacobMult
関数 | {[]}
ユーザ定義のヤコビアン乗数関数
JacobPattern
スパース行列 |{すべてが1のスパース行列}
有限差分に対するヤコビアンのスパースパターン。行列のサイズは、m 行 n 列で、m は、ユーザ定義関数 fun で戻される最初の引数の中の値の数、n は、初期出発点 x0 の中の要素の数です。
LargeScale
{'on'} | 'off'
可能な場合は、大規模アルゴリズムを使用
LevenbergMarquardt
'on' | {'off'}
Levenberg-Marquardt アルゴリズムを使用
LineSearchType
'cubicpoly' | {'quadcubic'}
ラインサーチアルゴリズムの選択
MaxPCGIter
positive integer
使用可能な PCG 繰り返し回数の最大数。デフォルトは、1 と floor(n/2)) より大きいものです。ここで、n は、初期出発点 x0 の要素数です。
MeritFunction
'singleobj' | {'multiobj'}
fmincon (単目的関数) に対して、ゴール達成/ミニマックスメリット関数(多目的関数)を使用
MinAbsMax
正のスカラ 整数 | {0}
最悪な場合の絶対値を最小にするための の数
PrecondBandWidth
正の整数 | {0}  | Inf
PCG に対する前置条件子の上部n帯域幅
TolCon
正のスカラ
制約違反に対する終了の許容範囲
TolPCG
正のスカラ | {0.1}
PCG 繰り返しの終了の許容範囲
TypicalX
vector of all ones
代表的な x の値。ベクトルの長さは、初期出発点 x0 の要素数と等しくなります。

例題

つぎのステートメントは、Display パラメータを 'iter' に設定し、TolFun パラメータを 1e-8 に設定した options と名付けた最適化オプション構造体を作成します。

つぎのステートメントは、options と名付けたオプション構造体をコピーし、TolX パラメータを変更して、optnew に新しい値をストアするものです。

つぎのステートメントは、関数 fminbnd が参照するすべてのパラメータ名とデフォルト値を含む最適化オプション構造体を戻します。

参考
optimget, fminbnd, fminsearch, fzero, lsqnnoneg


  optimget orient