La Plataforma Lokad

Aunque las iniciativas de Supply Chain Cuantitativo se pueden llevar a cabo en cualquier plataforma con un lenguaje de programación, la plataforma Lokad ha sido diseñada específicamente para respaldar esas iniciativas. Lokad es una plataforma dedicada al diseño y la implementación de aplicaciones personalizadas de optimización predictiva de la cadena de suministro. En comparación con las herramientas de desarrollo genéricas, Lokad ofrece una productividad, confiabilidad, mantenibilidad y seguridad superiores, y por último, pero no menos importante, un rendimiento de la cadena de suministro.

envision

En el núcleo de Lokad se encuentra Envision, un Lenguaje de Programación Específico del Dominio (DSL). Este lenguaje está destinado a expertos en cadena de suministro, no a ingenieros de software. Nuestro objetivo principal es poner la optimización de la cadena de suministro en manos de aquellos que tienen experiencia directa en el tema. Al hacerlo, Lokad reduce los riesgos de las iniciativas de la cadena de suministro al eliminar capas de intermediarios entre el negocio y la tecnología de la información.

A través de Envision, superamos ampliamente las capacidades de los Sistemas de Planificación Avanzada (APS, por sus siglas en inglés), “avanzados” solo en nombre, la Inteligencia de Negocios (BI, por sus siglas en inglés) e incluso los conjuntos de herramientas de pronóstico especializados. Por último, pero no menos importante, en comparación con los lenguajes de programación genéricos, como Python, Lokad ofrece aplicaciones más seguras y más mantenibles.

Más allá de las hojas de cálculo

Excel es la herramienta más utilizada en la cadena de suministro. En Lokad, reconocemos que Excel tiene muchas cualidades excelentes: es simple, expresivo, visual y, lo más importante, Excel te permite estar al tanto de tus datos todo el tiempo. Excel ha adquirido el éxito mundial que se merece. Con Envision, hemos trabajado arduamente para preservar todas estas excelentes cualidades que se encuentran en Excel.

Sin embargo, en lo que respecta a la cadena de suministro, Excel tampoco es el pináculo del análisis. La mayor fortaleza de Excel también es su mayor debilidad: la lógica de cálculo y los datos se entrelazan sistemáticamente, y esto crea problemas interminables tan pronto como las hojas comienzan a crecer en tamaño. Sin embargo, las hojas de Excel grandes suelen ser inevitables en la cadena de suministro, donde generalmente se encuentran cientos o incluso miles de productos dentro de la misma empresa.

Desafortunadamente, este problema de entrelazamiento de lógica+datos no se puede solucionar dentro de Excel, porque la “solución” iría en contra de lo que hace que Excel sea una gran herramienta en primer lugar. Como resultado, en Lokad, decidimos diseñar Envision, una tecnología que preservaría las propiedades valiosas de Excel en lo que respecta a la cadena de suministro, pero que también admitiría la escalabilidad hasta cientos de millones de pedidos o SKU, si eso es lo que se requiere.

Entonces, las hojas de cálculo, no solo Excel, simplemente no están diseñadas para clases especializadas pero esenciales de cálculos necesarios para la optimización de las cadenas de suministro. Por ejemplo, las hojas de cálculo no tienen (virtualmente) ninguna función para gestionar pronósticos probabilísticos. Por lo tanto, las hojas de cálculo se quedan con una mentalidad de “promedio” que es perjudicial para las cadenas de suministro. De manera similar, las hojas de cálculo no tienen (virtualmente) ninguna función para realizar optimización con restricciones en condiciones inciertas. Como resultado, incluso restricciones mundanas como las cantidades mínimas de pedido terminan siendo resueltas manualmente por los profesionales de la cadena de suministro.

Envision ofrece construcciones especializadas, como un álgebra de variables aleatorias, que son esenciales para la optimización predictiva de las cadenas de suministro y que simplemente no están disponibles en las hojas de cálculo. Luego, las aplicaciones construidas con Envision son mucho más mantenibles que las hojas de cálculo, que no escalan bien en problemas complejos.

No solo observar datos, sino actuar sobre ellos

Las soluciones de Business Intelligence (BI) se venden con frecuencia como la siguiente etapa del análisis empresarial después de Excel. Sin embargo, basándonos en la experiencia de Lokad, hemos llegado a la conclusión de que, en lo que respecta a las cadenas de suministro, el BI casi siempre falla en materializar los beneficios esperados. El problema no radica en la calidad de las herramientas de Business Intelligence: el mercado de BI es maduro y existen algunas soluciones excelentes. Más bien, la dificultad radica en el hecho de que observar datos con el objetivo de “obtener información” es terriblemente costoso para las empresas en las que participan miles de productos y miles de clientes.

En la cadena de suministro, las herramientas de BI no logran escalar no porque no puedan procesar todos los datos disponibles, a diferencia de Excel, las buenas herramientas de BI pueden procesar grandes cantidades de datos, sino porque, mientras que producir millones de números todos los días es barato, como dijimos anteriormente: producir solo diez números relevantes todos los días que valgan la pena leer y actuar sobre ellos es extremadamente difícil. A pesar de todas sus fallas, Excel tiene esta actitud de “hacer las cosas”, mientras que el BI no la tiene.

Para Envision, queríamos absolutamente preservar esta perspectiva de “hacer las cosas”. Envision se trata de construir aplicaciones. Por ejemplo, Envision puede generar listas de acciones priorizadas como:

  • Enumerar los principales elementos que se deben mantener a un margen bruto bajo para presionar a los competidores
  • Generar las cantidades requeridas para llenar exactamente el próximo contenedor que se va a pedir
  • Enumerar los principales elementos que deben liquidarse para despejar el almacén
  • Enumerar los principales elementos que los clientes devuelven constantemente y que deben eliminarse de la lista

Las decisiones cuantitativas generadas por Envision luego se pueden volver a importar automáticamente al ERP o descargar como hojas de cálculo. El alcance exacto de Envision realmente depende de lo que decida ser las principales prioridades de su negocio.

Su negocio no puede evitar la programabilidad

Envision es un lenguaje de programación. Para la mayoría de las personas que no son desarrolladores de software, esto probablemente se sienta “muy” técnico; la mayoría de los ejecutivos de negocios, incluso en las empresas más grandes, se preguntan si su equipo será capaz de ser productivo con una herramienta tan avanzada. Nuestra experiencia nos dice que la cadena de suministro es irremediablemente compleja. Hemos presenciado a algunos proveedores prometiendo herramientas tan simples que incluso “un niño de 9 años podría usarlas” y, en última instancia, obteniendo resultados alineados con lo que un “niño de 9 años” habría entregado.

La cadena de suministro involucra miles de productos y, con frecuencia, muchos más. Cada precio, cada nivel de stock, cada surtido necesita ser ajustado constantemente. No hay esperanza de lograr esto con un nivel satisfactorio de productividad sin automatizar todas estas tareas mundanas. Sin embargo, la automatización por sí sola no es suficiente: tiene que ser una automatización inteligente que esté profundamente alineada con los impulsores específicos de su negocio. La parte “programable” es la que hace posible lograr esta alineación.

Cada vez que alguien está creando una fórmula compleja en una hoja de cálculo en alguna parte de su organización, esa persona está aprovechando la expresividad programática de la hoja de cálculo. No se puede deshacerse de la locura de las hojas de cálculo si los equipos no tienen una mejor alternativa para inyectar su experiencia en el dominio en los sistemas. Envision está precisamente destinado a ser esta alternativa superior.

Más allá de Python

A pesar de la creciente popularidad de las iniciativas de ciencia de datos, la dura realidad es que la abrumadora mayoría de esas iniciativas no cumplen con sus expectativas. Más específicamente, si bien los prototipos iniciales suelen ser prometedores, esas iniciativas suelen fracasar al pasar a la producción. En contraste, Envision ha sido diseñado teniendo en cuenta la producción de la cadena de suministro, para mitigar específicamente en la mayor medida posible esas clases de problemas. Hay dos causas fundamentales detrás de esos fracasos. Discutir los pros y los contras de todas las alternativas a Envision sería algo tedioso, por lo tanto, para mayor claridad, la discusión se centrará en la elección entre Python y Envision.

En primer lugar, Python requiere ingenieros de software. De hecho, Python, al igual que cualquier lenguaje de programación completo, expone toneladas de complejidades técnicas a quien escribe código en Python. Esperar que las personas sean expertas tanto en ingeniería de la cadena de suministro como en ingeniería de software es demasiado. Las capacidades programáticas deben ser accesibles a un amplio espectro de personas con mentalidad técnica, no solo a ingenieros de software profesionales.

En segundo lugar, los costos de mantenimiento de los prototipos apresurados de Python se disparan. Los costos de mantenimiento deben mantenerse bajo control. Python está lejos de ser eficiente en términos de hardware. Luego, resolver problemas de optimización de la cadena de suministro es un proceso complicado: los datos de muchos sistemas (poco) confiables deben ser canalizados de manera confiable, los procesos imperfectos y en constante cambio deben ser documentados y modelizados, las métricas de optimización deben reflejar una estrategia empresarial en constante cambio, etc. Python ofrece casi ninguna corrección por diseño para respaldar tales esfuerzos.

Envision es nuestra respuesta a estos desafíos. Brilla de formas a las que simplemente no se puede acceder con Python, a saber:

  • Defensa en profundidad, previniendo clases enteras de problemas de seguridad que surgen cuando se involucra un lenguaje de programación general.
  • Rendimiento transparente, evitando que se escriban programas que serán imprácticamente lentos de ejecutar en producción.
  • Actualización transparente, tan actualizada como un objetivo en constante movimiento, las actualizaciones deben entregarse automáticamente, generalmente a través de reescrituras de código en segundo plano.
  • Stack empaquetado, donde se elimina la carga de ensamblar docenas de piezas de software, incluso al considerar la aplicación más simple.

En conclusión, si bien Python es increíble (lo es), no es una respuesta satisfactoria para la optimización de la cadena de suministro como lo es Envision. Construir y mantener una aplicación de aprendizaje automático de calidad de producción en Python es posible, pero los costos son altos y, a menos que su empresa esté preparada para tener un equipo completo de ingeniería de software dedicado al mantenimiento de esta aplicación, no funcionará en producción.