Cérélia · ML en production · sept. 2024 – aujourd’hui

Margherita : prévision de la demande par IA dans 14 pays

Précision des prévisions à long terme portée de 73 % à 82 % à l’horizon 6 mois, et meilleure aussi à 9 mois, combinée à SAP IBP et livrée aux Opérations chaque lundi.

73 % → 82 %
précision des prévisions à 6 mois
815+
SKU dans 14 pays
~215 000 t
de volume prévu chaque année
Hebdo
en production depuis le lancement
Page Power BI de Margherita comparant les prévisions : demande hebdomadaire face aux prévisions IA et SAP, avec des jauges de précision

En bref

Problème
Le défi tenait en une phrase : prouver le potentiel de l’IA. Les plans de demande de Cérélia venaient de SAP, et ses prévisions à long terme fluctuaient fortement : instables aux horizons de 6 et 9 mois utilisés pour la planification des capacités.
Mon rôle
J’ai proposé le projet, je l’ai fait valider et je l’ai porté de bout en bout.
Objectifs
  • Rendre les prévisions à long terme assez fiables pour planifier les capacités, sans plus de prévisions qui s’effondrent ou s’envolent à long terme.
  • Donner aux équipes non techniques un accès simple aux prévisions grâce à des rapports Power BI sur mesure.
  • Mettre la solution en production dans SAP via un développement spécifique, pour que les Opérations soient totalement autonomes et décident de la place à donner à l’IA.
  • Garder Cérélia indépendante des outils tiers : le cadre de déploiement peut intégrer les prévisions de n’importe quel modèle.
Équipes
J’ai travaillé avec l’équipe Opérations pour construire la solution, et avec une équipe externe pour concevoir une intégration SAP qui combine la prévision IA à celle de SAP.
Résultat
  • L’équipe de Cérélia maîtrise désormais entièrement la prévision : elle peut traiter les fichiers comme elle le souhaite et charger une prévision directement dans SAP, ce qui n’était pas possible auparavant.
  • Une prévision fiable à long terme facilite la planification de gros investissements, comme une nouvelle ligne de production.
  • La précision des prévisions à long terme s’améliore aux horizons de 6 et 9 mois : de 73 % à 82 % à 6 mois.
  • Plus de 815 SKU dans 14 pays, livrées chaque lundi.
  • L’équipe Ventes accède aux prévisions plus facilement et en toute autonomie grâce aux rapports Power BI, et peut envoyer ses suggestions de prévision directement dans Power BI via Power Apps.
  • L’impact financier n’a pas pu être mesuré, faute de référence antérieure.
Choix hybride
La solution permet à l’équipe de choisir, par produit et par client, comment combiner la prévision IA et celle de SAP IBP. Par exemple, pour un produit X vendu au client A, elle peut garder la prévision IBP sur les 8 premières semaines et utiliser la prévision IA sur les 64 suivantes.
Rôle
Consultant Data Science Responsable de bout en bout
Réalisé avec
Python, scikit-learn, XGBoost, pandas, Power BI, Microsoft Fabric, SAP IBP, SharePoint

Le brief

Avant mon arrivée chez Cérélia, le défi tenait en une phrase : prouver le potentiel de l’IA. J’ai proposé un projet de prévision de la demande, comparé à la prévision SAP existante, je l’ai fait valider et je l’ai porté de l’extraction des données jusqu’à la mise en production.

Cérélia est un fabricant multinational de pâtes crues, avec environ 844 M€ de chiffre d’affaires en 2024 et plus de 1 200 SKU. Margherita en couvre aujourd’hui plus de 815 dans 14 pays, soit environ 97 % de la division Pâtes Europe continentale, avec des prévisions hebdomadaires sur un horizon de 72 semaines.

Résultats

  • L’équipe maîtrise sa prévision. L’équipe de Cérélia maîtrise désormais entièrement la prévision : elle peut traiter les fichiers comme elle le souhaite et charger une prévision directement dans SAP, ce qui n’était pas possible auparavant.
  • Une planification à long terme plus simple. Une prévision fiable à long terme facilite la planification de gros investissements, comme une nouvelle ligne de production. L’impact financier n’a pas pu être mesuré, faute de référence antérieure.
  • Précision à long terme en hausse de 9 points, d’environ 73 % à 82 % sur un horizon de 6 mois ; les gains ont été observés sur la précision à long terme, aux horizons de 6 et 9 mois. La précision est mesurée par SKU et pondérée par les volumes de vente, pour qu’une surestimation sur la pâte à pizza ne puisse pas masquer une sous-estimation sur les pâtes à tarte. Par exemple, avec deux produits, une demande de 1 000 pour une prévision de 900 (90 %) et une demande de 10 pour une prévision de 2 (20 %) donnent une précision pondérée de 89,3 %, et non une moyenne simple de 55 %.
  • Plus stable : sur 25 dates de départ de prévision consécutives (de la semaine 51 de 2024 à la semaine 23 de 2025), la prévision IA a été systématiquement meilleure que l’existante à l’horizon 6 mois, avec une variabilité bien plus faible. C’est aussi le cas à 9 mois.
  • L’équipe choisit le dosage. La solution permet à l’équipe de choisir, par produit et par client, comment combiner la prévision IA et celle de SAP IBP. Par exemple, pour un produit X vendu au client A, elle peut garder la prévision IBP sur les 8 premières semaines et utiliser la prévision IA sur les 64 suivantes.
  • Fini les prévisions qui « s’effondrent » ou « s’envolent », et les pics mobiles comme Pâques ou le Ramadan tombent dans les bonnes semaines.

Précision pondérée dans le temps, horizon 6 mois : le modèle IA reste autour de 80–85 % tandis que la prévision de consensus publiée oscille entre 55 % et 80 % Précision pondérée par les volumes, horizon 6 mois, tous clients. En bleu : Margherita. En orange : la prévision de consensus publiée.

Précision à 6 mois pour les clients français Précision à 6 mois pour les clients italiens La même comparaison pour les clients français (à gauche) et italiens (à droite).

Précision pondérée dans le temps, horizon 9 mois Horizon 9 mois, 16 dates de départ de prévision consécutives.

La prévision existante privilégie la précision à court terme : elle réagit vite aux variations de la demande, mais dérive fortement à plus long terme. Elle place aussi les pics de Pâques et du Ramadan sur les numéros de semaine de l’année précédente.

Exemple de prévision SAP qui s’effondre alors que Margherita suit la demande Exemple de prévision SAP qui s’envole alors que Margherita suit la demande Une prévision SAP qui s’effondre (à gauche) et une qui s’envole (à droite), face à Margherita et à la demande réelle.

Comment ça marche

Préparation des données. Les ventes quotidiennes par entrepôt sont agrégées par client et par semaine, ce qui élimine le bruit des transferts de stock et les zéros des commandes bihebdomadaires. Les prévisions sont ensuite réparties entre les entrepôts selon le mix de ventes des huit dernières semaines.

Quand un client double soudainement ses volumes, la détection de ruptures PELT repère le changement et ramène les ventes antérieures au nouveau niveau. Quand des clients ne reçoivent pas toute leur commande, la demande de la semaine suivante est corrigée pour que les problèmes d’approvisionnement ne créent pas de pics artificiels.

Détection de ruptures PELT sur une série de ventes La même série après ajustement des ventes antérieures à la rupture PELT détecte une baisse des ventes d’un client (à gauche) ; les ventes antérieures sont ramenées au nouveau niveau (à droite).

Variables. J’ai testé les jours de vacances, les jours fériés, les événements sportifs et même les émissions de cuisine à la télévision. Pâques, le Ramadan (y compris son numéro de semaine), les promotions et les jours fériés nationaux portaient le signal ; le reste provoquait surtout du surapprentissage.

Les promotions ont été la partie la plus difficile : leur type n’était enregistré que dans des e-mails. J’ai encodé la semaine de chaque promotion, le nombre de jours de promotion par semaine et la taille des entrepôts concernés, ce qui permet au modèle d’apprendre à quel point chaque promotion fait bouger la demande. Il abaisse aussi la prévision quand la promotion de l’année précédente n’est pas reconduite.

Margherita capte une promotion de trois semaines Margherita capte une promotion de trois semaines et répartit correctement le volume sur ces semaines.

Modèle. Les modèles à base d’arbres ne savent pas extrapoler une tendance, et les modèles linéaires captent peu la variabilité. Margherita combine les deux : une régression linéaire modélise la tendance, un modèle XGBoost apprend ses résidus, et les deux sont additionnés. Le tout est assez léger pour tourner le dimanche et livrer la prévision de chaque SKU le lundi matin.

Tendance par régression linéaire et prévision XGBoost des résidus La tendance linéaire est extrapolée ; XGBoost prévoit les résidus par-dessus.

Mise en service

Avant, les prévisions demandaient des extractions SAP et des outils Excel tiers que seules quelques personnes des Opérations savaient utiliser. J’ai créé un rapport Power BI de plusieurs pages sur Microsoft Fabric, actualisé chaque semaine, avec des filtres par recette, type, température et segment, et six indicateurs de précision pour n’importe quel horizon.

Rapport Power BI avec le menu des filtres ouvert

Pour exploiter la prévision, j’ai conçu de nouveaux indicateurs clés dans SAP et piloté leur mise en œuvre avec jusqu’à sept parties prenantes internes et externes. Les Opérations choisissent désormais, pour chaque SKU et chaque client, jusqu’à quel horizon elles utilisent la prévision IA ou celle de SAP. Le même cadre peut intégrer les prévisions de n’importe quel autre modèle : Cérélia n’est plus liée aux méthodes d’un seul éditeur.

Comment le déploiement s’est fait

  • Pilote : les produits existants non saisonniers sur le marché français.
  • Première extension : après cette validation, tous les produits, plus l’Italie, l’Allemagne, l’Espagne et le Portugal.
  • Dernière phase : les autres pays.

L’avancement a été présenté lors de plusieurs séances au comité de direction (CODIR), qui a validé le passage en production.

Ce qui l’a rendu difficile

Personne dans l’entreprise n’avait utilisé Python, pip install renvoyait « Access Denied », et l’historique des ventes ne pouvait être téléchargé que deux semaines à la fois. La qualité des données était inégale, et des informations clés comme le type de promotion ne figuraient dans aucun système.

Le plus grand défi était culturel : remplacer les ajustements manuels sous Excel, dans un secteur de produits périssables, par un modèle utilisant jusqu’à 12 variables, tout en rassurant les planificateurs sur le fait qu’ils gardaient le contrôle. Et je suis arrivé en parlant à peine français.

Enrico avec un collègue de Cérélia devant le logo de l’entreprise, bureau de Paris Enrico avec une autre personne de l’équipe Cérélia devant le logo de l’entreprise Avec des collègues de Cérélia.