findopOptions
仕様から操作点を検出するオプションの設定
説明
は、1 つ以上の options
= findopOptions(Name,Value
)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'
(既定値) | 'graddescent'
| 'graddescent-proj'
| 'lsqnonlin'
| 'lsqnonlin-proj'
| 'simplex'
最適化アルゴリズムで使用されるオプティマイザーのタイプ。'OptimizerType'
および以下のいずれかで構成されるコンマ区切りペアとして指定されます。
'graddescent-elim'
— 等式制約を適用して、状態の時間微分を強制的にゼロにし (dx/dt = 0
、x(k+1) = x(k)
)、出力信号を指定された既知の値と同じにします。オプティマイザーは、操作点の仕様でKnown
とマークされている状態x
と入力u
を固定し、残りの変数を最適化します。'graddescent'
— 等式制約を適用して、状態の時間微分を強制的にゼロにし (dx/dt = 0
、x(k+1) = x(k)
)、出力信号を指定された既知の値と同じにします。また、オプティマイザーは、状態x
と入力u
の間の誤差、およびその操作点仕様からのそれぞれの既知の値を最小化します。Known
とマークされた入力や状態がない場合、関数findop
は、x
およびu
の初期推定とそれらの平衡値の間の偏差を最小化しようとします。'graddescent-proj'
—'graddescent'
に加え、関数の各評価ごとにモデルの初期条件の整合性を適用します。制約が厳密であるか柔軟であるかを指定するには、ConstraintType
オプションを使用します。この最適化手法は解析的なヤコビアンをサポートしません。'lsqnonlin'
— 操作点の仕様でKnown
とマークされている状態x
と入力u
を固定し、残りの変数を最適化します。このアルゴリズムは、状態の時間微分の誤差 (dx/dt = 0
、x(k+1) = x(k)
) および出力と指定された既知の値との誤差の両方を最小化しようとします。'lsqnonlin-proj'
—'lsqnonlin'
に加え、関数の各評価ごとにモデルの初期条件の整合性を適用します。この最適化手法は解析的なヤコビアンをサポートしません。'simplex'
—lsqnonlin
と同じコスト関数を使用し、fminsearch
で見つかる直接探索最適化ルーチンを使用します。
これらの最適化アルゴリズムの詳細については、fmincon
(Optimization Toolbox)、lsqnonlin
(Optimization Toolbox) および fminsearch
(Optimization Toolbox) を参照してください。
OptimizationOptions
— 最適化アルゴリズムのオプション
構造体
最適化アルゴリズムのオプション。'OptimizationOptions'
と、関数 optimset
(Optimization Toolbox) で作成される構造体から構成されるコンマ区切りのペアとして指定します。
DisplayReport
— 操作点の概要レポートを表示するかどうかを示すフラグ
'on'
(既定値) | 'off'
| 'iter'
操作点の概要レポートを表示するかどうかを示すフラグ。'DisplayReport'
と次のいずれかで構成されるコンマ区切りのペアとして指定します。
'on'
—findop
の実行時に MATLAB® コマンド ウィンドウで操作点の概要レポートを表示します。'off'
— 概要レポートを表示しません。'iter'
— 最適化の進捗の更新を反復形式で表示します。
AreParamsTunable
— パラメーター値を変化させる際にモデルを再コンパイルするかどうかを示すフラグ
true
(既定値) | false
平衡化のためにパラメーター値を変化させる際、モデルを再コンパイルするかどうかを示すフラグ。'AreParamsTunable'
と次のいずれかで構成されるコンマ区切りのペアとして指定します。
true
— 変化するパラメーターがすべて調整可能な場合はモデルを再コンパイルしません。変化するパラメーターのいずれかが調整可能でない場合、それぞれのパラメーター グリッド点でモデルを再コンパイルして、警告メッセージを表示します。false
— それぞれのパラメーター グリッド点でモデルを再コンパイルします。調整不可能なパラメーターの値を変化させる場合、このオプションを使用してください。
ConstraintType
— 'graddescent-proj'
の制約タイプ
構造体
'graddescent-proj'
オプティマイザー アルゴリズムの制約タイプ。'ConstraintType'
と次のフィールドをもつ構造体で構成されるコンマ区切りのペアとして指定します。
dx
— 状態微分の制約のタイプx
— 状態値の制約のタイプy
— 出力値の制約のタイプ
各制約を次のいずれかとして指定します。
'hard'
— 制約を強制的にゼロにします。'soft'
— 制約を最小化します。
既定では、すべての制約のタイプが 'hard'
です。
出力引数
options
— 平衡化のオプション
findopOptions
オプション セット
平衡化のオプション。findopOptions
オプション セットとして返されます。
バージョン履歴
R2013b で導入R2017b: Optimizer
プロパティの 'graddescent_elim'
値が現在は 'graddescent-elim'
に
findopOptions
オブジェクトの Optimizer
プロパティの 'graddescent_elim'
値は、現在は 'graddescent-elim'
になっています。
コードを更新するには、オプティマイザーの値を graddescent_elim
から graddescent-elim
に変更します。次の表に、このプロパティ値の一般的な使用法とコードの更新方法を示します。
コードの形式 | 代わりに使用するコード |
---|---|
opt = findopOptions('Optimizer',... 'graddescent_elim'); | opt = findopOptions('Optimizer',... 'graddescent-elim') |
opt = findopOptions; opt.Optimizer = 'graddescent_elim'; | opt = findopOptions; opt.Optimizer = 'graddescent-elim'; |
参考
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)