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