00:01 Introduction
02:18 La prévision moderne
06:37 Allons-y pour le probabiliste
11:58 L’histoire jusqu’à présent
15:10 Plan probable pour aujourd’hui
17:18 Bestiaire des prédictions
28:10 Métriques - CRPS - 1/2
33:21 Métriques - CRPS - 2/2
37:20 Métriques - Monge-Kantorovich
42:07 Métriques - vraisemblance - 1/3
47:23 Métriques - vraisemblance - 2/3
51:45 Métriques - vraisemblance - 3/3
55:03 Distributions 1D - 1/4
01:01:13 Distributions 1D - 2/4
01:06:43 Distributions 1D - 3/4
01:15:39 Distributions 1D - 4/4
01:18:24 Générateurs - 1/3
01:24:00 Générateurs - 2/3
01:29:23 Générateurs - 3/3
01:37:56 Veuillez patienter pendant que nous vous ignorons
01:40:39 Conclusion
01:43:50 Prochain cours et questions du public

Description

Une prévision est dite probabiliste, au lieu d’être déterministe, si elle contient un ensemble de probabilités associées à tous les résultats futurs possibles, au lieu de pointer un résultat particulier comme “la” prévision. Les prévisions probabilistes sont importantes chaque fois que l’incertitude est irréductible, ce qui est presque toujours le cas lorsque des systèmes complexes sont concernés. Pour les supply chains, les prévisions probabilistes sont essentielles pour prendre des décisions robustes face à des conditions futures incertaines.

Transcription complète

Slide 1

Bienvenue dans cette série de cours sur la supply chain. Je suis Joannes Vermorel et aujourd’hui je vais présenter “Les prévisions probabilistes pour la supply chain”. Les prévisions probabilistes sont l’un des changements de paradigme les plus importants, voire le plus important, dans plus d’un siècle de prévisions statistiques. Pourtant, d’un point de vue technique, c’est principalement plus de la même chose. Que l’on regarde des modèles de prévisions probabilistes ou leurs alternatives non probabilistes, il s’agit des mêmes statistiques, des mêmes probabilités. Les prévisions probabilistes reflètent un changement dans la façon dont nous devrions penser aux prévisions elles-mêmes. Le plus grand changement apporté par les prévisions probabilistes à la supply chain ne se trouve pas dans la science des prévisions. Le plus grand changement se trouve dans la façon dont les supply chains sont exploitées et optimisées en présence de modèles prédictifs.

L’objectif de la conférence d’aujourd’hui est de fournir une introduction technique en douceur aux prévisions probabilistes. À la fin de cette conférence, vous devriez être en mesure de comprendre de quoi il s’agit, comment différencier les prévisions probabilistes des prévisions non probabilistes, comment évaluer la qualité d’une prévision probabiliste, et même être en mesure de concevoir votre propre modèle de prévision probabiliste de niveau débutant. Aujourd’hui, je ne couvrirai pas l’exploitation des prévisions probabilistes à des fins de prise de décision dans le contexte des supply chains. L’accent est exclusivement mis sur l’établissement des bases des prévisions probabilistes. L’amélioration des processus de prise de décision dans la supply chain grâce aux prévisions probabilistes sera abordée dans la prochaine conférence.

Slide 2

Afin de comprendre l’importance des prévisions probabilistes, un peu de contexte historique est nécessaire. La forme moderne des prévisions, la prévision statistique, par opposition à la divination, est apparue au tout début du XXe siècle. Les prévisions ont émergé dans un contexte scientifique plus large où les sciences dures, quelques disciplines très réussies comme la cinétique, l’électromagnétisme et la chimie, ont été en mesure d’obtenir des résultats apparemment précis de manière arbitraire. Ces résultats ont été obtenus grâce à un effort de plusieurs siècles, qui peut remonter, par exemple, à Galilée, en développant des technologies supérieures qui permettraient des formes de mesure supérieures. Des mesures plus précises, à leur tour, alimenteraient le développement scientifique en permettant aux scientifiques de tester et de remettre en question leurs théories et leurs prédictions de manière encore plus précise.

Dans ce contexte plus large où certaines sciences ont connu un succès incroyable, le domaine émergent des prévisions au tout début du XXe siècle s’est donné pour mission de reproduire ce que ces sciences dures avaient accompli dans le domaine de l’économie. Par exemple, si nous regardons des pionniers comme Roger Babson, l’un des pères de la prévision économique moderne, il a créé une entreprise de prévision économique réussie aux États-Unis au début du XXe siècle. La devise de l’entreprise était littéralement : “Pour chaque action, il y a une réaction égale et opposée.” La vision de Babson était de transposer le succès de la physique newtonienne dans le domaine de l’économie et finalement d’obtenir des résultats tout aussi précis.

Cependant, après plus d’un siècle de prévisions académiques statistiques, dans lesquelles les chaînes d’approvisionnement opèrent, l’idée d’obtenir des résultats arbitrairement précis, ce qui se traduit en termes de prévisions par l’obtention de prévisions arbitrairement précises, reste aussi insaisissable qu’il y a plus d’un siècle. Depuis quelques décennies, des voix se sont élevées dans le monde plus large de la chaîne d’approvisionnement pour exprimer des inquiétudes selon lesquelles ces prévisions ne deviendront jamais suffisamment précises. Il y a eu un mouvement, comme la fabrication à flux tendu, qui, entre autres, a été un fervent défenseur de la diminution de la dépendance des chaînes d’approvisionnement à l’égard de ces prévisions peu fiables. C’est ce que signifie le juste-à-temps : si vous pouvez fabriquer et servir juste à temps tout ce dont le marché a besoin, alors vous n’avez soudainement plus besoin d’une prévision fiable et précise.

Dans ce contexte, la prévision probabiliste est une réhabilitation de la prévision, mais avec des ambitions beaucoup plus modestes. La prévision probabiliste part de l’idée qu’il existe une incertitude irréductible sur l’avenir. Tous les futurs sont possibles, ils ne sont simplement pas tous également possibles, et l’objectif de la prévision probabiliste est d’évaluer de manière comparative la probabilité respective de tous ces futurs alternatifs, et non de réduire tous les futurs possibles à un seul futur.

Slide 3

La perspective newtonienne sur les prévisions économiques statistiques a essentiellement échoué. L’opinion au sein de notre communauté selon laquelle des prévisions arbitrairement précises pourraient jamais être réalisées a largement disparu. Pourtant, étrangement, presque tous les logiciels de chaîne d’approvisionnement et une grande partie des pratiques courantes de la chaîne d’approvisionnement sont en réalité fondés sur l’hypothèse que de telles prévisions seront finalement disponibles.

Par exemple, la Planification des Ventes et des Opérations (S&OP) repose sur l’idée qu’une vision unifiée et quantifiée de l’entreprise peut être atteinte si toutes les parties prenantes sont réunies et collaborent à l’élaboration d’une prévision commune. De même, l’ouverture à l’achat est essentiellement une méthode basée sur l’idée qu’un processus budgétaire descendant, basé sur l’idée qu’il est possible de construire des prévisions descendantes arbitrairement précises. De plus, même lorsque nous examinons de nombreux outils qui sont très courants en matière de prévision et de planification dans le domaine des chaînes d’approvisionnement, tels que business intelligence et spreadsheets, ces outils sont largement orientés vers une prévision ponctuelle séries temporelles. Essentiellement, l’idée est que vous pouvez étendre vos données historiques dans le futur, en ayant un point par période d’intérêt. Ces outils, par conception, présentent une énorme quantité de friction lorsqu’il s’agit de comprendre même le type de calculs impliqués dans une prévision probabiliste, où il n’y a pas qu’un seul futur mais tous les futurs possibles.

En effet, la prévision probabiliste ne consiste pas à décorer une prévision classique avec une sorte d’incertitude. La prévision probabiliste ne consiste pas non plus à établir une liste restreinte de scénarios, chaque scénario étant une prévision classique à part entière. Les méthodes courantes de la chaîne d’approvisionnement ne fonctionnent généralement pas avec des prévisions probabilistes car, à leur base, elles sont implicitement ou explicitement basées sur l’idée qu’il existe une sorte de prévision de référence, et que tout pivotera autour de cette prévision de référence. En revanche, la prévision probabiliste est l’évaluation numérique frontale de tous les futurs possibles.

Naturellement, nous sommes limités par la quantité de ressources informatiques dont nous disposons, donc lorsque je dis “tous les futurs possibles”, en pratique, nous ne regarderons qu’un nombre fini de futurs. Cependant, compte tenu du genre de puissance de traitement moderne dont nous disposons, le nombre de futurs que nous pouvons réellement envisager se compte en millions. C’est là que la business intelligence et les spreadsheets rencontrent des difficultés. Ils ne sont pas adaptés au genre de calculs impliqués lorsqu’il s’agit de prévisions probabilistes. Il s’agit d’un problème de conception logicielle. Vous voyez, une spreadsheet a accès aux mêmes ordinateurs et à la même puissance de traitement, mais si le logiciel n’est pas conçu de la bonne manière, certaines tâches peuvent être incroyablement difficiles à réaliser, même si vous disposez d’une grande puissance de traitement.

Ainsi, d’un point de vue de la supply chain, le plus grand défi pour adopter la prévision probabiliste est de se défaire de décennies d’outils et de pratiques qui sont ancrés dans un objectif très ambitieux, mais à mon avis erroné, à savoir que l’obtention de prévisions arbitrairement précises est possible. Je tiens à souligner immédiatement qu’il serait extrêmement erroné de considérer la prévision probabiliste comme un moyen d’obtenir des prévisions plus précises. Ce n’est pas le cas. Les prévisions probabilistes ne sont pas plus précises et elles ne peuvent pas être utilisées comme un remplacement direct des prévisions classiques et courantes. La supériorité des prévisions probabilistes réside dans les façons dont ces prévisions peuvent être exploitées à des fins de supply chain, en particulier à des fins de prise de décision dans le contexte des supply chains. Cependant, notre objectif aujourd’hui est simplement de comprendre de quoi il s’agit, et l’exploitation de ces prévisions probabilistes sera abordée dans la prochaine conférence.

Slide 5

Cette conférence fait partie d’une série de conférences sur la supply chain. J’essaie de rendre ces conférences assez indépendantes les unes des autres. Cependant, nous atteignons un point où il sera vraiment utile pour le public de regarder ces conférences dans l’ordre, car je ferai souvent référence à ce qui a été présenté dans les conférences précédentes.

Ainsi, cette conférence est la troisième du cinquième chapitre, qui est consacré à la modélisation prédictive. Dans le tout premier chapitre de cette série, j’ai présenté mes points de vue sur les supply chains en tant que domaine d’étude et pratique. Dans le deuxième chapitre, j’ai présenté des méthodologies. En effet, la plupart des situations de supply chain sont de nature adversaire, et ces situations ont tendance à déjouer les méthodologies naïves. Nous devons avoir des méthodologies adéquates si nous voulons obtenir un certain degré de succès dans le domaine des supply chains.

Le troisième chapitre était consacré à la parcimonie de la supply chain, en se concentrant exclusivement sur le problème et la nature même du défi auquel nous sommes confrontés dans les différentes situations couvertes par les supply chains. L’idée derrière la parcimonie de la supply chain est d’ignorer complètement tous les aspects liés à la solution, car nous voulons simplement être en mesure de regarder exclusivement le problème avant de choisir la solution que nous voulons utiliser pour y faire face.

Dans le quatrième chapitre, j’ai passé en revue un large éventail de sciences auxiliaires. Ces sciences ne sont pas la supply chain en soi ; ce sont d’autres domaines de recherche adjacents ou de soutien. Cependant, je pense qu’une maîtrise de base de ces sciences auxiliaires est une exigence pour la pratique moderne des supply chains.

Enfin, dans le cinquième chapitre, nous nous plongeons dans les techniques qui nous permettent de quantifier et d’évaluer l’avenir, en particulier pour produire des déclarations sur l’avenir. En effet, tout ce que nous faisons dans la supply chain reflète dans une certaine mesure une certaine anticipation de l’avenir. Si nous pouvons anticiper l’avenir de manière plus précise, nous serons alors en mesure de prendre de meilleures décisions. C’est de cela que traite ce cinquième chapitre : obtenir des aperçus quantifiablement meilleurs sur l’avenir. Dans ce chapitre, les prévisions probabilistes représentent une façon essentielle d’aborder l’avenir.

Slide 6

La suite de cette conférence est divisée en quatre sections de longueurs inégales. Tout d’abord, nous allons passer en revue les types de prévisions les plus courants, au-delà de la prévision classique. Je vais préciser ce que j’entends par prévision classique dans un instant. En effet, trop peu de personnes dans les cercles de la supply chain réalisent qu’il existe de nombreuses options sur la table. La prévision probabiliste elle-même doit être comprise comme un parapluie couvrant un ensemble assez diversifié d’outils et de techniques.

Ensuite, nous introduirons des métriques pour évaluer la qualité des prévisions probabilistes. Quoi qu’il arrive, une prévision probabiliste bien conçue vous dira toujours : “Eh bien, il y avait une probabilité que cela se produise”. La question est donc : comment distinguer une bonne prévision probabiliste d’une mauvaise ? C’est là que ces métriques entrent en jeu. Il existe des métriques spécialisées entièrement dédiées à la situation de prévision probabiliste.

Troisièmement, nous examinerons en détail les distributions unidimensionnelles. Ce sont le type de distribution le plus simple, et bien qu’elles aient des limites évidentes, elles sont également le point d’entrée le plus facile dans le domaine de la prévision probabiliste.

Enfin, nous aborderons brièvement les générateurs, qui sont souvent appelés méthodes de Monte Carlo. En effet, il existe une dualité entre les générateurs et les estimateurs de densité de probabilité, et ces méthodes de Monte Carlo nous donneront une voie pour aborder des problèmes de plus haute dimension et des formes de prévision probabiliste.

Slide 7

Il existe plusieurs types de prévisions, et cet aspect ne doit pas être confondu avec le fait qu’il existe plusieurs types de modèles de prévision. Lorsque les modèles n’appartiennent pas au même type ou à la même classe de prévision, ils ne résolvent même pas les mêmes problèmes. Le type de prévision le plus courant est la prévision ponctuelle. Par exemple, si je dis que demain, les ventes totales en euros dans un magasin seront de 10 000 euros pour l’ensemble des ventes de la journée, je fais une prévision ponctuelle sur ce qui se passera dans ce magasin demain. Si je répète cet exercice et commence à construire une prévision de séries temporelles en faisant une déclaration pour le jour de demain, puis une autre déclaration pour le jour d’après-demain, j’aurai plusieurs points de données. Cependant, tout cela reste une prévision ponctuelle car, essentiellement, nous choisissons notre bataille en choisissant un certain niveau d’agrégation et, à ce niveau d’agrégation, nos prévisions nous donnent un seul chiffre, qui est censé être la réponse.

Maintenant, dans le type de prévision ponctuelle, il existe plusieurs sous-types de prévisions en fonction de la métrique qui est optimisée. La métrique la plus couramment utilisée est probablement l’erreur quadratique, nous avons donc une erreur quadratique moyenne, qui vous donne la prévision moyenne. En passant, il s’agit probablement de la prévision la plus couramment utilisée car c’est la seule prévision qui est au moins quelque peu additive. Aucune prévision n’est jamais totalement additive ; elle est toujours accompagnée de nombreuses réserves. Cependant, certaines prévisions sont plus additives que d’autres, et clairement, les prévisions moyennes tendent à être les plus additives de toutes. Si vous voulez avoir une prévision moyenne, ce que vous avez essentiellement, c’est une prévision ponctuelle optimisée par rapport à l’erreur quadratique moyenne. Si vous utilisez une autre métrique, comme l’erreur absolue, et que vous l’optimisez par rapport à cela, ce que vous obtiendrez, c’est une prévision médiane. Si vous utilisez la fonction de perte “pinball” que nous avons introduite dans le tout premier cours de ce cinquième chapitre de cette série de cours sur la supply chain, ce que vous obtiendrez, c’est une prévision de quantile. En passant, comme nous pouvons le voir aujourd’hui, je classe les prévisions de quantile comme un autre type de prévision ponctuelle. En effet, avec la prévision de quantile, vous obtenez essentiellement une seule estimation. Cette estimation peut être biaisée, ce qui est intentionnel. C’est ce que sont les quantiles, mais néanmoins, à mon avis, cela qualifie pleinement comme une prévision ponctuelle car la forme de la prévision est juste un seul point.

Maintenant, il y a la prévision en ensemble, qui renvoie un ensemble de points au lieu d’un seul point. Il existe une variation en fonction de la façon dont vous construisez l’ensemble. Si nous regardons une prévision PAC, PAC signifie Probably Approximately Correct. Il s’agit essentiellement d’un cadre introduit par Valiant il y a environ deux décennies, et il indique que l’ensemble, qui est votre prédiction, a une certaine probabilité pour qu’un résultat soit observé dans votre ensemble que vous prédisez avec une certaine probabilité. L’ensemble que vous produisez est en fait tous les points qui se trouvent dans une région caractérisée par une distance maximale à un point de référence. D’une certaine manière, la perspective PAC sur la prévision est déjà une prévision en ensemble car la sortie n’est plus un point. Cependant, ce que nous avons est toujours un point de référence, un résultat central, et ce que nous avons est une distance maximale à ce point central. Nous disons simplement qu’il y a une certaine probabilité spécifiée que le résultat sera finalement observé dans notre ensemble de prévision.

L’approche PAC peut être généralisée grâce à l’approche conforme. La prédiction conforme indique : “Voici un ensemble, et je vous dis qu’il y a cette probabilité donnée que le résultat sera dans cet ensemble.” Là où la prédiction conforme généralise l’approche PAC, c’est que les prédictions conformes ne sont plus attachées à un point de référence et à la distance par rapport au point de référence. Vous pouvez façonner cet ensemble comme vous le souhaitez, et vous serez toujours dans le paradigme de la prévision en ensemble.

Le futur peut être représenté de manière encore plus granulaire et complexe : la prévision de distribution. La prévision de distribution vous donne une fonction qui fait correspondre toutes les issues possibles à leurs densités de probabilité locales respectives. En quelque sorte, nous commençons par la prévision ponctuelle, où la prévision n’est qu’un point. Ensuite, nous passons à la prévision en ensemble, où la prévision est un ensemble de points. Enfin, la prévision de distribution est techniquement une fonction ou quelque chose qui généralise une fonction. Au fait, lorsque j’utilise le terme “distribution” dans cette leçon, il se réfère toujours implicitement à une distribution de probabilités. Les prévisions de distribution représentent quelque chose de encore plus riche et complexe qu’un ensemble, et c’est ce sur quoi nous allons nous concentrer aujourd’hui.

Il existe deux façons courantes d’aborder les distributions : l’approche de densité et l’approche du générateur. Lorsque je dis “densité”, cela fait essentiellement référence à l’estimation locale des densités de probabilité. L’approche du générateur implique un processus génératif de Monte Carlo qui génère des résultats, appelés déviations, censés refléter la même densité de probabilité locale. Ce sont les deux principales façons de traiter les prévisions de distribution.

Au-delà de la distribution, nous avons des constructions d’ordre supérieur. Cela peut être un peu compliqué à comprendre, mais mon point ici, même si nous n’allons pas aborder les constructions d’ordre supérieur aujourd’hui, est simplement de souligner que la prévision probabiliste, lorsqu’elle se concentre sur la génération de distributions, n’est pas l’objectif final ; c’est juste une étape, et il y a plus. Les constructions d’ordre supérieur sont importantes si nous voulons jamais être en mesure d’obtenir des réponses satisfaisantes à des situations simples.

Pour comprendre de quoi il s’agit avec les constructions d’ordre supérieur, prenons l’exemple d’un simple magasin de détail avec une politique de réduction en place pour les produits approchant de leur date d’expiration. Évidemment, le magasin ne veut pas avoir de stocks morts entre les mains, donc une réduction automatique entre en vigueur lorsque les produits sont très proches de leur date d’expiration. La demande que ce magasin générerait dépend fortement de cette politique. Ainsi, la prévision que nous aimerions avoir, qui peut être une distribution représentant les probabilités pour toutes les issues possibles, devrait dépendre de cette politique. Cependant, cette politique est un objet mathématique ; c’est une fonction. Ce que nous aimerions avoir n’est pas une prévision probabiliste mais quelque chose de plus méta - une construction d’ordre supérieur qui, étant donné une politique, peut générer la distribution résultante.

D’un point de vue de la chaîne d’approvisionnement, lorsque nous passons d’un type de prévision à un autre, nous obtenons beaucoup plus d’informations. Cela ne doit pas être confondu avec une meilleure précision de la prévision ; il s’agit d’accéder à un type d’informations différent, comme passer du noir et blanc à la couleur au lieu d’obtenir simplement une résolution supplémentaire. En termes d’outils, les feuilles de calcul et les outils de business intelligence sont assez adaptés pour traiter les prévisions ponctuelles. Selon le type de prévision en ensemble que vous envisagez, ils peuvent être adaptés, mais vous étirez déjà leurs capacités de conception. Ils ne sont pas vraiment conçus pour traiter tout type de prévision en ensemble fantaisiste au-delà de l’évident, où vous définissez simplement une plage avec des valeurs minimales et maximales dans la plage des valeurs attendues. Nous verrons qu’en fin de compte, si nous voulons avoir une chance de travailler avec des prévisions de distribution ou même des constructions d’ordre supérieur, nous avons besoin d’un type d’outillage différent, bien que cela devienne plus clair dans un instant.

Slide 8

Pour commencer avec les prévisions probabilistes, essayons de caractériser ce qui fait une bonne prévision probabiliste. En effet, peu importe ce qui se passe, une prévision probabiliste vous dira que, peu importe le type de résultat que vous observez, il y avait une probabilité pour que cela se produise. Alors, dans ces conditions, comment différencier une bonne prévision probabiliste d’une mauvaise ? Ce n’est certainement pas parce qu’elle est probabiliste que soudainement tous les modèles de prévision sont bons.

C’est exactement ce que les métriques dédiées à la prévision probabiliste visent, et le Continuous Ranked Probability Score (CRPS) est la généralisation de l’erreur absolue pour les prévisions probabilistes unidimensionnelles. Je suis vraiment désolé pour ce nom horrible - le CRPS. Je n’ai pas inventé cette terminologie ; elle m’a été transmise. La formule du CRPS est donnée à l’écran. Essentiellement, la fonction F est la fonction de distribution cumulative ; c’est la prévision probabiliste qui est faite. Le point x est l’observation réelle, et la valeur du CRPS est quelque chose que vous calculez entre votre prévision probabiliste et l’observation que vous venez de faire.

Nous pouvons voir qu’essentiellement, le point est transformé en une prévision quasi-probabiliste via la fonction de Heaviside. L’introduction de la fonction de Heaviside est simplement l’équivalent de transformer le point que nous venons d’observer en une distribution de probabilité de Dirac, qui est une distribution qui concentre toute la masse de probabilité sur un seul résultat. Ensuite, nous avons une intégrale, et essentiellement, le CRPS effectue une sorte de mise en correspondance de formes. Nous faisons correspondre la forme de la fonction de distribution cumulative (CDF) avec la forme d’une autre CDF, celle associée à la Dirac qui correspond au point que nous avons observé.

Du point de vue de la prévision ponctuelle, le CRPS est déconcertant non seulement en raison de la formule compliquée, mais aussi parce que cette métrique prend deux arguments qui n’ont pas le même type. L’un de ces arguments est une distribution, et l’autre est simplement un seul point de données. Nous avons donc une asymétrie qui n’existe pas avec la plupart des autres métriques de prévision ponctuelle, telles que l’erreur absolue et l’erreur quadratique moyenne. Dans le CRPS, nous comparons essentiellement un point avec une distribution.

Si nous voulons comprendre davantage ce que nous calculons avec le CRPS, une observation intéressante est que le CRPS a la même unité que l’observation. Par exemple, si x est exprimé en euros, et que la valeur du CRPS entre F et x est également homogène en termes d’unités en euros, c’est pourquoi je dis que le CRPS est une généralisation de l’erreur absolue. En passant, si vous réduisez votre prévision probabiliste à une Dirac, le CRPS vous donne une valeur qui est exactement l’erreur absolue.

Slide 9

Bien que le CRPS puisse sembler intimidant et compliqué, sa mise en œuvre est en réalité assez simple. À l’écran se trouve un petit script Envision qui illustre comment le CRPS peut être utilisé du point de vue d’un langage de programmation. Envision est un langage de programmation spécifique à un domaine dédié à l’optimisation prédictive des chaînes d’approvisionnement, développé par Lokad. Dans ces cours, j’utilise Envision pour des raisons de clarté et de concision. Cependant, veuillez noter qu’il n’y a rien d’unique à Envision ; les mêmes résultats pourraient être obtenus dans n’importe quel langage de programmation, que ce soit Python, Java, JavaScript, C#, F# ou autre. Mon point est qu’il faudrait simplement plus de lignes de code, donc je reste avec Envision. Tous les extraits de code donnés ici dans cette leçon et, soit dit en passant, dans les précédentes également, sont autonomes et complets. Vous pourriez techniquement copier et coller ce code, et il s’exécuterait. Il n’y a pas de modules impliqués, pas de code caché et pas d’environnement à configurer.

Donc, revenons à l’extrait de code. Aux lignes un et deux, nous définissons des distributions unidimensionnelles. Je reviendrai sur le fonctionnement de ces distributions unidimensionnelles dans Envision, mais nous avons ici deux distributions : l’une est une distribution de Poisson, qui est une distribution discrète unidimensionnelle, et la deuxième à la ligne deux est la même distribution de Poisson mais décalée de deux unités vers la droite. C’est ce que signifie le “+2”. À la ligne trois, nous calculons la distance CRPS entre une distribution et la valeur 3, qui est un nombre. Ici, nous trouvons cette asymétrie en termes de types de données dont je parlais. Ensuite, les résultats sont affichés en bas, comme vous pouvez le voir en bas de l’écran.

À la ligne quatre, nous calculons le CRPS entre la distribution A et la distribution B. Bien que la définition classique du CRPS soit entre une distribution et un seul point, il est tout à fait possible de généraliser cette définition à une paire de distributions. Tout ce que vous avez à faire est de prendre la même formule pour le CRPS et de remplacer la fonction d’étape de Heaviside par la fonction de distribution cumulative de la deuxième distribution. Les instructions “show” des lignes trois à six donnent l’affichage que vous pouvez voir en bas de l’écran, qui est littéralement une capture d’écran.

Ainsi, nous voyons que l’utilisation du CRPS n’est pas plus difficile ou compliquée que l’utilisation de n’importe quelle fonction spéciale, comme la fonction cosinus. Évidemment, c’est un peu ennuyeux si vous devez réimplémenter vous-même le cosinus, mais tout bien considéré, il n’y a rien de particulièrement compliqué dans le CRPS. Maintenant, passons à la suite.

Slide 10

Le problème de Monge-Kantorovich nous donne un aperçu de la façon d’aborder le processus de correspondance de formes en jeu dans le CRPS, mais avec des dimensions supérieures. Rappelez-vous, le CRPS est en réalité limité à une dimension. La correspondance de formes est conceptuellement quelque chose qui pourrait être généralisé à n’importe quel nombre de dimensions, et le problème de Monge-Kantorovich est très intéressant, d’autant plus qu’au fond, c’est en réalité un problème de chaîne d’approvisionnement.

Le problème de Monge-Kantorovich, à l’origine sans rapport avec les prévisions probabilistes, a été introduit par le scientifique français Gaspard Monge dans un mémoire de 1781 intitulé “Mémoire sur la théorie des déblais et des remblais”, qui pourrait être traduit approximativement par “Mémoire sur la théorie du déplacement de la terre”. Une façon de comprendre le problème de Monge-Kantorovich est de penser à une situation où nous avons une liste de mines, désignées par M à l’écran, et une liste d’usines, désignées par F. Les mines produisent du minerai et les usines consomment du minerai. Ce que nous voulons, c’est construire un plan de transport, T, qui associe tout le minerai produit par les mines à la consommation requise par les usines.

Monge a défini le capital C comme le coût pour déplacer tout le minerai des mines vers les usines. Le coût est la somme pour transporter tout le minerai de chaque mine vers chaque usine, mais il existe évidemment des moyens très inefficaces de transporter le minerai. Donc, lorsque nous disons que nous avons un coût spécifique, cela signifie que le coût reflète le plan de transport optimal. Ce capital C représente le meilleur coût réalisable en considérant le plan de transport optimal.

Il s’agit essentiellement d’un problème de supply chain qui a été largement étudié au fil des siècles. Dans la formulation complète du problème, il y a des contraintes sur T. Pour des raisons de concision, je n’ai pas mis toutes les contraintes à l’écran. Il y a une contrainte, par exemple, selon laquelle le plan de transport ne doit pas dépasser la capacité de production de chaque mine, et chaque usine doit être entièrement satisfaite, avec une allocation correspondant à ses besoins. Il y a beaucoup de contraintes, mais elles sont assez verbeuses, donc je ne les ai pas incluses à l’écran.

Maintenant, bien que le problème de transport soit intéressant en soi, si nous commençons à interpréter la liste des mines et la liste des usines comme deux distributions de probabilité, nous avons un moyen de transformer une métrique ponctuelle en une métrique de distribution. Il s’agit d’un aperçu clé de la correspondance de formes dans des dimensions supérieures à travers la perspective de Monge-Kantorovich. Un autre terme pour cette perspective est la métrique de Wasserstein, bien qu’elle concerne principalement le cas non discret, qui nous intéresse moins.

La perspective de Monge-Kantorovich nous permet de transformer une métrique ponctuelle, qui peut calculer la différence entre deux nombres ou deux vecteurs de nombres, en une métrique qui s’applique à des distributions de probabilité opérant sur le même espace. Il s’agit d’un mécanisme très puissant. Cependant, le problème de Monge-Kantorovich est difficile à résoudre et nécessite une puissance de traitement substantielle. Pour le reste de la conférence, je me concentrerai sur des techniques plus simples à mettre en œuvre et à exécuter.

Slide 11

La perspective bayésienne consiste à regarder une série d’observations du point de vue d’une croyance préalable. La perspective bayésienne est généralement comprise en opposition à la perspective fréquentiste, qui estime la fréquence des résultats en fonction des observations réelles. L’idée est que la perspective fréquentiste ne s’accompagne pas de croyances préalables. Ainsi, la perspective bayésienne nous donne un outil appelé la vraisemblance pour évaluer le degré de surprise lors de la prise en compte des observations et d’un modèle donné. Le modèle, qui est essentiellement un modèle de prévision probabiliste, est la formalisation de nos croyances préalables. La perspective bayésienne nous donne un moyen d’évaluer un ensemble de données par rapport à un modèle de prévision probabiliste. Pour comprendre comment cela est fait, nous devons commencer par la vraisemblance pour un seul point de données. La vraisemblance, lorsque nous avons une observation x, est la probabilité d’observer x selon le modèle. Ici, le modèle est supposé être entièrement caractérisé par theta, les paramètres du modèle. La perspective bayésienne suppose généralement que le modèle a une forme paramétrique quelconque, et theta est le vecteur complet de tous les paramètres du modèle.

Lorsque nous parlons de theta, nous supposons implicitement que nous avons une caractérisation complète du modèle probabiliste, qui nous donne une densité de probabilité locale pour tous les points. Ainsi, la vraisemblance est la probabilité d’observer ce point de données. Lorsque nous avons la vraisemblance pour le modèle theta, il s’agit de la probabilité conjointe d’observer tous les points de données dans l’ensemble de données. Nous supposons que ces points sont indépendants, donc la vraisemblance est un produit de probabilités.

Si nous avons des milliers d’observations, la vraisemblance, en tant que produit de milliers de valeurs inférieures à un, est susceptible d’être numériquement très petite. Une valeur très petite est généralement difficile à représenter avec la façon dont les nombres à virgule flottante sont représentés dans les ordinateurs. Au lieu de travailler directement avec la vraisemblance, qui est un nombre très petit, nous avons tendance à travailler avec le logarithme de la vraisemblance. Le logarithme de la vraisemblance est simplement le logarithme de la vraisemblance, ce qui a la propriété incroyable de transformer la multiplication en addition.

Le logarithme de la vraisemblance du modèle theta est la somme du logarithme de toutes les vraisemblances individuelles pour tous les points de données, comme indiqué dans la dernière ligne de l’équation à l’écran. La vraisemblance est une mesure qui nous donne une bonne adéquation pour une prévision probabiliste donnée. Elle nous indique à quel point il est probable que le modèle ait généré l’ensemble de données que nous observons. Si nous avons deux prévisions probabilistes en concurrence, et si nous mettons de côté tous les autres problèmes d’ajustement pour un moment, nous devrions choisir le modèle qui nous donne la plus grande vraisemblance ou le plus grand logarithme de vraisemblance, car plus c’est élevé, mieux c’est.

La vraisemblance est très intéressante car elle peut fonctionner dans des dimensions élevées sans complications, contrairement à la méthode de Monge-Kantorovich. Tant que nous avons un modèle qui nous donne une densité de probabilité locale, nous pouvons utiliser la vraisemblance, ou plus réaliste, le logarithme de la vraisemblance comme mesure.

Slide 12

De plus, dès que nous avons une mesure qui peut représenter la bonne adéquation, cela signifie que nous pouvons l’optimiser par rapport à cette même mesure. Tout ce qu’il faut, c’est un modèle avec au moins un degré de liberté, ce qui signifie essentiellement au moins un paramètre. Si nous optimisons ce modèle par rapport à la vraisemblance, notre mesure de bonne adéquation, nous espérons obtenir un modèle entraîné où nous avons appris à produire au moins une prévision probabiliste décente. C’est exactement ce qui est fait ici à l’écran.

Aux lignes un et deux, nous générons un ensemble de données fictif. Nous créons une table avec 2 000 lignes, puis à la ligne deux, nous générons 2 000 déviations, nos observations à partir d’une distribution de Poisson avec une moyenne de deux. Ainsi, nous avons nos 2 000 observations. À la ligne trois, nous commençons un bloc autodiff, qui fait partie du paradigme de la programmation différentiable. Ce bloc exécutera une descente de gradient stochastique et itérera de nombreuses fois sur toutes les observations dans la table d’observation. Ici, la table d’observation est la table T.

À la ligne quatre, nous déclarons le paramètre du modèle, appelé lambda. Nous spécifions que ce paramètre doit être exclusivement positif. Ce paramètre est ce que nous essaierons de redécouvrir grâce à la descente de gradient stochastique. À la ligne cinq, nous définissons la fonction de perte, qui est simplement moins le logarithme de la vraisemblance. Nous voulons maximiser la vraisemblance, mais le bloc autodiff essaie de minimiser la perte. Ainsi, si nous voulons maximiser le logarithme de la vraisemblance, nous devons ajouter ce signe moins devant le logarithme de la vraisemblance, ce que nous avons exactement fait.

Le paramètre lambda appris est affiché à la ligne six. Sans surprise, la valeur trouvée est très proche de la valeur deux, car nous avons commencé avec une distribution de Poisson avec une moyenne de deux. Nous avons créé un modèle de prévision probabiliste qui est également paramétrique et de la même forme, une distribution de Poisson. Nous voulions redécouvrir le paramètre unique de la distribution de Poisson, et c’est exactement ce que nous obtenons. Nous obtenons un modèle qui est à environ un pour cent de l’estimation originale.

Nous venons d’apprendre notre premier modèle de prévision probabiliste, et tout ce qu’il a fallu, c’est essentiellement trois lignes de code. Il s’agit évidemment d’un modèle très simple ; néanmoins, cela montre qu’il n’y a rien d’intrinsèquement compliqué dans la prévision probabiliste. Ce n’est pas votre prévision habituelle en termes de moyenne carrée, mais à part cela, avec les outils appropriés comme la programmation différentiable, ce n’est pas plus compliqué qu’une prévision ponctuelle classique.

Diapositive 13

La fonction log_likelihood.poisson que nous avons utilisée précédemment fait partie de la bibliothèque standard d’Envision. Cependant, il n’y a pas de magie ici. Regardons comment cette fonction est réellement implémentée sous le capot. Les deux premières lignes en haut nous donnent l’implémentation de la vraisemblance logarithmique de la distribution de Poisson. Une distribution de Poisson est entièrement caractérisée par son paramètre unique, lambda, et la fonction de vraisemblance logarithmique ne prend que deux arguments : le paramètre unique qui caractérise entièrement la distribution de Poisson et l’observation réelle. La formule que j’ai écrite est littéralement un matériel de manuel. C’est ce que vous obtenez lorsque vous implémentez la formule de manuel qui caractérise la distribution de Poisson. Il n’y a rien de fantaisiste ici.

Faites attention au fait que cette fonction est marquée avec le mot-clé autodiff. Comme nous l’avons vu dans la conférence précédente, le mot-clé autodiff garantit que la différenciation automatique peut circuler correctement à travers cette fonction. La vraisemblance logarithmique de la distribution de Poisson utilise également une autre fonction spéciale, log_gamma. La fonction log_gamma est le logarithme de la fonction gamma, qui est la généralisation de la fonction factorielle aux nombres complexes. Ici, nous n’avons besoin que de la généralisation de la fonction factorielle aux nombres réels positifs.

L’implémentation de la fonction log_gamma est légèrement verbeuse, mais c’est encore une fois un matériel de manuel. Elle utilise une approximation de fraction continue pour la fonction log_gamma. La beauté ici est que nous avons la différenciation automatique qui fonctionne pour nous tout le long. Nous commençons par le bloc autodiff, en appelant la fonction log_likelihood.poisson, qui est implémentée comme une fonction autodiff. Cette fonction, à son tour, appelle la fonction log_gamma, également implémentée avec le marqueur autodiff. Essentiellement, nous sommes capables de produire nos méthodes de prévision probabilistes en trois lignes de code parce que nous avons une bibliothèque standard bien conçue qui a été implémentée en tenant compte de la différenciation automatique.

Diapositive 14

Maintenant, passons au cas particulier des distributions discrètes unidimensionnelles. Ces distributions sont partout dans une supply chain et représentent notre point d’entrée dans la prévision probabiliste. Par exemple, si nous voulons prévoir les délais d’approvisionnement avec une granularité quotidienne, nous pouvons dire qu’il y a une certaine probabilité d’avoir un délai d’un jour, une autre probabilité d’avoir un délai de deux jours, trois jours, et ainsi de suite. Tout cela se construit en un histogramme de probabilités pour les délais d’approvisionnement. De même, si nous examinons la demande d’un SKU donné un jour donné, nous pouvons dire qu’il y a une probabilité d’observer zéro unité de demande, une unité de demande, deux unités de demande, et ainsi de suite.

Si nous regroupons toutes ces probabilités ensemble, nous obtenons un histogramme qui les représente. De même, si nous réfléchissons au niveau de stock d’un SKU, nous pourrions être intéressés à évaluer combien de stock il restera pour ce SKU donné à la fin de la saison. Nous pouvons utiliser une prévision probabiliste pour déterminer la probabilité que nous n’ayons aucune unité de stock restante à la fin de la saison, une unité de stock restante, deux unités, et ainsi de suite. Toutes ces situations correspondent au schéma d’être représentées par un histogramme avec des compartiments associés à chaque résultat discret du phénomène d’intérêt.

L’histogramme est la manière canonique de représenter une distribution discrète unidimensionnelle. Chaque compartiment est associé à la masse de probabilité pour le résultat discret. Cependant, en mettant de côté l’utilisation de la visualisation des données, les histogrammes sont un peu décevants. En effet, travailler avec des histogrammes est un peu difficile si nous voulons faire autre chose que visualiser ces distributions de probabilité. Nous avons essentiellement deux classes de problèmes avec les histogrammes : la première difficulté est liée aux ressources informatiques, et la deuxième classe de difficulté est liée à l’expressivité de programmation des histogrammes.

En termes de ressources informatiques, nous devons considérer que la quantité de mémoire nécessaire pour un histogramme est fondamentalement illimitée. Vous pouvez penser à un histogramme comme un tableau qui grandit autant que nécessaire. Lorsque vous traitez un seul histogramme, même un histogramme exceptionnellement grand d’un point de vue de la supply chain, la quantité de mémoire nécessaire n’est pas un problème pour un ordinateur moderne. Le problème se pose lorsque vous n’avez pas seulement un histogramme, mais des millions d’histogrammes pour des millions de SKUs dans un contexte de supply chain. Si chaque histogramme peut devenir assez grand, la gestion de ces histogrammes peut devenir un défi, surtout compte tenu du fait que les ordinateurs modernes ont tendance à offrir un accès mémoire non uniforme.

De même, la quantité de CPU nécessaire pour traiter ces histogrammes est également illimitée. Bien que les opérations sur les histogrammes soient principalement linéaires, le temps de traitement augmente à mesure que la quantité de mémoire augmente en raison de l’accès mémoire non uniforme. Par conséquent, il est très intéressant de fixer des limites strictes sur la quantité de mémoire et de CPU requise.

La deuxième difficulté avec les histogrammes est le manque d’une algèbre associée. Bien que vous puissiez effectuer une addition ou une multiplication des valeurs par compartiment lors de la considération de deux histogrammes, le faire ne donnera pas quelque chose qui a du sens lors de l’interprétation de l’histogramme en tant que représentation d’une variable aléatoire. Par exemple, si vous prenez deux histogrammes et effectuez une multiplication point par point, vous obtenez un histogramme qui n’a même pas une masse de un. Ce n’est pas une opération valide du point de vue d’une algèbre des variables aléatoires. Vous ne pouvez pas vraiment ajouter ou multiplier des histogrammes, vous êtes donc limité dans ce que vous pouvez faire avec eux.

Diapositive 15

Chez Lokad, l’approche que nous avons trouvée la plus pratique pour traiter ces distributions discrètes unidimensionnelles omniprésentes est d’introduire un type de données dédié. Le public est probablement familier avec les types de données courants qui existent dans la plupart des langages de programmation, tels que les entiers, les nombres à virgule flottante et les chaînes de caractères. Ce sont les types de données primitifs typiques que l’on trouve partout. Cependant, rien ne vous empêche d’introduire des types de données plus spécialisés qui conviennent particulièrement à nos besoins d’un point de vue de la supply chain. C’est exactement ce que Lokad a fait avec le type de données ranvar.

Le type de données ranvar est dédié aux distributions discrètes unidimensionnelles, et le nom est un raccourci pour variable aléatoire. Techniquement, d’un point de vue formel, le ranvar est une fonction de Z (l’ensemble de tous les entiers, positifs et négatifs) vers des probabilités, qui sont des nombres entre zéro et un. La masse totale de Z est toujours égale à un, car elle représente des distributions de probabilité.

D’un point de vue purement mathématique, certains pourraient soutenir que la quantité d’informations qui peut être intégrée dans une telle fonction peut devenir arbitrairement grande. C’est vrai ; cependant, la réalité est que, d’un point de vue de la supply chain, il existe une limite très claire à la quantité d’informations pertinentes qui peuvent être contenues dans un seul ranvar. Bien qu’il soit théoriquement possible de créer une distribution de probabilité qui nécessiterait des mégaoctets pour être représentée, aucune distribution de ce type n’existe qui soit pertinente pour les besoins de la supply chain.

Il est possible d’obtenir une limite supérieure de 4 kilo-octets pour le type de données ranvar. En fixant une limite sur la mémoire que ce ranvar peut prendre, nous obtenons également une limite supérieure en termes de puissance de calcul pour toutes les opérations, ce qui est très important. Au lieu de fixer naïvement une limite de 1 000 compartiments, Lokad introduit un schéma de compression avec le type de données ranvar. Cette compression est essentiellement une représentation avec perte des données d’origine, perdant ainsi en résolution et en précision. Cependant, l’idée est d’élaborer un schéma de compression qui fournit une représentation suffisamment précise des histogrammes, de sorte que le degré d’approximation introduit soit négligeable d’un point de vue de la supply chain.

Les détails du algorithme de compression associé au type de données ranvar dépassent le cadre de cette leçon. Cependant, il s’agit d’un algorithme de compression très simple qui est des ordres de grandeur plus simple que les types d’algorithmes de compression utilisés pour les images sur votre ordinateur. En tant qu’avantage secondaire de la limitation de la mémoire que ce ranvar peut prendre, nous obtenons également une limite supérieure en termes de puissance de calcul pour toutes les opérations, ce qui est très important. Enfin, avec le type de données ranvar, le point le plus important est que nous obtenons une algèbre de variables qui nous permet de réellement opérer sur ces types de données et de faire toutes sortes de choses que nous voulons faire avec des types de données primitifs, c’est-à-dire avoir toutes sortes de primitives pour les combiner de manière à répondre à nos besoins.

Diapositive 16

Pour illustrer ce que cela signifie de travailler avec des ranvars, considérons une situation de prévision du délai de livraison, plus précisément une prévision probabiliste d’un délai de livraison. À l’écran se trouve un court script Envision qui montre comment construire une telle prévision probabiliste. Aux lignes 1 à 5, nous introduisons la table T qui contient les quatre délais de livraison de variation, avec des valeurs de 11 jours, 10 jours, 13 jours et 90 jours. Bien que quatre observations soient très peu nombreuses, il est malheureusement très courant d’avoir un nombre très limité de points de données en ce qui concerne les observations de délai de livraison. En effet, si nous considérons un fournisseur étranger qui reçoit deux commandes d’achat par an, il faut deux ans pour collecter ces quatre points de données. Il est donc important d’avoir des techniques qui peuvent fonctionner même avec un ensemble d’observations incroyablement limité.

À la ligne 7, nous créons un ranvar en agrégeant directement les quatre observations. Ici, le terme “ranvar” qui apparaît à la ligne 7 est en fait un agrégateur qui prend une série de nombres en entrée et renvoie une seule valeur du type de données ranvar. Le résultat est affiché en haut à droite de l’écran, il s’agit d’un ranvar empirique.

Cependant, ce ranvar empirique n’est pas une représentation réaliste de la distribution réelle. Par exemple, bien que nous puissions observer un délai de livraison de 11 jours et un délai de livraison de 13 jours, il semble irréaliste de ne pas pouvoir observer un délai de livraison de 12 jours. Si nous interprétons ce ranvar comme une prévision probabiliste, cela signifierait que la probabilité d’observer un jour de livraison de 12 jours est nulle, ce qui semble incorrect. Il s’agit évidemment d’un problème de surajustement.

Pour remédier à cette situation, à la ligne 8, nous lissageons le ranvar d’origine en appelant la fonction “smooth”. La fonction de lissage remplace essentiellement le ranvar d’origine par un mélange de distributions. Pour chaque intervalle de la distribution d’origine, nous remplaçons l’intervalle par une distribution de Poisson dont la moyenne est centrée sur l’intervalle, pondérée en fonction des probabilités respectives des intervalles. Grâce à la distribution lissée, nous obtenons l’histogramme qui est affiché au milieu à droite de l’écran. Cela a déjà l’air beaucoup mieux ; nous n’avons plus de lacunes bizarres et nous n’avons plus de probabilité nulle au milieu. De plus, lorsque nous examinons la probabilité d’observer un délai de livraison de 12 jours, ce modèle nous donne une probabilité non nulle, ce qui semble beaucoup plus raisonnable. Il nous donne également une probabilité non nulle d’aller au-delà de 20 jours, et compte tenu du fait que nous avions quatre points de données et que nous avons déjà observé un délai de livraison de 19 jours, l’idée qu’un délai de livraison aussi élevé que 20 jours est possible semble très raisonnable. Ainsi, avec cette prévision probabiliste, nous avons une belle répartition qui représente une probabilité non nulle pour ces événements, ce qui est très bien.

Cependant, à gauche, nous avons quelque chose d’un peu étrange. Alors que cette distribution de probabilité peut se propager vers la droite, on ne peut pas en dire autant de la gauche. Si nous considérons que les délais de livraison que nous avons observés étaient les résultats des temps de transport, en raison du fait qu’il faut neuf jours pour que le camion arrive, il semble peu probable que nous puissions jamais observer un délai de livraison de trois jours. À cet égard, le modèle est assez irréaliste.

Ainsi, à la ligne 9, nous introduisons une variable aléatoire ajustée de manière conditionnelle en disant qu’elle doit être supérieure au plus petit délai de livraison jamais observé. Nous avons “min_of(T, x)” qui prend la plus petite valeur parmi les nombres de la table T, puis nous utilisons “max” pour faire le maximum entre une distribution et un nombre. Le résultat doit être supérieur à cette valeur. La variable aléatoire ajustée est affichée à droite en bas, et ici nous voyons notre prévision finale du délai de livraison. Le dernier semble être une prévision probabiliste très raisonnable du délai de livraison, compte tenu du fait que nous disposons d’un ensemble de données incroyablement limité avec seulement quatre points de données. Nous ne pouvons pas dire que c’est une excellente prévision probabiliste ; cependant, je soutiendrais que c’est une prévision de qualité de production, et ce type de techniques fonctionnerait bien en production, contrairement à une prévision ponctuelle moyenne qui sous-estimerait considérablement le risque de délais de livraison variables.

La beauté des prévisions probabilistes est que, bien qu’elles puissent être très rudimentaires, elles vous donnent déjà une certaine mesure du potentiel d’atténuation des décisions mal informées qui résulteraient de l’application naïve d’une prévision moyenne basée sur les données observées.

Slide 17

Plus généralement, les variables aléatoires supportent toute une gamme d’opérations : il est possible d’additionner, de soustraire et de multiplier des variables aléatoires, tout comme il est possible d’additionner, de soustraire et de multiplier des entiers. Sous le capot, parce que nous traitons de variables aléatoires discrètes en termes de sémantique, toutes ces opérations sont implémentées sous forme de convolutions. À l’écran, l’histogramme affiché en bas est obtenu par la multiplication de deux distributions de Poisson, respectivement de moyenne deux et trois. En supply chain, la multiplication de variables aléatoires est appelée convolution directe. Dans le contexte de la supply chain, la multiplication de deux variables aléatoires a du sens pour représenter, par exemple, les résultats que vous pouvez obtenir lorsque les clients recherchent les mêmes produits mais avec des multiplicateurs variables. Disons que nous avons une librairie qui sert deux cohortes de clients. D’un côté, nous avons la première cohorte composée d’étudiants, qui achètent une unité lorsqu’ils entrent dans le magasin. Dans cette librairie illustrative, nous avons une deuxième cohorte composée de professeurs, qui achètent 20 livres lorsqu’ils entrent dans le magasin.

Du point de vue de la modélisation, nous pourrions avoir une prévision probabiliste qui représente les taux d’arrivée dans la librairie des étudiants ou des professeurs. Cela nous donnerait la probabilité d’observer zéro client pour la journée, un client, deux clients, etc., révélant la distribution de probabilité d’observer un certain nombre de clients pour n’importe quel jour donné. La deuxième variable vous donnerait les probabilités respectives d’acheter un (étudiants) versus d’acheter 20 (professeurs). Pour avoir une représentation de la demande, il suffirait de multiplier ces deux variables aléatoires ensemble, ce qui donnerait un histogramme apparemment erratique qui reflète les multiplicateurs présents dans les habitudes de consommation de vos cohortes.

Slide 18

Les générateurs de Monte Carlo, ou simplement les générateurs, représentent une approche alternative aux prévisions probabilistes. Au lieu d’exhiber une distribution qui nous donne la densité de probabilité locale, nous pouvons exhiber un générateur qui, comme son nom l’indique, génère des résultats censés suivre implicitement les mêmes distributions de probabilité locales. Il y a une dualité entre les générateurs et les densités de probabilité, ce qui signifie que les deux sont essentiellement deux facettes de la même perspective.

Si vous avez un générateur, il est toujours possible de moyenner les résultats obtenus à partir de ce générateur pour reconstruire des estimations des densités de probabilité locales. Inversement, si vous avez des densités de probabilité locales, il est toujours possible de générer des déviations selon cette distribution. Fondamentalement, ces deux approches sont simplement différentes façons de considérer la nature probabiliste ou stochastique du phénomène que nous essayons de modéliser.

Le script à l’écran illustre cette dualité. À la ligne un, nous introduisons un bloc Monte Carlo, qui sera itéré par le système, tout comme les blocs d’auto-différenciation sont itérés à travers de nombreuses étapes de descente de gradient stochastique. Le bloc Monte Carlo sera exécuté 2 000 fois, et à partir de ce bloc, nous collecterons 2 000 déviations.

À la ligne deux, nous générons une déviation à partir d’une distribution de Poisson de moyenne trois, puis nous ajoutons un à la déviation. Essentiellement, nous obtenons un nombre aléatoire à partir de cette distribution de Poisson, puis nous ajoutons un. À la ligne trois, nous collectons cette déviation dans L1, qui agit comme un accumulateur pour l’agrégateur ranvar. Il s’agit du même agrégateur que celui que nous avons introduit précédemment pour notre exemple de délai de livraison. Ici, nous collectons toutes ces observations dans L1, ce qui nous donne une distribution unidimensionnelle obtenue par un processus Monte Carlo. À la ligne cinq, nous construisons la même distribution discrète unidimensionnelle, mais cette fois-ci, nous le faisons avec l’algèbre des variables aléatoires. Ainsi, nous utilisons simplement Poisson moins trois et ajoutons un. À la ligne cinq, il n’y a pas de processus Monte Carlo en cours ; il s’agit d’une question pure de probabilités discrètes et de convolutions.

Lorsque nous comparons les deux distributions visuellement aux lignes sept et huit, nous constatons qu’elles sont presque identiques. Je dis “presque” parce que, bien que nous utilisions 2 000 itérations, ce qui est beaucoup, ce n’est pas infini. Les écarts entre les probabilités exactes que vous obtenez avec ranvar et les probabilités approximatives que vous obtenez avec le processus Monte Carlo sont encore perceptibles, bien que pas importants.

Les générateurs sont parfois appelés simulateurs, mais ne vous trompez pas, il s’agit de la même chose. Chaque fois que vous avez un simulateur, vous avez un processus générateur qui sous-tend implicitement un processus de prévision probabiliste. Chaque fois que vous avez un simulateur ou un générateur impliqué, la question qui devrait vous préoccuper est : quelle est la précision de cette simulation ? Elle n’est pas précise par conception, tout comme il est tout à fait possible d’avoir des prévisions complètement inexactes, probabilistes ou non. Vous pouvez très facilement obtenir une simulation complètement inexacte.

Avec les générateurs, nous voyons que les simulations ne sont qu’un moyen de considérer la perspective de prévision probabiliste, mais il s’agit plus d’un détail technique. Cela ne change rien au fait que, finalement, vous voulez avoir quelque chose qui est une représentation précise du système que vous essayez de caractériser avec votre prévision, probabiliste ou non.

Slide 19

L’approche générative n’est pas seulement très utile, comme nous le verrons avec un exemple spécifique dans une minute, mais elle est aussi conceptuellement plus facile à comprendre, du moins légèrement, par rapport à l’approche avec les densités de probabilité. Cependant, l’approche Monte Carlo n’est pas non plus sans technicité. Il y a quelques éléments nécessaires si vous voulez rendre cette approche viable dans un contexte de production pour une chaîne d’approvisionnement réelle du monde réel.

Tout d’abord, les générateurs doivent être rapides. Monte Carlo est toujours un compromis entre le nombre d’itérations que vous souhaitez avoir et le nombre d’itérations que vous pouvez vous permettre, compte tenu des ressources informatiques disponibles. Oui, les ordinateurs modernes ont beaucoup de puissance de traitement, mais les processus Monte Carlo peuvent être incroyablement gourmands en ressources. Vous voulez quelque chose qui soit, par défaut, super rapide. Si nous revenons aux ingrédients introduits dans la deuxième conférence du quatrième chapitre, nous avons des fonctions très rapides comme ExhaustShift ou WhiteHash qui sont essentielles à la construction des primitives qui vous permettent de générer des générateurs aléatoires élémentaires qui sont super rapides. Vous en avez besoin, sinon vous allez avoir des difficultés. Deuxièmement, vous devez distribuer votre exécution. L’implémentation naïve d’un programme Monte Carlo consiste simplement à avoir une boucle qui itère séquentiellement. Cependant, si vous n’utilisez qu’un seul CPU pour répondre à vos besoins en Monte Carlo, essentiellement, vous revenez à la puissance de calcul qui caractérisait les ordinateurs il y a deux décennies. Ce point a été abordé lors de la toute première conférence du quatrième chapitre. Au cours des deux dernières décennies, les ordinateurs sont devenus plus puissants, mais c’était principalement en ajoutant des CPU et des degrés de parallélisation. Vous devez donc avoir une perspective distribuée pour vos générateurs.

Enfin, l’exécution doit être déterministe. Qu’est-ce que cela signifie ? Cela signifie que si le même code est exécuté deux fois, il doit vous donner exactement les mêmes résultats. Cela peut sembler contre-intuitif car nous utilisons des méthodes aléatoires. Néanmoins, le besoin de déterminisme est apparu très rapidement. Il a été découvert de manière douloureuse dans les années 90 lorsque la finance a commencé à utiliser des générateurs Monte Carlo pour leurs prix. La finance s’est engagée dans la voie de la prévision probabiliste il y a déjà un certain temps et a fait un usage intensif des générateurs Monte Carlo. L’une des choses qu’ils ont apprises, c’est que si vous n’avez pas de déterminisme, il devient presque impossible de reproduire les conditions qui ont généré un bogue ou un crash. Du point de vue de la chaîne d’approvisionnement, les erreurs de calcul des bons de commande peuvent être extrêmement coûteuses.

Si vous voulez atteindre un certain degré de préparation à la production pour le logiciel qui régit votre chaîne d’approvisionnement, vous devez avoir cette propriété déterministe chaque fois que vous traitez avec Monte Carlo. Attention, de nombreuses solutions open source proviennent du milieu universitaire et ne se soucient pas du tout de la préparation à la production. Assurez-vous que lorsque vous traitez avec Monte Carlo, votre processus est super rapide par conception, distribué par conception et déterministe, afin que vous ayez une chance de diagnostiquer les bogues qui se produiront inévitablement au fil du temps dans votre configuration de production.

Nous avons vu une situation où un générateur a été introduit pour reproduire ce qui était autrement fait avec un ranvar. En règle générale, chaque fois que vous pouvez vous en sortir avec seulement des densités de probabilité avec des variables aléatoires sans impliquer Monte Carlo, c’est mieux. Vous obtenez des résultats plus précis et vous n’avez pas à vous soucier de la stabilité numérique qui est toujours un peu délicate avec Monte Carlo. Cependant, l’expressivité de l’algèbre des variables aléatoires est limitée, et c’est là que Monte Carlo brille vraiment. Ces générateurs sont plus expressifs car ils vous permettent d’appréhender des situations qui ne peuvent pas être traitées avec une simple algèbre des variables aléatoires.

Illustrons cela avec une situation de supply chain. Considérons un seul SKU avec un niveau de stock initial, une prévision probabiliste de la demande et une période d’intérêt s’étendant sur trois mois, avec une livraison entrante au milieu de la période. Nous supposons que la demande est soit servie immédiatement à partir du stock disponible, soit perdue à jamais. Nous voulons connaître le niveau de stock prévu à la fin de la période pour le SKU, car cela nous aidera à décider du risque que nous avons en termes de stocks morts.

La situation est trompeuse car elle a été conçue de manière à ce qu’il y ait une troisième chance de rupture de stock en plein milieu de la période. L’approche naïve consisterait à prendre le niveau de stock initial, la distribution de la demande pour toute la période, et à soustraire la demande du niveau de stock, ce qui donnerait le niveau de stock restant. Cependant, cela ne tient pas compte du fait que nous pourrions perdre une partie importante de la demande si nous avons une rupture de stock alors que le réapprovisionnement est encore en attente. Faire de manière naïve sous-estimerait la quantité de stock que nous aurons à la fin de la période et surestimerait la quantité de demande qui sera servie.

Le script affiché modélise l’occurrence des ruptures de stock afin que nous puissions avoir un estimateur correct du niveau de stock pour ce SKU à la fin de la période. Des lignes 1 à 10, nous définissons les données fictives qui caractérisent notre modèle. Les lignes 3 à 6 contiennent les paramètres du modèle ISSM. Nous avons déjà vu le modèle ICSM dans le tout premier cours de ce cinquième chapitre. Essentiellement, ce modèle génère une trajectoire de demande avec un point de données par jour. La période d’intérêt est définie dans la table des jours, et nous avons les paramètres pour cette trajectoire au tout début.

Dans les cours précédents, nous avons introduit le modèle AICSM et les méthodes nécessaires à travers la programmation différentiable pour apprendre ces paramètres. Aujourd’hui, nous utilisons le modèle, en supposant que nous avons appris tout ce dont nous avons besoin. À la ligne 7, nous définissons le stock initial disponible, qui serait généralement obtenu à partir de l’ERP ou du WMS. Aux lignes 9 et 10, nous définissons la quantité et la date de réapprovisionnement. Ces points de données seraient généralement obtenus sous la forme d’un délai estimé d’arrivée donné par le fournisseur et stocké dans l’ERP. Nous supposons que la date de livraison est parfaitement connue ; cependant, il serait facile de remplacer cette date unique par une prévision probabiliste du délai de livraison.

Des lignes 12 à 21, nous avons le modèle ISSM qui génère la trajectoire de demande. Nous sommes dans une boucle Monte Carlo, et pour chaque itération Monte Carlo, nous itérons sur chaque jour de la période d’intérêt. L’itération des jours commence à la ligne 13. Nous avons la mécanique de l’ESSM en cours, mais aux lignes 19 et 20, nous mettons à jour la variable en stock. La variable en stock ne fait pas partie du modèle ISSM ; c’est quelque chose en plus. À la ligne 19, nous disons que le stock en main est le stock en main d’hier plus la livraison entrante, qui sera nulle pour la plupart des jours et de cinq unités pour le 13 septembre. Ensuite, à la ligne 20, nous mettons à jour le stock en main en disant qu’un certain nombre d’unités sont consommées par la demande du jour, et nous avons ce max 0 pour dire que le niveau de stock ne peut pas aller dans les négatifs.

Enfin, nous collectons le stock final en main à la ligne 21, et à la ligne 23, ce stock final en main est affiché. Il s’agit de l’histogramme que vous voyez à droite de l’écran. Ici, nous voyons une distribution avec une forme très irrégulière. Cette forme ne peut pas être obtenue par l’algèbre des variables aléatoires. Les générateurs sont incroyablement expressifs ; cependant, vous ne devez pas confondre l’expressivité de ces générateurs avec la précision. Bien que les générateurs soient incroyablement expressifs, il n’est pas trivial d’évaluer la précision de tels générateurs. Ne vous trompez pas, chaque fois que vous avez un générateur ou un simulateur en jeu, vous avez une prévision probabiliste en jeu, et les simulations peuvent être dramatiquement inexactes, tout comme toute prévision, probabiliste ou non.

Slide 20

Cela a déjà été une longue conférence, et pourtant il y a encore de nombreux sujets que je n’ai même pas abordés aujourd’hui. La prise de décision, par exemple, si tous les futurs sont possibles, comment décidons-nous de quoi que ce soit ? Je n’ai pas répondu à cette question, mais elle sera abordée dans la prochaine conférence.

Les dimensions supérieures sont également importantes à prendre en compte. Une distribution unidimensionnelle est un point de départ, mais une chaîne d’approvisionnement a besoin de plus. Par exemple, si nous manquons de stock pour un SKU donné, nous pouvons connaître une cannibalisation, où les clients se tournent naturellement vers un substitut. Nous aimerions modéliser cela, même de manière rudimentaire.

Les constructions d’ordre supérieur jouent également un rôle. Comme je l’ai dit, prévoir la demande n’est pas comme prévoir les mouvements des planètes. Nous avons des effets auto-prophétiques partout. À un moment donné, nous voulons prendre en compte et intégrer nos politiques de tarification et de réapprovisionnement des stocks. Pour cela, nous avons besoin de constructions d’ordre supérieur, ce qui signifie qu’avec une politique donnée, vous obtenez une prévision probabiliste du résultat, mais vous devez injecter la politique dans les constructions d’ordre supérieur.

De plus, maîtriser les prévisions probabilistes implique de nombreuses recettes numériques et une expertise métier pour savoir quelles distributions sont les plus susceptibles de s’adapter à certaines situations. Dans cette série de conférences, nous présenterons d’autres exemples plus tard.

Enfin, il y a le défi du changement. La prévision probabiliste est un changement radical par rapport aux pratiques courantes de la chaîne d’approvisionnement. Souvent, les aspects techniques liés aux prévisions probabilistes ne représentent qu’une petite partie du défi. La partie difficile consiste à réinventer l’organisation elle-même, afin qu’elle puisse commencer à utiliser ces prévisions probabilistes au lieu de s’appuyer sur des prévisions ponctuelles, qui relèvent essentiellement de la pensée magique. Tous ces éléments seront abordés dans les prochaines conférences, mais cela prendra du temps car nous avons beaucoup de choses à couvrir.

Slide 21

En conclusion, les prévisions probabilistes représentent un changement radical par rapport à la perspective des prévisions ponctuelles, où nous nous attendons à un certain consensus sur le seul avenir qui est censé se réaliser. La prévision probabiliste est basée sur l’observation que l’incertitude de l’avenir est irréductible. Un siècle de science des prévisions a démontré que toutes les tentatives visant à obtenir des prévisions précises ont échoué. Ainsi, nous sommes confrontés à de nombreux futurs indéfinis. Cependant, les prévisions probabilistes nous donnent des techniques et des outils pour quantifier et évaluer ces futurs. La prévision probabiliste est une réalisation importante. Il a fallu près d’un siècle pour accepter l’idée que la prévision économique n’était pas comme l’astronomie. Alors que nous pouvons prédire avec une grande précision la position exacte d’une planète dans un siècle, nous n’avons aucun espoir d’atteindre quelque chose d’équivalent dans le domaine des chaînes d’approvisionnement. L’idée d’avoir une seule prévision pour tout régenter ne reviendra pas. Pourtant, de nombreuses entreprises s’accrochent encore à l’espoir qu’à un moment donné, la seule et vraie prévision précise sera réalisée. Après un siècle de tentatives, cela relève essentiellement de la pensée magique.

Avec les ordinateurs modernes, cette perspective d’un seul avenir n’est pas la seule perspective en ville. Nous avons des alternatives. Les prévisions probabilistes existent depuis les années 90, donc cela fait trois décennies. Chez Lokad, nous utilisons les prévisions probabilistes pour piloter les chaînes d’approvisionnement en production depuis plus d’une décennie. Ce n’est peut-être pas encore courant, mais ce n’est pas de la science-fiction. Cela fait trois décennies que de nombreuses entreprises dans le domaine de la finance l’utilisent, et une décennie dans le monde de la chaîne d’approvisionnement.

Bien que les prévisions probabilistes puissent sembler intimidantes et très techniques, avec les bons outils, cela ne représente que quelques lignes de code. Il n’y a rien de particulièrement difficile ou complexe dans les prévisions probabilistes, du moins par rapport à d’autres types de prévisions. Le plus grand défi en matière de prévision probabiliste est de renoncer au confort associé à l’illusion que l’avenir est parfaitement sous contrôle. L’avenir n’est pas parfaitement sous contrôle et ne le sera jamais, et tout bien considéré, c’est probablement mieux ainsi.

Slide 22

Cela conclut cette conférence pour aujourd’hui. La prochaine fois, le 6 avril, je présenterai la prise de décision dans la gestion des stocks de détail, et nous verrons comment les prévisions probabilistes qui ont été présentées aujourd’hui peuvent être mises à profit pour piloter une décision de base de la chaîne d’approvisionnement, à savoir le réapprovisionnement des stocks dans un réseau de vente au détail. La conférence aura lieu le même jour de la semaine, le mercredi, à la même heure, 15 heures, et ce sera le premier mercredi d’avril.

Question: Pouvons-nous optimiser la résolution sur la précision par rapport au volume de RAM pour Envision?

Oui, absolument, bien que pas dans Envision lui-même. C’est un choix que nous avons fait dans la conception d’Envision. Mon approche en ce qui concerne les scientifiques de la chaîne d’approvisionnement est de les libérer des détails techniques de bas niveau. Les 4 kilo-octets d’Envision représentent beaucoup d’espace, permettant une représentation précise de la situation de votre chaîne d’approvisionnement. Ainsi, l’approximation que vous perdez en termes de résolution et de précision est négligeable.

Bien sûr, en ce qui concerne la conception de votre algorithme de compression, il y a de nombreux compromis à prendre en compte. Par exemple, les compartiments qui sont très proches de zéro doivent avoir une résolution parfaite. Si vous voulez avoir la probabilité d’observer zéro unité de demande, vous ne voulez pas que votre approximation regroupe les compartiments pour zéro demande, une unité et deux unités. Cependant, si vous regardez les compartiments pour la probabilité d’observer 1 000 unités de demande, regrouper 1 000 et 1 001 unités de demande est probablement acceptable. Ainsi, il existe de nombreuses astuces pour développer un algorithme de compression qui correspond vraiment aux exigences de la chaîne d’approvisionnement. Cela est beaucoup plus simple par rapport à ce qui se passe pour la compression d’images. Selon moi, un outil correctement conçu abstrairait essentiellement le problème pour les scientifiques de la chaîne d’approvisionnement. C’est trop bas niveau et vous n’avez pas besoin de micro-optimiser dans la plupart des cas. Si vous êtes Walmart et que vous avez non seulement 1 million de SKUs, mais plusieurs centaines de millions de SKUs, alors la micro-optimisation peut avoir du sens. Cependant, à moins que vous ne parliez de chaînes d’approvisionnement extrêmement grandes, je pense que vous pouvez avoir quelque chose qui est suffisamment bon pour que l’impact sur les performances d’une optimisation complète soit négligeable.

Question: Quels sont les considérations pratiques à prendre en compte du point de vue de la chaîne d’approvisionnement lors de l’optimisation de ces paramètres?

En ce qui concerne les prévisions probabilistes dans la chaîne d’approvisionnement, avoir une précision supérieure à une sur 100 000 est généralement négligeable, simplement parce que vous n’avez jamais assez de données pour avoir une précision en termes d’estimation de vos probabilités qui soit plus granulaire qu’une partie sur 100 000.

Question: Quel secteur bénéficie le plus de l’approche de prévision probabiliste?

La réponse courte est que plus vos modèles sont erratiques et irréguliers, plus les avantages sont importants. Si vous avez une demande intermittente, vous avez de grands avantages ; si vous avez une demande erratique, vous avez de grands avantages ; si vous avez des délais de livraison très variables et des chocs erratiques dans vos chaînes d’approvisionnement, vous bénéficiez le plus. À l’autre extrémité du spectre, par exemple, si nous examinions la chaîne d’approvisionnement de la distribution d’eau, la consommation d’eau est extrêmement régulière et n’a pratiquement jamais de gros chocs, seulement de petits chocs au maximum. Ce genre de problème ne bénéficie pas de l’approche probabiliste. L’idée est qu’il y a quelques situations où les prévisions ponctuelles classiques donnent des prévisions très précises. Si vous êtes dans une situation où vos prévisions pour tous vos produits ont une erreur de moins de cinq pour cent lorsqu’on regarde vers l’avenir, alors vous n’avez pas besoin de prévisions probabilistes ; vous êtes dans une situation où avoir une prévision vraiment précise fonctionne réellement. Cependant, si vous êtes comme de nombreuses entreprises dans des situations où votre précision de prévision est très faible, avec une divergence de 30% ou plus, alors vous bénéficiez grandement des prévisions probabilistes. Au fait, lorsque je parle d’une erreur de prévision de 30%, je fais toujours référence à la prévision très désagrégée. De nombreuses entreprises vous diront que leurs prévisions sont précises à 5%, mais si vous agrégez tout, cela peut être une perception très trompeuse de la précision de vos prévisions. La précision de vos prévisions n’a d’importance qu’au niveau le plus désagrégé, généralement au niveau du SKU et du niveau quotidien, car vos décisions sont prises au niveau du SKU et du niveau quotidien. Si au niveau du SKU et du niveau quotidien, vous pouvez obtenir vos prévisions les plus désagrégées avec une précision de 5%, alors vous n’avez pas besoin de prévisions probabilistes. Cependant, si vous observez des inexactitudes à deux chiffres en termes de pourcentage, alors vous bénéficierez grandement des prévisions probabilistes.

Question : Étant donné que les délais de livraison peuvent être saisonniers, décomposeriez-vous les prévisions de délai de livraison en plusieurs prévisions distinctes, chacune pour chaque saison distincte, afin d’éviter d’examiner une distribution multimodale ?

C’est une bonne question. L’idée ici est que vous construiriez généralement un modèle paramétrique pour vos délais de livraison qui inclut un profil de saisonnalité. Traiter la saisonnalité des délais de livraison n’est pas fondamentalement très différent de traiter toute autre cyclicité, comme nous l’avons fait dans la précédente leçon pour la demande. La façon typique n’est pas de construire plusieurs modèles, car comme vous l’avez souligné à juste titre, si vous avez plusieurs modèles, vous observerez toutes sortes de sauts bizarres lorsque vous passez d’une modalité à l’autre. Il est généralement préférable d’avoir un seul modèle avec un profil de saisonnalité au milieu du modèle. Ce serait comme une décomposition paramétrique où vous avez un vecteur qui vous donne l’effet hebdomadaire qui impacte le délai de livraison à une certaine semaine de l’année. Peut-être aurons-nous le temps, lors d’une prochaine leçon, de donner un exemple plus détaillé à ce sujet.

Question : Est-ce que la prévision probabiliste est une bonne approche lorsque l’on souhaite prévoir une demande intermittente ?

Absolument. En fait, je pense que lorsque vous avez une demande intermittente, la prévision probabiliste n’est pas seulement une bonne méthode, mais la prévision ponctuelle classique est tout simplement absurde. Avec la prévision classique, vous auriez généralement du mal à traiter tous ces zéros. Que faites-vous de ces zéros ? Vous vous retrouvez avec une valeur très faible et fractionnaire, ce qui n’a pas vraiment de sens. Avec une demande intermittente, la question à laquelle vous voulez vraiment répondre est : Mon stock est-il suffisamment important pour répondre à ces pics de demande qui se produisent de temps en temps ? Si vous utilisez une prévision moyenne, vous ne le saurez jamais.

Juste pour revenir à l’exemple de la librairie, si vous dites que dans une semaine donnée, vous observez en moyenne une unité de demande par jour, combien de livres devez-vous avoir en stock dans votre librairie pour avoir une qualité de service élevée ? Supposons que la librairie soit réapprovisionnée chaque jour. Si les seules personnes que vous servez sont des étudiants, alors si vous avez en moyenne une unité de demande chaque jour, avoir trois livres en stock donnera une qualité de service très élevée. Cependant, si de temps en temps, un professeur vient et recherche 20 livres d’un coup, alors votre qualité de service, si vous n’avez que trois livres en magasin, sera médiocre car vous ne pourrez jamais servir aucun des professeurs. C’est généralement le cas avec la demande intermittente - ce n’est pas seulement le fait que la demande est intermittente, mais aussi que certains pics de demande peuvent varier considérablement en termes d’ampleur. C’est là que la prévision probabiliste brille vraiment, car elle peut capturer la structure fine de la demande au lieu de tout regrouper en moyennes où toute cette structure fine est perdue.

Question : Si nous remplaçons le délai de livraison par une distribution, la pointe représentée par une courbe en cloche lisse sur la première diapositive pour le générateur ?

Dans une certaine mesure, si vous randomisez davantage, vous avez tendance à répartir les choses. Sur la première diapositive concernant le générateur, nous devrions exécuter l’expérience avec différents paramètres pour voir ce que nous obtenons. L’idée est que lorsque nous voulons remplacer le délai de livraison par une distribution, nous le faisons parce que nous avons une idée du problème qui nous dit que le délai de livraison varie. Si nous avons une confiance absolue en notre fournisseur et qu’il a été incroyablement fiable, il est parfaitement acceptable de dire que l’ETA (estimation du temps d’arrivée) est ce qu’il est et est une estimation presque parfaite de la réalité. Cependant, si nous avons constaté que dans le passé, les fournisseurs étaient parfois erratiques ou manquaient la cible, il est préférable de remplacer le délai de livraison par une distribution.

Introduire une distribution pour remplacer le délai de livraison ne lisse pas nécessairement les résultats que vous obtenez à la fin ; cela dépend de ce que vous regardez. Par exemple, si vous regardez le cas le plus extrême de surstock, un délai de livraison variable peut même aggraver le risque d’avoir un stock mort. Pourquoi ? Si vous avez un produit très saisonnier et un délai de livraison variable, et que le produit arrive après la fin de la saison, vous vous retrouvez avec un produit qui est hors saison, ce qui amplifie le risque d’avoir un stock mort à la fin de la saison. Donc, c’est délicat. Le fait de transformer une variable en sa remplaçante probabiliste ne lisse pas naturellement ce que vous observerez ; parfois, cela peut rendre la distribution encore plus nette. Donc, la réponse est : cela dépend.

Excellent, je pense que c’est tout pour aujourd’hui. À la prochaine fois.