Support » Ici
Calculer vos stocks de sécurité avec les prévisions de vos ventes
Joannès Vermorel, Décembre 2007 (Dernière mise à jour en mars 2008)Ce guide explique
comment optimiser vos niveaux de stock en ajustant les stocks de sécurité. Il s'adresse aux professionnels de la grande distribution et de l'industrie. La théorie est mise en pratique à l'aide d'un exemple sous
Microsoft Excel. Les développeurs logiciels souhaitant reproduire la théorie dans leur propre application trouveront les informations nécessaires.
Public ciblé: ce document s'adresse en premier lieu aux professionnels de la grande distribution et de l'industrie. Ce document peut servir également aux éditeurs logiciel (comptabilité, ERP, eCommerce) qui souhaitent que leur application puisse gèrer les niveaux de stock.
Nous avons essayé de simplifier les explications mathématiques. Cependant, la présence de formules mathématiques est nécessaire, sinon le guide ne permettrait pas de bien expliquer comment calculer les stocks de sécurité.
Télécharger: caculate-safety-stocks.xls (Feuille Microsoft Excel)
Introduction
La gestion des stocks est un
compromis financier entre le
coût des stocks et le
coût des ruptures de stocks. Plus vous avez de stocks, plus vous avez besoin de fonds de roulement, et plus vos stocks se déprécient. A l'inverse, si vous n'avez pas assez de stock, vous souffrez de ruptures, et vous risquez de perdre des ventes, ou même d'interrompre le processus de production.
Le niveau de stock repose sur deux facteurs:
- la demande: la quantité d'articles qui seront consommés ou achetés.
- le délai de livraison (en anglais, lead time): délai entre la commande de l'article et son renouvellement effectif.
Ces deux facteurs peuvent varier:
- la variation de la demande: le comportement des clients peut évoluer de manière imprévisible.
- la variation du délai de livraison: les fournisseurs et les transporteurs peuvent être confrontés à des difficultés non anticipées.
Le niveau de
stocks de sécurité est un compromis implicite entre les coûts associés aux stocks et ceux liés aux ruptures de stocks. Ce compromis permet de se prémunir contre les incertitudes en matière de demande et de délai de livraison.
Le ratio
coût de stock vs.
coût de rupture est fortement lié à l'activité de l'entreprise. Ainsi, au lieu de prendre en considération ces coûts directement, nous pouvons employer la notion usuelle de
niveau de service.
Le
niveau de service reflète la probabilité qu'un certain niveau de
stocks de sécurité suffise pour éviter la rupture de stocks. Naturellement, en augmentant les stocks de sécurité, le niveau de service augmente également. Si le niveau des stocks de sécurité augmente considérablement, le niveau de service se rapproche de 100% (c.a.d. une probabilité nulle de rupture de stock).
Choisir le niveau de service adéquat, c.a.d. une probabilité acceptable de rupture de stocks, dépasse le cadre de ce guide. En effet, le niveau de service optimal dépend en grande partie de l'activité considérée. Dans la grande distribution, un niveau de service de l'ordre de 95% est très fréquent.
La point de réapprovisionnement
Le point de réapprovisionnement est le niveau de stock qui déclenche un ordre d'achat. Sans incertitude (c.a.d. la demande future connue et les fournisseurs parfaitement fiables), le point de réapprovisionnement serait simplement égale à la demande prévisionnelle pendant le délai de livraison, ce niveau de stocks est appelé «
stock théorique».
Lokad fournit de nombreux outils pour calculer le point de réapprovisionnement depuis vos données historiques. Voir la page
Sales Forecasting Tutorial for Microsoft Excel.
En pratique, en raison des incertitudes:
point de réapprovisionnement = stock théorique + stock de sécuritéSi nous considérons que les prévisions calculées sont fiables, un stock de sécurité nul correspondrait à un niveau de service de l'ordre de 50%. En effet, si les prévisions sont fiables, alors la demande future a une probabilité de 50% de sous-évaluer la demande anticipée et une probabilité de 50% de la sur-évaluer (rappelez-vous, le stock théorique est une valeur prévisionnelle).
Attention: les prévisions peuvent être
biaisées sans être exact. Le biais indique une erreur systématique du modèle de prévision (ex: le modèle surestime la demande de 20%).
La distribution normale des erreurs
Nous avons maintenant besoin d'un moyen pour représenter l'incertitude dans la détermination du stock théorique.
Par la suite, nous allons considérer que les erreurs de prévisions sont distribuées selon la
loi normale, voir l'image ci-dessous.
 La loi normale de distribution |
La courbe représente
la probabilité que la demande prévisionnelle corresponde à la demande future. Le sommet de la courbe est la demande prévisionnelle
moyenne. A ce point, la probabilité est maximale. Elle
décroît au fur et à mesure que la demande prévisionnelle s'écarte de la demande prévisionnelle moyenne.
«
Loi normale»: la distribution selon la loi normale n'est pas tout à fait arbitraire. Dans certaines situations, les estimateurs statistiques convergent vers cette loi, comme le montre le
théorème de la limite centrale. Mais, ces détails dépassent le cadre de ce guide.
Une distribution normale n'est définie que par deux paramètres, sa
moyenne et sa
variance. Comme nous considérons les prévisions fiables,
la moyenne de la distribution des erreurs doit être nulle, ce qui ne signifie pas qu'il n'y a pas d'erreur.
Déterminer la variance des erreurs de prévisions est une tâche plus délicate. Lokad, comme outil de prévisions, fournit des estimations de «
l'erreur absolue moyenne en pourcentage» de ses prévisions. Pour compléter notre explication, nous allons voir comment des solutions pratiques permettent de résoudre le problème.
«L'erreur absolue moyenne en pourcentage» (Mean Absolute Percentage Error, alias MAPE): moyenne des écarts, en valeur absolue, entre les valeurs prévisionnelles et les valeurs observées. Cet indicateur est un pourcentage et donc pratique pour comparer plusieurs séries d'écarts.En particulier, on peut estimer la
variance des erreurs de prévisions en utilisant la variance des valeurs historiques. David Piasecki suggère également d'utiliser la
demande prévisionnelle moyenne plutôt que la
demande historique moyenne pour calculer la variance.
La formule pour calculer la variance est alors:
σ2 = E[ (yt - y')2 ]
avec
E la fonction
moyenne,
yt la demande historique (en général la quantité de ventes) au cours de la période
t et
y' la demande prévisionnelle.
Cette formule repose sur l'idée que l'erreur de prévisions est très souvent corrélée à la variation anticipée:
plus les variations à venir sont élevées, plus le niveau d'erreur des prévisions est élevé.
En fait, le calcul de la variance implique certaines subtilités qui seront évoquées en détails dans la section intitulée
Délai de livraison et période de prévisions.
Formule pour calculer le stock de sécurité
A présent, nous savons comment déterminer la moyenne et la variance, et ainsi constituer une
distribution de probabilité à l'aide de la
loi normale. Il s'agit désormais de déterminer le niveau d'erreurs
acceptable au sein de cette distribution. La notion de
niveau de service, introduite plus haut, va nous le permettre.
Afin de convertir le niveau de service en un
niveau d'erreur, également appelé
indice de service, nous devons utiliser
la fonction de répartition de la loi normale (parfois appelé, loi normale inversée). La fonction de répartition de la loi normale permet d'assigner à un pourcentage (le niveau de service) l'indice de service correspondant.
De manière intuitive, nous pouvons calculer:
stock de sécurité = écart type * niveau de service De manière plus formelle, si
Ss est le stock de sécurité, nous avons:
Ss = σ * fdr(P)
avec
σ l'écart-type (c.-à-d. la racine carrée de la variance
σ2 définie plus haut),
fdr la fonction de répartition de la loi normale (moyenne égale à 0 et variance égale à 1) et
P le niveau de service.
Souvenez-vous que:
point de réapprovisionnement = délai de livraison + stocks de sécurité
Si
C est le point de réapprovisionnement, nous avons:
C = y' + σ * cdf(P)
avec
y', la demande prévisionnelle.
Délai de livraison et période de prévisions
Jusqu'à présent, nous sommes partis de l'hypothèse que pour un
délai de livraison donné, nous étions directement capables de produire la prévision de la demande future correspondante. En pratique, cela ne marche pas exactement comme cela. Pour analyser les historiques de ventes ventes,
on commence en général par additionner/agréger les données historiques en période (semaine ou mois, en général).
La période choisie pour les prévisions ne coïncide généralement pas avec le délai de livraison. C'est pourquoi des calculs supplémentaires sont nécessaires pour déterminer la demande pendant le délai de livraison (
le stock théorique) et la variance associée (en prenant pour hypothèse que les erreurs de prévisions suivent la loi normale, comme détaillée plus haut).
Intuitivement,
le stock théorique peut être calculé comme la somme des valeurs prévisionnelles de toutes les périodes futures au cours du délai de livraison.
Plus formellement, avec
T la période et
L le délai de livraison, on a
L = k * T + α * T
k est un nombre entier et
0 ≤ α <1. Prenons
St, le stock théorique. On peut maintenant calculer le stock théorique
St de la manière suivante:
St = (Σt=1..T y't) + αy'T+1
avec
y'n la demande prévisionnelle de la
nème période dans le futur.
En prenant pour hypothèse la loi normale de distribution, on peut calculer la variance des erreurs de prévisions
σ2 = E[ (yt - y')2 ]
avec
y' la demande prévisionnelle moyenne par période
y' = D / (k + σ)Cependant,
σ2 est la
variance par période et il nous faut la variance correspondant au délai de livraison. Prenons
σL2 la
variance ajustée au délai de livraison.
σL2 = (k + α) σ2Au final, la formule du point de réapprovisionnement est:
C = St + σL * fdr(P)Utiliser Excel pour calculer le point de réapprovisionnement
Cette section explique
comment calculer le point de réapprovisionnement avec Microsoft Excel. Nous vous suggérons de jeter un coup d'œil à
la feuille Excel illustrative téléchargeable ci-dessus.
 Calculez vos stocks de sécurité avec Excel |
La feuille Excel est séparée en deux sections: les
hypothèses en haut et les
calculs en bas. Les prévisions font partie de la section
hypothèses, car les prévisions des ventes (ou de la demande) dépassent le cadre de ce guide. Vous pouvez vous référer à notre
guide de prévisions de ventes avec Microsoft Excel pour des détails à ce sujet.
La plupart des formules introduites précédemment reposent sur les quatre opérations. Cependant, nous allons faire appel à deux fonctions plus spécifiques:
- la fonction
LOI.NORMALE.INVERSE (Aide Microsoft): estime la fonction de répartition de la loi normale, notée fdr ci-dessus. - la fonction
ECARTYPE (Aide Microsoft): estime l'écart-type, noté σ ci-dessus. Pour rappel, σ, l'écart-type est la racine carrée de la variance notée σ2.
Pour simplifier les choses, la première feuille Excel n'utilise pas l'estimateur de la variance
σ2 = E[ (yt - y')2 ] pour calculer l'écart-type. Il est utilisé cependant dans la seconde feuille du fichier,
Feuil2. Comme les prévisons calculées sont constantes, le point commande est le même que l'on fasse usage ou non de cet estimateur.
Calculer les stocks de sécurité dans votre application
Cette section est dédiée aux développeurs logiciel qui souhaitent inclure dans leur programme une fonctionnalité de réapprovisionnement automatique des stocks.
La plupart des formules présentes dans ce guide sont faciles à implémenter avec les outils de développement courants. Si vous travaillez avec la plateforme .NET, nous vous conseillons d'utiliser
Math.NET Iridium une librairie mathématique open-source codée en C# qui comprend à la fois la fonction
écart-type et la
fonction de répartition de la loi normale.
Sinon, il est assez facile de programmer la fonction
écart type à partir de sa définition, voir
la page Wikipedia. La fonction de répartition de la loi normale cumulative est plus compliquée à programmer. Heureusement, Peter J. Acklam fournit
un algorithme codé dans de nombreux langages de programmation. Le code nécessaire pour implémenter ces deux méthodes ne devraient pas dépasser plusieurs douzaines de lignes.
Les prévisions de ventes peuvent être calculées avec
l'API Lokad de prévisions de séries temporelles. De nombreux guides pour développeurs sont disponibles directement sur la page
Produits.
Informations supplémentaires
inventoryops.com: très bonne initiation à la
gestion des stocks (en anglais) par David J. Piasecki, auteur du livre:
Inventory Accuracy: People, Processes, & Technology.