¿Qué puede ser mejor que predecir el futuro?
Siempre digo que para una empresa es fundamental saber dónde está parada. La dirección siempre debe saber, con la mayor certeza posible, cuál es la situación actual de la empresa. Para ello, generalmente, se cuenta con numerosos sistemas que reportan el valor “actual” de los diversos indicadores claves, eso que en la literatura denominan los KPIs (Key Performance Indicators). Se pueden definir muchos, y cada empresa tiene los propios. Generalmente se obtienen mediante una serie de reportes, extraídos de los repositorios de información de la empresa, sean estos bases de datos operativas o consolidadas, los llamados “datawarehouses”. Entonces, dependiendo del grado de madurez digital de una empresa, podemos decir que conociendo los KPIs tenemos toda la información que necesitamos de la situación actual de la empresa.
¿Es así? No. No exactamente. Hace algunos años, esa sería la situación. Pero el mundo evoluciona y se vuelve más complejo. El detalle es que los KPIs, cuando los tienes, representan solo el pasado de la empresa. Es lo que fue, lo que sucedió. En el preciso momento en que tienes los KPIs en la mano ya son historia. Y no importa que tan rápido puedas refrescar la pantalla, o qué tan temprano los obtengas, o cuantas veces a día se corran los reportes. Eso que ves es el pasado, una foto del ayer. Por supuesto que es muy importante conocer que ha pasado en la empresa: cuanto se vendió, cuanto se produjo, cuando inventario se utilizó o está en proceso (“estaba”), cuanto valor se agregó, etc. Es importante, y muy necesario, para tomar las decisiones relevantes, de cara al futuro, para la empresa. Pero, en el mundo de hoy, eso no es suficiente ya que nada garantiza que esa situación que vivimos hoy continuará en el futuro.
Sabemos dónde se estaba ayer, pero no donde se estará mañana. Hay que reconocer, sin embargo, que el ser humano tiene una extraordinaria capacidad natural para buscar y reconocer patrones y de allí imaginar tendencias. Algunos pueden incluso ver entre líneas. Ver cosas en los datos que otros no pueden ver. Históricamente, esos privilegiados han sido reclutados y han escalado la pirámide empresarial. Pero ¿dejar las decisiones más importantes sobre la conducción y el futuro de la empresa a la subjetividad de algunos que “ven más allá”? En el mundo empresarial eso puede llegar a ser un juego bastante peligroso. O, peor aún, suponiendo que sí exista una tendencia en los datos, ¿qué ocurre si esos pocos privilegiados no llegan a verla? ¿Qué ocurre si los privilegiados pierden su capacidad de discernir? Esto es un peligro actual, porque los resultados pueden depender de muchas variables a la vez, y en la medida en que vas controlando unas, se pasa a depender de otras. Los modelos se vuelven cada vez más complejos, y los márgenes de error más pequeños. En esas circunstancias, es mejor buscar medios que sean más objetivos, en lo posible no humanos, que nos ayuden a reconocer mejor las tendencias y filtrar el grano de la paja. Así como los KPIs nos ayudan a ver el pasado ¿no sería mejor también poder mirar al futuro?
La analítica predictiva.
Hay una frase que dice “conocer el pasado es la mejor manera de predecir el futuro”. Pero, a mí particularmente me gusta más aquella frase que dice “Es muy difícil entender lo que ves cuando miras el futuro. Pero, cuando miras al pasado todo empieza a tener sentido”. Sin ánimo de parecer esotérico ni metafórico, la clave para entender el futuro está en conocer bien el pasado. Ciertamente es así en lo que respecta a la ciencia de datos. ¿Cómo funciona esto? Pues pongamos, por ejemplo, que queremos predecir la temperatura de un proceso, el nivel de ventas (demanda) de un producto, o el tiempo que nos queda de reserva de un producto x en el inventario. Para ciertos procesos es posible modelar el resultado como una función lineal de las variables involucrada. Esto es:
Esta es una aproximación muy sencilla, que nos permite solo ilustrar el procedimiento. Puede que existan otras funciones que sean más adecuadas o precisas para otros procesos, pero que esta nos sirva de ejemplo. A partir entonces que hemos definido la función y las variables, solo necesitamos calcular los coeficientes que acompañan a las variables (en este caso A, B, C, … hasta N). He aquí donde necesitamos el pasado. Usando datos previos, históricos y cuantos más sean mejor, podemos ir construyendo un sistema de ecuaciones para despejar el valor de cada uno de los coeficientes. Para ello basta ir sustituyendo los valores de las variables (T, x1, x2, x3, hasta xn) con los valores históricos para construir un sistema de N ecuaciones con N incógnitas. Y una vez obtenidos los coeficientes A, B, C hasta N, podemos entonces obtener el valor de cualquier nueva T tan solo sustituyendo en la ecuación resultante los valores de x1, x2, x3 hasta xn. Hemos creado así una fórmula para predecir el futuro. ¿Puede haber algo mejor?
Como ya se ha publicado en diversos artículos, estamos desarrollando un proyecto con la escudería de Moto2 Pertamina Mandalika Stop and Go (SAG). La primera parte de ese proyecto era construir un modelo predictivo de las motos y los circuitos, de forma que los ingenieros puedan predecir el comportamiento de las motos ante los cambios de diversos parámetros y componentes mecánicos. Aquí la variable dependiente era el tiempo de recorrido de la moto en el circuito, y lo que se busca es minimizar las pruebas necesarias para obtener la mejor combinación de parámetros (setup) para ese circuito. Introducidos los parámetros y componentes en la ecuación, se puede predecir el tiempo que hará el binomio moto-piloto recorriendo el circuito. A veces, pequeños cambios en los parámetros pueden disminuir preciosos milisegundos en el recorrido, pero es imposible probar en el terreno las innumerables combinaciones posibles. Así que un sistema predictivo es de gran ayuda para encontrar la mejor combinación. Un sistema que prediga el futuro. ¿Se puede pedir algo mejor?
¿Qué puede haber mejor que predecir el futuro?
Hay otra frase también ya manida que dice “la mejor manera de predecir el futuro es crearlo”. ¿Qué puede haber mejor que predecir el futuro? Tener la capacidad de crearlo o modificarlo a voluntad. Más interesante que saber cuál será el volumen de producción para el año siguiente, es saber qué tengo que hacer para alcanzar un volumen de producción dado. Suponga el caso de un avión volando de Madrid a Nueva York. El combustible consumido es una función de la velocidad del avión, la altura, la velocidad del viento, la cantidad de pasajeros, la carga y del propio peso del combustible que queda aún en los tanques (que va variando continuamente). Imagine que tengo un sistema predictivo que me avisa que, en estas condiciones, tengo una autonomía de 800 kms, y me quedan 880 kms para llegar a Nueva York. ¿Qué tengo que hacer para alcanzar o modificar (o mitigar) el futuro? Si se tiene un modelo que predice que su empresa entrará en pérdidas el trimestre que viene, ¿Qué puedo hacer para evitarlo? El análisis de estos problemas y las soluciones son el objeto de otro tipo de analítica que a veces no se trata en los medios: la analítica prescriptiva. Es raro para mí que conociendo la importancia de esta herramienta aún haya pocas empresas que estén llevando a cabo este tipo de proyectos. Al menos en mi experiencia. Es por ello que me sorprendió muy gratamente que los ingenieros de SAG, una vez vistas las capacidades del modelo predictivo, nos hayan pedido ir más allá. No sé si conocían las implicaciones de su requerimiento, pero nosotros quisimos aceptar el reto inmediatamente.
Realizar un modelo prescriptivo de las motos de SAG no es una tarea fácil. Solo de entrada imagine usted que una moto puede tener cientos de parámetros entre mecánicos y eléctricos. Pensemos en reducir a un modelo con solo a unos 25 parámetros, y que cada parámetro puede tomar una serie de 25 valores diferentes. Se trata de construir una tabla de 2525 filas, es decir 25 multiplicado por sí mismo 25 veces, y comprobar en un modelo predictivo cada una de las combinaciones para registrar el resultado. Si queremos que la moto recorra el circuito en minuto y medio, ¿Cuáles parámetros cumplen con ese requisito? O mejor dicho ¿Cuántas combinaciones posibles de parámetros cumplen?
“El Hipercubo”
Solamente los requerimientos de hardware para manejar esa tabla, a la que cariñosamente hemos llamado “El Hipercubo”, provocan algo de miedo. Una tabla de este tamaño también requiere del uso de técnicas y librerías que no son las más usuales en el Machine Learning tradicional. El consumo de recursos del proyecto, incluyendo espacio y tiempo, es asombroso. Pero también el resultado. Es algo que escapa a la imaginación. Tener el poder de saber cuál es la mejor combinación posible de parámetros para obtener ese ansiado primer lugar te pone en una situación muy interesante. Pero esto va más allá, es abrir la puerta a construir una moto que quizá no existe hoy. Es como abrir la puerta a un mundo donde hay posibles soluciones que nadie ha visto antes, y que, por supuesto, habrá que construir y probar, pero que son más que prometedoras. Hay una mayor seguridad en que ése es el camino a seguir, aun cuando parezca que estás desafiando el sentido común. En Asseco Spain Group estamos más que emocionados con este proyecto, porque puede llegar a ser bastante rompedor y disruptivo para nuestro cliente, y agradecemos a SAG que nos hayan dado ese voto de confianza y ser tan valientes para ir más allá de lo obvio.
¿Qué puede ser mejor que predecir el futuro? Sin duda alguna, crearlo.
Carlos Alberto García
Data Scientist
Asseco Spain Group