restart

Сбросьте остающуюся модель ухудшения срока полезного использования

Описание

пример

restart(mdl) сбрасывает внутренне сохраненную статистику процесса ухудшения, накопленного предыдущими вызовами update и сбрасывает InitialLifeTimeValue и CurrentLifeTimeValue свойства модели. Если SlopeDetectionLevel свойство модели не пусто, затем наклонный тест также перезапущен, игнорируя любые предыдущие обнаружения.

пример

restart(mdl,resetPrior) устанавливает предшествующие значения параметров в mdl к их соответствующим следующим значениям, когда resetPrior true.

restart(___,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

Входные параметры

свернуть все

Модель Degradation RUL в виде linearDegradationModel возразите или exponentialDegradationModel объект. restart очищает накопленную статистику в mdl и сбрасывает InitialLifeTimeValue и CurrentLifeTimeValue свойства mdl.

Отметьте для сброса предшествующей информации о параметре в виде логического значения. Когда resetPrior :

  • true, затем restart устанавливает предшествующие значения параметров mdl к их соответствующим текущим следующим значениям параметров. Например, mdl.Prior.Theta установлен в mdl.Theta.

  • false или не использованный, затем restart не обновляет предшествующее.

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: nv1,'value'

Это свойство доступно только для чтения.

Среднее значение параметра модели θ в виде разделенной запятой пары 'Theta' и скаляр. Используйте этот аргумент, чтобы установить Theta свойство mdl и соответствующее поле Prior свойство mdl.

Это свойство доступно только для чтения.

Отклонение параметра θ в модели ухудшения в виде разделенной запятой пары 'ThetaVariance' и неотрицательный скаляр. Используйте этот аргумент, чтобы установить ThetaVariance свойство mdl и соответствующее поле Prior свойство mdl.

Это свойство доступно только для чтения.

Среднее значение параметра модели β в виде разделенной запятой пары 'Beta' и скаляр. Используйте этот аргумент, чтобы установить Beta свойство mdl и соответствующее поле Prior свойство mdl.

Этот аргумент применяется только когда mdl exponentialDegradationModel.

Это свойство доступно только для чтения.

Отклонение параметра модели β в виде разделенной запятой пары 'BetaVariance' и неотрицательный скаляр. Используйте этот аргумент, чтобы установить BetaVariance свойство mdl и соответствующее поле Prior свойство mdl.

Этот аргумент применяется только когда mdl exponentialDegradationModel.

Это свойство доступно только для чтения.

Корреляция между θ и β в виде разделенной запятой пары 'Rho' и скалярное значение в области значений [-1,1]. Используйте этот аргумент, чтобы установить Rho свойство mdl и соответствующее поле Prior свойство mdl.

Этот аргумент применяется только когда mdl exponentialDegradationModel.

Аддитивное шумовое отклонение модели в виде разделенной запятой пары 'NoiseVariance' и неотрицательный скаляр. Используйте этот аргумент, чтобы установить NoiseVariance свойство mdl.

Наклонный уровень обнаружения для определения запуска процесса ухудшения в виде разделенной запятой пары 'SlopeDetectionLevel' и скаляр в области значений [0,1]. Используйте этот аргумент, чтобы установить SlopeDetectionLevel свойство mdl.

Чтобы отключить наклонный тест обнаружения, установите SlopeDetectionLevel к [].

Отметьте для использования параллельных вычислений при подборе кривой предшествующим значениям из данных в виде разделенной запятой пары 'UseParallel' и любой true или false. Используйте этот аргумент, чтобы установить UseParallel свойство mdl.

Введенный в R2018a