Сбросьте оставшуюся модель деградации полезного срока службы
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
mdl - Модель RUL деградацииlinearDegradationModel | объекта exponentialDegradationModel объектМодель RUL деградации, заданная как linearDegradationModel объект или exponentialDegradationModel объект. restart очищает накопленную статистику в mdl и сбрасывает InitialLifeTimeValue и CurrentLifeTimeValue свойства mdl.
resetPrior - Флаг для сброса предыдущих значений параметровfalse (по умолчанию) | trueФлаг для сброса предыдущей информации о параметре, заданный как логическое значение. Когда resetPrior является:
true, затем restart устанавливает предыдущие значения параметров mdl к соответствующим им текущим значениям апостериорных параметров. Для примера, mdl.Prior.Theta установлено в mdl.Theta.
false или опущен, тогда restart не обновляет предыдущий.
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
nv1,'value''Theta' - Среднее значение параметра θ моделиЭто свойство доступно только для чтения.
Среднее значение параметра θ модели, заданное как разделенная разделенными запятой парами 'Theta' и скаляром. Используйте этот аргумент, чтобы задать Theta свойство mdl и соответствующее поле Prior свойство mdl.
'ThetaVariance' - Дисперсия модели θ параметраЭто свойство доступно только для чтения.
Отклонение параметра θ в модели деградации, заданная как разделенная разделенными запятой парами 'ThetaVariance' и неотрицательный скаляр. Используйте этот аргумент, чтобы задать ThetaVariance свойство mdl и соответствующее поле Prior свойство mdl.
'Beta' - Среднее значение параметра β моделиЭто свойство доступно только для чтения.
Среднее значение параметра β модели, заданное как разделенная разделенными запятой парами 'Beta' и скаляром. Используйте этот аргумент, чтобы задать Beta свойство mdl и соответствующее поле Prior свойство mdl.
Этот аргумент применяется только при mdl является exponentialDegradationModel.
'BetaVariance' - Дисперсия модели β параметраЭто свойство доступно только для чтения.
Отклонение параметра β модели, заданная как разделенная разделенными запятой парами 'BetaVariance' и неотрицательный скаляр. Используйте этот аргумент, чтобы задать BetaVariance свойство mdl и соответствующее поле Prior свойство mdl.
Этот аргумент применяется только при mdl является exponentialDegradationModel.
'Rho' - Корреляция между θ и βЭто свойство доступно только для чтения.
Корреляция между θ и β, заданная как разделенная разделенными запятой парами 'Rho' и скалярное значение в области значений [-1,1]. Используйте этот аргумент, чтобы задать Rho свойство mdl и соответствующее поле Prior свойство mdl.
Этот аргумент применяется только при mdl является exponentialDegradationModel.
'NoiseVariance' - Модель отклонения шума аддитиваМодель отклонения аддитивного шума, заданная как разделенная разделенными запятой парами 'NoiseVariance' и неотрицательный скаляр. Используйте этот аргумент, чтобы задать NoiseVariance свойство mdl.
'SlopeDetectionLevel' - Уровень обнаружения наклона[]Уровень обнаружения наклона для определения начала процесса деградации, заданный как разделенная разделенными запятой парами 'SlopeDetectionLevel' и скаляром в области значений [0,1]. Используйте этот аргумент, чтобы задать SlopeDetectionLevel свойство mdl.
Чтобы отключить тест обнаружения наклона, установите SlopeDetectionLevel на [].
'UseParallel' - Флаг для использования параллельных вычисленийfalse (по умолчанию) | trueФлаг для использования параллельных вычислений при подгонке предыдущих значений из данных, заданный как разделенная разделенными запятой парами 'UseParallel' и любой из них true или false. Используйте этот аргумент, чтобы задать UseParallel свойство mdl.
Указания и ограничения по применению:
Эта команда поддерживает генерацию кода с MATLAB® Coder™. Перед генерацией кода, который использует модель RUL, вы должны сохранить модель используя saveRULModelForCoder. Для получения примера смотрите Сгенерировать код для предсказания оставшейся полезной жизни.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.