Le problème : la mathématique de l'EOQ était belle — et nous étions quand même en rupture

Tout étudiant en supply chain apprend par cœur la formule de la quantité économique de commande : √(2DS/H). Mais quiconque gère la réappro dans un entrepôt sait que l'EOQ répond à « combien commander pour minimiser le coût » — pas à « quand commander pour éviter la rupture ». La demande réelle fluctue ; les délais fournisseurs dérivent ; les deux hypothèses « constantes » de la formule explosent au contact du réel.

Nous avons vu trop d'entrepôts fixer le stock de sécurité au feeling (« prenons deux semaines ») et les points de commande à l'instinct (« on recommande à 100 unités ») — pour finir à la fois en rupture et en surstock. Cet article vous donne un algorithme pratique, sans maths avancées, qui tourne dans un tableur et répond à « quand réapprovisionner, et combien ».

La méthode : un algorithme en quatre étapes pour le stock de sécurité dynamique

Comptage cyclique des stocks avec un terminal portable

Étape 1 : quantifiez la variabilité de votre demande (σd)

Le stock de sécurité est une assurance contre l'incertitude, et la prime dépend de l'ampleur de l'incertitude. Prenez les quantités journalières sorties d'un SKU sur les 6–12 derniers mois et calculez l'écart-type de la demande journalière (σd) — une fonction ECARTYPE dans Excel.

Classez la variabilité en trois bandes :

Coefficient de variation (CV = σd / demande journalière moyenne) Variabilité Stratégie
< 0.5 Faible (articles stables) Le stock de sécurité peut rester serré ; surveillez plutôt la variabilité des délais
0.5–1.0 Moyenne (articles courants) Formule standard ; revue mensuelle
> 1.0 Forte (articles promo/saisonniers) Formule + jugement humain ; plan séparé avant les grandes promos

Étape 2 : quantifiez la variabilité de vos délais (σL)

Beaucoup d'entrepôts calculent la variabilité de la demande et sautent celle des délais — le plus grand angle mort derrière les ruptures. Prenez les délais réels de ce même SKU (de la passation de commande à la réception, en jours) sur les 6 derniers mois et calculez l'écart-type du délai (σL).

Expérience terrain : la variabilité des délais compte souvent plus que celle de la demande. Un entrepôt de pièces auto a trouvé un SKU à la demande en béton armé (CV = 0.3) mais aux délais fournisseur oscillant de 7 à 21 jours (σL = 4.2 jours) — l'essentiel de son stock de sécurité assurait en réalité le délai.

Étape 3 : la formule — un stock de sécurité couvrant les deux variabilités

La formule pratique standard (en supposant demande et délai indépendants) :

Stock de sécurité SS = Z × √( L × σd² + d² × σL² )

  • Z : facteur de niveau de service. 95% → 1.65 ; 97.5% → 1.96 ; 99% → 2.33. Pas de 99% pour tout — les vedettes de classe A en 97.5–99%, la longue traîne de classe C en 90% (Z = 1.28) suffit largement, et le cash libéré est significatif.
  • L : délai moyen (jours) ; d : demande journalière moyenne ; σd, σL comme ci-dessus.

Point de commande ROP = d × L + SS : quand le stock disponible (en main + en transit − alloué) tombe à ROP, on déclenche la réappro.

Un exemple chiffré : un SKU avec d = 50 unités/jour, σd = 15 ; L = 10 jours, σL = 3 jours ; niveau de service cible 97.5% (Z = 1.96). SS = 1.96 × √(10×225 + 2500×9) = 1.96 × √24750 ≈ 308 unités. ROP = 50×10 + 308 = 808 unités. Cet entrepôt tournait avec un stock de sécurité au pifomètre de 200 et a subi deux ruptures en haute saison ; à 308, zéro rupture sur toute l'année, avec une rotation des stocks ralentie de seulement 2 jours.

Étape 4 : actualisez selon un calendrier — les paramètres expirent, les formules non

La demande et les délais sont vivants ; les paramètres doivent être rafraîchis. Cadence suggérée :

Classe de SKU Fréquence de revue Revue extraordinaire quand…
A Mensuelle 6 semaines avant les grandes promos, changement de fournisseur, pic de demande de 50%
B Trimestrielle Idem ci-dessus
C Semestrielle Zéro mouvement pendant 3 mois d'affilée → processus de stock mort

Astuce pratique : une ligne de tableur par SKU avec des colonnes pour d, σd, L, σL, Z ; SS et ROP se calculent automatiquement. Actualisez les données le 1er de chaque mois ; flaguez les lignes dont les valeurs ont bougé de plus de 20% pour revue humaine. Un planificateur gère 5,000 SKUs en une demi-journée par mois.

Cas terrain : le programme « diviser le taux de rupture par deux » d'un entrepôt e-commerce

Contexte : un entrepôt e-commerce du Nevada expédiant 8,000 commandes/jour, ~2,500 SKUs en propre, taux de rupture de 3.2% (l'excellence est sous 1%) — avec une rotation des stocks de 42 jours (plutôt élevée). Le paradoxe : rupture et surstock en même temps. Le classique « trop peu de ce qui compte, trop de ce qui ne compte pas ».

Diagnostic : des stocks de sécurité fixés entièrement au feeling du chef de catégorie. Vedettes trop bas (peur du surstock) ; longue traîne trop haute (« c'est pas cher, prenons large »).

Action : tous les paramètres recalculés avec l'algorithme en quatre étapes, SKUs classés en matrice ABC × XYZ de neuf cases (ABC par valeur expédiée, XYZ par variabilité de la demande), stock de sécurité réduit sur les articles AX (haute valeur, faible variabilité), articles CZ (faible valeur, forte variabilité) taillés à 7 jours de couverture. Alertes ROP automatiques activées dans le WMS.

Résultats : six mois plus tard, le taux de rupture est passé de 3.2% à 1.1%, la rotation s'est améliorée de 42 à 31 jours, libérant environ $450,000 de cash. Le verdict du chef de catégorie : « Il s'avère que je n'étais pas mauvais en stocks — je les gérais juste au feeling. »

Les pièges à éviter

  1. N'utilisez pas l'EOQ pour décider du « quand ». L'EOQ gouverne la taille du lot ; le ROP gouverne le moment. Ce sont des partenaires, pas des substituts. EOQ sans ROP, c'est la moitié d'une ceinture de sécurité.
  2. Les nouveaux SKUs n'ont pas d'historique — ne forcez pas la formule. Partez des paramètres d'un SKU mature comparable à 70%, surveillez à la main les 3 premiers mois, basculez sur la formule une fois les données accumulées. La plupart des ruptures sur nouveaux SKUs arrivent parce que « pas de données » voulait dire « pas de stock de sécurité ».
  3. Comptez le stock en transit dans le « stock disponible ». Le ROP se compare à en main + en transit − alloué. Ne regarder que le stock en main provoque des doubles commandes — nous avons vu un entrepôt surcommander de 30% comme ça.
  4. N'appliquez pas un seul Z à tout. Un niveau de service de 99% sur tous les SKUs, ça sonne bien ; le prix, c'est le doublement du stock de sécurité de la longue traîne de classe C. Échelonnez Z par classe, investissez les économies dans les articles de classe A, et le niveau de service global augmente.

Résumé

Les maths pratiques au-delà de l'EOQ tiennent en trois phrases : quantifiez la variabilité avec des données (σd comme σL), assurez les deux en une fois, et actualisez les paramètres chaque mois. Pas besoin de système de planification coûteux — Excel plus les alertes WMS suffisent. Souvenez-vous : le stock de sécurité n'est pas une couverture où plus c'est toujours mieux ; c'est une assurance où l'ajustement compte. Trop, c'est de la prime gaspillée ; trop peu, ce sont des ventes perdues. Commencez par vos 100 premiers SKUs, faites tourner un mois, regardez les résultats, puis déployez.

Traduit de l'anglais. En cas de divergence, la version anglaise fait foi.