00:00 Introduction
02:53 Décisions vs Artéfacts
10:07 Optimisation expérimentale
13:51 L’histoire jusqu’à présent
17:01 Les décisions d’aujourd’hui
19:36 Le manifeste de la supply chain quantitative
21:01 Le problème d’allocation des stocks de détail
24:49 Les forces économiques sur le SKU du magasin
29:35 Réification des futurs
32:41 Réification des options - 1/3
38:25 Réification des options - 2/3
43:02 Réification des options - 3/3
44:44 Fonction de récompense des stocks - 1/2
51:41 Fonction de récompense des stocks - 2/2
56:19 Allocations de stocks prioritaires - 1/4
59:59 Allocations de stocks prioritaires - 2/4
01:03:39 Allocations de stocks prioritaires - 3/4
01:06:34 Allocations de stocks prioritaires - 4/4
01:12:58 Lissage du flux d’entrepôt - 1/2
01:16:48 Lissage du flux d’entrepôt - 2/2
01:22:12 Fonction de récompense de l’action
01:25:02 Le monde réel est chaotique
01:27:38 Conclusion
01:30:00 Prochain cours et questions du public

Description

Les décisions en matière de chaîne d’approvisionnement nécessitent des évaluations économiques ajustées en fonction des risques. Convertir des prévisions probabilistes en évaluations économiques n’est pas trivial et nécessite des outils dédiés. Cependant, la priorisation économique résultante, illustrée par des allocations de stocks, se révèle plus puissante que les techniques traditionnelles. Nous commençons par le défi de l’allocation des stocks de détail. Dans un réseau à deux échelons comprenant à la fois un centre de distribution (CD) et plusieurs magasins, nous devons décider comment allouer les stocks du CD aux magasins, sachant que tous les magasins se disputent le même stock.

Transcription complète

Slide 1

Bienvenue dans cette série de cours sur la chaîne d’approvisionnement. Je suis Joannes Vermorel et aujourd’hui je vais présenter “Allocation des stocks de détail avec des prévisions probabilistes”. L’allocation des stocks de détail est un défi simple mais fondamental : quand et combien de stocks décidez-vous de déplacer à tout moment entre les centres de distribution et les magasins que vous exploitez ? La décision de déplacer des stocks dépend de la demande future, il est donc nécessaire d’avoir une prévision de la demande d’une certaine sorte.

Cependant, la demande de détail au niveau du magasin est incertaine, et l’incertitude de la demande future est irréductible. Nous avons besoin d’une prévision qui reflète correctement cette incertitude irréductible du futur, donc une prévision probabiliste est nécessaire. Cependant, tirer le meilleur parti des prévisions probabilistes pour optimiser les décisions de la chaîne d’approvisionnement est une tâche complexe. Il serait tentant de recycler une technique d’inventaire existante qui a été initialement conçue avec une prévision déterministe classique à l’esprit. Cependant, le faire serait contre-productif et irait à l’encontre de la raison même pour laquelle nous avons introduit des prévisions probabilistes en premier lieu.

L’objectif de cette conférence est d’apprendre à tirer le meilleur parti des prévisions probabilistes dans leur forme originale pour optimiser les décisions de la chaîne d’approvisionnement. Comme premier exemple, nous examinerons le problème de l’allocation des stocks de détail, et grâce à l’examen de ce problème, nous verrons comment nous pouvons réellement optimiser le niveau de stock au niveau du magasin. De plus, grâce à l’examen des prévisions probabilistes, nous pouvons même aborder de nouvelles classes de problèmes de chaîne d’approvisionnement, tels que lisser le flux des stocks des centres de distribution vers les magasins afin d’optimiser et de réduire les coûts de fonctionnement du réseau.

Cette conférence ouvre le sixième chapitre de cette série, qui est consacré aux techniques et processus de prise de décision dans un contexte de chaîne d’approvisionnement. Nous verrons que les décisions doivent être optimisées en tenant compte de l’ensemble du réseau de la chaîne d’approvisionnement, en tant que système intégré, par opposition à une série d’optimisations locales isolées. Par exemple, en adoptant une perspective étroite de l’unité de gestion des stocks (SKU).

Slide 2

La première étape pour aborder les décisions de la chaîne d’approvisionnement est d’identifier les décisions réelles de la chaîne d’approvisionnement. Une décision de la chaîne d’approvisionnement a un impact direct, physique et tangible sur la chaîne d’approvisionnement. Par exemple, déplacer une unité de stock du centre de distribution vers un magasin est réel ; dès que vous le faites, il y a une unité supplémentaire sur les étagères du magasin et il y a une unité qui manque maintenant au centre de distribution et qui ne peut être réaffectée nulle part ailleurs.

En revanche, un artefact n’a aucun impact physique tangible direct sur la chaîne d’approvisionnement. Un artefact est généralement soit une étape de calcul intermédiaire qui conduit finalement à une décision de la chaîne d’approvisionnement, soit une estimation statistique d’une sorte qui caractérise une propriété d’une partie de votre système de chaîne d’approvisionnement. Malheureusement, je ne peux m’empêcher de constater une grande confusion dans la littérature sur la chaîne d’approvisionnement lorsqu’il s’agit de distinguer les décisions des artefacts.

Attention, les retours sur investissement sont exclusivement obtenus grâce à l’amélioration des décisions. L’amélioration des artefacts est presque toujours sans conséquence, et c’est dans le meilleur des cas. Au pire, si une entreprise passe trop de temps à améliorer les artefacts, cela devient une distraction qui l’empêche d’améliorer ses véritables décisions de chaîne d’approvisionnement. À l’écran se trouve une liste de confusions que j’observe fréquemment dans les cercles de la chaîne d’approvisionnement grand public.

Par exemple, commençons par le stock de sécurité. Ce stock n’est pas réel ; vous n’avez pas deux stocks, le stock de sécurité et le stock de travail. Il n’y a qu’un seul stock, et la seule décision qui peut être prise est de savoir s’il en faut plus ou non. Réapprovisionner une quantité est réel, mais le stock de sécurité ne l’est pas. De même, le taux de service n’est pas réel non plus. Le taux de service dépend beaucoup du modèle. En effet, dans la demande de détail, les données de vente sont rares. Ainsi, si vous prenez un SKU donné, vous avez généralement trop peu de données pour calculer un taux de service significatif en inspectant simplement le SKU. La façon dont vous abordez le taux de service est par le biais de techniques de modélisation et d’estimations statistiques, ce qui est bien, mais encore une fois, il s’agit d’un artefact, pas de la réalité. Il s’agit littéralement d’une perspective mathématique que vous avez sur votre chaîne d’approvisionnement.

De même, le push ou le pull est également une question de perspective. Une recette numérique appropriée qui fonctionne, en tenant compte de l’ensemble du réseau de la chaîne d’approvisionnement, ne va considérer que l’opportunité de déplacer une unité de stock d’une origine vers une destination. Ce qui est réel, c’est le mouvement des stocks ; ce qui relève simplement de la perspective, c’est de savoir si vous voulez déclencher ce mouvement de stocks en fonction de conditions liées à l’origine ou à la destination. Cela définira le push ou le pull, mais c’est, dans le meilleur des cas, une petite subtilité de la recette numérique et ne représente pas la réalité fondamentale de votre chaîne d’approvisionnement.

Le stock mort est essentiellement une estimation du stock qui risque de faire l’objet d’une radiation d’inventaire dans un avenir proche. Du point de vue d’un client, il n’y a pas de stock mort et de stock vivant. Ce sont tous deux des produits qui peuvent ne pas être également attractifs, mais le stock mort est simplement une évaluation des risques faite sur votre stock. C’est bien, mais cela ne doit pas être confondu avec les radiations d’inventaire, qui sont définitives et indiquent que de la valeur a été perdue.

De même, la tendance à la baisse est également un élément mathématique qui peut exister dans la façon dont vous modélisez la demande que vous observez. Il s’agit généralement d’un facteur dépendant du temps introduit dans le modèle de demande, comme une dépendance linéaire par rapport au temps ou peut-être une dépendance exponentielle par rapport au temps. Cependant, ce n’est pas la réalité. La réalité pourrait être que votre entreprise diminue en raison de la perte de clients, donc le churn est, parmi d’autres possibilités, la réalité de la chaîne d’approvisionnement. La tendance à la baisse n’est qu’un artefact que vous pouvez utiliser pour agréger le motif.

De même, aucun fournisseur ne vous vendra quoi que ce soit au prix d’achat moyen. La seule réalité est que vous composez une commande d’achat, choisissez des quantités et en fonction des quantités que vous avez choisies, vous pourrez bénéficier de réductions de prix que vos fournisseurs peuvent offrir. Vous obtiendrez des prix d’achat basés sur ces réductions de prix et sur ce que vous négociez en plus de cela. Le prix d’achat moyen n’est pas réel, alors faites attention de ne pas commettre d’erreurs en prenant ces artefacts numériques comme s’ils avaient une vérité fondamentale.

Enfin, la classification ABC, qui va des meilleurs vendeurs aux produits à rotation lente, n’est qu’une classification triviale basée sur le volume des SKU ou des produits que vous avez. Ces classes ne sont pas de véritables attributs. En général, la moitié des produits passeront d’une classe ABC à l’autre d’un trimestre à l’autre, sans que rien ne se soit réellement passé aux yeux des clients ou du marché pour ces produits. Il s’agit simplement d’un artefact numérique qui a été appliqué au produit et ne doit pas être confondu avec des attributs profondément pertinents, tels que le fait qu’un produit fasse partie d’une marque de distributeur. Il s’agit d’un attribut fondamental du produit qui a des conséquences importantes pour votre supply chain. Dans ce chapitre, il deviendra de plus en plus clair pourquoi il est impératif de se concentrer sur les décisions de la supply chain, plutôt que de perdre du temps et de l’énergie à traiter des artefacts numériques.

Slide 3

Lorsque le mot “optimisation” est prononcé, la perspective habituelle qui vient à l’esprit d’un public bien informé est la perspective de l’optimisation mathématique. Étant donné un ensemble de variables et une fonction de perte, l’objectif est d’identifier les valeurs des variables qui minimisent la fonction de perte. Malheureusement, cette approche fonctionne mal dans la supply chain car elle suppose que les variables pertinentes sont connues, ce qui n’est généralement pas le cas. Même lorsque c’est le cas, il y a de nombreuses variables, comme les données météorologiques, qui sont connues pour avoir un impact sur votre supply chain mais qui entraînent des coûts importants si vous souhaitez acquérir ces données. Ainsi, il n’est pas clair si cela vaut la peine de faire l’effort d’acquérir ces données pour optimiser votre supply chain.

Encore plus problématique, la fonction de perte elle-même est largement inconnue. La fonction de perte peut être estimée de manière approximative, mais seule la confrontation de la perte avec les retours du monde réel que vous pouvez obtenir de votre supply chain vous donnera des informations valides sur l’adéquation de cette fonction de perte. Il ne s’agit pas d’une question de correction d’un point de vue mathématique ; il s’agit d’une question d’adéquation. Cette fonction de perte, qui est une construction mathématique, reflète-t-elle adéquatement ce que vous essayez d’optimiser pour votre supply chain ? Nous avons abordé ce dilemme de l’optimisation alors que nous ne connaissons pas les variables et la fonction de perte dans la leçon 2.2, intitulée “Optimisation expérimentale”. La perspective de l’optimisation expérimentale affirme que le problème n’est pas donné ; le problème doit être découvert grâce à des expériences répétées et itérées. La preuve de la justesse de la fonction de perte et de ses variables n’émerge pas en tant que propriété mathématique, mais à travers une série d’observations basées sur des expériences bien choisies obtenues à partir de la supply chain elle-même. L’optimisation expérimentale remet profondément en question notre façon de voir l’optimisation, et c’est une perspective que j’adopterai dans ce chapitre. Les outils et techniques que je vais présenter ici sont orientés vers la perspective de l’optimisation expérimentale.

À tout moment, la recette numérique que nous avons peut être déclarée obsolète et peut être remplacée par une recette numérique alternative qui est jugée plus étroitement alignée sur la supply chain que nous avons. Ainsi, à tout moment, nous devrions être en mesure de mettre la recette numérique que nous avons en production et d’effectuer le processus d’optimisation à grande échelle. Par exemple, nous ne pouvons pas dire que nous identifions la fonction de perte, puis mettre une équipe de data scientists sur le cas pendant trois mois pour concevoir des techniques d’optimisation logicielle. Au lieu de cela, chaque fois que nous avons une nouvelle recette, nous devrions être en mesure de la mettre directement en production et de permettre immédiatement aux décisions de la supply chain de bénéficier de cette nouvelle forme de problème identifiée.

Slide 4

Cette conférence fait partie d’une série de conférences sur la supply chain. J’essaie de rendre ces conférences quelque peu indépendantes, mais nous en sommes arrivés à un point où il est plus logique de les regarder dans l’ordre. Si vous n’avez pas regardé les conférences précédentes, cela devrait aller, mais cette série aura probablement plus de sens si vous la regardez dans l’ordre où elle a été présentée.

Dans le premier chapitre, j’ai présenté mes points de vue sur la supply chain à la fois en tant que domaine d’étude et en tant que pratique. Dans le deuxième chapitre, j’ai présenté une série de méthodologies essentielles pour relever les défis de la supply chain, y compris l’optimisation expérimentale. Ces méthodologies sont nécessaires en raison de la nature adversaire de la plupart des problèmes de supply chain. Dans le troisième chapitre, j’ai mis l’accent sur les problèmes eux-mêmes, par opposition aux solutions. Dans le quatrième chapitre, j’ai présenté une série de domaines qui ne sont pas exactement la supply chain en soi - les sciences auxiliaires de la supply chain - qui sont essentielles à une pratique moderne de la supply chain. Dans le cinquième chapitre, j’ai présenté une série de techniques de modélisation prédictive, notamment des prévisions probabilistes, qui sont essentielles pour faire face à l’incertitude irréductible de l’avenir.

Aujourd’hui, dans cette première conférence du sixième chapitre, nous nous plongeons dans les techniques de prise de décision. La littérature scientifique a livré une abondance de techniques et d’algorithmes de prise de décision au cours des sept dernières décennies, de la programmation dynamique dans les années 1950 à l’apprentissage par renforcement et même à l’apprentissage par renforcement profond. Le défi, cependant, est d’obtenir des résultats de supply chain de qualité de production. En effet, la plupart de ces techniques souffrent de défauts cachés qui les rendent impraticables à des fins de supply chain pour une raison ou une autre. Aujourd’hui, nous nous concentrons sur l’allocation des stocks de détail comme archétype d’une décision de supply chain. Cette conférence ouvre la voie à des décisions et situations plus complexes.

Slide 5

À l’écran se trouve le résumé de la conférence d’aujourd’hui. Même en considérant le problème de supply chain le plus simple, l’allocation des stocks de détail, nous avons beaucoup de terrain à couvrir. Ces éléments représentent des blocs de construction pour des situations plus complexes. Je commencerai par revisiter le manifeste de la supply chain quantitative. Ensuite, je préciserai ce que je veux dire par le problème d’allocation des stocks de détail. Nous passerons également en revue les forces économiques présentes dans ce problème. Je revisiterai la notion de prévisions probabilistes et comment nous les représentons réellement, ou du moins l’une des options pour les représenter. Nous verrons comment modéliser la décision en affinant la prévision et en affinant les options, qui sont les décisions potentielles candidates.

Nous introduirons ensuite la fonction de récompense des stocks. Cette fonction peut être considérée comme un cadre minimal pour convertir une prévision probabiliste en un score économique pouvant être associé à chaque option d’allocation de stock, en tenant compte d’une série de facteurs économiques. Une fois les options évaluées, nous pouvons procéder à une liste de priorités. Une liste de priorités est trompeusement simple mais s’avère incroyablement puissante et pratique dans les supply chains du monde réel, tant en termes de stabilité numérique que de caractéristiques de boîte blanche.

Avec la liste de priorités, nous pouvons presque sans effort lisser le flux des stocks du centre de distribution vers les magasins, réduisant ainsi les coûts d’exploitation du centre de distribution. Enfin, nous passerons brièvement en revue la fonction de récompense des actions, qui remplace aujourd’hui la fonction de récompense des stocks chez Lokad dans pratiquement toutes les dimensions, sauf la simplicité.

Slide 6

Le manifeste de la Supply Chain Quantitative est un document que j’ai publié à l’origine en 2017. Cette perspective a été largement abordée dans la Conférence 1.2, mais pour plus de clarté, je vais en donner un bref récapitulatif aujourd’hui. Il y a cinq piliers, mais seuls les trois premiers sont pertinents pour nous aujourd’hui. Les trois premiers piliers sont les suivants :

Considérer tous les futurs possibles, ce qui signifie des prévisions probabilistes ainsi que la prévision de tous les autres éléments comportant un aspect d’incertitude, tels que les délais d’approvisionnement variables ou les prix futurs. Considérer toutes les décisions réalisables, en se concentrant sur les décisions et non sur les artefacts. Prioriser avec des moteurs économiques, qui est le sujet de la conférence d’aujourd’hui.

En particulier, nous verrons comment nous pouvons convertir des prévisions probabilistes en estimations des rendements économiques.

Slide 7

Dans le problème d’allocation des stocks de vente au détail. Il s’agit d’une définition que je donne ; elle est quelque peu arbitraire, mais c’est la définition que j’utiliserai aujourd’hui. Nous supposons un réseau avec deux échelons : nous avons un centre de distribution et plusieurs magasins. Le centre de distribution dessert tous les magasins, et s’il y a plusieurs centres de distribution, nous supposons qu’un magasin est desservi par un seul centre de distribution. L’objectif est d’allouer correctement les stocks qui existent dans le centre de distribution parmi les magasins, et tous les magasins se disputent les mêmes stocks qui existent dans le centre de distribution.

Nous supposons que tous les magasins peuvent être réapprovisionnés quotidiennement selon un calendrier quotidien en provenance du centre de distribution. Ainsi, chaque jour, nous devons décider combien d’unités déplacer pour chaque produit vers chaque magasin. La quantité totale d’unités déplacées ne peut pas dépasser le stock disponible dans le centre de distribution, et il est également raisonnable de supposer qu’il existe des limites de capacité d’étagère des magasins. Si le centre de distribution disposait de stocks illimités, le problème se réduirait à une supply chain à un seul échelon, car il n’y aurait jamais besoin de faire de l’arbitrage ou de faire des compromis entre l’allocation des stocks à un magasin ou à un autre. La propriété à deux échelons du réseau n’émerge que du fait que les magasins se disputent les mêmes stocks.

Naturellement, nous supposerons une visibilité sur les ventes en magasin et les niveaux de stock tant au niveau du centre de distribution qu’au niveau des magasins, ce qui signifie que nous supposons que les données transactionnelles sont disponibles. Nous supposerons également que les livraisons entrantes à effectuer au centre de distribution sont connues avec des heures d’arrivée estimées (ETAs), qui peuvent être accompagnées d’un certain degré d’incertitude. Nous supposerons également que toutes les informations banales mais critiques sont disponibles, telles que le prix d’achat du produit, le prix de vente du produit, les catégories de produits le cas échéant, etc. Toutes ces informations se trouveraient dans n’importe quel ERP , même vieux de trois décennies, ainsi que dans les systèmes WMS et de point de vente.

Aujourd’hui, nous n’incluons pas le réapprovisionnement du centre de distribution (DC) dans le problème. En pratique, le réapprovisionnement du centre de distribution et les allocations de magasin sont étroitement liés, il est donc logique de traiter ces problèmes ensemble. La raison pour laquelle je ne le fais pas aujourd’hui est pour des raisons de clarté et de concision dans cette présentation ; nous aborderons d’abord le problème plus simple. Cependant, veuillez noter que l’approche que je présente aujourd’hui peut être naturellement étendue pour inclure également le réapprovisionnement du DC.

Slide 8

Décider de déplacer une unité supplémentaire de stock dans un magasin pour un produit donné à un jour donné dépend d’une série de forces économiques. Si le déplacement de l’unité est rentable, nous voulons le faire ; sinon, nous ne le faisons pas. Les principales forces économiques sont répertoriées à l’écran et, essentiellement, mettre plus de stock dans un magasin entraîne une série d’avantages. Cela comprend une marge brute plus élevée en évitant les ventes perdues, une meilleure qualité de service en réduisant le nombre de ruptures de stock et une attractivité accrue du magasin. En effet, pour qu’un magasin soit attractif, il doit sembler abondant ; sinon, il paraît triste et les gens peuvent être moins enclins à acheter. C’est une observation courante dans la vente au détail, bien que cela ne s’applique pas nécessairement à tous les segments, tels que le luxe. Pour les magasins de marchandises générales ou de mode, cependant, cette considération s’applique.

Malheureusement, mettre plus de stock comporte également des inconvénients, ce qui diminue le rendement attendu d’avoir plus de stock dans le magasin. Ces inconvénients comprennent des coûts supplémentaires de transport, qui peuvent se transformer en dépréciation des stocks s’il y a un véritable excès de stock. Il y a également le risque de surcharge d’entrée, qui se produit si le personnel du magasin ne peut pas traiter un envoi trop volumineux. Cela crée de la confusion et du désordre dans le magasin si la quantité livrée dépasse ce que le personnel peut mettre en rayon. De plus, il y a un coût d’opportunité : chaque fois qu’une unité est placée dans un magasin, elle ne peut pas être mise dans un autre magasin. Bien qu’elle puisse être ramenée au centre de distribution et renvoyée, cela est généralement assez coûteux, il s’agit donc généralement d’une option de dernier recours. Les détaillants devraient viser une allocation efficace des magasins sans avoir à renvoyer les stocks.

Lisser le flux des stocks est également très souhaitable. Un centre de distribution (DC) a une capacité nominale à laquelle il fonctionne à une efficacité économique maximale. Cette efficacité maximale est déterminée par la configuration physique du DC, ainsi que par le nombre de personnel permanent qui y est attaché. Idéalement, le DC devrait fonctionner quotidiennement, en restant très proche de sa capacité nominale pour être le plus rentable possible. Cependant, maintenir une efficacité maximale au centre de distribution (DC) nécessite de lisser le flux du DC vers les magasins. La perspective économique diverge des perspectives traditionnelles axées sur le taux de service souvent observées dans la littérature sur la chaîne d’approvisionnement. Nous recherchons des dollars de rendement, pas des points de pourcentage. La seule façon de décider s’il est raisonnable d’ajuster le schéma d’allocation des stocks au niveau du réseau pour réduire les coûts d’exploitation, par rapport à une légère dégradation de la qualité de service dans les magasins, est d’adopter la perspective économique présentée ici. Si vous adoptez une perspective axée sur le taux de service, elle ne peut pas fournir ce type de réponses. Notre objectif à ce stade est d’établir des recettes numériques qui estimeront les résultats économiques pour toute décision d’allocation de stocks donnée.

Diapositive 9

Dans le chapitre précédent, le cinquième chapitre, nous avons discuté de la façon de produire des prévisions probabilistes et introduit un type de données spécialisé, le “ranvar”, qui représente des distributions de probabilité discrètes unidimensionnelles. En bref, un ranvar est un type de données spécialisé utilisé pour représenter une prévision probabiliste simple et unidimensionnelle dans Envision.

Envision est un langage de programmation spécifique à un domaine développé par Lokad dans le seul but d’optimiser de manière prédictive les chaînes d’approvisionnement. Bien qu’il n’y ait rien de fondamentalement unique à propos d’Envision dans ces cours, il est utilisé pour des raisons de clarté et de concision dans la présentation. Les recettes numériques décrites aujourd’hui peuvent être mises en œuvre dans n’importe quel langage, tel que Python, Julia ou Visual Basic.

L’aspect clé du ranvar est qu’il fournit une algèbre à haute performance pour les variables aléatoires. Les performances sont un équilibre entre le coût de calcul, le coût de mémoire et le degré d’approximation numérique que vous êtes prêt à tolérer. Les performances de calcul sont essentielles lorsqu’il s’agit de réseaux de vente au détail, car il peut y avoir des millions, voire des dizaines de millions de SKUs, dont chacun est susceptible d’avoir au moins une prévision probabiliste ou un ranvar. Par conséquent, vous pouvez vous retrouver avec des millions ou des dizaines de millions d’histogrammes.

La propriété clé du ranvar par rapport à un histogramme est de maintenir à la fois le coût du processeur et le coût de la mémoire dans des limites supérieures et aussi bas que possible. Il est également crucial de veiller à ce que l’approximation numérique introduite reste sans conséquence du point de vue de la chaîne d’approvisionnement. Il est important de noter que nous ne traitons pas ici de calcul scientifique, mais de calcul de chaîne d’approvisionnement. Bien que les calculs numériques doivent être précis, il n’est pas nécessaire d’avoir une précision extrême. Gardez à l’esprit que nous ne faisons pas de calcul scientifique ici ; nous faisons du calcul de chaîne d’approvisionnement. Si vous avez une approximation d’une partie par milliard, cela n’a pas de conséquence du point de vue de la chaîne d’approvisionnement. Les calculs numériques doivent être précis, mais il n’est pas nécessaire d’avoir une précision extrême.

Dans la suite, nous supposons que la prévision probabiliste sera fournie sous la forme de ranvars, qui sont une série de variables avec un type de données spécifique. En pratique, vous pouvez remplacer les ranvars par des histogrammes et obtenir essentiellement le même résultat, à l’exception des aspects de performance et de commodité.

Diapositive 10

Maintenant que nous avons nos prévisions probabilistes, réfléchissons à la manière dont nous aborderons les décisions. Commençons par examiner les options. Les options sont les décisions potentielles - par exemple, allouer zéro unité pour un produit donné à un magasin donné un jour donné ou allouer une, deux ou trois unités. Si nous décidons d’allouer deux unités, cela devient notre décision. Les options sont toutes les choses sur la table en attente d’être décidées.

Une façon simple d’organiser ces options est de les mettre dans une liste, comme affiché à l’écran. La liste couvre plusieurs SKUs, et pour chaque SKU, vous ajoutez une ligne par option. Chaque option représente une quantité à allouer. Vous pouvez allouer zéro, une, deux, trois, et ainsi de suite. En réalité, vous n’avez pas à aller jusqu’à l’infini ; vous pouvez vous arrêter à la quantité en stock au centre de distribution. Plus réaliste, vous avez généralement une limite inférieure, telle que la capacité maximale de l’étagère pour le produit dans le magasin.

Ainsi, vous avez une liste qui inclut chaque SKU, et pour chaque SKU, vous avez toutes les quantités qui peuvent être considérées comme des candidats pour l’allocation à partir du centre de distribution. La colonne du score est attachée au résultat marginal que vous attendez en effectuant cette allocation. Un score bien conçu garantit que le choix des lignes dans l’ordre décroissant du score optimise le résultat économique pour le réseau de vente au détail.

Pour les deux SKUs affichés à l’écran, le score diminue à mesure que l’allocation augmente, illustrant le phénomène dominant des rendements décroissants observé pour la plupart des SKUs. Essentiellement, mettre la première unité dans un magasin génère presque toujours plus de rendements que la deuxième. La première unité que vous mettez dans un magasin est presque toujours plus rentable que la deuxième. Au départ, vous n’avez rien, donc vous êtes en rupture de stock. Si vous mettez une unité, vous avez déjà résolu la rupture de stock pour le premier client. Si vous mettez une deuxième unité, le premier client sera satisfait, mais ce n’est que si deux clients se présentent que la deuxième unité sera utile, donc elle a un rendement économique plus faible. Cependant, les rendements sont généralement décroissants à mesure que vous augmentez le stock. Il y a quelques exceptions où les rendements économiques peuvent ne pas être strictement décroissants d’une ligne à l’autre, mais je reviendrai sur ce cas dans une prochaine leçon. Pour l’instant, nous nous en tiendrons à la situation simple où les rendements sont strictement décroissants à mesure que le stock augmente.

La représentation que nous avons, où nous pouvons voir tous les SKUs et options, est généralement appelée une grille. L’intention est de trier cette grille par ordre décroissant du ROI (retour sur investissement). Il n’y a rien de mal avec ces grilles en soi, mais elles ne sont pas très efficaces, surtout en termes de calcul ou de mémoire, et elles n’offrent aucun support au-delà d’être une grande table. Gardez à l’esprit que nous parlons d’un réseau de vente au détail, et cette grille pourrait finir par avoir environ un milliard de lignes. Les big data, c’est bien, mais les petites données, c’est mieux, car cela crée moins de friction et permet plus d’agilité. Nous voulons essayer de transformer notre problème de big data en un problème de petites données, car des données plus petites rendent tout plus simple en production.

Slide 11

Ainsi, l’une des solutions adoptées par Lokad pour traiter un grand nombre d’options est zedfuncs. Ce type de données, tout comme ranvars, est le pendant de ranvar mais du point de vue de la décision. Les ranvars représentent tous les futurs possibles, tandis que les zedfuncs représentent toutes les décisions possibles. Au lieu de représenter des probabilités comme les ranvars, un zedfunc représente tous les résultats économiques associés à une série discrète unidimensionnelle d’options.

Le zedfunc, ou zedfunction, est techniquement une fonction qui fait correspondre des entiers, à la fois positifs et négatifs, à des valeurs réelles. Voici la définition technique. Cependant, tout comme avec les ranvars, il n’est pas possible de représenter n’importe quelle fonction arbitraire ou complexe comme les zedfuncs avec une quantité finie de mémoire. Dans ce cas, il y a aussi un compromis à faire entre précision et résolution.

En gestion de la chaîne d’approvisionnement, il n’existe pas de fonctions économiques arbitrairement complexes. Vous pouvez avoir des fonctions de coût assez complexes, mais elles ne peuvent pas être arbitrairement complexes. En pratique, il est possible de compresser les zedfuncs à moins de quatre kilo-octets. En le faisant, vous disposez d’un type de données qui représente l’ensemble de votre fonction de coût et la compresse de manière à ce qu’elle reste toujours inférieure à quatre kilo-octets tout en maintenant le degré d’approximation numérique négligeable du point de vue de la chaîne d’approvisionnement. Si vous maintenez l’approximation numérique si petite qu’elle ne modifie pas la décision finale que vous êtes sur le point de prendre, qui est discrète, alors l’approximation numérique peut être considérée comme totalement négligeable car vous finissez par faire la même chose à la fin, même si vous aviez une précision infinie.

La raison d’utiliser quatre kilo-octets est liée au matériel informatique. Comme nous l’avons vu dans une précédente conférence sur le matériel informatique moderne pour la gestion de la chaîne d’approvisionnement, la mémoire d’accès aléatoire (RAM) d’un ordinateur moderne, qu’il s’agisse d’une station de travail, d’un ordinateur portable ou d’un ordinateur dans le cloud, ne vous permet pas d’accéder à la mémoire octet par octet. Dès que vous touchez la RAM, un segment de quatre kilo-octets est récupéré. Par conséquent, il est préférable de garder la quantité de données inférieure à quatre kilo-octets car elle correspondra à la façon dont le matériel est conçu et fonctionne pour votre chaîne d’approvisionnement.

L’algorithme de compression utilisé par Lokad pour les zedfuncs diffère de celui utilisé pour les ranvars car nous ne traitons pas les mêmes problèmes numériques. Pour les ranvars, nous nous soucions principalement de préserver la masse des probabilités de nos segments contigus. Pour un zedfunc, l’accent est différent. Nous voulons généralement préserver la quantité de variation observée d’une position à l’autre car c’est avec cette variation que nous pouvons décider s’il s’agit de la dernière option rentable ou si nous devons nous arrêter. Par conséquent, l’algorithme de compression est également différent.

Slide 12

À l’écran, vous pouvez voir un graphique obtenu pour un zedfunc reflétant certains coûts de possession attendus qui dépendent du nombre d’unités en stock. Les zedfuncs bénéficient d’être un espace vectoriel, ce qui signifie qu’ils peuvent être ajoutés et soustraits, tout comme l’espace vectoriel classique associé aux fonctions. En préservant la localité de la mémoire, les opérations peuvent être effectuées avec un ordre de grandeur plus rapide par rapport à une implémentation de grille naïve où vous avez une très grande table sans une structure de données spécifique pour capturer la localité des options jouant ensemble.

Le graphique que vous avez vu dans la diapositive précédente a été généré par un script. Aux lignes un et deux, nous déclarons deux fonctions linéaires, f et g. La fonction “linear” fait partie de la bibliothèque standard, et “linear of one” est simplement la fonction identité, un polynôme de degré un. La fonction “linear” renvoie un zedfunc, et il est possible d’ajouter une constante avec un zedfunc. Nous avons deux polynômes de degré un, f et g. À la ligne trois, nous construisons un polynôme de degré deux par le produit de f et g. Les lignes 5 à 10 sont des utilitaires, essentiellement du code standard, pour tracer le zedfunc.

À ce stade, nous avons notre conteneur de données pour le zedfunc et les résultats économiques. Le zedfunc est un conteneur de données, tout comme le ranvar l’était pour la prévision probabiliste. Cependant, nous avons encore besoin de recettes numériques pour calculer ces résultats économiques. Nous avons le conteneur de données, mais je n’ai pas encore décrit comment nous calculons ces résultats économiques et remplissons les zedfuncs.

Diapositive 13

La fonction de récompense des stocks est un petit cadre destiné à calculer les rendements économiques pour chaque niveau de stock d’un seul SKU, en tenant compte d’une prévision probabiliste et d’une courte série de facteurs économiques. La fonction de récompense des stocks a été introduite historiquement chez Lokad pour unifier nos pratiques. En 2015, Lokad travaillait déjà depuis quelques années avec des prévisions probabilistes, et grâce à des essais et erreurs, nous avions déjà découvert une série de recettes numériques qui fonctionnaient bien. Cependant, elles n’étaient pas vraiment unifiées ; c’était un peu le chaos. La fonction de récompense des stocks a consolidé toutes ces idées à l’époque dans un cadre propre, ordonné et minimaliste. Depuis 2015, de meilleures méthodes ont été développées, mais elles sont aussi plus complexes. Pour plus de clarté, il est encore préférable de commencer par la fonction de récompense des stocks et de présenter cette fonction en premier.

La fonction de récompense des stocks consiste vraiment à trouver une recette numérique qui nous donnera un calcul des résultats économiques liés à ces prévisions probabilistes. La fonction de récompense des stocks obéit à l’équation que vous pouvez voir à l’écran, et elle définit les rendements économiques au moment t que vous pouvez obtenir pour le stock en main, k. La variable R représente le rendement économique, qui est exprimé en unités telles que des dollars ou des euros. La fonction a deux variables : le temps (t) et le stock en main (k). Nous voulons calculer cette récompense pour tous les niveaux de stock possibles.

Il y a quatre variables économiques à prendre en compte :

M est la marge brute par unité vendue. C’est la marge que vous gagnerez en fournissant avec succès une unité. S est la pénalité de rupture de stock, une sorte de coût virtuel que vous supportez chaque fois que vous échouez à fournir une unité à un client. Même si vous n’avez pas à payer de pénalité à votre client, il y a un coût associé à l’échec de fournir un service adéquat, et ce coût doit être modélisé. L’une des façons les plus simples de modéliser ce coût est d’attribuer une pénalité pour chaque unité que vous ne parvenez pas à servir. C est le coût de possession, le coût par unité par période de temps. Si vous avez une unité en stock pendant trois périodes, cela représenterait trois fois C ; si vous avez deux unités en stock pendant trois périodes, cela représenterait six fois C. Alpha est utilisé pour actualiser les rendements futurs. L’idée est que ce qui se passe dans un avenir lointain compte moins que ce qui est sur le point de se produire dans un avenir proche. La fonction de récompense des stocks est aussi simple qu’elle peut l’être sans être trop simpliste. L’équation indique que si la demande dépasse le stock en main, le rendement inclut la marge pour tout le stock que nous avons.

C’est ce que dit la première ligne : nous avons k marges, donc nous vendons toutes les unités que nous avons, puis nous subissons une pénalité qui sera Y(t) - k pour toutes les unités que nous n’avons pas réussi à servir.

Sinon, si le stock en main dépasse la demande, nous pouvons bénéficier de Y(t) fois M, qui représente la marge de ce que nous avons vendu aujourd’hui. Ensuite, nous devons payer les coûts de possession. Les coûts de possession pour aujourd’hui seront ce qui reste à la fin de la journée, c’est-à-dire k - Y(t) fois C, plus alpha fois la fonction de récompense des stocks R* pour le lendemain.

Il y a un hic avec R*. Il est presque identique à la fonction de récompense des stocks R, sauf que nous mettons simplement la pénalité de rupture de stock à zéro. La raison est simple : nous supposons du point de vue du stock que nous aurons d’autres opportunités ultérieures pour remplir le stock. Si nous constatons une rupture de stock aujourd’hui, il est trop tard, nous subissons donc la pénalité de rupture de stock. Cependant, une pénalité de rupture de stock qui est censée se produire demain est considérée comme évitable.

Cependant, une pénalité de rupture de stock qui est censée se produire à l’avenir, à une période ultérieure, nous supposons que le réapprovisionnement peut se produire à chaque période. Ainsi, pour la rupture de stock qui se produirait à une période ultérieure, lorsque nous avons encore le temps de passer une commande tardive, la rupture de stock ne s’est pas encore produite. Nous avons encore l’occasion de le faire, et c’est pourquoi nous mettons la pénalité de rupture de stock à zéro, car nous anticipons qu’il y aura, espérons-le, une autre commande qui empêchera la rupture de stock de se produire.

Le taux d’actualisation alpha est très utile car il élimine essentiellement la nécessité de spécifier une durée spécifique. La fonction de récompense des stocks ne fonctionne pas avec une durée finie ; vous allez jusqu’à l’infini. Grâce à alpha, qui est une valeur strictement inférieure à un, les résultats économiques liés aux événements dans un avenir très lointain deviennent négligeables, donc ils deviennent insignifiants. Nous n’avons pas de coupure quelconque, qui est toujours arbitraire, comme limiter votre horizon de chaîne d’approvisionnement à 60 jours, 90 jours, un an ou deux ans.

Slide 14

Dans Envision, la fonction de récompense des stocks prend un ranvar en entrée et renvoie un zedfunc. La fonction de récompense des stocks est un petit bloc de construction qui transforme une prévision probabiliste (un ranvar) en un zedfunc, qui est un conteneur pour les rendements économiques estimés sur une série d’options. Comme son nom l’indique, la fonction de récompense des stocks est le rendement économique associé à chaque position de stock individuelle : que se passe-t-il si j’ai zéro unité en stock, une unité en stock, deux unités, trois unités, et ainsi de suite. Le zedfunc reflétera les résultats économiques pour chaque niveau de stock, codant le rendement économique associé au niveau de stock correspondant.

Le processus de calcul de ces zedfuncs est illustré à l’écran. À la ligne 1, nous introduisons une demande fictive pour une seule journée, qui est simplement une distribution de Poisson aléatoire. Aux lignes 2 à 7, nous introduisons les variables économiques, et au fait, nous avons deux alphas. Il y a un autre détail : nous avons un effet cliquet sur l’inventaire. Une fois que le stock a été poussé vers le magasin, il est généralement très coûteux de ramener le stock. Cela reflète le fait que toute allocation faite à un magasin est pratiquement définitive. En termes de coûts de possession, l’alpha ne doit pas être trop petit, car nous supporterons vraiment ces coûts de possession si nous avons trop de stock. Nous ne pouvons pas annuler cette décision. Cependant, en ce qui concerne l’alpha qui est lié à la marge, la réalité est que tout comme nous aurons d’autres opportunités pour résoudre les futures ruptures de stock, nous aurons d’autres opportunités pour apporter plus de stock et réaliser la même marge avec un stock poussé à une date ultérieure. Ainsi, nous devons appliquer une décote beaucoup plus agressive à ce qui se passe du côté de la marge par rapport à ce qui se passe du côté des coûts de possession.

Aux lignes 9 à 11, nous introduisons la fonction de récompense des stocks elle-même. Cette fonction, la fonction de récompense des stocks que j’ai introduite dans la diapositive précédente, peut être décomposée linéairement en ses trois composantes, adressant respectivement la marge, le coût de possession et la pénalité de rupture de stock séparément. En effet, nous avons une séparation linéaire, et dans Envision, ces trois composantes sont calculées séparément. Nous pouvons multiplier le zedfunc par le facteur M, qui serait la marge brute.

Aux lignes 13 à 15, la récompense finale est recomposée en ajoutant les trois composantes économiques. Dans ce script, nous exploitons le fait que nous avons un espace vectoriel de zedfuncs. Ces zedfuncs ne sont pas des nombres ; ce sont des fonctions. Mais nous pouvons les additionner, et le résultat de l’addition est une autre fonction, qui est également un zedfunc. La variable récompense est le résultat de l’addition de ces trois composantes. Sous le capot, le calcul de la fonction de récompense des stocks est effectué grâce à une analyse à point fixe, qui peut être effectuée en temps constant pour chaque composante. Ce calcul en temps constant peut sembler être une petite subtilité technique, mais lorsque vous traitez avec un grand réseau de vente au détail, cela fait la différence entre un prototype sophistiqué et une solution réellement adaptée à la production.

Slide 15

Maintenant, à ce stade, nous avons consolidé tous les éléments nécessaires pour résoudre le problème d’allocation des stocks. Nous avons des prévisions probabilistes exprimées sous forme de ranvars, une technique pour transformer ces ranvars en une fonction donnant les rendements économiques pour n’importe quelle valeur de stock en main, et ces résultats économiques peuvent être commodément représentés sous forme de zedfuncs. Pour enfin résoudre le problème d’allocation des stocks, nous devons répondre à la question clé : si nous ne pouvons déplacer qu’une seule unité de stock, laquelle déplaçons-nous et pourquoi ? Tous les magasins du réseau sont en concurrence pour le même stock dans le centre de distribution, et la qualité de la décision de déplacer une unité de stock du centre de distribution vers un magasin spécifique dépend de l’état global du réseau. Vous ne pouvez pas évaluer si cette décision est bonne en regardant simplement un magasin.

Par exemple, supposons que nous ayons un magasin avec déjà deux unités en stock, et si nous ajoutons une troisième unité, nous augmentons le taux de service prévu de 80% à 90%. C’est bien, et peut-être que d’autres dans le réseau seraient d’accord avec l’idée d’apporter une unité supplémentaire afin que le taux de service puisse passer de 80 à 90. Cela semble très raisonnable, donc ils diraient que c’est un bon mouvement. Cependant, que se passe-t-il si cette unité que nous sommes sur le point de déplacer, cette troisième unité, est en réalité la dernière disponible dans le centre de distribution ? Nous avons un autre magasin dans le réseau qui souffre déjà d’une rupture de stock, et si nous déplaçons cette unité dans le magasin où elle devient la troisième unité, nous prolongeons la rupture de stock pour le magasin qui est déjà en rupture de stock pour le même produit. Dans cette situation, il est presque certain que déplacer l’unité vers le magasin déjà en rupture de stock est une meilleure décision et devrait avoir une priorité plus élevée.

C’est pourquoi il n’a pas de sens d’évaluer économiquement les niveaux de stock au niveau du SKU. Le problème avec les optimisations locales, c’est qu’elles ne fonctionnent pas si vous opérez dans des systèmes plus vastes. Dans les chaînes d’approvisionnement, si vous traitez les choses localement, vous ne faites que déplacer les problèmes ; vous ne résolvez rien. La pertinence d’un niveau de stock d’un SKU dépend de l’état du réseau. Cet exemple simple clarifie pourquoi les calculs de stock de sécurité ou les calculs de point de réapprovisionnement sont en grande partie absurdes, du moins pour les situations réelles, par rapport aux exemples simplistes que l’on trouve dans les manuels de chaîne d’approvisionnement.

Ici, nous voulons vraiment donner la priorité à toutes les allocations de stock les unes par rapport aux autres, et l’option qui se démarque est la réponse à notre question : ce sera l’unité qui devrait être déplacée si nous ne pouvons déplacer qu’une seule unité.

Slide 16

Classer les options d’allocation de stock est relativement simple avec les bons outils. Examinons ce script Envision. À la ligne 1, nous créons trois SKUs nommés A, B et C. À la ligne 2, nous générons des prix d’achat aléatoires entre 1 et 10 en tant que fausses données. À la ligne 3, nous générons des zedfuncs fictifs censés représenter la récompense que nous avons pour chacun de ces SKUs. En pratique, un zedfunc devrait être calculé avec la fonction de récompense du stock, mais simplement pour garder le code concis, nous utilisons ici des fausses données. La récompense est une fonction linéaire décroissante qui atteindra zéro au niveau de stock 6. À la ligne 4, nous créons une table G, un raccourci pour la grille qui représente notre niveau de stock disponible. Nous supposons que les niveaux de stock supérieurs à 10 ne valent pas la peine d’être évalués. Cette hypothèse est raisonnable, étant donné qu’en termes de fausses données, nous avons une fonction de récompense qui devient négative au-delà d’un niveau de stock disponible de 6. À la ligne 6, nous extrayons la récompense marginale pour chaque unité en stock afin d’obtenir cette table de grille. Nous utilisons le zedfunc, une fonction qui représente les récompenses, pour extraire la valeur de la position de stock G.N. Il convient de noter qu’à partir de la ligne 6, peu importe comment les données ont été générées à l’origine. De la ligne 1 à 4, ce ne sont que des fausses données qui ne seraient pas utilisées dans une configuration de production, mais à partir de la ligne 6, ce serait essentiellement la même chose si vous étiez en production.

À la ligne 7, nous définissons le score comme un ratio entre les dollars de rendement (que le zedfunc vous indique) et le dollar investi, qui est le prix d’achat. Nous faisons un ratio entre la somme de dollars que vous récupérerez divisée par la somme de dollars que vous devez payer pour une unité. Essentiellement, le score le plus élevé est obtenu pour l’allocation de stock qui génère le taux de rendement le plus élevé par dollar alloué à ce magasin.

Enfin, aux lignes 9 à 15, nous affichons un tableau trié par scores décroissants. Il est important de souligner qu’il n’y a pas de logique sophistiquée dans le script. Les quatre premières lignes ne sont que la génération de fausses données, et les six dernières lignes ne sont que l’affichage de l’allocation priorisée. Une fois que les zedfuncs sont présents et que nous avons une fonction qui représente les rendements économiques par niveau de stock, transformer ces zedfuncs en une liste priorisée est tout à fait simple.

Slide 17

À l’écran, le tableau obtenu en exécutant le script Envision précédent montre que le SKU nommé C est classé premier. Tous les SKUs ont les mêmes rendements économiques pour leur première unité, soit 5 $ de rendement. Cependant, C a le prix d’achat le plus bas à 3,99 $, et donc, lorsque nous divisons la récompense de 5 $ par 3,99 $, nous obtenons un score d’environ 1,25, qui se trouve être le score le plus élevé sur la grille. La deuxième unité de C a un score d’environ 1, qui est le deuxième score le plus élevé.

Pour la troisième position dans la grille, nous avons un autre SKU nommé B. B a un prix d’achat plus élevé, et donc son score pour la première unité est seulement de 0,96. Cependant, en raison des rendements décroissants que nous obtenons en allouant les deux premières unités au SKU C, la première unité de B obtient un score plus élevé que la troisième unité de C, et donc elle est classée au-dessus de la troisième unité de C. Essentiellement, cette liste de priorités va très loin, mais elle est destinée à être tronquée avec un seuil. Par exemple, nous pouvons décider qu’il y a un retour minimal sur investissement, et seules les unités au-dessus de ce retour sur investissement sont allouées. Une fois que le seuil est défini, nous pouvons prendre toutes les lignes qui sont au-dessus de la limite et compter le nombre de lignes par SKU. Cela nous donne le nombre total d’unités à allouer pour chaque SKU. Nous reviendrons sur ce problème de seuil dans une minute, mais l’idée est que une fois que vous avez un seuil, vous agrégez les quantités par SKU, et cela vous donne la quantité totale à allouer pour chaque SKU. C’est exactement ce que votre WMS ou ERP qui existe dans le centre de distribution attend pour organiser l’expédition du lendemain vers les magasins.

La liste de priorités n’est qu’une vue conceptuelle pour décider réellement de ce qui a la priorité. Cependant, vous prenez un seuil, vous agrégez, et vous revenez aux quantités d’allocation par SKU pour chaque SKU qui existe dans votre réseau de magasins de détail.

Slide 18

La vue sur l’affichage de l’allocation de stock priorisée est trompeusement simple et pourtant puissante. En descendant d’une ligne à l’autre, nous voyons la concurrence se dérouler entre nos options d’allocation. Les meilleurs SKUs sont alloués en premier, mais dès que nous atteignons des niveaux de stock plus élevés, ces SKUs deviennent moins compétitifs par rapport à d’autres SKUs qui n’ont pas autant de stock. La liste de priorités passe d’un SKU à l’autre, maximisant les rendements attendus sur le capital alloué aux magasins.

Sur cet écran, nous avons une variante du tableau précédent, obtenue avec un autre script Envision qui est une variante minimale de celui introduit il y a deux diapositives. Essentiellement, je décompose les facteurs économiques qui contribuent à la récompense. Ici, nous avons trois colonnes supplémentaires : marge, coût de possession et rupture de stock. La marge est la marge brute moyenne attendue pour cette unité allouée. Le coût de possession est le coût moyen attendu de mettre cette unité en stock dans le magasin. La rupture de stock est la pénalité attendue qui va être évitée, c’est pourquoi la pénalité de rupture de stock est une valeur positive ici. La récompense finale est simplement la somme de ces trois composantes, et toutes ces valeurs sont exprimées en montants monétaires, tels que des dollars. La colonne qui est en dollars de marge, en dollars de coût de possession, en dollars de rupture de stock et en récompenses, est simplement le montant total de dollars que vous pouvez attendre en mettant cette unité dans le magasin.

Cela facilite grandement la compréhension et le débogage de cette recette numérique, exprimée en dollars, par rapport aux pourcentages. En effet, toute recette numérique non triviale est conçue pour être assez opaque. Vous n’avez pas besoin d’apprentissage profond pour obtenir une opacité profonde ; même une modeste régression linéaire devient assez opaque dès que vous avez quelques facteurs impliqués dans cette régression. Cette opacité, que vous obtenez à nouveau avec toute recette numérique non triviale, met une supply chain réelle en danger car les praticiens de la supply chain peuvent se perdre, se confondre et se distraire avec les aspects techniques de la modélisation.

La liste priorisée d’allocation, qui décompose les moteurs économiques, est un puissant outil d’audit. Elle permet aux praticiens de la supply chain de remettre directement en question les fondamentaux au lieu de se perdre dans les détails techniques. Vous pouvez poser directement des questions comme : Avons-nous des coûts de possession qui ont du sens compte tenu de la situation dans laquelle nous nous trouvons ? Ces coûts sont-ils alignés sur le type de risques que nous prenons ? Vous pouvez oublier les prévisions, la saisonnalité et la façon dont vous modélisez la saisonnalité, la façon dont vous facturez la tendance à la baisse, et ainsi de suite. Vous pouvez directement remettre en question le résultat final, qui est le montant en dollars des sorties pour ces coûts de possession. Sont-ils réels ? Ont-ils du sens ? Très souvent, vous pouvez repérer des chiffres qui n’ont aucun sens et les corriger directement.

Évidemment, vous voulez éviter ces situations, mais n’opérez pas sous l’hypothèse que dans la supply chain, tous les problèmes sont des problèmes de prévision incroyablement subtils. La plupart du temps, les problèmes sont brutaux. Il peut y avoir un problème quelconque, comme des données qui ne sont pas traitées correctement, et vous obtenez alors des chiffres complètement aberrants, tels que des marges négatives ou des coûts de possession négatifs qui causent des ravages dans votre supply chain.

Si votre instrumentation de la supply chain se concentre exclusivement sur la précision des prévisions de la demande, vous êtes aveugle à 90% (ou plus) des problèmes réels. Dans une supply chain à grande échelle, cette estimation serait probablement de l’ordre de 99%. L’instrumentation de la supply chain est absolument fondamentale pour mettre en évidence les principaux facteurs qui contribuent aux décisions, et ces facteurs doivent être de nature économique si vous voulez avoir un espoir de vous concentrer sur ce qui rend votre entreprise rentable. Sinon, si vous travaillez en pourcentages, vous ne pouvez pas prioriser vos propres actions et vous vous attaquerez aux problèmes de manière indiscriminée. Nous parlons d’une supply chain à grande échelle, il y a donc toujours une légion de problèmes numériques. Si vous traitez tous ces problèmes de manière indifférente, cela signifie que vous travaillez toujours sur des choses qui sont largement insignifiantes. C’est pourquoi vous avez besoin de retours en dollars et de coûts en dollars. C’est ainsi que vous pouvez réellement prioriser votre travail et vos efforts de développement pour vos recettes numériques. Parfois, vous n’avez même pas besoin de décider si un bogue vaut la peine d’être corrigé ; s’il s’agit de quelques dollars par an de friction, ce n’est même pas un bogue qui vaut la peine d’être corrigé en pratique.

Slide 19

Maintenant, revenons à la question de choisir le bon seuil pour la liste d’allocation. Nous avons constaté que nous avons des rendements décroissants en allouant plus de stock aux SKU du magasin. Cependant, nous devons examiner l’ensemble de la supply chain, pas seulement l’entrepôt ou le centre de distribution. J’utilise les deux termes de manière interchangeable ici. L’entrepôt ou le centre de distribution est dominé par des coûts fixes. En effet, il est possible d’augmenter le personnel avec des travailleurs temporaires, mais cela tend à coûter plus cher et crée d’autres problèmes, tels que le fait que la main-d’œuvre temporaire est généralement moins qualifiée que la main-d’œuvre permanente.

Ainsi, tout entrepôt ou centre de distribution a une capacité cible où il fonctionne à une efficacité économique maximale. La capacité cible peut être augmentée ou diminuée, mais cela implique généralement d’ajuster la taille du personnel permanent, il s’agit donc d’un processus relativement lent. Vous pouvez vous attendre à ce qu’un entrepôt ajuste sa capacité cible d’un trimestre à l’autre, mais vous ne pouvez pas vous attendre à ce qu’il ajuste sa capacité nominale, où il atteint une efficacité maximale, d’un jour à l’autre. Ce n’est pas aussi dynamique.

Nous voulons que l’entrepôt fonctionne à une efficacité maximale, ou aussi proche que possible de l’efficacité maximale, tout le temps, sauf si nous avons un incitatif économique suffisamment fort pour faire autrement. La perspective de l’allocation de stock prioritaire ouvre la voie pour y parvenir. Nous pouvons tronquer la liste en la rendant un peu plus courte ou plus longue et ajuster le seuil pour le maintenir aligné sur la capacité cible de l’entrepôt. En pratique, cela présente trois avantages majeurs.

Premièrement, cela permet de lisser le flux de l’entrepôt. En faisant cela, vous maintenez l’entrepôt en fonctionnement à pleine capacité la plupart du temps, ce qui permet d’économiser beaucoup de coûts d’exploitation. Deuxièmement, votre processus d’allocation des stocks devient beaucoup plus résilient à tous les petits accidents qui se produisent dans une supply chain réelle. Un camion peut être impliqué dans un accident de la circulation mineur, certains membres du personnel peuvent ne pas se présenter parce qu’ils sont malades - il y a des tonnes de petites raisons qui perturberont vos plans. Cela n’empêchera pas votre entrepôt de fonctionner, mais il se peut qu’il ne fonctionne pas exactement à la capacité que vous aviez prévue. Avec cette liste de priorités, vous pouvez tirer le meilleur parti de la capacité que votre entrepôt utilise, même si ce n’est pas exactement la capacité que vous aviez prévue au départ.

Le troisième avantage est qu’avec cette approche d’une liste de priorité pour l’allocation des stocks, votre équipe de supply chain n’a plus besoin de gérer les niveaux de personnel de l’entrepôt de manière microgestion. Vous n’avez qu’à ajuster la capacité cible de votre entrepôt pour qu’elle corresponde approximativement à la vélocité des ventes de votre réseau de vente au détail. La gestion micro de la capacité au quotidien devient largement insignifiante.

Slide 20

L’expérience de Lokad indique que lisser le flux de l’entrepôt grâce à un seuil de capacité fixe fonctionne bien dans la plupart des situations de vente au détail. À l’écran, vous pouvez voir la courbe de rendement économique typique que vous observeriez en tenant compte de tous les seuils possibles. Sur l’axe des abscisses, nous avons le nombre d’unités expédiées depuis l’entrepôt. Nous supposons conceptuellement que les unités sont expédiées une par une afin de pouvoir observer la contribution marginale de chaque unité. Naturellement, en production, les unités sont expédiées par lots, pas une par une, mais c’est juste pour pouvoir tracer la courbe. Sur l’axe des ordonnées, nous avons les résultats économiques marginaux au niveau du magasin, pour la n-ième unité expédiée vers un magasin, n’importe quel magasin du réseau. Les premières unités allouées génèrent la majeure partie des rendements. En pratique, le haut de la liste est invariablement constitué de situations de rupture de stock qui nécessitent une résolution immédiate. C’est pourquoi les premières unités traitent les ruptures de stock, et c’est pourquoi les rendements économiques sont très élevés. Ensuite, les rendements diminuent et nous entrons dans une partie plate de la courbe.

Cette zone est ce que j’appelle la zone de faible sensibilité économique. Essentiellement, nous poussons progressivement le taux de service vers 100 % mais ne créons pas encore beaucoup de stocks morts. Lorsque vous effectuez ce type d’allocation prioritaire, si nous poussons les stocks au-delà de la résolution des problèmes de rupture de stock, nous finissons par accumuler des stocks sur les produits à rotation rapide. Nous créons des stocks là où ils ne sont pas exactement nécessaires pour le moment. Nous aurons des opportunités à l’avenir pour reconstituer les stocks sans être confrontés à un problème de rupture de stock, mais l’impact est minime car les stocks se vendront relativement rapidement. Essentiellement, il s’agit simplement du coût d’opportunité de déplacer les stocks du centre de distribution vers un magasin. Nous perdons progressivement des options futures à mesure que nous allouons plus de stocks.

Cette zone est relativement plate et commencera à devenir assez négative lorsque nous pousserons tellement de stocks que nous commencerons à générer des situations qui entraîneront des dépréciations d’inventaire avec une probabilité non négligeable. Si vous continuez à pousser, vous générez des situations de surstock plus graves, et donc, vous voyez que la courbe devient très négative. Si vous poussez trop, vous générerez des dépréciations d’inventaire en masse à l’avenir. Tant que la coupure se situe dans ce segment de faible sensibilité, nous sommes bons, et la coupure n’est pas très sensible à l’endroit où vous la faites. C’est la raison pour laquelle la capacité de l’entrepôt n’a pas besoin de reproduire directement le volume de ventes quotidien.

En effet, dans la plupart des réseaux de vente au détail, vous avez un schéma cyclique très marqué selon les jours de la semaine que vous observez dans vos ventes, où certains jours, par exemple le samedi, sont les jours où vous vendez le plus. Mais l’entrepôt n’a pas besoin de reproduire exactement ce schéma cyclique selon les jours de la semaine. Vous pouvez maintenir une moyenne très plate, et l’idée est que votre capacité cible doit simplement correspondre approximativement au volume de ventes global de votre réseau de magasins. Si votre capacité cible est toujours un peu inférieure à votre volume de ventes global dans le réseau, ce qui se passera, c’est que vous épuiserez d’abord tous vos magasins progressivement, puis vous rencontrerez un gros problème. À l’inverse, si vous poussez chaque jour un peu plus que ce que vous vendez réellement, alors très rapidement, vous saturerez complètement vos magasins.

Tant que vous le maintenez relativement équilibré, vous n’avez pas besoin de gérer de manière micro la répartition selon les jours de la semaine ; cela fonctionnera bien. La raison pour laquelle vous n’avez pas besoin de gérer de manière micro la répartition selon les jours de la semaine est que les toutes premières unités génèrent la majeure partie des retours, et le système, d’un point de vue économique, n’est pas si sensible tant que la coupure reste approximativement dans ce segment relativement plat.

Slide 21

Maintenant, j’ai présenté la fonction de récompense des stocks pour des raisons de clarté et de concision, car nous avions beaucoup à couvrir dans cette conférence. Cependant, la fonction de récompense des stocks n’est pas le summum de la science de la supply chain. Elle est un peu naïve en ce qui concerne les détails des prévisions probabilistes.

En 2021, l’un d’entre nous chez Lokad a publié la fonction de récompense des actions. La fonction de récompense des actions est l’héritière spirituelle, si vous voulez, de la fonction de récompense des stocks, mais cette fonction offre une perspective beaucoup plus détaillée sur les prévisions probabilistes elles-mêmes. En effet, toutes les prévisions probabilistes ne se valent pas. La saisonnalité, les délais de livraison variables et les ETA d’approvisionnement pour les centres de distribution sont tous pris en compte dans la fonction de récompense des actions, alors qu’ils n’étaient pas pris en compte dans la fonction de récompense des stocks.

Au fait, ces capacités nécessitent également des prévisions plus granulaires, vous avez donc besoin d’une technologie de prévision supérieure capable de générer toutes ces prévisions probabilistes pour utiliser la fonction de récompense des stocks. À cet égard, la fonction de récompense des stocks est moins exigeante. Au niveau conceptuel, la fonction de récompense des actions permet également de dissocier clairement la fréquence de commande (à quelle fréquence vous commandez) du délai d’approvisionnement (combien de temps il faut pour reconstituer les stocks une fois la décision prise). Ces deux éléments étaient regroupés dans la fonction de récompense des stocks. Avec la récompense des actions, ils sont clairement séparés.

Enfin, la fonction de récompense des actions offre également une perspective de propriété de décision, ce qui est un tour simple mais assez astucieux pour tirer le meilleur parti des avantages qui seraient obtenus à partir d’une véritable politique sans avoir à introduire une politique. Nous discuterons de ce que signifient vraiment les politiques d’un point de vue technique dans les prochaines conférences, mais l’essentiel est que dès que vous commencez à introduire des politiques, cela devient plus compliqué. C’est intéressant, mais c’est certainement plus compliqué. Ici, la récompense des actions a un tour astucieux où vous pouvez littéralement contourner la nécessité d’adopter une politique et récolter quand même la plupart des avantages économiques qui y sont attachés.

Slide 22

La fonction de récompense des stocks et son alternative supérieure, la fonction de récompense des actions, sont utilisées depuis des années chez Lokad. Ces fonctions simplifient essentiellement des classes entières de problèmes qui affectent autrement les réseaux de vente au détail. Par exemple, les stocks morts deviennent faciles à évaluer en regardant simplement les retours économiques attachés à chaque unité de stock déjà présente dans un magasin. Pourtant, il y a de nombreux aspects que je n’ai pas abordés aujourd’hui. Je traiterai ces aspects dans les prochaines conférences.

Certains de ces aspects peuvent en fait être abordés avec des variations assez mineures de ce que j’ai présenté aujourd’hui. C’est le cas, par exemple, pour les multiplicateurs de lots et le rééquilibrage des stocks. Vous devez apporter très peu de modifications aux scripts que je viens de montrer aujourd’hui pour pouvoir résoudre ces problèmes. Lorsque je parle de rééquilibrage des stocks, je veux dire rééquilibrer les stocks entre les magasins du réseau, soit en renvoyant les stocks au centre de distribution, soit en déplaçant directement les stocks entre les magasins, en supposant des coûts de transport spécifiques.

Ensuite, il y a certains aspects qui nécessitent plus de travail mais qui restent relativement simples. Par exemple, prendre en compte les coûts d’opportunité, les coûts de transport fixes et la surcharge d’entrée en magasin, qui se produit lorsque le personnel d’un magasin n’est pas capable de traiter toutes les unités qu’il a reçues. Ils n’ont pas le temps, un jour donné, de les mettre en rayon, ce qui crée un grand désordre dans le magasin. Ces aspects sont possibles mais nécessiteront certainement beaucoup de travail en plus de ce que j’ai présenté aujourd’hui.

Il y a d’autres aspects, comme le merchandising ou l’amélioration de l’attrait global du magasin, qui devraient faire partie de la priorisation. Cela nécessite une approche technologique supérieure, car de légères variations de ce que j’ai présenté aujourd’hui ne suffisent pas. Comme d’habitude, je conseille une bonne dose de scepticisme chaque fois qu’un expert prétend avoir une méthode optimale. En supply chain, il n’y a pas de méthode optimale ; nous avons des outils, certains d’entre eux se révèlent meilleurs, mais aucun d’entre eux n’est même de près quelque chose qui pourrait être qualifié d’optimal.

Slide 23

En conclusion, les pourcentages d’erreur sont sans importance ; seuls les dollars d’erreur comptent. Ces dollars sont générés par ce que votre supply chain fait au niveau physique. La plupart des KPI sont insignifiants au mieux ; ils font partie du processus de supply chain pour améliorer en continu les recettes numériques qui guident les décisions de supply chain. Cependant, même en tenant compte de ces KPI qui sont essentiels pour améliorer les recettes numériques, nous parlons de résultats assez indirects par rapport à l’amélioration directe de la recette numérique qui guide la décision et génère immédiatement de meilleurs résultats pour votre supply chain.

Les feuilles Excel sont omniprésentes dans la supply chain, et je pense que cela est dû au fait que la théorie dominante de la supply chain n’a pas réussi à promouvoir les décisions en tant que citoyens de première classe. En conséquence, les entreprises perdent du temps, de l’argent et de l’énergie sur des citoyens de deuxième classe, à savoir les artefacts. Mais en fin de compte, des décisions doivent être prises : il faut allouer des stocks et choisir le prix, votre point de vente et le prix d’attaque. En l’absence de soutien adéquat, les praticiens de la supply chain se tournent vers l’outil qui leur permet de traiter les décisions en tant que citoyens de première classe, et cet outil se trouve être Excel.

Cependant, les décisions de la supply chain peuvent être traitées en tant que citoyens de première classe, et c’est exactement ce que nous avons fait aujourd’hui. L’outil n’est même pas si complexe, du moins si l’on considère la complexité ambiante du paysage applicatif typique d’une supply chain moderne. De plus, un outillage adéquat permet de débloquer des capacités telles que lisser le flux de stocks des centres de distribution vers le magasin avec un effort minimal. Ces capacités sont faciles à atteindre avec l’outil approprié, mais illustrent également le genre de réalisations qui ne peuvent jamais être attendues des feuilles de calcul Excel, du moins pas avec une configuration de qualité de production.

Slide 24

Je suppose que c’est tout pour aujourd’hui. La prochaine conférence aura lieu le mercredi 6 juillet, à la même heure, 15h heure de Paris. Je passerai au septième chapitre pour discuter de l’exécution tactique d’une initiative d’approvisionnement quantitative. Au fait, je reviendrai sur le chapitre 5, en discutant des prévisions probabilistes, et le chapitre 6, en discutant des techniques de prise de décision, lors de prochaines conférences. Mon objectif est d’avoir une perspective complète et de niveau d’entrée sur tous les éléments avant de plonger plus en profondeur dans un sujet spécifique.

Donc, à ce stade, je vais jeter un coup d’œil aux questions.

Question : Le zedfunc pourrait avoir des possibilités infinies. Dans ce cas, toutes les solutions ne seraient-elles pas à court terme ?

Le zedfunction est littéralement un conteneur de données pour une séquence d’options, donc le genre d’horizon qui est applicable est intégré dans la valeur alpha, les valeurs de décote temporelle que j’ai utilisées dans mes scripts. Fondamentalement, l’horizon temporel cible que vous avez intégré dans le résultat économique d’un zedfunction n’est pas vraiment dans les zedfunctions eux-mêmes ; ils se trouvent davantage dans le genre de calculs économiques qui les remplissent. N’oubliez pas que les zedfunctions ne sont que des conteneurs de données. C’est ce qui les rend à court terme ou à long terme, et évidemment, vous voulez ajuster vos recettes numériques pour qu’elles représentent vos priorités. Par exemple, si votre entreprise est confrontée à un énorme stress en raison de problèmes de trésorerie, vous aurez probablement une perspective beaucoup plus à court terme sur l’entrée d’argent, donc essentiellement la liquidation de votre stock. Si vous êtes très riche en liquidités, vous préférez peut-être retarder les ventes à une période ultérieure, vendre à un meilleur prix et garantir une meilleure marge brute. Donc encore une fois, toutes ces choses sont possibles avec les zedfunctions. Les zedfunctions ne sont que des conteneurs ; elles ne présupposent pas nécessairement un type de recette numérique pour les résultats économiques que vous souhaitez mettre dans les zedfunctions.

Question : Je pense que la plupart des hypothèses doivent être basées sur les valeurs réelles existantes des fonctions objectives, n’est-ce pas ?

Qu’est-ce que le réel ? C’est là l’essence du problème que j’ai abordé lors de la conférence sur l’optimisation expérimentale. Le problème est que chaque fois que vous dites que vous avez des valeurs ou des mesures ou des choses, ce que vous avez ce sont des constructions mathématiques, des constructions numériques. Ce n’est pas parce que c’est numérique que c’est correct. La façon dont j’aborde une supply chain est celle d’une science expérimentale ; vous devez vous connecter au monde réel. C’est ainsi que vous décidez si c’est réel ou non. La question est, et je suis tout à fait d’accord, que les hypothèses doivent être basées non pas sur des valeurs réelles préexistantes car il n’y a pas de telles valeurs réelles préexistantes. Elles doivent être vérifiées ; ces hypothèses doivent être vérifiées et remises en question à partir des observations du monde réel que vous pouvez faire sur votre supply chain. La validité de vos hypothèses ne peut être évaluée qu’en contact avec la réalité de votre supply chain.

C’est là que cette perspective d’optimisation expérimentale est délicate car la perspective d’optimisation mathématique suppose simplement que toutes les variables sont connues, que toutes les variables sont réelles, que toutes les variables peuvent être observées et que la fonction de perte peut être correcte. Mais ce que je dis, c’est qu’une supply chain est un système super complexe. Ce n’est pas vrai. La plupart du temps, ce que vous avez ce sont des mesures assez indirectes. Quand je parle de niveau de stock, je ne vais pas réellement dans le magasin pour vérifier si le niveau de stock est correct. Ce que j’ai, c’est une mesure très indirecte, un enregistrement électronique que j’ai obtenu à partir d’un système logiciel d’entreprise qui a généralement été mis en place il y a deux décennies pour des raisons qui n’avaient rien à voir avec la science des données en premier lieu. C’est ce que je dis ; le problème avec la réalité, c’est qu’une supply chain est toujours géographiquement distribuée, donc tout ce que vous mesurez, tout ce que vous voyez en termes de valeurs, ce sont des mesures indirectes. En quelque sorte, la réalité de ces mesures est toujours remise en question. Il n’y a pas de telle chose qu’une observation directe. Vous pouvez faire une observation directe juste pour faire un contrôle ou une vérification, mais cela ne peut être qu’un pourcentage minime de toutes les valeurs que vous devez manipuler pour votre supply chain.

Question : Dans les fonctions de récompense de stock, en plus des paramètres simples tels que la marge, nous traitons également des pénalités de rupture de stock. Comment pouvons-nous apprendre au mieux à optimiser ces paramètres complexes ?

C’est une très bonne question. En effet, les pénalités de rupture de stock sont réelles ; sinon, personne ne se soucierait même d’avoir des niveaux de service élevés. La raison pour laquelle vous voulez avoir des niveaux de service, c’est que, économiquement parlant, tous les détaillants que je connais sont convaincus que les pénalités de rupture de stock sont réelles. Les clients n’aiment pas ne pas avoir un service de haute qualité. Mais je ne dirais pas qu’elles sont complexes ; elles sont compliquées. Elles sont intrinsèquement difficiles, et une partie de leur difficulté réside dans le fait que c’est littéralement la stratégie à long terme du réseau de vente au détail qui est en jeu. Avec la plupart de mes clients, par exemple, la pénalité de rupture de stock est quelque chose dont je discute directement avec le PDG de l’entreprise. Cela va jusqu’au sommet ; il s’agit de la stratégie à très long terme du réseau de vente au détail qui est en jeu.

Donc, ce n’est pas si complexe, mais c’est certainement compliqué car c’est une discussion très importante. Que voulons-nous faire ? Comment voulons-nous traiter les clients ? Voulons-nous dire que nous avons les meilleurs prix et désolé si la qualité du service n’est pas aussi bonne que ce que vous pouvez obtenir, mais ce que vous avez est quelque chose d’unique avec des prix très bas ? Ou voulez-vous avoir de la nouveauté ? Si vous avez de la nouveauté, cela signifie qu’il y a de nouveaux produits qui arrivent tout le temps, et si vous avez de nouveaux produits qui arrivent tout le temps, cela signifie que les anciens produits sont en train de disparaître, et donc cela signifie que vous devriez tolérer les ruptures de stock car c’est ainsi que vous continuez à introduire de la nouveauté.

La pénalité de rupture de stock est difficile à évaluer car elle a directement des enjeux importants dans la stratégie à long terme de l’entreprise. En pratique, la meilleure façon de l’évaluer est de faire des expériences. Vous choisissez une valeur, faites une estimation approximative de la valeur de la pénalité de rupture de stock, du facteur de pénalité de stock, puis vous regardez quel type de stocks vous avez dans vos magasins. Ensuite, vous laissez les gens juger avec leurs sentiments si cela ressemble au niveau de stock qui refléterait leur magasin idéal. Est-ce ce qu’ils veulent vraiment pour leurs clients ? Est-ce ce qu’ils veulent vraiment réaliser avec leur réseau de vente au détail ?

Vous voyez, il y a cette discussion avec des allers-retours. En général, le scientifique de la supply chain va tester une série de valeurs, présenter le genre de résultats économiques, et expliquer également les coûts macro qui sont liés à un facteur. Ils pourraient dire : “D’accord, nous pouvons mettre une pénalité de rupture de stock très élevée, mais attention, si nous faisons cela, cela signifie que notre logique d’allocation des stocks va toujours pousser des tonnes de stocks vers les magasins.” Parce que si le message est que les ruptures de stock sont mortelles, cela signifie que nous devrions vraiment faire tout ce que nous pouvons pour les empêcher de se produire. Essentiellement, nous devons avoir cette discussion avec beaucoup d’itérations afin que la direction puisse faire une vérification de la réalité : “Ma stratégie à long terme est-elle économiquement viable par rapport à ce que mon réseau de vente au détail peut réellement faire ?” C’est ainsi que vous convergez progressivement. Au fait, ce n’est pas quelque chose de figé. Les entreprises changent et ajustent leur stratégie au fil du temps, donc ce n’est pas parce que vous prenez un facteur de pénalité de rupture de stock en 2010 que en 2022 il doit avoir la même valeur.

Surtout, par exemple, avec l’essor du e-commerce. Il y a de nombreux réseaux de vente au détail qui disent simplement : “Eh bien, je suis devenu beaucoup plus tolérant aux ruptures de stock dans mes magasins, surtout pour les magasins spécialisés.” Parce qu’essentiellement, lorsque qu’un produit manque, surtout une variante en termes de taille, les gens le commandent simplement en ligne sur le e-commerce. Le magasin devient comme un showroom. Donc la qualité de service d’un showroom devient très différente de ce qui était attendu lorsque le magasin était littéralement le seul moyen de vendre les produits.

Question : Pouvons-nous avoir une fonction de récompense de stock composée pour comprendre correctement la tendance sur une période donnée ?

Comprendre la tendance de quoi exactement ? S’il s’agit d’une tendance de la demande, la récompense de stock est une fonction qui consomme une prévision probabiliste. Donc, quelle que soit la tendance que vous avez dans la demande, c’est généralement un facteur de la façon dont vous modélisez votre demande. En ce qui concerne la fonction de récompense de stock, la prévision probabiliste intègre déjà tout cela, qu’il y ait une tendance ou non.

Maintenant, si vous avez une autre question avec la perspective stationnaire de la récompense de stock, vous avez tout à fait raison. La fonction de récompense de stock a une perspective complètement stationnaire. Elle suppose que la demande se répète de manière probabiliste à chaque période exactement de la même manière, il n’y a donc pas de tendance ou de saisonnalité. C’est une perspective purement stationnaire. Dans cette situation, la réponse est non, la fonction de récompense de stock n’est pas capable de gérer une demande non stationnaire. Cependant, la fonction de récompense d’action est capable de le faire. C’était également l’une des motivations pour passer à la fonction de récompense d’action, car elle peut gérer une demande probabiliste non stationnaire.

Question : Nous supposons que la capacité de l’entrepôt est fixe, mais elle dépend de l’effort de préparation, d’emballage et d’expédition. Les points de coupure ne devraient-ils pas être définis par l’optimisation des opérations de l’entrepôt ?

Oui, absolument. C’est ce que j’ai dit lorsque vous avez cette zone de faible sensibilité économique. Votre liste de priorités, qui représente l’allocation de stock priorisée, n’est pas très sensible à l’endroit où vous coupez, tant que c’est dans ce segment. En moyenne, vous devriez être vraiment équilibré en termes de combien vous poussez et combien vous vendez, ce qui est logique. Si vous souhaitez ajuster légèrement le point de coupure après avoir exécuté la logique d’optimisation de l’entrepôt, en tenant compte de tous les efforts et variations de préparation, d’emballage et d’expédition, c’est bien. Vous pouvez avoir des variations de dernière minute. La beauté de cette liste d’allocation de stock priorisée est que vous pouvez littéralement finaliser le périmètre exact des unités expédiées à la dernière minute. La seule opération dont vous avez besoin est une agrégation, qui peut être effectuée très rapidement, vous donnant plus d’options. C’est exactement ce que j’ai dit lorsque j’ai mentionné que cette approche ouvre de nouvelles classes d’optimisation de la supply chain. Elle vous permet de décider au dernier moment de réorganiser vos efforts de préparation, d’emballage et d’expédition au lieu d’être rigidement attaché à une enveloppe d’expédition pré-ordonnée qui ne correspond pas vraiment aux ressources exactes dont vous disposez et à l’effort nécessaire pour exécuter cette enveloppe.

Question : Lissage des flux de l’entrepôt nécessite un lissage du flux de production. Ce modèle de décision en tient-il compte ?

Je dirais qu’il ne nécessite pas naturellement un flux de production lissé. Pour de nombreux réseaux de vente au détail, comme les magasins de marchandises générales, ils commandent auprès de grandes entreprises de biens de consommation courante qui produisent de très gros lots de leur côté. Vous n’avez pas besoin de lisser le flux de production pour générer des avantages en termes de coûts d’exploitation du centre de distribution. Même si la production n’a pas été lissée, vous avez déjà des avantages en déplaçant simplement les expéditions du centre de distribution vers les magasins.

Cependant, vous avez tout à fait raison. Si vous êtes une marque intégrée verticalement qui a internalisé ses installations de production, ses centres de distribution et ses magasins, alors il y a un vif intérêt à faire une optimisation de la supply chain à l’échelle du réseau et à lisser l’ensemble du flux. Cette approche d’optimisation à l’échelle du réseau est très alignée avec l’esprit de ce que j’ai présenté aujourd’hui. Cependant, si vous voulez vraiment optimiser un réseau de supply chain multi-échelons, vous aurez besoin d’une technique différente de celle que j’ai présentée aujourd’hui. Il existe de nombreux éléments constitutifs qui vous permettront de le faire, mais vous ne pouvez pas simplement ajuster les scripts que j’ai présentés aujourd’hui pour y parvenir. Il s’agira du type de technologie où nous abordons la configuration multi-échelons, qui sera présentée dans les prochains cours. C’est plus compliqué.

Question : L’approche de récompense de stock et l’erreur attendue me rappellent le concept de valeur attendue en finance. De votre point de vue, pourquoi cette approche n’est-elle pas encore courante dans les cercles de la supply chain ?

Vous avez tout à fait raison. Ce genre de choses, comme une véritable analyse économique des résultats, a été fait depuis des siècles dans les cercles financiers. Je crois que la plupart des banques font ces calculs depuis les années 80, et probablement que les gens les faisaient même avant avec un stylo et du papier. Donc oui, c’est quelque chose qui a été fait depuis des siècles dans d’autres secteurs.

Je pense que le problème avec les supply chains était que jusqu’à l’avènement d’Internet, les supply chains étaient naturellement réparties géographiquement, avec des magasins, des centres de distribution, et plus encore, répartis. Avant 1995, il était possible mais très compliqué de déplacer des données sur Internet pour les entreprises. C’était faisable, mais le faire de manière fiable, bon marché et avoir des systèmes d’entreprise qui vous permettent de consolider toutes ces données était rare. Donc essentiellement, les supply chains ont été numérisées très tôt, comme dans les années 80, mais elles n’étaient pas fortement interconnectées. L’ingrédient de mise en réseau et toute la plomberie sont venus relativement tard, je dirais après l’année 2000 pour la plupart des entreprises.

Le problème était que, imaginez que vous travailliez dans un centre de distribution mais assez isolé du reste du réseau, donc le responsable de l’entrepôt n’avait pas les ressources pour effectuer ce genre de calculs numériques sophistiqués. Le responsable de l’entrepôt avait un entrepôt à gérer et n’était généralement pas un analyste. Donc ces pratiques qui préexistaient à l’ère d’Internet, où toutes les informations sont disponibles sur le réseau, ont perduré. C’est la raison, et d’ailleurs, les supply chains sont généralement très grandes, compliquées et complexes, donc elles évoluent lentement.

Le partage des données sur le réseau avec de très beaux data lakes, disons que c’était en 2010, même si cela fait 10 ans, ce que j’observe, c’est que certaines entreprises se déplacent maintenant, certaines se sont déjà déplacées, mais une décennie n’est pas si longue compte tenu de la taille et de la complexité des supply chains. C’est pourquoi ce type d’analyses est la norme en finance depuis environ quatre décennies, et elles ne font que commencer à émerger de nos jours dans la supply chain, du moins c’est mon humble opinion sur la question.

Question : Qu’en est-il du coût de rupture de stock, principalement calculé sur le coût de mauvais placement ?

Vous pouvez le faire. Encore une fois, le coût de rupture de stock est littéralement une décision que vous prenez. C’est votre perspective stratégique sur le type de service que vous souhaitez offrir à votre réseau de vente au détail. Il n’y a pas de réalité de base ; c’est littéralement ce que vous voulez. La question du coût de mauvais placement est que la réalité est que la plupart des réseaux de vente au détail survivent uniquement parce qu’ils ont une base de clients fidèles. Les gens reviennent dans les magasins, que ce soit un magasin de marchandises générales qu’ils visitent chaque semaine, un magasin de mode qu’ils visitent chaque trimestre ou un magasin de meubles où ils reviennent tous les deux ans. La qualité du service est essentielle pour maintenir la fidélité à long terme des clients et garantir une expérience positive dans votre magasin. En général, le coût de la perte de fidélité pour la plupart des magasins dépasse largement les coûts de mauvais placement. Une exception qui me vient à l’esprit est les magasins de vente au détail avec une stratégie de marque axée sur le fait d’être les moins chers. Dans ce cas, ils peuvent sacrifier l’assortiment et la qualité du service, en privilégiant les bas prix avant tout.

Question : Quel est l’objectif de stocker votre entrepôt ? Est-ce de maintenir des produits à bas prix ou de fournir des produits aux magasins à des prix plus élevés ?

C’est une excellente question. Pourquoi conserver des stocks dans le centre de distribution ? Pourquoi ne pas tout cross-docker directement, en l’envoyant tout aux magasins ?

Il existe des réseaux de vente au détail qui cross-dockent tout, mais même avec cette approche, il y a un délai entre le moment où vous passez une commande à vos fournisseurs et le moment où vous expédiez réellement les stocks aux magasins. Vous pouvez commander des quantités spécifiques avec un schéma d’allocation particulier en tête, mais vous avez la flexibilité de changer d’avis lorsque les stocks sont livrés au centre de distribution. Vous n’êtes pas obligé d’être rigidement attaché au schéma d’allocation que vous aviez en tête il y a deux jours.

Vous pouvez décider de ne pas conserver de stocks dans le centre de distribution et simplement cross-docker, mais en raison du délai, vous pouvez changer d’avis et effectuer une expédition légèrement différente. Cela peut être utile, par exemple, lorsque vous rencontrez une rupture de stock due à une augmentation inattendue de la demande. Bien qu’il soit préférable de ne pas avoir de rupture de stock, cela indique une demande excédentaire par rapport à ce qui était prévu, ce qui n’est pas entièrement négatif.

Dans d’autres situations, il est nécessaire de conserver des stocks dans l’entrepôt en raison de contraintes de commande avec les fournisseurs. Par exemple, les entreprises de produits de grande consommation ne vous permettent peut-être de passer une commande qu’une fois par semaine, et elles veulent généralement livrer un camion complet à votre centre de distribution. Vos commandes seront volumineuses et groupées, et votre centre de distribution sert de tampon pour ces livraisons. Le centre vous donne également la possibilité de changer d’avis concernant l’allocation des stocks.

Tant que les stocks sont dans le centre de distribution, vous pouvez changer d’avis. Cependant, une fois qu’ils sont alloués à un magasin spécifique, le coût de transport pour les ramener à l’entrepôt est souvent prohibitif et quelque chose que vous voudriez éviter.

Merci beaucoup, et j’espère vous revoir la prochaine fois. Nous discuterons de la manière d’exécuter des stratégies tactiques et de lancer une véritable initiative de supply chain quantitative dans une entreprise du monde réel. À la prochaine !