La plateforme Lokad
Table of contents
Au coeur de Lokad se trouve Envision, un langage dédié. Ce langage s’adresse aux experts supply chain, pas aux ingénieurs logiciels. Notre objectif est de mettre l’optimisation supply chain entre les mains de ceux qui connaissent directement le métier. En procédant ainsi, Lokad réduit les risques des initiatives supply chain en supprimant des couches d’intermédiaires entre le business et l’IT.
Avec Envision, nous dépassons très largement les capacités des APS, “avancés” de nom seulement, des outils de BI ou même des bibliothèques spécialisées en prévision. Enfin, par rapport à des langages généralistes comme Python, Lokad permet de produire des applications plus sûres et plus maintenables.
Au-delà des tableurs
Excel reste l’outil le plus utilisé en supply chain. Chez Lokad, nous reconnaissons à Excel de nombreuses qualités : il est simple, expressif, visuel et, surtout, il permet de garder en permanence la main sur les données. Excel a gagné son succès mondial, et avec Envision nous avons travaillé dur pour préserver ces qualités.
Toutefois, en supply chain, Excel n’est pas le sommet de l’analytique. Sa plus grande force est aussi sa plus grande faiblesse : la logique de calcul et les données se retrouvent systématiquement entremêlées, ce qui génère des problèmes sans fin dès que les feuilles prennent de l’ampleur. Or, de grandes feuilles sont presque inévitables lorsqu’une entreprise gère des centaines, voire des milliers de produits.
Ce problème d’enchevêtrement logique+données ne peut pas être corrigé dans Excel sans détruire précisément ce qui fait sa force. Chez Lokad, nous avons donc conçu Envision comme une technologie qui préserve les qualités utiles des tableurs tout en passant à l’échelle jusqu’à des centaines de millions de commandes ou de SKU.
De plus, les tableurs ne sont pas adaptés à certaines classes de calculs essentielles à l’optimisation supply chain. Par exemple, ils n’offrent pratiquement rien pour manipuler des prévisions probabilistes. Ils restent enfermés dans une logique de “pilotage par les moyennes” qui nuit aux décisions. De la même manière, ils proposent très peu d’outils pour résoudre une optimisation sous contraintes en environnement incertain. Résultat : même des contraintes banales, comme les MOQ, finissent par être traitées manuellement.
Envision apporte des constructions spécialisées, telles qu’une algèbre des variables aléatoires, indispensables à l’optimisation prédictive de la supply chain et absentes des tableurs. Les applications construites avec Envision sont également bien plus maintenables que des feuilles de calcul qui passent mal à l’échelle.
Ne pas seulement observer les données, mais agir
Avec Envision, nous avons absolument voulu préserver cette perspective tournée vers l’action. Envision sert à construire des applications. Par exemple, Envision peut générer des listes d’actions priorisées telles que :
- Les articles à maintenir volontairement avec une faible marge brute pour mettre la pression sur les concurrents
- Les quantités exactes à commander pour remplir le prochain conteneur
- Les articles à liquider en priorité pour désengorger l’entrepôt
- Les articles souvent retournés par les clients et qu’il faut déréférencer
Les décisions quantitatives générées par Envision peuvent ensuite être réinjectées automatiquement dans l’ERP ou téléchargées sous forme de tableurs. La portée d’Envision dépend directement des priorités que vous fixez à votre entreprise.
Votre entreprise ne peut pas éviter la programmabilité
Une supply chain implique des milliers de produits, souvent beaucoup plus. Chaque prix, chaque niveau de stock, chaque assortiment doit être ajusté en permanence. Il n’y a aucun espoir d’atteindre une productivité satisfaisante sans automatiser toutes ces tâches répétitives. Mais l’automatisation seule ne suffit pas : il faut une automatisation intelligente, profondément alignée avec les leviers métier. C’est précisément le rôle de la programmabilité.
Chaque fois qu’une personne élabore quelque part dans l’entreprise une formule complexe dans un tableur, elle utilise déjà l’expressivité programmatique du tableur. On ne sortira pas de cette folie tant que les équipes ne disposeront pas d’une meilleure manière d’injecter leur expertise métier dans les systèmes. Envision a été conçu comme cette meilleure alternative.
Au-delà de Python
D’abord, Python exige des ingénieurs logiciels. Comme tout langage généraliste, Python expose énormément de subtilités techniques à ceux qui écrivent le code. Attendre d’une même personne qu’elle soit à la fois experte en supply chain et en ingénierie logicielle est irréaliste. Les capacités programmatiques doivent être accessibles à un large spectre de profils techniques, pas uniquement à des ingénieurs logiciels professionnels.
Ensuite, les coûts de maintenance de prototypes Python bricolés explosent. La maintenance doit rester sous contrôle. Python n’est pas léger sur le plan matériel, et l’optimisation supply chain est un processus désordonné : les données de nombreux systèmes plus ou moins fiables doivent être fiabilisées, des processus imparfaits et mouvants doivent être modélisés, et les métriques d’optimisation doivent suivre une stratégie métier elle-même en constante évolution. Python n’apporte quasiment aucune garantie de correction par conception pour ce type d’effort.
Envision est notre réponse à ces contraintes. Il se distingue sur des aspects qui restent hors de portée de Python :
- Défense en profondeur, pour prévenir des classes entières de problèmes de sécurité
- Performance transparente, pour empêcher d’écrire des programmes trop lents pour la production
- Mise à niveau transparente, afin de livrer automatiquement les évolutions, y compris via des réécritures de code en arrière-plan
- Pile packagée, supprimant la corvée d’assembler des dizaines de composants logiciels même pour une application simple
En conclusion, Python est un excellent langage, mais ce n’est pas une réponse satisfaisante à l’optimisation supply chain au sens où Envision l’est. Construire et maintenir une application de machine learning de niveau production en Python est possible, mais le coût est élevé et cela ne fonctionne pas durablement sans une équipe complète d’ingénierie logicielle dédiée.