Алгоритмы оставшейся полезной жизни - Каплан Мейер

В этой серии статей мы рассмотрим различные стратегии обслуживания и поговорим о рабочем процессе разработки алгоритма профилактического обслуживания.

Каждый день мы полагаемся на широкий спектр машин, но правда в том, что каждая машина рано или поздно выходит из строя. Компании используют множество программ технического обслуживания для повышения своей эксплуатационной надежности и снижения затрат, среди них:

  • Реактивное обслуживание - ремонтируйте машину только после того, как произойдет сбой. С самыми дешевыми деталями, такими как лампочка, имеет смысл использовать этот метод, однако для дорогих он может привести к высоким затратам на обслуживание.
  • Профилактическое обслуживание - этот метод пытается предотвратить сбой до того, как он произойдет, путем регулярных проверок оборудования. Задача этого метода состоит в том, чтобы определить, когда проводить техническое обслуживание, поскольку вы не знаете, когда произойдет сбой. Слишком раннее планирование большого количества профилактических осмотров приведет к дополнительным расходам и снижению производительности.
  • Профилактическое обслуживание - прогнозирует, когда произойдет сбой машины, чтобы запланировать техническое обслуживание непосредственно перед этим. Прогнозируйте отказ в оптимальное время для проведения технического обслуживания, оценив время до отказа. Профилактическое обслуживание также выявляет проблемы в их сложном оборудовании и помогает бизнесу определить, какие части необходимо отремонтировать и почему. С помощью этого метода вы можете минимизировать время простоя и продлить срок службы оборудования.

Первым шагом к внедрению методологии профилактического обслуживания будет сбор данных с Машины, на которой вы хотите реализовать алгоритмы.

Вы можете извлекать данные из машин с помощью датчиков, и чем больше у вас датчиков хорошего качества, тем больше возможностей для прогнозирования вы сможете получить, изучая различные сценарии сбоев. Поскольку у нас есть машинные данные с множеством полезных датчиков, мы можем разрабатывать ковариативные модели выживания с помощью машинного обучения, и я покажу, как это сделать во второй части этой серии.

Однако, если в вашем оборудовании нет датчиков или средств автоматизации или данные низкого качества, вы все равно можете разработать алгоритмы профилактического обслуживания с моделями выживания, используя модель оставшегося полезного срока службы, для которой нужны только данные о сроке службы. Используя модель RUL, вы можете оценить наилучшую фиксированную частоту проведения технического обслуживания до того, как оно выйдет из строя.

Моделирование

В этом случае мы будем моделировать снижение затрат с помощью модели оставшегося полезного срока службы следующим образом:

• Избегайте чрезмерного ухода за некоторыми конкретными активами - не выполняйте обслуживание раньше положенного времени.

• Сохранение одинаковой доступности всех процессов - не пропустите реальный сценарий, потому что машина может выйти из строя и вызвать простой

Цель состоит в том, чтобы найти лучшую модель, которую можно было бы использовать для точного измерения оставшегося срока полезного использования для каждого актива и спланировать техническое обслуживание как минимум за 20 циклов до отказа.

Алгоритмы оставшейся полезной жизни - Каплан Мейер

В области статистики модели пропорциональных опасностей и распределения вероятностей времени отказа компонентов используются для оценки RUL на основе данных о сроке службы.

Оценщик Каплана Мейера, также известный как оценщик предела продукта, - это непараметрическая статистика, используемая для оценки функции выживаемости на основе данных о продолжительности жизни. Итак, нам нужно только максимальное время выполнения до события сбоя и ресурсы для обучения этой модели.

Мы можем взять выходные данные этой модели RUL с порогом в качестве основы для прогнозирования оставшихся циклов для каждого случая.

Каплан Майер - Код

Чтобы соответствовать модели Каплана Мейера, мы должны адаптировать наш набор данных к столбцу с Asset_id и столбцу с максимальным временем выполнения (в циклах) до сбоя, другими словами, к циклу сбоя.

df_train = df[['asset_id','runtime']].groupby('asset_id').runtime.max().reset_index()kmf = KaplanMeierFitter()T = df['runtime']kmf.fit(T)#chance to be alive
kmf.plot()median_survival = kmf.median_survival_time_maint = median_survival - 20print(f'Median survival time is : {median_survival} cycles')print(f'Baseline for a fixed value that Maintenance can use: {maint} cycles')

После установки модели в обучающий набор данных мы обнаружили:

  • Среднее время выживания: 104,0 цикла
  • Деградация машины ускоряется до 200 циклов

Использование не менее 20 циклов до отказа:

  • Фиксированное значение, которое может использовать группа обслуживания: 84,0 цикла

Мы также можем рассчитать шанс быть живым и шанс неудачи (1 - шанс остаться живым) с помощью функции survival_function_at_times ():

В этом случае у этой Машины на 4-й день использования будет от 97,86% до 98,24% вероятность остаться в живых и от 1,7% до 2,1% вероятность отказа.

Каплан-Мейер - Регрессия

Мы даже можем адаптировать RUL для регрессионных моделей. Используя функцию «conditional_time_to_event_», мы можем оценить время до отказа в каждом цикле.

conditional_time = kmf.conditional_time_to_event_df_test_baseline = df_test[['asset_id','runtime']]df_test_baseline['predictions'] = df_test_baseline['runtime'].apply(lambda x: conditional_time.loc[x])

После разделения на набор данных Train / Test и подгонки модели к набору поездов, мы обнаружили:

  • Среднее время выживания в наборе данных Train составляет: 103,0 цикла.

И следующие показатели для регрессии в наборе данных для обучения и тестирования:

Мы видим, что модель хорошо подходит для данных поезда. Корреляция между прогнозируемыми и реальными данными составляет около 80%, а средняя абсолютная ошибка составляет около 60 циклов.

Полный код этой статьи опубликован в моем репозитории на GitHub:

Octavio-santiago / Профилактическое обслуживание целлюлозно-бумажной промышленности

Github.com

Вывод

Профилактическое обслуживание основано на использовании статистических алгоритмов в данных о вашем оборудовании для оптимизации планов обслуживания и снижения затрат из-за простоев. Для моделей выживания модель RUL Kaplan Meier была представлена ​​как хороший вариант для разработки моделей профилактического обслуживания, в основном для случаев, когда у вас нет высококачественных датчиков в вашем оборудовании.

Кривая выживаемости хорошо адаптирована к реальному сценарию, среднее число циклов до перерыва имеет смысл, а корреляция для регрессии удовлетворительна. Однако средняя абсолютная ошибка довольно высока по сравнению со средним значением, и решения будут следующими: получить больше данных, оценить сценарии и попытаться разделить активы (машины) на разные кластеры и подогнать модель RUL для каждого кластера. Эти кластеры могут иметь тип сбоя, расположение машины, рабочую точку, месяц и т. Д.

В следующей статье этой серии я покажу, как смоделировать модель выживаемости при профилактическом обслуживании с помощью машинного обучения.

Надеюсь, это было хорошее чтение! По любым отзывам или вопросам я доступен для связи в LinkedIn: https://www.linkedin.com/in/octavio-b-santiago/

Выпускники Shape Digital.