Le stock de sécurité est une méthode d’optimisation des stocks qui indique combien de stocks doivent être conservés au-delà de la demande prévue afin d’atteindre un objectif de niveau de service donné. Le stock supplémentaire agit comme un tampon de “sécurité” - d’où le nom - pour protéger l’entreprise contre les fluctuations futures prévues. La formule du stock de sécurité dépend à la fois de la demande future prévue et du délai de livraison futur prévu. L’incertitude est supposée être normalement distribuée pour les deux facteurs. La formule du stock de sécurité est omniprésente dans la plupart des systèmes de gestion des stocks, y compris les plus notables ERP et MRP.
Mise à jour juillet 2020 : L’approche détaillée ci-dessous est une approche “classique” de la supply chain, malheureusement, elle s’avère également être très dysfonctionnelle. En particulier, ni la demande future ni le délai de livraison futur ne sont normalement distribués (c’est-à-dire qu’ils ne suivent pas une distribution gaussienne). De plus, cette perspective ignore complètement le fait que tous les SKU qui peuvent être commandés ou produits par l’entreprise sont en concurrence pour les mêmes ressources. Nous vous conseillons vivement de ne pas utiliser de modèle de stock de sécurité dans le cadre de véritables supply chains.
Public cible : Ce document s’adresse principalement aux professionnels de la supply chain dans le secteur de la vente au détail ou de la fabrication. Cependant, ce document est également utile aux éditeurs de logiciels de comptabilité / ERP / eCommerce qui souhaitent étendre leurs applications avec des fonctionnalités de gestion des stocks.
Nous avons essayé de limiter au maximum les exigences mathématiques, mais nous ne pouvons pas éviter complètement les formules, car le but précis de ce document est d’être un guide pratique qui explique comment calculer le stock de sécurité.
Téléchargement : calculate-safety-stocks.xls (Feuille de calcul Microsoft Excel)
Introduction
La gestion des stocks est un compromis financier entre les coûts de stock et les coûts de rupture de stock. Plus il y a de stocks, plus il faut de capital de travail et plus la dépréciation des stocks est importante. D’un autre côté, si vous n’avez pas suffisamment de stocks, vous risquez des ruptures de stock, des ventes potentielles manquées et la possibilité d’interrompre l’ensemble du processus de production.
Le stock de l’inventaire dépend essentiellement de deux facteurs :
- la demande prévue : la quantité d’articles qui seront consommés ou achetés.
- le délai de livraison : le délai entre la décision de réapprovisionnement et la disponibilité renouvelée.
Cependant, ces deux facteurs sont soumis à des incertitudes :
- variations de la demande : les comportements des clients peuvent évoluer de manière plutôt imprévisible.
- variations du délai de livraison : les fournisseurs ou les transporteurs peuvent être confrontés à des difficultés imprévues.
La décision du niveau de stock de sécurité équivaut implicitement à faire un compromis entre ces coûts en tenant compte des incertitudes.
L’équilibre entre les coûts d’inventaire et les coûts de rupture de stock dépend beaucoup de l’activité de l’entreprise. Ainsi, au lieu de considérer directement ces coûts, nous allons maintenant introduire la notion classique de taux de service.
Le taux de service exprime la probabilité qu’un certain niveau de stock de sécurité ne conduise pas à une rupture de stock. Naturellement, lorsque les stocks de sécurité augmentent, le taux de service augmente également. Lorsque les stocks de sécurité deviennent très importants, le taux de service tend vers 100% (c’est-à-dire une probabilité nulle de rupture de stock).
Le choix du taux de service, c’est-à-dire la probabilité acceptable de rupture de stock, dépasse le cadre de ce guide, mais nous avons un guide séparé sur le calcul des niveaux de service optimaux.
Modèle de réapprovisionnement des stocks
Le point de commande est la quantité de stock qui doit déclencher une commande. S’il n’y avait aucune incertitude (c’est-à-dire si la demande future était parfaitement connue et l’approvisionnement parfaitement fiable), le point de commande serait simplement égal à la demande prévue totale pendant le délai de livraison, également appelée demande pendant le délai de livraison.
En pratique, en raison des incertitudes, nous avons
point de commande = demande pendant le délai de livraison + stock de sécurité
Si nous supposons que les prévisions ne sont pas biaisées (statistiquement parlant), ne pas avoir de stock de sécurité conduirait à un taux de service de 50%. En effet, des prévisions non biaisées signifient qu’il y a autant de chances que la demande future soit supérieure ou inférieure à la demande pendant le délai de livraison (rappelez-vous que la demande pendant le délai de livraison n’est qu’une valeur prévue).
Attention : les prévisions peuvent être non biaisées sans être exactes. Le biais indique une erreur systématique du modèle de prévision (par exemple, surestimer toujours la demande de 20%).
Distribution normale de l’erreur
À ce stade, nous avons besoin d’une manière de représenter l’incertitude de la demande pendant le délai de livraison. Dans ce qui suit, nous supposerons que l’erreur est distribuée normalement, voir l’image ci-dessous.
Notes statistiques : cette hypothèse de distribution normale n’est pas totalement arbitraire. Dans certaines situations, les estimateurs statistiques convergent vers une distribution normale, comme le prévoit le théorème central limite. Mais ces considérations dépassent le cadre de ce guide.
Une distribution normale est définie uniquement par deux paramètres : sa moyenne et sa variance. Étant donné que nous supposons que les prévisions sont non biaisées, nous supposons que la moyenne de la distribution d’erreur est nulle, ce qui ne signifie pas que nous supposons une erreur nulle.
Déterminer la variance de l’erreur de prévision est une tâche plus délicate. Lokad, comme la plupart des outils de prévision, fournit des estimations de MAPE (Mean Absolute Percentage Error) associées à ses prévisions. Pour des raisons de complétude, nous expliquerons comment des heuristiques simples peuvent être utilisées pour résoudre ce problème.
En particulier, la variance au sein des données historiques peut être utilisée comme une bonne heuristique pour estimer la variance de l’erreur de prévision. David Piasecki suggère également d’utiliser la demande prévue au lieu de la demande moyenne dans l’expression de la variance, c’est-à-dire
où $$E$$ est l’opérateur moyenne, $$y_t$$ est la demande historique pour la période $$t$$ (typiquement la quantité de ventes) et $$y’$$ la demande prévue.
L’idée clé derrière cette hypothèse est que l’erreur de prévision est très souvent corrélée à la quantité de variation attendue : plus les variations à venir sont grandes, plus l’erreur dans les prévisions est grande.
En réalité, le calcul de cette variance d’erreur implique quelques subtilités qui seront traitées plus en détail ci-dessous.
Expression du stock de sécurité
À ce stade, nous avons déterminé à la fois la moyenne et la variance, donc la distribution d’erreur est connue. Nous devons maintenant calculer le niveau d’erreur acceptable au sein de cette distribution. Ci-dessus, nous avons introduit la notion de taux de service (en pourcentage) pour cela.
Notes : Nous supposons un délai de livraison statique. Cependant, une approche très similaire peut être utilisée pour un délai de livraison variable. Voir
Afin de convertir le niveau de service en un niveau d’erreur également appelé le facteur de service, nous devons utiliser la distribution normale cumulative inverse (parfois appelée distribution normale inverse) (voir NORMSINV pour la fonction Excel correspondante). Bien que cela puisse sembler compliqué, ce ne l’est pas, nous vous suggérons de jeter un coup d’œil à l’applet de distribution normale pour avoir une meilleure compréhension visuelle. Comme vous pouvez le voir, la fonction cumulative transforme le pourcentage en une aire sous la courbe, le seuil de l’axe X correspondant à la valeur du facteur de service.
Intuitivement, nous calculons
stock de sécurité = écart type de l'erreur * facteur de service
Plus formellement, soit $$S$$ le stock de sécurité, nous avons
où $$\sigma$$ est l’écart type (c’est-à-dire la racine carrée de $$\sigma^2$$ la variance définie ci-dessus), $$cdf$$ la distribution normale cumulative normalisée (moyenne nulle et variance égale à un) et $$P$$ le niveau de service.
En se rappelant que
point de commande = demande pendant le délai de livraison + stock de sécurité
Soit $$R$$ le point de commande, nous avons
Correspondance entre le délai de livraison et la période de prévision
Jusqu’à présent, nous avons simplement supposé que pour un certain délai de livraison, nous étions directement en mesure de produire la prévision de la demande future correspondante. En pratique, cela ne fonctionne pas exactement de cette manière. L’analyse des données historiques commence généralement par l’agrégation des données en périodes de temps (semaines ou mois généralement).
Cependant, la période choisie peut ne pas correspondre exactement au délai de livraison ; par conséquent, certains calculs supplémentaires sont nécessaires pour exprimer la demande pendant le délai de livraison et sa variance associée (en supposant toujours une distribution normale pour l’erreur de prévision, comme détaillé dans la section précédente).
Intuitivement, la demande pendant le délai de livraison peut être calculée comme la somme des valeurs prévues pour les périodes futures qui se chevauchent avec le segment du délai de livraison. Il faut veiller à ajuster correctement la dernière période prévue.
Formellement, soit $$T$$ la période et $$L$$ le délai de livraison. Nous écrivons
où $$k$$ est un entier et $$0 ≤ α < 1$$. Soit $$D$$ la demande pendant le délai de livraison. Alors, nous avons l’expression finale pour la demande pendant le délai de livraison
où $$y’_n$$ est la demande prévue pour la $$n^{ème}$$ période à l’avenir.
En supposant les mêmes hypothèses de distribution normale, nous pouvons calculer la variance de l’erreur de prévision comme
où $$y’$$ est la prévision moyenne par période
Cependant, $$\sigma^2$$ est calculé ici comme une variance par période alors que nous aurions besoin d’une variance correspondant au délai de livraison. Soit $$\sigma_{L}^2$$ la variance ajustée par délai de livraison, nous avons
Enfin, nous pouvons réexprimer le point de commande comme
Utilisation d’Excel pour calculer le point de commande
Cette section détaille comment calculer le point de commande avec Microsoft Excel. Nous vous suggérons de consulter la feuille de calcul Excel d’exemple fournie.
La feuille d’exemple est essentiellement divisée en deux sections : les hypothèses en haut et les calculs en bas. Les prévisions sont considérées comme faisant partie des hypothèses car la prévision des ventes (ou de la demande) dépasse le cadre de ce guide. Vous pouvez vous référer à notre tutoriel sur la prévision des ventes avec Microsoft Excel pour plus de détails.
La plupart des formules introduites dans la section précédente sont des opérations très simples (additions, multiplications) qui sont très faciles à réaliser avec Microsoft Excel. Cependant, deux fonctions sont remarquables :
- NORMSINV (Microsoft KB) : estime la distribution normale cumulative, notée cdf ci-dessus.
- STDEV (Microsoft KB) : estime l’écart-type, noté $$σ$$ ci-dessus. Nous rappelons que l’écart-type $$σ$$ est la racine carrée de la variance $${σ^2}$$.
Pour simplifier, la première feuille n’implémente pas l’heuristique $${σ^2 = E[ (y_t - y’)^2 ]}$$ lors du calcul du facteur de service. Cette approche est mise en œuvre dans la Feuille2 (2ème feuille du document Excel). Étant donné que nous avons supposé des prévisions stationnaires dans l’exemple, le point de commande reste identique avec ou sans cette heuristique.
Ressources
Inventory Management and Production Planning and Scheduling, Edward A. Silver, David F. Pyke, Rein Peterson, Wiley; 3ème édition, 1998