Algoritmo de predicción de roturas en multiplicadoras
Jorge ROSA
Alicia BARRIO
Data analytics and Global Reporting
IBERDROLA RENOVABLES
DESCRIPCIÓN DEL PROBLEMA
Iberdrola Renovables cuenta con más de 11.000 aerogeneradores instalados por todo el mundo, agrupados en parques eólicos. Estos aerogeneradores tienen la misma configuración, de forma que su funcionamiento depende en gran parte de variables externas que serán cambiantes para cada aerogenerador, pero similares respecto a las unidades vecinas.
Uno de los componentes más importantes de los aerogeneradores es la multiplicadora. Dicho componente aumenta el número de revoluciones desde el eje lento, donde están acopladas las palas, hasta un eje rápido, que es donde se acopla el generador. Se trata de un componente de elevado coste y gran tamaño, cuyo fallo supone la parada total del aerogenerador. Las sustituciones de este componente requieren planificación y se realizan con la ayuda de medios auxiliares de elevación.
Actualmente, para el mantenimiento de estos equipos se realizan inspecciones en altura de las multiplicadoras, priorizando en base a: los resultados de análisis de aceites y lubricantes, la presencia de ruidos o vibraciones, o teniendo en cuenta las fechas de salida de garantía de los equipos.
OBJETIVO
La idea principal de este proyecto es el desarrollo de un modelo para predecir posibles roturas de dichas multiplicadoras. Mediante la aplicación de técnicas de IA, y en concreto de Machine Learning, se pretende desarrollar un modelo predictivo para establecer un orden de prioridad en las inspecciones de las multiplicadoras asignando una probabilidad de fallo durante el año siguiente a cada una de ellas, a fin de optimizar los recursos económicos y humanos dedicados a ello.
Para tratar de conseguir un mayor acierto en la selección de máquinas inspeccionadas se utiliza la información de los análisis de aceites combinándola con otras variables disponibles.
PREPARACIÓN DE LOS DATOS
Después de recopilar datos, la preparación y limpieza para su uso posterior en el desarrollo de modelos Machine Learning es uno de los pasos cruciales del proceso. Nuestra base de datos se compone de información sobre los lubricantes (variables de centralización de diversos componentes, el tipo o su aspecto), información de los cambios de aceite de cada aerogenerador por año, la producción por año de cada parque, distintas características geográficas y técnicas de cada aerogenerador, así como el histórico de fallos o roturas de las multiplicadoras con una profundidad de unos 15 a 20 años.
Nuestro trabajo en este paso consiste en seleccionar las variables que vamos a utilizar, limpiar los datos que contienen errores o están vacíos y crear nuevas variables que puedan ser de utilidad mediante aquellas que ya tenemos, para finalmente construir una base de datos homogénea para alimentar nuestro modelo.
Mediante este proceso de modelización se crean alrededor de 300 variables de entrada para el modelo.
ALGORITMO
El siguiente paso sería seleccionar un modelo de Machine Learning. Para ello, se evaluó el rendimiento de distintos modelos de aprendizaje supervisado con las variables creadas, como redes neuronales o árboles de decisión. De todos ellos, el que mejor se adaptó según distintos criterios de calidad escogidos fue un algoritmo de Boosting, que consiste en un ensemble (combinación) de varios clasificadores. Este algoritmo está basado en el principio de que un conjunto de clasificadores débiles, es decir, con un rendimiento solo un poco superior al de una predicción aleatoria, puede crear un clasificador robusto. En concreto, se emplea el algoritmo AdaBoost con árboles de decisión como clasificadores.
Este algoritmo consiste en la combinación mediante una suma ponderada de las salidas de estos clasificadores débiles, que representa la salida final del clasificador Boost. Se trata de un algoritmo adaptativo, ya que los clasificadores débiles se van modificando según los errores que cometen. Además, es sensible a datos ruidosos y valores atípicos, y suele ser menos susceptible a sufrir sobreajuste que otros algoritmos de aprendizaje. [1]
ENTRENAMIENTO
Para entrenar el modelo se crea un conjunto de entrenamiento formado por las variables de cada aerogenerador por año hasta el año anterior al que se va a realizar la predicción, y cada una de estas caracterizaciones se acompaña de su target (si la multiplicadora se rompió o no ese año).
Finalmente, el modelo da una predicción de la probabilidad de rotura de cada aerogenerador en el año en estudio, en este caso 2019, así como el peso de cada una de las variables utilizadas en dicha predicción y posibles relaciones entre ellas.
VALIDACIÓN
Para validar el rendimiento del algoritmo se realiza este mismo procedimiento, pero con el conjunto de validación, es decir, dando una predicción del año anterior al año de estudio, en este caso para 2018, del cual ya se tienen los datos de roturas, entrenando el modelo con datos de hasta 2017.
De esta manera se puede comprobar el rendimiento del modelo mediante distintas métricas, por ejemplo, mediante su curva ROC, en la que muestra el porcentaje de multiplicadoras inspeccionadas frente al porcentaje de fallos que se anticiparían mediante esas inspecciones. Haciendo uso de ella es posible seleccionar la relación óptima entre el número de equipos inspeccionados y los fallos detectados.
También es posible observar el comportamiento individual de las variables frente al target.
APLICACIÓN Y RESULTADOS
El algoritmo se puede aplicar a distintos conjuntos de aerogeneradores, desde pequeños grupos de parques eólicos hasta toda la flota completa. En este caso se han realizado pruebas, en primer lugar, en distintas regiones y con la flota al completo, obteniendo los siguientes resultados para los conjuntos de validación:
Como se puede observar por ejemplo en la curva ROC de la región 3, con el 30% de los aerogeneradores, el modelo acierta un 72.73% de las roturas de multiplicadoras. Por otra parte, la flota completa, el modelo acierta un 67.57% de las roturas con un 30% de la flota, por lo que, al aumentar el volumen de datos de entrada, no se aprecia una mejora significativa en el rendimiento del algoritmo.
Tras ello, se realizaron pruebas para las flotas completas de otras zonas, donde el volumen de datos de entrada era bastante menor al no disponer de la información de los cambios de aceite. Las curvas ROC obtenidas en ellas son las siguientes:
Como se puede observar, el rendimiento no empeora al no contar con los datos de los análisis de aceites, de hecho, en la zona 2 es notablemente superior que el de la primera zona donde sí se utilizaban dichos análisis. Inspeccionando un 30% de os aerogeneradores se aciertan un 80.56% y un 64.29% de los fallos para las zonas 2 y 3 respectivamente.
Además, se compararon las predicciones dadas por el modelo para 2019 con las roturas ocurridas en la primera zona durante ese año hasta el 1 de julio. En la región 1 de esta zona, inspeccionando el 18.27% de las multiplicadoras (aquellas a las que nuestro modelo daba una probabilidad de rotura distinta de 0), se encontrarían un 68.42% de los fallos reales. Para el caso de la región 3, por ejemplo, se encontraban un 88.24% de las roturas inspeccionando el 28.79% de la flota. Estableciendo distintos umbrales de decisión se obtienen las siguientes matrices de confusión y los siguientes valores de precisión, sensibilidad y especificidad, siendo:
Para la región 1:
Para la zona 1 completa:
CONCLUSIONES
Para concluir, se ha abordado el problema de elaborar un algoritmo para priorizar las inspecciones de las multiplicadoras en aerogeneradores. Para esta tarea, en primer lugar, se ha llevado a cabo la limpieza y preparación del conjunto de datos, se ha analizado el rendimiento de varios modelos Machine Learning con esta base de datos, y finalmente se han realizado varias pruebas para distintos conjuntos de aerogeneradores con el modelo seleccionado.
Tras el entrenamiento y aplicación del algoritmo de predicción de roturas de las multiplicadoras, se puede concluir que mediante este es posible establecer un orden de prioridad de inspección de las multiplicadoras a fin de anticipar roturas en las mismas para optimizar los recursos empleados en su inspección y reparación.
REFERENCIAS
- Kégl, Balázs. "The return of AdaBoost.MH: multi-class Hamming trees". (20 December 2013). https://arxiv.org/abs/1312.6086
- Freund, Yoav, Robert Schapire, and Naoki Abe. "A short introduction to boosting." Journal-Japanese Society For Artificial Intelligence 14.771-780 (1999): 1612. http://www.yorku.ca/gisweb/eats4400/boost.pdf