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'— 等式制約を適用して、状態の時間微分を強制的にゼロにし (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 を参照してください。
最適化アルゴリズムのオプション。'OptimizationOptions' と、関数 optimset (Optimization Toolbox) で作成される構造体から構成されるコンマ区切りのペアとして指定します。
操作点の概要レポートを表示するかどうかを示すフラグ。'DisplayReport' と次のいずれかで構成されるコンマ区切りのペアとして指定します。
'on'—findopの実行時に MATLAB® コマンド ウィンドウで操作点の概要レポートを表示します。'off'— 概要レポートを表示しません。'iter'— 最適化の進捗の更新を反復形式で表示します。
平衡化のためにパラメーター値を変化させる際、モデルを再コンパイルするかどうかを示すフラグ。'AreParamsTunable' と次のいずれかで構成されるコンマ区切りのペアとして指定します。
true— 変化するパラメーターがすべて調整可能な場合はモデルを再コンパイルしません。変化するパラメーターのいずれかが調整可能でない場合、それぞれのパラメーター グリッド点でモデルを再コンパイルして、警告メッセージを表示します。false— それぞれのパラメーター グリッド点でモデルを再コンパイルします。調整不可能なパラメーターの値を変化させる場合、このオプションを使用してください。
'graddescent-proj' オプティマイザー アルゴリズムの制約タイプ。'ConstraintType' と次のフィールドをもつ構造体で構成されるコンマ区切りのペアとして指定します。
dx— 状態微分の制約のタイプx— 状態値の制約のタイプy— 出力値の制約のタイプ
各制約を次のいずれかとして指定します。
'hard'— 制約を強制的にゼロにします。'soft'— 制約を最小化します。
既定では、すべての制約のタイプが 'hard' です。
出力引数
平衡化のオプション。findopOptions オプション セットとして返されます。
バージョン履歴
R2013b で導入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 Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)