Main Content

restart

残存耐用期間劣化モデルをリセット

説明

restart(mdl) は、それまでの update の呼び出しで累積した内部的に格納されている劣化プロセスの統計をリセットし、モデルの InitialLifeTimeValue プロパティと CurrentLifeTimeValue プロパティをリセットします。モデルの SlopeDetectionLevel プロパティが空でない場合、勾配の検定もそれまでの検出を無視して再開されます。

restart(mdl,resetPrior) は、resetPriortrue の場合に mdl の事前パラメーター値を対応する事後値に設定します。

restart(___,Name,Value) は、1 つ以上の名前と値のペアの引数を使用して 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

入力引数

すべて折りたたむ

劣化 RUL モデル。linearDegradationModel オブジェクトまたは exponentialDegradationModel オブジェクトとして指定します。restart は、mdl の累積した統計をクリアし、mdlInitialLifeTimeValue プロパティと CurrentLifeTimeValue プロパティをリセットします。

事前パラメーター情報のリセットのフラグ。logical 値として指定します。resetPrior に応じて次のようになります。

  • true の場合、restartmdl の事前パラメーター値を対応する現在の事後パラメーター値に設定します。たとえば、mdl.Prior.Thetamdl.Theta に設定されます。

  • false または省略されている場合、restart は事前の内容を更新しません。

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペア自体は順不同で構いません。

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

例: nv1,'value'

この プロパティ は読み取り専用です。

モデルの θ パラメーターの平均値。'Theta' とスカラーのコンマ区切りのペアとして指定します。この引数は、mdlTheta プロパティと mdlPrior プロパティの対応するフィールドの設定に使用します。

この プロパティ は読み取り専用です。

劣化モデルにおける θ パラメーターの分散。'ThetaVariance' と非負のスカラーのコンマ区切りのペアとして指定します。この引数は、mdlThetaVariance プロパティと mdlPrior プロパティの対応するフィールドの設定に使用します。

この プロパティ は読み取り専用です。

モデルの β パラメーターの平均値。'Beta' とスカラーのコンマ区切りのペアとして指定します。この引数は、mdlBeta プロパティと mdlPrior プロパティの対応するフィールドの設定に使用します。

この引数は、mdlexponentialDegradationModel の場合にのみ適用されます。

この プロパティ は読み取り専用です。

モデルの β パラメーターの分散。'BetaVariance' と非負のスカラーのコンマ区切りのペアとして指定します。この引数は、mdlBetaVariance プロパティと mdlPrior プロパティの対応するフィールドの設定に使用します。

この引数は、mdlexponentialDegradationModel の場合にのみ適用されます。

この プロパティ は読み取り専用です。

θ と β の間の相関。'Rho' と範囲 [-1,1] のスカラー値のコンマ区切りのペアとして指定します。この引数は、mdlRho プロパティと mdlPrior プロパティの対応するフィールドの設定に使用します。

この引数は、mdlexponentialDegradationModel の場合にのみ適用されます。

モデルの加法性ノイズの分散。'NoiseVariance' と非負のスカラーのコンマ区切りのペアとして指定します。この引数は、mdlNoiseVariance プロパティの設定に使用します。

劣化プロセスの開始を判断するための勾配の検出レベル。'SlopeDetectionLevel' と範囲 [0,1] のスカラーのコンマ区切りのペアとして指定します。この引数は、mdlSlopeDetectionLevel プロパティの設定に使用します。

勾配の検出の検定を無効にするには、SlopeDetectionLevel[] に設定します。

データから事前値を当てはめる際の並列計算の使用のフラグ。'UseParallel'true または false のいずれかのコンマ区切りのペアとして指定します。この引数は、mdlUseParallel プロパティの設定に使用します。

拡張機能

バージョン履歴

R2018a で導入