restart
残存耐用期間劣化モデルをリセット
説明
restart(
は、それまでの mdl
)update
の呼び出しで累積した内部的に格納されている劣化プロセスの統計をリセットし、モデルの InitialLifeTimeValue
プロパティと CurrentLifeTimeValue
プロパティをリセットします。モデルの SlopeDetectionLevel
プロパティが空でない場合、勾配の検定もそれまでの検出を無視して再開されます。
restart(
は、mdl
,resetPrior
)resetPrior
が true
の場合に mdl
の事前パラメーター値を対応する事後値に設定します。
restart(___,
は、1 つ以上の名前と値のペアの引数を使用して Name,Value
)mdl
のプロパティを指定します。
例
劣化モデルのリセット
学習データを読み込みます。このデータは、コンポーネントの劣化特徴プロファイルです。
load('expRealTime.mat')
この例では、学習データが履歴データではないと仮定します。履歴データがない場合、観察したデータを使用してリアルタイムで劣化モデルを更新できます。
次の設定で指数劣化モデルを作成します。
事前分布の平均が
2.4
で分散が0.006
事前分布の平均が
0.07
で分散が3e-5
ノイズ分散
0.003
mdl = exponentialDegradationModel('Theta',2.4,'ThetaVariance',0.006,... 'Beta',0.07,'BetaVariance',3e-5,... 'NoiseVariance',0.003);
学習データにライフタイム変数がないため、当てはめに使用する任意のライフタイム ベクトルを作成します。
lifeTime = [1:length(expRealTime)];
100 回の反復で劣化特徴を観察します。各反復の後に劣化モデルを更新します。
for i=1:100 update(mdl,[lifeTime(i) expRealTime(i)]) end
モデルをリセットします。これにより、これまでの観測値からの累積した統計がクリアされ、事後分布が事前分布にリセットされます。
restart(mdl)
指数劣化モデルのリアルタイムでの更新
学習データを読み込みます。このデータは、コンポーネントの劣化特徴プロファイルです。
load('expRealTime.mat')
この例では、学習データが履歴データではないと仮定します。履歴データがない場合、観察したデータを使用してリアルタイムで劣化モデルを更新できます。
次の設定で指数劣化モデルを作成します。
分散が大きい任意の事前分布 および (モデルのほとんどが観察データに依存)
ノイズ分散
0.003
mdl = exponentialDegradationModel('Theta',1,'ThetaVariance',1e6,... 'Beta',1,'BetaVariance',1e6,... 'NoiseVariance',0.003);
学習データにライフタイム変数がないため、当てはめに使用する任意のライフタイム ベクトルを作成します。
lifeTime = [1:length(expRealTime)];
10 回の反復で劣化特徴を観察します。各反復の後に劣化モデルを更新します。
for i=1:10 update(mdl,[lifeTime(i) expRealTime(i)]) end
モデルをしばらく観察した後、たとえば定常状態の操作点からモデルを再開し、その時点の事後分布を事前分布として保存できます。
restart(mdl,true)
更新された事前分布パラメーターを確認します。
mdl.Prior
ans = struct with fields:
Theta: 2.3555
ThetaVariance: 0.0058
Beta: 0.0722
BetaVariance: 3.6362e-05
Rho: -0.8429
入力引数
mdl
— 劣化 RUL モデル
linearDegradationModel
オブジェクト | exponentialDegradationModel
オブジェクト
劣化 RUL モデル。linearDegradationModel
オブジェクトまたは exponentialDegradationModel
オブジェクトとして指定します。restart
は、mdl
の累積した統計をクリアし、mdl
の InitialLifeTimeValue
プロパティと CurrentLifeTimeValue
プロパティをリセットします。
resetPrior
— 事前パラメーター値のリセットのフラグ
false
(既定値) | true
事前パラメーター情報のリセットのフラグ。logical 値として指定します。resetPrior
に応じて次のようになります。
true
の場合、restart
はmdl
の事前パラメーター値を対応する現在の事後パラメーター値に設定します。たとえば、mdl.Prior.Theta
はmdl.Theta
に設定されます。false
または省略されている場合、restart
は事前の内容を更新しません。
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペア自体は順不同で構いません。
R2021a 以前は、名前と値をそれぞれコンマで区切り、 Name
を引用符で囲みます。
例: nv1,'value'
Theta
— モデルの θ パラメーターの平均値
スカラー
この プロパティ は読み取り専用です。
モデルの θ パラメーターの平均値。'Theta'
とスカラーのコンマ区切りのペアとして指定します。この引数は、mdl
の Theta
プロパティと mdl
の Prior
プロパティの対応するフィールドの設定に使用します。
ThetaVariance
— モデルの θ パラメーターの分散
非負のスカラー
この プロパティ は読み取り専用です。
劣化モデルにおける θ パラメーターの分散。'ThetaVariance'
と非負のスカラーのコンマ区切りのペアとして指定します。この引数は、mdl
の ThetaVariance
プロパティと mdl
の Prior
プロパティの対応するフィールドの設定に使用します。
Beta
— モデルの β パラメーターの平均値
スカラー
この プロパティ は読み取り専用です。
モデルの β パラメーターの平均値。'Beta'
とスカラーのコンマ区切りのペアとして指定します。この引数は、mdl
の Beta
プロパティと mdl
の Prior
プロパティの対応するフィールドの設定に使用します。
この引数は、mdl
が exponentialDegradationModel
の場合にのみ適用されます。
BetaVariance
— モデルの β パラメーターの分散
非負のスカラー
この プロパティ は読み取り専用です。
モデルの β パラメーターの分散。'BetaVariance'
と非負のスカラーのコンマ区切りのペアとして指定します。この引数は、mdl
の BetaVariance
プロパティと mdl
の Prior
プロパティの対応するフィールドの設定に使用します。
この引数は、mdl
が exponentialDegradationModel
の場合にのみ適用されます。
Rho
— θ と β の間の相関
[-1,1] の範囲のスカラー値
この プロパティ は読み取り専用です。
θ と β の間の相関。'Rho'
と範囲 [-1,1] のスカラー値のコンマ区切りのペアとして指定します。この引数は、mdl
の Rho
プロパティと mdl
の Prior
プロパティの対応するフィールドの設定に使用します。
この引数は、mdl
が exponentialDegradationModel
の場合にのみ適用されます。
NoiseVariance
— モデルの加法性ノイズの分散
非負のスカラー
モデルの加法性ノイズの分散。'NoiseVariance'
と非負のスカラーのコンマ区切りのペアとして指定します。この引数は、mdl
の NoiseVariance
プロパティの設定に使用します。
SlopeDetectionLevel
— 勾配の検出レベル
[0,1] の範囲のスカラー値 | []
劣化プロセスの開始を判断するための勾配の検出レベル。'SlopeDetectionLevel'
と範囲 [0,1] のスカラーのコンマ区切りのペアとして指定します。この引数は、mdl
の SlopeDetectionLevel
プロパティの設定に使用します。
勾配の検出の検定を無効にするには、SlopeDetectionLevel
を []
に設定します。
UseParallel
— 並列計算の使用のフラグ
false
(既定値) | true
データから事前値を当てはめる際の並列計算の使用のフラグ。'UseParallel'
と true
または false
のいずれかのコンマ区切りのペアとして指定します。この引数は、mdl
の UseParallel
プロパティの設定に使用します。
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
使用に関するメモと制限:
このコマンドは、MATLAB® Coder™ を使用したコード生成に対応しています。RUL モデルを使用するコードを生成する前に、
saveRULModelForCoder
を使用してモデルを保存する必要があります。例については、残存耐用期間の予測用コードの生成を参照してください。
バージョン履歴
R2018a で導入
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)