Main Content

findopOptions

仕様から操作点を検出するオプションの設定

説明

options = findopOptions は、既定の操作点探索オプションを返します。

options = findopOptions(Name,Value) は、1 つ以上の Name,Value の引数ペアで指定された追加オプションを使用して、オプション セットを返します。このオプション セットを使用して、findop コマンドのオプションを指定します。

すべて折りたたむ

オプティマイザーのタイプを勾配降下に設定して findop の表示出力を抑制する、操作点探索のオプション セットを作成します。

option = findopOptions('OptimizerType','graddescent','DisplayReport','off');

あるいは、ドット表記を使用して options の値を設定します。

options = findopOptions;
options.OptimizerType = 'graddescent';
options.DisplayReport = 'off';

入力引数

すべて折りたたむ

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後に表示されなければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name を引用符で囲みます。

例: 'DisplayReport','off' は、コマンド ウィンドウで操作点探索レポートを非表示にします。

最適化アルゴリズムで使用されるオプティマイザーのタイプ。'OptimizerType' および以下のいずれかで構成されるコンマ区切りペアとして指定されます。

  • 'graddescent-elim' — 等式制約を適用して、状態の時間微分を強制的にゼロにし (dx/dt = 0x(k+1) = x(k))、出力信号を指定された既知の値と同じにします。オプティマイザーは、操作点の仕様で Known とマークされている状態 x と入力 u を固定し、残りの変数を最適化します。

  • 'graddescent' — 等式制約を適用して、状態の時間微分を強制的にゼロにし (dx/dt = 0x(k+1) = x(k))、出力信号を指定された既知の値と同じにします。また、オプティマイザーは、状態 x と入力 u の間の誤差、およびその操作点仕様からのそれぞれの既知の値を最小化します。Known とマークされた入力や状態がない場合、関数 findop は、x および u の初期推定とそれらの平衡値の間の偏差を最小化しようとします。

  • 'graddescent-proj''graddescent' に加え、関数の各評価ごとにモデルの初期条件の整合性を適用します。制約が厳密であるか柔軟であるかを指定するには、ConstraintType オプションを使用します。この最適化手法は解析的なヤコビアンをサポートしません。

  • 'lsqnonlin' — 操作点の仕様で Known とマークされている状態 x と入力 u を固定し、残りの変数を最適化します。このアルゴリズムは、状態の時間微分の誤差 (dx/dt = 0x(k+1) = x(k)) および出力と指定された既知の値との誤差の両方を最小化しようとします。

  • 'lsqnonlin-proj''lsqnonlin' に加え、関数の各評価ごとにモデルの初期条件の整合性を適用します。この最適化手法は解析的なヤコビアンをサポートしません。

  • 'simplex'lsqnonlin と同じコスト関数を使用し、fminsearch で見つかる直接探索最適化ルーチンを使用します。

これらの最適化アルゴリズムの詳細については、fmincon (Optimization Toolbox)lsqnonlin (Optimization Toolbox) および fminsearch (Optimization Toolbox) を参照してください。

最適化アルゴリズムのオプション。'OptimizationOptions' と、関数 optimset (Optimization Toolbox) で作成される構造体から構成されるコンマ区切りのペアとして指定します。

操作点の概要レポートを表示するかどうかを示すフラグ。'DisplayReport' と次のいずれかで構成されるコンマ区切りのペアとして指定します。

  • 'on'findop の実行時に MATLAB® コマンド ウィンドウで操作点の概要レポートを表示します。

  • 'off' — 概要レポートを表示しません。

  • 'iter' — 最適化の進捗の更新を反復形式で表示します。

平衡化のためにパラメーター値を変化させる際、モデルを再コンパイルするかどうかを示すフラグ。'AreParamsTunable' と次のいずれかで構成されるコンマ区切りのペアとして指定します。

  • true — 変化するパラメーターがすべて調整可能な場合はモデルを再コンパイルしません。変化するパラメーターのいずれかが調整可能でない場合、それぞれのパラメーター グリッド点でモデルを再コンパイルして、警告メッセージを表示します。

  • false — それぞれのパラメーター グリッド点でモデルを再コンパイルします。調整不可能なパラメーターの値を変化させる場合、このオプションを使用してください。

'graddescent-proj' オプティマイザー アルゴリズムの制約タイプ。'ConstraintType' と次のフィールドをもつ構造体で構成されるコンマ区切りのペアとして指定します。

  • dx — 状態微分の制約のタイプ

  • x — 状態値の制約のタイプ

  • y — 出力値の制約のタイプ

各制約を次のいずれかとして指定します。

  • 'hard' — 制約を強制的にゼロにします。

  • 'soft' — 制約を最小化します。

既定では、すべての制約のタイプが 'hard' です。

出力引数

すべて折りたたむ

平衡化のオプション。findopOptions オプション セットとして返されます。

バージョン履歴

R2013b で導入

すべて展開する

参考