メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

psoptimset

(非推奨)パターン探索オプション構造を作成する

psoptimset は推奨されません。代わりに optimoptions を使用してください。詳細については、バージョン履歴を参照してください。

構文

psoptimset
options = psoptimset
options = psoptimset(@patternsearch)
options = psoptimset('param1',value1,'param2',value2,...)
options = psoptimset(oldopts,'param1',value1,...)
options = psoptimset(oldopts,newopts)

説明

入力引数または出力引数のない psoptimset は、有効な値を含むパラメーターの完全なリストを表示します。

options = psoptimset (入力引数なし) は、patternsearch のオプション、つまり パラメーター を含む options という構造体を作成し、パラメーターを [] に設定して、patternsearch がデフォルト値を使用することを示します。

options = psoptimset(@patternsearch) は、patternsearch のデフォルト値を含む options という構造体を作成します。

options = psoptimset('param1',value1,'param2',value2,...) は構造体 options を作成し、'param1' の値を value1 に、'param2' の値を value2 に設定するなどします。指定されていないパラメーターはデフォルト値に設定されます。パラメーター名を一意に定義するのに十分な先頭の文字のみを入力するだけで十分です。パラメーター名の大文字と小文字は区別されません。

options = psoptimset(oldopts,'param1',value1,...) は、指定されたパラメーターを指定された値に変更して、oldopts のコピーを作成します。

options = psoptimset(oldopts,newopts) は、既存のオプション構造 oldopts と新しいオプション構造 newopts を組み合わせます。空でない値を持つ newopts 内のパラメーターは、oldopts 内の対応する古いパラメーターを上書きします。

オプション

次の表は、psoptimset で設定できるオプションを示しています。オプションとその値の詳細な説明については、パターン探索オプション を参照してください。{} 内の値はデフォルト値を示します。コマンドラインで「psoptimset」と入力して、最適化パラメーターとデフォルトを表示することもできます。

optimoptions斜体 でリストされているオプションを非表示にしますが、psoptimset は非表示にしません。optimoptions で非表示になっているオプションを参照してください。

patternsearch のオプション

オプション説明
Algorithm

patternsearch で使用されるアルゴリズム。Algorithm 設定は利用可能なオプションに影響します。アルゴリズムの詳細については、パターン探索ポーリングの仕組み および 非均一パターン探索(NUPS)アルゴリズム を参照してください。

アルゴリズムの効果の例については、patternsearchアルゴリズムを探索する および ライブエディタータスクの最適化における patternsearch アルゴリズムの探索 を参照してください。

{"classic"} | "nups" | "nups-gps" | "nups-mads"
Cache

Cache"on" に設定すると、patternsearch はポーリングするメッシュ ポイントの履歴を保持します。後続の反復では、patternsearch はすでにポーリングされた点に近い点をポーリングしません。目的関数の計算中に patternsearch の実行速度が遅い場合は、このオプションを使用します。目的関数が確率的である場合は、このオプションを使用しないでください。

メモ

ソルバーを並列で実行すると、Cache は機能しません。

"on" | {"off"}

CacheSize

履歴のサイズ。

非負のスカラー | {1e4}

CacheTol

patternsearch が現在のポイントをポーリングしないようにするための、現在のメッシュ ポイントから履歴内の任意のポイントまでの最大距離。Cache オプションが "on" に設定されている場合に使用します。

非負のスカラー | {eps}

ConstraintTolerance

制約に対する許容度。

オプション構造の場合は、TolCon を使用します。

正のスカラー | {1e-6}

Display

表示レベル。解決プロセス中に psoptimset がコマンド ラインに返す情報の量を意味します。

"off" | "iter" | "diagnose" | {"final"}
FunctionTolerance

関数の許容範囲。関数値の変化が FunctionTolerance 未満で、メッシュ サイズが StepTolerance 未満の場合、反復は停止します。このオプションは、MADS (メッシュ アダプティブ直接探索) ポーリングには適用されません。

オプション構造の場合は、TolFun を使用します。

非負のスカラー | {1e-6}

InitialMeshSize

アルゴリズムの初期メッシュ サイズ。パターン探索ポーリングの仕組みを参照してください。

正のスカラー | {1.0}

InitialPenalty

ペナルティパラメーターの初期値。パターン探索のための非線形制約ソルバーアルゴリズムを参照してください。

正のスカラー | {10}

MaxFunctionEvaluations

目的関数評価の最大数。

オプション構造の場合は、MaxFunEvals を使用します。

非負整数 | {"2000*numberOfVariables"}numberOfVariablesは問題変数の数

MaxIterations

反復最大回数

オプション構造の場合は、MaxIter を使用します。

非負整数 | {"100*numberOfVariables"}numberOfVariablesは問題変数の数

MaxMeshSize

ポーリングまたは探索ステップで使用される最大メッシュ サイズ。パターン探索ポーリングの仕組みを参照してください。

非負のスカラー | {Inf}

MaxTime

最適化に許可される合計時間 (秒単位)。

オプション構造の場合は、TimeLimit を使用します。

非負のスカラー | {Inf}

MeshContractionFactor

失敗した反復のメッシュ収縮係数。

このオプションは、Algorithm"classic" の場合にのみ適用されます。

オプション構造の場合は、MeshContraction を使用します。

正のスカラー | {0.5}

MeshExpansionFactor

反復を成功させるためのメッシュ拡張係数。

このオプションは、Algorithm"classic" の場合にのみ適用されます。

オプション構造の場合は、MeshExpansion を使用します。

正のスカラー | {2.0}

MeshRotate

ポイントが最適であると宣言する前にパターンを回転させるフラグ。メッシュオプションを参照してください。

このオプションは、Algorithm"classic" の場合にのみ適用されます。

"off" | {"on"}

MeshTolerance

メッシュ サイズの許容範囲。

オプション構造の場合は、TolMesh を使用します。

非負のスカラー | {1e-6}

OutputFcn

各反復で最適化関数によって呼び出される関数。関数ハンドルまたは関数ハンドルのセル配列として指定します。

オプション構造の場合は、OutputFcns を使用します。

関数ハンドルまたは関数ハンドルのセル配列 | {[]}

PenaltyFactor

ペナルティ更新パラメーター。パターン探索のための非線形制約ソルバーアルゴリズムを参照してください。

正のスカラー | {100}

PlotFcn

パターン探索からの出力のプロット。組み込みプロット関数の名前、関数ハンドル、または組み込みプロット関数または関数ハンドルの名前のセル配列として指定します。

オプション構造の場合は、PlotFcns を使用します。

{[]} | "psplotbestf" | "psplotfuncount" | "psplotmeshsize" | "psplotbestx" | "psplotmaxconstr" | カスタム プロット関数

PlotInterval

プロットの反復回数。1 は反復ごとにプロットすることを意味し、2 は 1 回おきの反復でプロットすることを意味します。

正の整数 | {1}

PollMethod

パターン探索で使用されるポーリング戦略。

このオプションは、Algorithm"classic" の場合にのみ適用されます。

メモ

問題に線形等式制約がある場合は、MADS ポーリングは使用できません。

{"GPSPositiveBasis2N"} | "GPSPositiveBasisNp1" | "GSSPositiveBasis2N" | "GSSPositiveBasisNp1" | "MADSPositiveBasis2N" | "MADSPositiveBasisNp1"

PollOrderAlgorithm

パターン探索におけるポーリング方向の順序。

このオプションは、Algorithm"classic" の場合にのみ適用されます。

オプション構造の場合は、PollingOrder を使用します。

"Random" | "Success" | {"Consecutive"}

ScaleMesh

変数の自動スケーリング。

オプション構造の場合は、ScaleMesh = "on" または "off" を使用します。

{true}| false

SearchFcn

パターン探索で使用される探索のタイプ。名前または関数ハンドルとして指定します。

オプション構造の場合は、SearchMethod を使用します。

"GPSPositiveBasis2N" | "GPSPositiveBasisNp1" | "GSSPositiveBasis2N" | "GSSPositiveBasisNp1" | "MADSPositiveBasis2N" | "MADSPositiveBasisNp1" | "searchga" | "searchlhs" | "searchneldermead" | "rbfsurrogate" | {[]} | カスタム探索機能

StepTolerance

変数の許容範囲。位置の変化とメッシュ サイズの両方が StepTolerance 未満の場合、反復は停止します。このオプションはMADSポーリングには適用されません。

オプション構造の場合は、TolX を使用します。

非負のスカラー | {1e-6}

TolBind

結合許容度。制約パラメーターを参照してください。

非負のスカラー | {1e-3}

UseCompletePoll

現在のポイントの周りのポーリングを完了するためのフラグ。パターン探索ポーリングの仕組みを参照してください。

このオプションは、Algorithm"classic" の場合にのみ適用されます。

メモ

"classic" アルゴリズムの場合、ベクトル化または並列ポーリングのために UseCompletePolltrue に設定する必要があります。同様に、ベクトル化または並列探索の場合は UseCompleteSearchtrue に設定します。

R2019a 以降、UseParallel オプションを true に設定すると、patternsearch が内部的に UseCompletePoll 設定を true にオーバーライドし、関数が並列にポーリングするようになります。

オプション構造の場合は、CompletePoll = "on" または "off" を使用します。

true | {false}

UseCompleteSearch

探索方法がポーリング方式の場合に、現在のポイントの周囲での探索を完了するためのフラグ。探索とポーリングを参照してください。

このオプションは、Algorithm"classic" の場合にのみ適用されます。

メモ

"classic" アルゴリズムの場合、ベクトル化または並列探索のために UseCompleteSearchtrue に設定する必要があります。

オプション構造の場合は、CompleteSearch = "on" または "off" を使用します。

true | {false}

UseParallel

目的関数と非線形制約関数を並列に計算するためのフラグ。ベクトル化と並列化のオプションGlobal Optimization Toolbox で並列処理を使用する方法を参照してください。

メモ

"classic" アルゴリズムの場合、ベクトル化または並列ポーリングのために UseCompletePolltrue に設定する必要があります。同様に、ベクトル化または並列探索の場合は UseCompleteSearchtrue に設定します。

R2019a 以降、UseParallel オプションを true に設定すると、patternsearch が内部的に UseCompletePoll 設定を true にオーバーライドし、関数が並列にポーリングするようになります。

メモ

ソルバーを並列で実行すると、Cache は機能しません。

true | {false}

UseVectorized

関数がベクトル化されるかどうかを指定します。ベクトル化と並列化のオプション目的関数と制約関数をベクトル化するを参照してください。

メモ

"classic" アルゴリズムの場合、ベクトル化または並列ポーリングのために UseCompletePolltrue に設定する必要があります。同様に、ベクトル化または並列探索の場合は UseCompleteSearchtrue に設定します。

オプション構造の場合は、Vectorized = "on" または "off" を使用します。

true | {false}

バージョン履歴

R2006a より前に導入

すべて折りたたむ