Consultoría & Consultores

En una entrada anterior del blog describí el proceso de implantación de un sistema de mantenimiento predictivo. En el que saber con antelación cuándo se deben hacer las reparaciones necesarias de cara a parar la producción lo menos posible, aporta en sí mismo valor de negocio. De hecho, si se pudiera disponer de maquinaria y empleados infinitos a un coste cero, un sistema de mantenimiento predictivo proporcionaría todo lo necesario para maximizar la eficiencia de las máquinas de la cadena de producción. Pero esta hipótesis está lejos de ser real. Así, para tener un sistema completo de ayuda a la toma de decisiones, es necesario saber cómo usar eficientemente los recursos que tenemos de forma que se minimice el riesgo de reparación imprevista, se maximice la vida de las máquinas y se minimice el impacto en la cadena de producción de la revisión y reparación de la maquinaria.

Analítica Prescriptiva en el Mantenimiento Predictivo

En este punto, la aplicación de técnicas de Analítica Prescriptiva ayuda a decidir en qué momento se ha de realizar cada intervención usando las herramientas y personal del que se dispone, de forma que no ponga en riesgo ni la producción ni el tiempo de vida de la maquinaria.

¿Cómo se materializa este tipo de analítica avanzada? ¿Son algoritmos que aprenden de las decisiones tomadas en el pasado como el Machine Learning para tomar decisiones a futuro? En este caso, la respuesta es no. Primero, porque para aplicar Machine Learning a la toma de decisiones, necesitas tener un registro de las decisiones que se han tomado y una evaluación de la bondad de las mismas, cosa que no suele ser habitual. Además, para poder tomar una buena decisión cuando ocurren «imprevistos» tales como la avería de una herramienta concreta o la baja de una persona con cierta cualificación, se necesita tener registradas decisiones que se tomaron en situaciones «similares». En las que no se pudo dar ninguna elección innovadora ante imprevistos o incluso en las que se propusieron soluciones inviables desde el punto de vista operativo. ¿Qué tipo de algoritmos aplican entonces en la Analítica Prescriptiva? Fundamentalmente algoritmos de resolución de problemas de optimización.

Problemas de optimización

Un problema de optimización viene determinado por una serie de restricciones y una función objetivo. Las restricciones definen el contexto específico de negocio («sólo tengo 9 máquinas de este tipo» o «esta revisión implica a esta serie de personas cualificadas»). La función objetivo define qué es lo que consideramos la mejor solución. Así, la resolución de un problema de optimización implica la aplicación de técnicas matemáticas avanzadas para encontrar el mínimo (o máximo) valor de una función dentro de todo el conjunto de posibles soluciones llamado espacio de soluciones.

El espacio de soluciones será diferente en cada caso, según el contexto de negocio. En el ejemplo que venimos desarrollando, podría haber cuestiones como: «sólo puedo realizar 4 reparaciones de este tipo a la vez» o «después de 5 horas usando esta herramienta, ha de estar parada por lo menos media hora». Este tipo de condiciones se llaman restricciones y definen lo que el motor considera una solución. Así, el motor nunca va a dar como respuesta una planificación que incumpla alguna de las restricciones marcadas. Asegurando que las decisiones tomadas se van a poder aplicar a la realidad.

La función que minimiza (o maximiza) un motor de optimización se llama función objetivo. Y marca, dentro del espacio de soluciones, cuál es la mejor solución. En nuestro caso, podría ser maximizar la vida de la maquinaria, minimizar el impacto sobre la producción o una combinación de ambas. Las variables de esta función objetivo se llaman variables de decisión y representan las decisiones a tomar por el motor. En el ejemplo marcarían el momento en el que se realiza cada intervención necesaria y las personas y maquinaria destinadas a cada una de las intervenciones.

Un factor importante en este tipo de problemas es también el horizonte de planificación. Es decir, los días para los cuales se quiere obtener una planificación. De este modo, el motor tomará la mejor decisión contando con las condiciones específicas que se den dentro de ese horizonte. Por ejemplo, el número y tipo de intervenciones podrían ser distintas para cada ejecución, e incluso podría variar el personal o el número y tipo de herramientas.

Así, un motor de optimización asegura obtener la mejor solución (en términos de función objetivo) a nuestro problema, dadas unas restricciones y unas condiciones temporales específicas que definen el espacio de soluciones. Esto le permite actuar de forma óptima también bajo condiciones adversas, devolviendo la solución «menos mala».

Algoritmos de optimización

Los algoritmos que subyacen a los motores de optimización tienen como objetivo explorar el espacio de soluciones de forma inteligente, intentando alcanzar el mínimo de la función objetivo en un tiempo razonable. En este sentido, hay algoritmos que pueden demostrar matemáticamente que han encontrado la mejor solución, pero cuando el espacio de soluciones tiene mucha combinatoria, no son capaces de llegar a ella. También hay algoritmos que no pueden demostrar esto, pero en los que se puede incluir suficiente lógica de negocio como para conseguir una buena solución en un intervalo corto de tiempo. Y algoritmos que no buscan la mejor solución, pero son capaces de explorar de forma rápida todo el espacio de soluciones. La elección del algoritmo o la combinación de los mismos a usar, depende mucho de la estructura del problema, perteneciendo normalmente a técnicas de optimización distintas, y no siendo fácil el cambio de uno a otro. Así, la experiencia en el desarrollo de modelos de optimización es vital para el éxito del proyecto, ya que hay que decidir de antemano cuál es la combinación de técnicas de optimización que mejor se adecua a los requerimientos de cada problema.

La Analítica Prescriptiva es el siguiente eslabón una vez se tiene implantado un sistema de mantenimiento predictivo. Un paso más hacia un sistema completo de ayuda a la toma de decisiones en mantenimiento.