перезапуск

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

Синтаксис

restart(mdl)
restart(mdl,resetPrior)
restart(___,Name,Value)

Описание

пример

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 должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: 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