Cérélia · ML in produzione · set 2024 – oggi
Margherita: previsione della domanda con l’IA in 14 Paesi
Accuratezza delle previsioni a lungo termine dal 73% all’82% sull’orizzonte di 6 mesi, migliore anche a 9 mesi, combinata con SAP IBP e consegnata alle Operations ogni lunedì.
In breve
- Problema
- La sfida stava in una frase: dimostrare il potenziale dell’IA. I piani della domanda di Cérélia arrivavano da SAP, e le previsioni a lungo termine oscillavano molto: instabili sugli orizzonti di 6 e 9 mesi usati per pianificare la capacità produttiva.
- Il mio ruolo
- Ho proposto il progetto, l’ho fatto approvare e l’ho seguito dall’inizio alla fine.
- Obiettivi
- Rendere le previsioni a lungo termine abbastanza affidabili per pianificare la capacità, senza più previsioni che crollano o esplodono sugli orizzonti lunghi.
- Dare ai team non tecnici un accesso semplice alle previsioni con report Power BI su misura.
- Portare la soluzione in produzione dentro SAP con uno sviluppo dedicato, così che le Operations siano del tutto autonome e decidano quanto affidarsi all’IA.
- Mantenere Cérélia indipendente da strumenti di terze parti: il framework di rilascio può integrare le previsioni di qualsiasi modello.
- Persone
- Ho lavorato con il team Operations per costruire la soluzione, e con un team esterno per progettare un’integrazione SAP che combina la previsione dell’IA con quella di SAP.
- Risultato
- Il team di Cérélia ora ha il pieno controllo della previsione: può elaborare i file come vuole e caricare una previsione direttamente in SAP, cosa che prima non era possibile.
- Una previsione affidabile a lungo termine rende più facile pianificare grandi investimenti, come una nuova linea di produzione.
- L’accuratezza delle previsioni a lungo termine migliora sugli orizzonti di 6 e 9 mesi: dal 73% all’82% a 6 mesi.
- Oltre 815 SKU in 14 Paesi, consegnate ogni lunedì.
- Il team Vendite accede alle previsioni in modo più semplice e autonomo tramite i report Power BI, e può inviare suggerimenti sulle previsioni direttamente in Power BI con Power Apps.
- L’impatto economico non si è potuto misurare, perché non esisteva un riferimento precedente.
- Scelta ibrida
- La soluzione permette al team di scegliere, per prodotto e cliente, come combinare la previsione dell’IA con quella di SAP IBP. Ad esempio, per il prodotto X venduto al cliente A, si può tenere la previsione IBP per le prime 8 settimane e usare quella dell’IA per le restanti 64.
- Ruolo
- Data Science Consultant Responsabile end-to-end
- Realizzato con
- Python, scikit-learn, XGBoost, pandas, Power BI, Microsoft Fabric, SAP IBP, SharePoint
La richiesta
Prima che arrivassi in Cérélia, la sfida stava in una frase: dimostrare il potenziale dell’IA. Ho proposto un progetto di previsione della domanda, confrontato con la previsione SAP esistente, l’ho fatto approvare e l’ho seguito dall’estrazione dei dati fino alla messa in produzione.
Cérélia è un produttore multinazionale di impasti freschi, con circa 844 milioni di € di fatturato nel 2024 e oltre 1.200 SKU. Oggi Margherita ne copre più di 815 in 14 Paesi, circa il 97% della divisione Impasti Europa continentale, con previsioni settimanali su un orizzonte di 72 settimane.
Risultati
- Il team possiede la sua previsione. Il team di Cérélia ora ha il pieno controllo della previsione: può elaborare i file come vuole e caricare una previsione direttamente in SAP, cosa che prima non era possibile.
- Pianificare a lungo termine è più facile. Una previsione affidabile a lungo termine rende più facile pianificare grandi investimenti, come una nuova linea di produzione. L’impatto economico non si è potuto misurare, perché non esisteva un riferimento precedente.
- Accuratezza a lungo termine in crescita di 9 punti, da circa il 73% all’82% su un orizzonte di 6 mesi; i miglioramenti sono stati osservati sull’accuratezza a lungo termine, sugli orizzonti di 6 e 9 mesi. L’accuratezza è misurata per SKU e ponderata sui volumi di vendita, così che una sovrastima sull’impasto per pizza non possa nascondere una sottostima sulle basi per crostate. Ad esempio, con due prodotti, una domanda di 1.000 con una previsione di 900 (90%) e una domanda di 10 con una previsione di 2 (20%) danno un’accuratezza ponderata dell’89,3%, non una media semplice del 55%.
- Più stabile: su 25 date di partenza consecutive (dalla settimana 51 del 2024 alla settimana 23 del 2025), la previsione dell’IA è stata sempre migliore di quella esistente sull’orizzonte di 6 mesi, con una variabilità molto più bassa. Lo stesso vale a 9 mesi.
- Il team sceglie il mix. La soluzione permette al team di scegliere, per prodotto e cliente, come combinare la previsione dell’IA con quella di SAP IBP. Ad esempio, per il prodotto X venduto al cliente A, si può tenere la previsione IBP per le prime 8 settimane e usare quella dell’IA per le restanti 64.
- Niente più previsioni che “crollano” o “esplodono”, e i picchi mobili come Pasqua e Ramadan cadono nelle settimane giuste.
Accuratezza ponderata sui volumi, orizzonte 6 mesi, tutti i clienti. In blu: Margherita. In arancione: la previsione di consenso pubblicata.
Lo stesso confronto per i clienti francesi (a sinistra) e italiani (a destra).
Orizzonte 9 mesi, 16 date di partenza consecutive.
La previsione esistente privilegia l’accuratezza a breve termine: reagisce in fretta alle variazioni della domanda, ma più in là nel tempo si allontana molto dalla realtà. Inoltre colloca i picchi di Pasqua e Ramadan sui numeri di settimana dell’anno precedente.
Una previsione SAP che crolla (a sinistra) e una che esplode (a destra), rispetto a Margherita e alla domanda reale.
Come funziona
Preparazione dei dati. Le vendite giornaliere per magazzino vengono aggregate per cliente e settimana, eliminando il rumore dei trasferimenti di stock e gli zeri degli ordini bisettimanali. Le previsioni vengono poi ripartite tra i magazzini in base al mix di vendite delle ultime otto settimane.
Quando un cliente raddoppia all’improvviso i volumi, il rilevamento dei change point con PELT individua la rottura e riallinea le vendite precedenti al nuovo livello. Quando i clienti non ricevono tutto l’ordine, la domanda della settimana successiva viene corretta, così che i problemi di fornitura non creino picchi artificiali.
PELT rileva un calo nelle vendite di un cliente (a sinistra); le vendite precedenti vengono riallineate al nuovo livello (a destra).
Variabili. Ho testato giorni di vacanza, festività, eventi sportivi e perfino i programmi di cucina in TV. Pasqua, Ramadan (compreso il numero di settimana), promozioni e festività nazionali portavano segnale; il resto causava soprattutto overfitting.
Le promozioni sono state la parte più difficile: il loro tipo era registrato solo nelle email. Ho codificato la settimana di ogni promozione, il numero di giorni di promozione per settimana e la dimensione dei magazzini coinvolti, così il modello impara quanto ogni promozione sposta la domanda. Inoltre abbassa la previsione quando la promozione dell’anno precedente non si ripete.
Margherita cattura una promozione di tre settimane e distribuisce correttamente il volume tra le sue settimane.
Modello. I modelli ad albero non sanno estrapolare un trend, e i modelli lineari catturano poca variabilità. Margherita li combina: una regressione lineare stima il trend, un modello XGBoost impara i residui, e i due si sommano. È abbastanza leggero da girare la domenica e consegnare la previsione di ogni SKU il lunedì mattina.
Il trend lineare viene estrapolato; XGBoost prevede i residui sopra di esso.
Messa in servizio
Prima, le previsioni richiedevano estrazioni da SAP e strumenti Excel di terze parti che solo poche persone delle Operations sapevano usare. Ho creato un report Power BI di più pagine su Microsoft Fabric, aggiornato ogni settimana, con filtri per ricetta, tipo, temperatura e segmento, e sei metriche di accuratezza per qualsiasi orizzonte.

Per mettere la previsione al lavoro, ho progettato nuovi key figure in SAP e ne ho guidato l’implementazione con fino a sette stakeholder interni ed esterni. Ora le Operations scelgono, per ogni SKU e cliente, fino a quale orizzonte usare la previsione dell’IA o quella di SAP. Lo stesso framework può caricare le previsioni di qualsiasi altro modello, quindi Cérélia non è più legata ai metodi di un solo fornitore.
Come è stato introdotto
- Pilota: prodotti esistenti non stagionali sul mercato francese.
- Prima estensione: dopo questa validazione, tutti i prodotti, più Italia, Germania, Spagna e Portogallo.
- Ultima fase: gli altri Paesi.
Gli avanzamenti sono stati presentati in più sessioni al comitato di direzione (CODIR), che ha approvato il passaggio in produzione.
Cosa l’ha reso difficile
Nessuno in azienda aveva mai usato Python, pip install restituiva “Access Denied” e lo storico delle vendite si poteva scaricare solo due settimane alla volta. La qualità dei dati era disomogenea, e informazioni chiave come il tipo di promozione non erano in nessun sistema.
La sfida più grande era culturale: sostituire le correzioni manuali in Excel, in un settore di prodotti deperibili, con un modello che usa fino a 12 variabili, rassicurando i pianificatori che il controllo restava nelle loro mani. E sono arrivato parlando a malapena francese.
Con i colleghi di Cérélia.