La Plataforma Lokad

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

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 desmitiga las iniciativas de la cadena de suministro al eliminar capas de intermediarios entre el negocio y la tecnología.

A través de Envision, superamos ampliamente las capacidades de los APS (Sistemas de Planificación Avanzada), “avanzados” solo en nombre, BI (Inteligencia de Negocios) o incluso kits de herramientas de pronóstico especializados. Por último, en comparación con lenguajes de programación genéricos, como Python, Lokad ofrece aplicaciones que son 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 muy duro para preservar todas estas excelentes cualidades que se encuentran en Excel.

Sin embargo, en lo que respecta a la cadena de suministro, Excel no 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 a 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 “manejar por promedios” que es perjudicial para las cadenas de suministro. De manera similar, las hojas de cálculo no tienen (virtualmente) funciones para realizar optimización restringida bajo condiciones inciertas. Como resultado, incluso restricciones mundanas como los MOQs terminan resolviéndose 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, que simplemente no están disponibles en las hojas de cálculo. Entonces, las aplicaciones construidas con Envision son mucho más mantenibles que las hojas de cálculo, que tienen un rendimiento deficiente en lo que respecta a 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, basados en los años de experiencia de Lokad, hemos llegado a la conclusión de que, en lo que respecta a las cadenas de suministro, 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 fin de “obtener información” es terriblemente costoso para las empresas donde están involucrados miles de productos y miles de clientes.

En las cadenas 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 cantidades muy grandes de datos - sino porque, mientras 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 ser leídos y actuados es extremadamente difícil. A pesar de todas sus fallas, Excel viene con esta actitud de “hacer las cosas”, mientras que BI no.

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 deben mantenerse a un margen bruto bajo para presionar a los competidores
  • Generar las cantidades requeridas para llenar exactamente el próximo contenedor a ser ordenado
  • Enumerar los principales elementos que necesitan ser liquidados para despejar el almacén
  • Enumerar los principales elementos que son devueltos constantemente por los clientes y que necesitan ser eliminados de la lista

Las decisiones cuantitativas generadas por Envision luego pueden ser automáticamente reimportadas al ERP, o descargadas como hojas de cálculo. El alcance exacto de Envision realmente depende de lo que decidas que sean las principales prioridades de tu negocio.

Tu negocio no puede evadir 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 siente “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 sido testigos de algunos proveedores que prometen herramientas tan simples que incluso “un niño de 9 años podría usarlas”, y que finalmente obtienen resultados alineados con lo que un “niño de 9 años” real habría entregado.

La cadena de suministro implica miles de productos, y con frecuencia, muchos más. Cada precio, cada nivel de stock, cada surtido necesita ajustarse 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 tu 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 algún lugar de tu organización, esta persona está aprovechando la expresividad programática de la hoja de cálculo. No hay forma de 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 como 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 fallar al avanzar hacia 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 mantendrá en torno a la elección de Python vs. 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 está escribiendo 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 siempre cambiantes 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 que simplemente no son accesibles para Python, a saber:

  • Defensa en profundidad, previniendo clases enteras de problemas de seguridad que surgen siempre que está involucrado un lenguaje de programación general.
  • Rendimiento transparente, evitando que se escriban programas que serán imprácticamente lentos de ejecutar en producción desde el principio.
  • Actualización transparente, por más avanzado que sea un objetivo en constante movimiento, las actualizaciones deben entregarse automáticamente, típicamente 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 tu 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.