00:00:00 Introduzione dell’intervista
00:00:47 Il background e il lavoro di Nikos Kourentzes
00:03:25 Comprendere la congruenza delle previsioni
00:04:44 Limitazioni dell’accuratezza nelle previsioni
00:06:14 Congruenza nelle previsioni delle serie temporali
00:08:02 Considerazioni sulla modellazione dell’inventario della supply chain
00:09:03 Congruenza e coerenza delle previsioni
00:10:29 Metriche matematiche in produzione
00:12:08 Considerazioni sull’inventario per orologiai di lusso
00:14:47 Fluttuazione in aumento che innesca la produzione
00:16:03 Ottimizzazione del modello per la domanda di un SKU
00:17:41 Ricerca su stimatori di shrinkage e gerarchie temporali
00:19:05 I migliori modelli per tutti gli orizzonti
00:21:32 Controversia sulla congruenza delle previsioni
00:24:05 Calibrazione delle politiche di inventario
00:26:27 Bilanciare accuratezza e congruenza
00:31:14 Trucchi dall’aggregazione temporale per levigare le previsioni
00:32:54 Importanza dei gradienti nell’ottimizzazione
00:35:28 Correlazioni nella supply chain
00:38:10 Oltre le previsioni delle serie temporali
00:40:27 Onestà delle previsioni probabilistiche
00:42:32 Somiglianze tra congruenza e bull whip ratio
00:45:18 Importanza dell’analisi delle decisioni sequenziali
00:47:27 Benefici nel mantenere le fasi separate
00:49:34 Interazione umana con i modelli
00:52:05 Mantenere l’elemento umano nelle previsioni
00:54:35 Fiducia negli esperti e negli analisti
00:57:28 Situazione realistica nella gestione di milioni di SKU
01:00:01 Regolazioni del modello ad alto livello
01:02:13 Decisioni guidate dalla probabilità di eventi rari
01:04:44 Il punto di vista di Nikos sulle regolazioni
01:07:14 Perdere tempo con regolazioni minori
01:09:08 Contro le regolazioni manuali quotidiane
01:11:43 Benefici a livello aziendale dell’ottimizzazione del codice
01:13:33 Ruolo del team di data science
01:15:35 Le previsioni probabilistiche scoraggiano l’interferenza manuale
01:18:12 La questione da un milione di dollari sull’IA
01:21:11 Importanza di comprendere i modelli di IA
01:24:35 Valore e costo dei modelli di IA
01:26:02 Affrontare i problemi nell’inventario

Informazioni sull’ospite

Nikolaos Kourentzes è professore di predictive analytics e IA presso l’Università di Skövde AI Lab in Svezia. I suoi interessi di ricerca sono nelle previsioni delle serie temporali, con lavori recenti nella modellazione dell’incertezza, gerarchie temporali e modelli gerarchici di previsione. La sua ricerca si concentra sulla traduzione delle previsioni in decisioni e azioni, in settori come la gestione dell’inventario, la modellazione della liquidità per operazioni monetarie e la sanità. Ha una vasta esperienza sia nel settore privato che in quello pubblico e ha scritto diverse librerie open-source per agevolare l’uso di metodi di previsione avanzati nella pratica.

In una recente intervista per LokadTV, Nikos Kourentzes, professore all’Università di Skövde, e Joannes Vermorel, CEO di Lokad, hanno discusso della congruenza delle previsioni nel decision-making della supply chain. Hanno sottolineato l’importanza di allineare le previsioni con le decisioni, riconoscendo che i modelli possono essere errati. Hanno distinto tra accuratezza delle previsioni e congruenza, sostenendo che la previsione più accurata potrebbe non essere la migliore per il processo decisionale se non è in linea con l’obiettivo della decisione. Hanno inoltre discusso l’applicazione pratica della congruenza delle previsioni nella gestione dell’inventario e il suo potenziale per mitigare il bullwhip effect. È stato anche discusso il ruolo dell’IA e del coinvolgimento umano nella congruenza delle previsioni.

Riepilogo Esteso

In una recente intervista condotta da Conor Doherty, Responsabile della Comunicazione presso Lokad, Nikos Kourentzes, professore all’Università di Skövde, e Joannes Vermorel, CEO e fondatore di Lokad, hanno discusso del concetto di congruenza delle previsioni nel contesto del processo decisionale della supply chain.

Kourentzes, che guida un team focalizzato sulla ricerca in IA presso l’Università di Skövde, ha spiegato che il suo lavoro ruota principalmente attorno al rischio di modello e alla specificazione dello stesso. Ha sottolineato l’importanza di allineare le previsioni con le decisioni che esse supportano, un concetto che definisce come congruenza delle previsioni. Questo approccio mira a migliorare l’accuratezza riconoscendo che i modelli possono essere errati.

Kourentzes ha ulteriormente distinto tra l’accuratezza delle previsioni e la congruenza delle previsioni. Mentre l’accuratezza è una misura della magnitudine degli errori, la congruenza descrive la coerenza delle stime nel tempo. Ha sostenuto che la previsione più accurata potrebbe non essere necessariamente la migliore per il processo decisionale se non è allineata con la funzione obiettivo della decisione.

Vermorel, in accordo con Kourentzes, ha sottolineato che le metriche matematiche spesso risultano insufficienti quando applicate nella pratica. Ha fornito esempi di come decisioni differenti possano comportare costi asimmetrici, ad esempio nella vendita di beni deperibili rispetto agli articoli di lusso. Vermorel ha inoltre discusso l’effetto ratchet nella supply chain management, dove le fluttuazioni nelle previsioni della domanda possono portare a decisioni irreversibili.

Kourentzes ha spiegato come il suo approccio sia passato dal concentrarsi unicamente sull’accuratezza a considerare altri fattori nelle previsioni. Ha sottolineato l’importanza di comprendere il funzionamento interno dei modelli e le ipotesi su cui si basano. Ha suggerito che, una volta ottenuta una serie di previsioni accurate, quella più congruente dovrebbe essere scelta.

Vermorel, invece, ha spiegato che a Lokad si ottimizza direttamente per gli esiti finanziari, anziché concentrarsi su metriche matematiche. Ha precisato che i gradienti sono fondamentali per l’ottimizzazione, poiché indicano la direzione in cui modificare i parametri per minimizzare gli errori. Ha anche discusso l’importanza delle previsioni probabilistiche, che considerano tutti i possibili scenari futuri, non solo per la domanda, ma anche per differenti lead times e incertezze.

La discussione si è poi focalizzata sull’applicazione pratica della congruenza delle previsioni nella gestione dell’inventario e sul suo potenziale per mitigare il bullwhip effect. Kourentzes ha spiegato che la congruenza e il bull whip ratio presentano molte similitudini, e progettare previsioni tenendo conto della congruenza può contribuire a ridurre il bullwhip effect.

È stato inoltre discusso il ruolo del coinvolgimento umano nella congruenza delle previsioni. Kourentzes ritiene che l’intervento umano non debba essere eliminato, ma piuttosto guidato per aggiungere valore dove possibile. Vermorel, invece, ha riferito che a Lokad non si permette più l’adeguamento delle previsioni da parte degli umani, poiché ciò ha prodotto risultati migliori.

La conversazione si è conclusa con una discussione sul ruolo dell’IA nella congruenza delle previsioni e nel processo decisionale nelle supply chain. Sia Kourentzes che Vermorel hanno concordato sul fatto che, pur avendo un ruolo nel fronteggiare le sfide previsionali, l’IA non dovrebbe sostituire tutti i metodi esistenti, ed è fondamentale comprendere il processo.

Nelle sue osservazioni finali, Kourentzes ha invitato a lasciare i metodi di previsione tradizionali per abbracciare un approccio più integrato con il processo decisionale. Ha sottolineato la necessità di aggiornare il nostro modo di pensare, il software e i testi, e ha accolto favorevolmente l’inclusione di persone provenienti da vari settori nel campo delle previsioni. Ha concluso enfatizzando l’importanza della collaborazione e delle diverse prospettive per affrontare queste sfide.

Trascrizione Completa

Conor Doherty: Bentornati. Normalmente, le discussioni sulle previsioni ruotano attorno all’idea dell’accuratezza. L’ospite di oggi, Nikos Kourentzes, ha una prospettiva diversa. È professore presso il Artificial Intelligence Lab dell’Università di Skövde. Oggi parlerà con Joannes Vermorel e con me del concetto di congruenza delle previsioni. Ora, Nikos, puoi confermare in video che ho pronunciato correttamente Skövde?

Nikos Kourentzes: È il meglio che posso fare anche io.

Conor Doherty: Bene, allora non ho altre domande. Grazie mille per essere stato con noi.

Nikos Kourentzes: È un piacere.

Conor Doherty: Scherzando a parte, io lavoro all’Università di Skövde, al Artificial Intelligence Lab. Sembra davvero impressionante. Di cosa ti occupi esattamente e qual è il tuo background in generale?

Nikos Kourentzes: Va bene, innanzitutto permettimi di presentare brevemente il lab e poi parlerò un po’ del mio background. Siamo un team eterogeneo di accademici interessati alla ricerca in IA. Il focus è principalmente su data science, ma l’ambito di applicazione è piuttosto vario. Ad esempio, come già accennato, probabilmente parlerò di previsioni e modellizzazione delle serie temporali. Ma, ad esempio, altri colleghi si interessano a tematiche come la fusione dell’informazione, l’analisi visiva, le auto a guida autonoma, gli aspetti cognitivi dell’IA. Questo è il bello del team perché abbiamo una polifonia di ricerche e, quando si discute, emergono molte idee diverse che vanno oltre la letteratura tipica. Almeno io la trovo un ambiente molto piacevole in cui lavorare.

La università è, sai, quello che dico sempre ai miei colleghi: non essendo io stesso svedese, quando usi nomi svedesi a livello internazionale, può essere qualsiasi cosa. Quindi, probabilmente sarebbe utile dire che l’università, in termini di data science e IA, ha una solida tradizione anche se il suo nome non è molto conosciuto. Comunque, sono molto felice di essere entrato a far parte del team. Per quanto mi riguarda, lavoro nel campo delle previsioni e della modellizzazione delle serie temporali, sia con la statistica, l’econometria o l’IA, da più o meno 20 anni. Ho conseguito il mio dottorato presso la Lancaster University in intelligenza artificiale. Era alla business school. In realtà, il mio background iniziale è nella gestione. Ma a un certo punto ho pensato: ok, so quali domande porre, ma non so come risolverle. Così sono passato alla ricerca operativa, da cui è nato il mio interesse per la supply chain, e successivamente ho conseguito il dottorato in intelligenza artificiale. E poi mi sono interessato sempre di più all’econometria, riuscendo così ad avere una comprensione abbastanza variegata delle serie temporali.

Conor Doherty: Grazie, Nikos. E in realtà, il modo in cui Joannes e io abbiamo scoperto il tuo profilo, o almeno come l’ho scoperto io, è stato grazie a un supply chain scientist che segue alcuni dei tuoi lavori su LinkedIn e che mi ha inviato un articolo in cui avevi scritto sulla congruenza delle previsioni, includendo un link al tuo working paper sull’argomento. Il fulcro della conversazione di oggi ruoterà attorno alle previsioni e alla loro applicazione nella supply chain. Ma prima di entrare nei dettagli, potresti fornire un po’ di background su cosa sia la congruenza delle previsioni e come sia emersa come area di ricerca per te?

Nikos Kourentzes: Gran parte del mio lavoro si è concentrata sul rischio di modello e sulla specificazione del modello. Spesso, nelle previsioni delle serie temporali, identifichiamo un modello e diciamo: va bene, usiamolo. Ma non riconosciamo realmente che ogni modello sarà in qualche modo errato. Voglio dire, è il mantra abituale nelle previsioni: tutti i modelli sono sbagliati, alcuni sono utili. Ma penso che possiamo andare oltre, perché possiamo iniziare a quantificare quanto siano errati i modelli. Inoltre, in letteratura spesso non si arriva così lontano, e questo sta cambiando, devo dire che non sono l’unico a sostenerlo, molti colleghi ritengono che dobbiamo collegare la previsione alla decisione che essa supporta.

Quindi la congruenza è nata da queste due idee. Ho lavorato con il mio collega della Lancaster University, Kandrika Pritularga, che è anche il co-autore del paper che hai citato. E ci siamo chiesti: se assumiamo che i modelli siano in un certo senso errati, in quanto stiamo solo approssimando la domanda o le vendite, allora qual è il costo reale? E la congruenza delle previsioni incarna essenzialmente l’idea di chiedersi se possiamo fare qualcosa di meglio dell’accuratezza, dato che quest’ultima spesso presuppone un’approssimazione soddisfacente dei dati.

E sai, sì, ci stiamo impegnando seriamente, ma potrebbe essere che non stiamo utilizzando il modello giusto. Ad esempio, potresti avere un software che ti offre una selezione di X modelli, mentre l’approssimazione corretta sarebbe un modello assente dal tuo pool. Ed è qui che tutto ciò fornisce la motivazione: cercare di collegare le previsioni a una decisione, una volta riconosciuto che probabilmente i nostri modelli saranno errati. Questo è, in sostanza, il contesto.

Se voglio essere più scientifico al riguardo, una cosa che dovrei dire è che di solito, insieme ai miei colleghi, iniziamo sempre i nostri argomenti di ricerca con un’idea un po’ più sciocca. Quindi, sai, stiamo facendo qualcos’altro e diciamo, oh, c’è un gancio interessante qui, esploriamolo un po’ più a fondo. E spesso, una volta fatto ciò, finisci per avere qualcosa che può rappresentare un’idea utile. Il motivo per cui lo menziono è che penso che la forecasting congruence, cioè la congruenza delle previsioni, offra un modo di pensare leggermente diverso. Ed è per questo che lo reputo inizialmente interessante, perché iniziando quasi come uno scherzo, ci ha permesso di vedere l’intero problema da una prospettiva differente.

Conor Doherty: Joannes, ci tornerò tra un attimo su questo, ma potresti espandere un po’ di più? Ancora una volta, quando parli di forecasting accuracy, tutti hanno più o meno un’idea di cosa significhi. Ma quando dici che la congruenza, o forecasting congruence, aiuta le persone a vedere le cose da una prospettiva diversa, potresti spiegare un po’ meglio quella distinzione, in modo che si capisca esattamente cosa intendi per congruenza nel contesto delle previsioni delle serie temporali?

Nikos Kourentzes: Giusto, quindi prima di tutto il nome non è esattamente il più diretto e c’è una ragione per questo. Quello che stiamo cercando di descrivere con quella forecasting congruence è essenzialmente quanto le previsioni siano simili nel tempo. Ora, questo è un modo più semplice per dirlo, ma ci sono alcuni problemi. Molte delle parole che si potrebbero usare per questo, per esempio, stabilità, sono già impiegate nella forecasting statistica, quindi non vogliamo creare confusione.

E l’altro problema è che, come probabilmente discuteremo in seguito, ci sono difficoltà tecniche nel misurare quanto siano simili le previsioni nel tempo. Perché, per esempio, se pensi a una serie temporale stagionale e a una non stagionale, esse implicano qualcosa di molto diverso, in quanto la stagionalità impone da sola una variazione nelle previsioni nel tempo. Quel modello è ciò che devi gestire. Non è il tipo di dissimilarità che ci interessa. Ed è questo che comporta, se vuoi, una ginnastica matematica per definire la congruenza. Ma qui risiede la differenza con l’accuratezza. L’accuratezza, di solito, la interpretiamo, a prescindere dalla metrica che usi, come un riassunto dell’entità degli errori delle previsioni.

Ora, si potrebbe presumere ovviamente che se otteniamo la previsione più accurata, ciò implicherebbe che forniamo le migliori informazioni per le decisioni supportate. Tuttavia, ciò implica che le decisioni supportate abbiano lo stesso tipo di funzione obiettivo della previsione più accurata, diciamo minimizzare il quadrato degli errori. Ma non è così. Voglio dire, se pensi a un modello di inventory modeling della supply chain, potremmo dover considerare i costi dovuti al batching degli ordini, potremmo dover pensare ai costi di eccesso e difetto che potrebbero far cambiare la tua posizione rispetto, diciamo, alla previsione più accurata. Potremmo dover valutare altri aspetti, come ad esempio i vincoli imposti dai nostri fornitori o altre limitazioni della capacità delle linee produttive o dei magazzini, e così via. Così, una volta considerato il vero costo di gestione dell’inventario o la supply chain in senso più ampio, improvvisamente capisci che la previsione più accurata non è necessariamente quella meglio allineata con la decisione presa. Ed è proprio questo il punto più interessante della congruenza.

Quindi, da un lato, esiste una linea di ricerca — e i miei coautori e io abbiamo pubblicato parecchio in quella direzione — evidenziando che la maggior parte delle metriche di accuratezza non correla bene con buone decisioni. Ciò non significa che siano inutili o simili; è solo che non forniscono il quadro completo. Questo spinge un po’ verso l’adozione della congruenza. La congruenza, invece, cerca di indicare che se le previsioni non variano troppo nel tempo, probabilmente c’è una certa fiducia, da un lato, nelle previsioni stesse. Ma, dall’altro, esse offrono una base su cui le persone possono pianificare con una certa coerenza. Non devo aggiornare tutta la mia pianificazione ad ogni ciclo di forecasting, perché la previsione rimarrà abbastanza simile. Quindi, anche se non sono le previsioni più accurate, falliscono in modo prevedibile, il che potrebbe semplificare il processo decisionale. Ed è proprio ciò che troviamo anche nel nostro lavoro. Notiamo che le decisioni supportate da previsioni più congruenti sono anche decisioni che risultano più coerenti nel tempo. Così, c’è meno impegno per prendere tali decisioni.

Conor Doherty: Bene, grazie Nikos. E Joannes, ora passo a te. Ho la sensazione che parte di quanto detto risuoni abbastanza con te. Previsioni più accurate non si traducono necessariamente in una migliore gestione delle decisioni sull’inventario.

Joannes Vermorel: Sì, esattamente. La nostra visione generale oggi è che praticamente tutte le metriche matematiche, nel senso di scegliere una formula e dire: questa è una formula matematica che caratterizza la metrica che cerchi di ottimizzare, quando questa formula praticamente “cade dal cielo” o è semplicemente inventata, anche se con buone intenzioni (diciamo norma uno, norma due, qualcosa a cui sono attaccate certe proprietà matematiche), di solito risulta molto deludente una volta messa in produzione, per una serie di ragioni.

Più di un decennio fa, Lokad ha iniziato a diffondere l’idea che le persone non dovrebbero fare quello che oggi chiamiamo previsioni naked. Fondamentalmente, supporto Nikos nella sua affermazione che una previsione è uno strumento per prendere decisioni e che la validità della previsione può essere valutata attraverso la lente della validità delle decisioni.

Ed è curioso, perché se hai 10 decisioni differenti, potresti finire per avere previsioni non coerenti per supportare quelle decisioni. Sembra strano, ma la realtà è che va bene, anche se è controintuitivo. E perché va bene? Beh, perché hai un insieme di decisioni che possono avere costi asimmetrici molto diversi in termini di eccesso o difetto.

E così, se hai una decisione in cui, se sovrastimi, è una catastrofe. Diciamo, per esempio, che stai vendendo fragole. Per le fragole, qualunque quantità in più che non vendi alla fine della giornata la devi praticamente buttare via. Quindi, qualsiasi sovrastima si traduce in una perdita immediata garantita o in una svalutazione dell’inventario.

Al contrario, se sei un orologiaio di lusso e i tuoi articoli sono realizzati in oro, platino e altri metalli e pietre preziose, se non li vendi, lo stock non scade. Anche se quello che produci e metti in vendita dovesse passare di moda, puoi sempre recuperare i materiali e rimodellarli in qualcosa che sia più in linea con le attuali richieste del mercato.

Quindi, fondamentalmente, se lavori nel settore dei gioielli, non hai mai svalutazioni dell’inventario. Potresti sostenere qualche costo per rimodellare i tuoi prodotti, ma il gioco è molto, molto diverso.

Uno dei problemi fondamentali che praticamente non viene mai menzionato nei testi di supply chain è proprio l’effetto cricchetto. Diciamo che stai gestendo un gioco di riapprovvigionamento dell’inventario. Ogni giorno per ogni SKU hai una previsione della domanda e, se la domanda supera una certa soglia, emetti un ordine di riordino.

Ma si scopre che, se la tua previsione oscilla, significa che il tuo inventario viene sempre impostato per catturare il picco massimo di quella fluttuazione. Voglio dire, considerando, ad esempio, un mese intero, se il tuo tipico ciclo di riordino è di circa un mese e la tua previsione oscilla durante questo periodo, e diciamo che ogni singolo giorno — quindi, insomma, 30 o 31 giorni del mese — riesegui la logica di forecasting, inesorabilmente emetterai un ordine di acquisto nel giorno in cui la tua previsione risulta essere la più alta.

È un effetto cricchetto, perché una volta che la tua previsione oscilla verso l’alto o verso il basso — e in termini di accuratezza può andare bene avere queste fluttuazioni, poiché catturano bene la variazione a breve termine — il prezzo da pagare è che, ogni volta che attivi una decisione, sei vincolato a quella decisione.

E quando si hanno queste fluttuazioni, ciò che tipicamente accade è che catturi la fluttuazione in aumento. La fluttuazione in diminuzione non è così problematica, basta posticipare qualcosa di un giorno, ma la fluttuazione in aumento innesca il lotto di produzione, il riapprovvigionamento, l’allocazione dell’inventario, il ribasso dei prezzi.

Perché, di nuovo, è lo stesso tipo di situazione: se abbassi il prezzo e poi hai un’impennata di domanda causata da quel ribasso, ma hai sottostimato la domanda, e ora pensi di avere troppo stock, mentre in realtà non era così, abbassando il prezzo ti ritrovi accidentalmente in una posizione ingegnerizzata di stock-out.

Sono tutte quelle situazioni in cui si manifesta l’effetto cricchetto: se hai queste fluttuazioni, agirai, e la performance della tua azienda rifletterà quell’estrema variazione del tuo modello statistico, del modello statistico predittivo, qualunque esso sia. Non è positivo, perché stai catturando, in termini decisionali, il rumore del modello predittivo.

Nikos Kourentzes: Posso aggiungere qualcosa? Prima di tutto, sono pienamente d’accordo. Ma potrebbe essere utile osservare lo stesso argomento dalla prospettiva di un esperto di serie temporali come me, cresciuto pensando all’accuratezza.

Dove alla fine ho cambiato idea è perché supponiamo che tu abbia una certa domanda per una specifica unità di stock, un SKU, e poi trovi il tuo miglior modello, ottimizzandolo su qualcosa come la likelihood o minimizzando l’errore quadratico medio.

Ora, l’assunzione alla base di tutto ciò è che hai fatto una buona approssimazione del modello, e tipicamente il tuo errore è una previsione a un passo avanti. È quello che di solito facciamo, almeno minimizziamo l’errore in-sample.

Se il tuo modello non è quello corretto — corretto nel senso che in qualche modo conosci il processo che genera i dati, cosa che non è mai vera — se minimizzassi quell’errore, la tua previsione sarebbe perfetta per tutti gli orizzonti. Ma non è così, perché il tuo modello è solo un’approssimazione.

Quindi, supponiamo che minimizzi i tuoi errori per una previsione a un passo avanti, come facciamo di solito, il tuo modello potrebbe funzionare molto bene per quella previsione a breve termine, ma non per l’orizzonte di tempo complessivo. Quest’ultimo richiede ulteriori passi avanti.

Se poi dicessi, “Oh, posso sintonizzare il mio modello per essere molto preciso forse a 3 mesi da ora, cioè per tre passi avanti”, beh, finisci per ottenere l’effetto opposto. Il tuo modello diventa molto bravo a essere sintonizzato per quell’orizzonte di previsione, ma non per quello più breve. Quindi, sull’orizzonte complessivo, perdi informazioni.

Quello a cui sto cercando di arrivare è che il modo tradizionale di pensare, cioè come ottimizziamo i modelli, porterà inesorabilmente a previsioni, in effetti, inaccurate nel senso che saranno sempre calibrate sull’errore che l’ottimizzatore osserva e non sulla decisione reale che stiamo cercando di supportare. Hanno un orizzonte diverso.

Ed è qui, per esempio, che molta ricerca sugli stimatori di shrinkage o il lavoro che i miei colleghi e io abbiamo svolto sulle gerarchie temporali ci ha un po’ aiutato, perché tali tecniche pensano sempre: “Non adattiamoci eccessivamente ai dati. Non ossessioniamoci a minimizzare una qualche statistica dell’errore.”

Quindi, sai, ciò che Joannes ha descritto si può vedere fondamentalmente da due prospettive. Una è l’effetto sulla supply chain, e l’altra è il fondamento statistico del motivo per cui ciò accade inesorabilmente.

Joannes Vermorel: Sì, in effetti. Presso Lokad, la nostra prassi attuale — che è in essere da parecchio tempo nell’ambito del framework della quantitative supply chain — è di operare una pura ottimizzazione finanziaria. Quindi ottimizziamo direttamente in Euro o dollari.

E in effetti, queste metriche vengono scoperte. Abbiamo persino una metodologia specifica per ciò chiamata ottimizzazione sperimentale, perché i sistemi della supply chain sono molto opachi, estremamente complessi, e dunque la metrica non è un dato di fatto, ma un vero e proprio tema da scoprire.

Ora, l’aspetto interessante riguarda gli orizzonti di forecasting e il fatto che la previsione vari in funzione di questi. Ho riflettuto su questo tema per molto tempo, ma fondamentalmente l’ultima competizione di previsioni di Makridakis — M4, M5, M6 — ha dimostrato che praticamente i modelli migliori sono tali per tutti gli orizzonti, indipendentemente da quale tu scelga.

Lokad, nel 2020, si è classificata al primo posto a livello di SKU per Walmart, ed eravamo i migliori sia per previsioni a un giorno, a 7 giorni, tutto. Per molto tempo ho lavorato con l’ipotesi che potresti avere modelli che performano meglio per certi orizzonti.

Ma se guardi i modelli moderni, quelli come la differentiable programming, per esempio, quelle classi moderne di modelli previsionali, ora sono abbastanza uniformi. Oggi è molto raro trovare modelli che performano meglio a un passo avanti rispetto a sei mesi avanti.

Ed essenzialmente, ci sono modelli che sono a orizzonte indefinito: prevedono fino alla fine dei tempi, e tu semplicemente interrompi il processo per risparmiare risorse computazionali, perché altrimenti sarebbe uno spreco. Ma comunque, il punto resta che, in generale, la metrica che viene ottimizzata non dovrebbe essere presunta come nota.

Non dovrebbe essere assunta come una delle eleganti metriche matematiche, come la log likelihood se vuoi adottare un approccio bayesiano, o l’errore quadratico medio, o qualunque altra cosa. È molto interessante se vuoi dimostrare teoremi in ambito accademico, ma dimostrare teoremi e proprietà dei modelli non si traduce in risultati operativi.

Può creare numerosi difetti sottili nel comportamento che non sono immediatamente evidenti dal punto di vista matematico.

Conor Doherty: Bene, grazie. Nikos, per ritornare a qualcosa che hai detto prima e per approfondire, hai affermato di definirti un esperto di serie temporali e che in passato ti eri concentrato sull’accuratezza, per poi dire: “Oh, ho cambiato idea e sono andato oltre l’accuratezza o il concentrarmi sull’accuratezza in isolamento.” Potresti descrivere effettivamente quel processo? Perché ogni volta che discuto di forecasting, diventa piuttosto difficile convincere le persone a non considerare l’accuratezza della previsione come fine a sé stessa. Ricordo che anche nel tuo articolo hai scritto: “L’obiettivo del forecasting non è l’accuratezza.” Tale affermazione risulta piuttosto controversa a seconda di chi la si dica. Quindi, come hai affrontato esattamente questo percorso?

Nikos Kourentzes: Sì, intendo dire che è controverso, hai ragione. Ma penso sia un argomento che le persone del mondo delle serie temporali sono più disposte ad accettare rispetto agli utilizzatori delle previsioni, se posso dirlo così. Parto innanzitutto riprendendo qualcosa che hai appena menzionato riguardo agli orizzonti delle previsioni.

Penso che questa convinzione, secondo cui i modelli sono in grado di produrre buone previsioni per tutti gli orizzonti, derivi da come confrontiamo i modelli stessi. Sai, riprendendo per esempio le competizioni M che hai citato. Questa è una lettura utile delle competizioni M, ma tutti questi modelli sono ottimizzati in maniera simile. Anche se prendi una semplice tecnica di exponential smoothing e cambi la funzione obiettivo, il modo in cui stimi i parametri, puoi effettivamente farle ottenere prestazioni molto migliori o molto peggiori su obiettivi o orizzonti differenti.

Quindi, per me, questo è stato anche un punto di partenza per pensare che, beh, forse c’è qualcosa che non torna. Ed è qui che, per esempio, sono un po’ critico nell’utilizzare lo standard… lasciatemi riformulare. Quando devo lavorare con dottorandi o con studenti di Master che scrivono la tesi, a volte chiedo loro di fare l’implementazione nel modo più “manuale” piuttosto che affidarsi a una libreria, perché desidero che comprendano veramente cosa avviene sotto il modello. Ed è proprio lì che si trovano alcuni dettagli, e ci si chiede: beh, ha senso?

Una delle cose già menzionate è che ci piacciono le formule e le espressioni che sono facili da gestire matematicamente. Voglio dire, “facili” tra virgolette, perché a volte sono piuttosto complesse, ma sì, sono comunque “facili” nel senso che, con le giuste assunzioni, si può comunque risolvere la matematica. Ma qui risiede il problema per me: facendo così, otteniamo una bella comprensione di ciò che succede sotto le assunzioni, ed è molto utile. Tuttavia, spesso dimentichiamo di chiederci: e se questa assunzione viene violata? Se abbiamo una specificazione del modello errata?

Quindi, per me, la specificazione del modello è il punto di partenza. Una volta che la introduci, molte di queste espressioni diventano problematiche. Devo stare attento qui e, sai, essendo io stesso un accademico, questo non rende in alcun modo la ricerca inutile. Ma è un trampolino di lancio. Dobbiamo comprendere tutte le proprietà e poi dire: adesso, introduciamo la specificazione del modello.

Ho alcuni colleghi dalla Spagna con cui ho lavorato sulla calibrazione delle politiche di inventario. E in un articolo su cui stiamo cercando di completare la revisione — e questo è sempre un aspetto complicato per gli accademici — si cerca esattamente di dire: supponiamo di avere una politica molto semplice, come le politiche “order up to”, questo è ciò che otterremmo se assumessimo che il modello è corretto e questo è ciò che accadrebbe se dicessimo: no, il modello è specificato in modo errato. Perché, come puoi vedere, ci sono dei rischi aggiuntivi nella supply chain, ci sono ulteriori rischi nella gestione dell’inventario.

Quindi, per me, il momento in cui si capisce che l’accuratezza non basta è quando comincio a pensare: beh, se il modello è specificato in modo errato, cosa implica questo rischio aggiuntivo? Se lo consideri nelle politiche di inventario stocastiche, quello che stiamo dicendo è che c’è un rischio stocastico derivante dal processo di domanda, va bene. Ma non è l’unico rischio. E non sto suggerendo in alcun modo di catturare tutti i rischi nel modo in cui lo sto interpretando, ma almeno la logica impone che ci debba essere qualcosa in più rispetto ad un singolo obiettivo di accuratezza.

Non significa abbandonare quell’obiettivo; deve esserci, sai, anche se eliminassi quell’obiettivo, una qualche forma di correlazione tra esso e altri obiettivi. Perché se ignori completamente l’avere una previsione accurata, in un senso più ampio, allora non stai facendo bene il tuo lavoro, almeno secondo la mia esperienza.

Potresti cambiare completamente l’obiettivo, per esempio in termini di congruenza. Anche teoricamente troviamo che vi è una connessione con l’accuratezza. Non è una connessione al 100%, ma c’è una connessione debole. Quindi questo non significa, per me, che dobbiamo buttare l’accuratezza dalla finestra. Ma sicuramente non è la fine della discussione. Ora, se riesci a sostituirla con una metrica migliore, che possieda comunque proprietà simili o addirittura con una raccolta di metriche, ben venga. Io sono soddisfatto. Non mi importa se chiamiamo la metrica in un modo o in un altro, o se è la mia o quella di qualcun altro. Ciò che credo veramente è che, quando introduciamo la specificazione del modello e i rischi che essa comporta, non possiamo più attenerci alle metriche tradizionali.

Conor Doherty: Grazie, Nikos. E Joannes, tornerò da te tra un attimo, ma voglio sottolineare un paio di punti. Uno, penso di aver espresso male: avrei dovuto dire che l’accuratezza non è l’obiettivo del forecasting; credo di averlo detto al contrario. Ma per riprendere un punto che hai appena fatto — e che considero fondamentale nell’articolo — non stai sostenendo, correggimi se sbaglio, la ricerca della previsione più congruente. Stai piuttosto proponendo un mix tra accuratezza e congruenza. È una lettura corretta? E se sì, potresti espandere su questo concetto per chi potrebbe non capire come si possa perseguire una combinazione di queste due metriche?

Nikos Kourentzes: Quindi, devo sottolineare innanzitutto che questo è un lavoro in corso, quindi non ho ancora la risposta completa. Ma sembra che un semplice euristico possa essere qualcosa del tipo: una volta individuata la tua raccolta di previsioni accurate, da quelle scegli quella più congruente. Non scegliere direttamente la previsione più congruente, perché potrebbe risultare estremamente imprecisa, se ha senso.

Quindi vedo questi due obiettivi — formulati in modo diverso — come una regione in cui entrambi migliorano insieme, per poi giungere a un punto di compromesso. Quando arrivi a quel compromesso, allora dai maggior peso al lato della congruenza.

Conor Doherty: Ebbene, questa sarebbe allora la questione. Usi il termine tradeoff e, di nuovo, è qualcosa su cui ci concentriamo molto, i tradeoff. Come fa, o come pesa, un’azienda, nuovamente — e capisco che sia ancora un lavoro in corso — questi compromessi tra accuratezza e congruenza? E so che stai cercando di ridurre le oscillazioni, le fluttuazioni tra tutte le previsioni congruenti. Però, d’altro canto, l’accuratezza della previsione è semplice. Possiamo concordare che, pur ammettendo alcune imperfezioni, è semplice da comprendere: basta dire “voglio una previsione più accurata, voglio che il numero aumenti.” Ma ora stiamo introducendo un’altra dimensione. Quindi, di nuovo, come si bilancia questo aspetto, in modo più specifico, da parte di un’azienda?

Nikos Kourentzes: Sì, sto facendo fatica a dare una risposta chiara perché, sinceramente, non l’ho ancora definita del tutto. Ma forse posso fornire un esempio della logica.

Ho già fatto in precedenza un’osservazione riguardo alle serie temporali stagionali. Quindi, quando è difficile definire la congruenza come metrica — e questa è una discussione che ho avuto con alcuni colleghi che dicevano “oh, ma potevi fare questo o quello” — il concetto essenziale è l’idea della media condizionale della previsione. Cos’è? Supponiamo che la domanda sia effettivamente stagionale, quindi vi sia una struttura sottostante. Quella struttura sottostante, che resta sconosciuta, è appunto la media condizionale.

Se dicessi di voler ottenere la previsione che sia la più stabile, o come la definiamo, la più congruente, in linea di principio sarebbe una linea retta, una linea piatta. Quella linea piatta non fornirebbe alcuna informazione riguardo la stagionalità. Quindi la previsione più congruente sarebbe in effetti una previsione deterministica che presuppone l’assenza di stocasticità, nessuna struttura nella serie, nulla di simile. Chiaramente, sarebbe una pessima previsione.

È qui che entra in gioco l’equilibrio: vogliamo la previsione più congruente in termini di questa media condizionale. Vogliamo che cerchi di essere stagionale, che segua quella struttura, ma senza spingersi al punto di catturare ogni singolo dettaglio. Quindi, si potrebbe dire che esiste una certa connessione con overfitting e underfitting, ma non è una connessione al 100% perché tutti concordiamo sul fatto che l’overfitting è una cattiva cosa.

Ma quando analizziamo lo stesso aspetto in termini di over congruence e under congruence, è facile dimostrare che l’under congruence è negativa, come nel caso della linea piatta di cui abbiamo parlato. D’altra parte, l’over congruence non è necessariamente negativa. E il “non necessariamente” è dove le cose diventano interessanti e complesse. Questo “non necessariamente” si collega molto ai punti che Joannes ha sollevato in precedenza, ovvero che ci sono altri aspetti nella gestione dell’inventario, nella supply chain, che ci interessano. Così facendo, aggiungendo questa congruenza in più nelle previsioni, semplifichiamo la vita dei decisori. Da un punto di vista statistico, potrebbe non essere la previsione più accurata, ma fornirà informazioni sufficienti affinché il decisore possa agire, rendendo le decisioni successive, sia finanziariamente sia secondo qualsiasi altra metrica dell’inventario (per esempio, minori sprechi o simili), più facili da ottenere.

Sto essendo un po’ vago qui perché non ho nulla di meglio da offrire rispetto all’euristico che ho citato prima. Questo è, come detto, un lavoro in corso e spero che il prossimo articolo fornisca l’espressione matematica completa per dire “ah, in realtà è un problema banale.” Non ce l’ho ancora. Quindi, in pratica, quello che suggerisco alle persone di fare per il momento è identificare la propria raccolta di previsioni accurate e, su quelle, scegliere quella che massimizza la congruenza. In un certo senso, una selezione in due fasi: prima si ottiene un pool accurato e poi si opta per quella congruente.

Ciò che è interessante è che risulta che nella maggior parte dei nostri esperimenti, questo modello tende ad essere uno che utilizza, ad esempio, qualche trucco con stimatori di shrinkage o aggregazione temporale, perché questi tendono a smussare le previsioni. Devo sottolineare, tuttavia, che anche altri colleghi hanno avuto idee simili. Possono modificare la funzione di perdita introducendo, per esempio, un termine che minimizza anche la variabilità della previsione. Tuttavia, dove credo che la metrica della congruenza si distingua un po’ è nel tentativo di mostrare la connessione anche con l’accuratezza, fornendo le espressioni per dire esattamente dove convergono e dove divergono.

Conor Doherty: Grazie, Nikos. Joannes, le tue considerazioni?

Joannes Vermorel: Sì, intendo dire, da Lokad, affrontiamo questo problema da un’angolazione leggermente diversa. Adottiamo un approccio radicale: contiamo gli errori in dollari, in euro, e assumiamo che le metriche debbano essere scoperte, essendo quindi completamente arbitrarie. È un approccio così diretto, quasi provocatorio, ottimizzare qualcosa quando la metrica è qualsiasi cosa. Quindi, come ci si approccia? Beh, si è scoperto che se la metrica è arbitraria, essa diventa effettivamente un programma, un programma per computer. Potresti avere metriche che non possono nemmeno essere rappresentate come programmi, in matematica si possono inventare concetti che sfuggono persino ai computer. Ma, per rendere la discussione più concreta, assumiamo che non entriamo in spazi matematici estremamente bizzarri e iper astratti. Quindi, abbiamo qualcosa che può essere almeno calcolato. Quindi, in sostanza, si tratta di un programma arbitrario.

La cosa positiva è che se vuoi ottimizzare praticamente qualsiasi cosa, ciò che ti serve sono i gradienti. Non appena hai i gradienti, puoi orientarti. Per il pubblico, non appena acquisisci la pendenza, significa che puoi indirizzare i tuoi parametri — qualunque essi siano — nella direzione giusta per minimizzare ciò che stai tentando di minimizzare. Quindi, ogni volta che vuoi ottimizzare, ottenere un certo valore più alto o più basso con un intento specifico, se puoi ottenere i gradienti, questo ti dà la direzione in cui andare, ed è di grande aiuto.

Ed è qui che la Differentiable Programming risulta davvero utile, perché è letteralmente un paradigma di programmazione che Lokad utilizza ampiamente. Ti permette di prendere qualsiasi programma e di ottenere i gradienti, ed è potentissimo. Di solito, è così che colleghiamo questa prospettiva finanziaria. Scopriremo quegli elementi finanziari. Sarà un processo disordinato, piuttosto casuale, e quello che otterremo sarà un programma un po’ strano che riflette le particolarità e le idiosincrasie della supply chain di interesse.

Possiamo differenziare qualsiasi programma, quindi possiamo differenziare quello e poi ottimizzare il modello che abbiamo, a condizione che esso sia differenziabile. Questo limita il nostro approccio a modelli che presentano una struttura differenziabile, ma ecco, in realtà, la maggioranza lo è. In questa competizione, la M5, per la competizione Walmart, siamo praticamente al primo posto a livello SKU con un modello differenziabile.

Quindi, imporre la differenziabilità non è qualcosa che impedisce di ottenere risultati all’avanguardia. Ora, andiamo al dunque: questo è fondamentalmente ciò che accade quando rinunci alle tue metriche, perché di solito finiamo per bilanciare un’infinità di fattori.

Un’altra cosa è che il forecasting probabilistico rappresenta l’idea di considerare tutti i futuri possibili, non solo per la domanda. Per esempio, hai menzionato i tempi di consegna con possibili orizzonti e simili, ma la realtà è che il lead time varia, c’è anche incertezza in questo ambito.

Ancor peggio, il lead time che osserverai è legato alla quantità che ordini. Se ordini, ad esempio, 100 unità, potrebbe arrivare più rapidamente rispetto a se ne ordini 1000, semplicemente perché, beh, la fabbrica che produce gli articoli avrà bisogno di più tempo.

Così finisci per ottenere una miriade di correlazioni che modellano e strutturano l’incertezza. Quindi, la prospettiva unidimensionale delle serie temporali non è sufficiente, anche se stiamo parlando di un solo SKU, perché dobbiamo aggiungere alcuni strati di incertezza extra, almeno per i tempi di consegna, almeno per i resi nell’e-commerce, e così via.

Userò il termine congruenza in senso lato perché lo avete appena introdotto, ma la nostra osservazione pratica, quando siamo passati ai modelli probabilistici, è stata che quei modelli, numericamente parlando, erano moltissimo più stabili.

Questo è stato molto interessante perché la maggior parte di quelle instabilità, incongruenze, o simili, riflettono semplicemente che hai molta incertezza ambientale. E hai aree con probabilità relativamente piatte. Quindi, secondo praticamente qualsiasi metrica, finché hai una previsione puntuale, il modello può fluttuare ampiamente.

E in termini di metriche, praticamente qualsiasi metrica tu scelga, sarà più o meno la stessa. Quindi, finisci per avere quella proprietà bizzarra che, se sei bloccato con previsioni puntuali e ti trovi in una situazione di alta incertezza, alta incertezza ambientale, puoi ottenere previsioni molto, molto differenti che risultano, secondo le tue metriche, quasi identiche.

E così, finisci per avere queste oscillazioni e simili. Ed è quando passi alle previsioni probabilistiche che entri in un ambito in cui, beh, il buon modello sarà semplicemente quello che esprime questa dispersione, che esprime questa alta incertezza ambientale. E ciò di per sé risulta molto più, direi, costante.

È molto strano, ma ti ritrovi in situazioni in cui facevamo tantissimi sforzi per ottenere un minimo di stabilità numerica e poi, passando al campo delle previsioni probabilistiche, otteniamo subito qualcosa di molto più stabile, dove quei problemi che facevano davvero male diventano secondari.

Quindi, questo è piuttosto interessante. E poi possiamo collegare tutto ciò con altre cose. Quando andiamo oltre la previsione delle serie temporali, ne abbiamo discusso un po’ su questo canale, ma sarebbe una digressione affermare che la maggior parte dei problemi di supply chain comporta un forte accoppiamento tra SKU, accoppiamento tra prodotti.

E così, molto frequentemente dobbiamo abbracciare una prospettiva non basata sulle serie temporali, una visione più ad alta dimensionalità. Ma di nuovo, è una digressione su una digressione.

Nikos Kourentzes: Sono completamente d’accordo. La previsione probabilistica è assolutamente necessaria. Sono arrivato al punto in cui, quando guardo alcuni documenti incompleti che sono rimasti in secondo piano per alcuni anni e vedo che non c’è la previsione probabilistica, penso che debba rivedere l’intero lavoro. Deve includere la previsione probabilistica, siamo nel 2024 ormai. Ma ecco il punto: mi piace la previsione probabilistica, soprattutto nel modo in cui Joannes l’ha spiegata, perché mi offre un ulteriore modo per evidenziare l’importanza della specificazione del modello.

Quando osservi l’incertezza intorno alla tua previsione, di solito assumiamo che essa derivi dalla stocasticità della serie temporale. Ma una buona parte di quell’incertezza è dovuta al fatto che il modello stesso è incerto. Hai l’incertezza che proviene dai dati, l’incertezza derivante dalla tua stima e l’incertezza del modello stesso. Potrebbe mancare di alcuni termini, oppure averne in eccesso, o potrebbe essere completamente sbagliato. Suddividere quella incertezza rimane un grosso problema.

Se non separi quell’incertezza, noterai spesso che molti modelli differenti, a meno che non siano sostanzialmente diversi, finiscono per mascherare l’incertezza tramite l’incertezza intrinseca del modello. Ti daranno un’incertezza più elevata, empiricamente parlando, e una buona parte di quell’incertezza sembrerà simile, perché quello che cercano di comunicarti è che tutti questi modelli sono problematici.

Non si arriva al vero fondo dell’incertezza dovuta agli elementi stocastici della domanda. Io non sono ancora riuscito a trovare un buon modo per risolvere questo problema e non ho visto nulla di simile in letteratura. Ma almeno la previsione probabilistica è onesta nel dire: “guarda, questa è la tua incertezza. È un po’ più alta di quanto pensassimo se basassimo tutto sulla previsione puntuale.” È un buon passo verso la soluzione.

Conor Doherty: Grazie a entrambi. Mi sono reso conto che qui abbiamo sia due accademici che due professionisti. Penso che a questo punto convenga indirizzare il discorso verso il pratico. Tutto ciò che fa Lokad, ma certamente anche il tuo articolo e la tua ricerca in generale, Nikos, applica queste idee al processo decisionale di inventory. A questo proposito, Joannes, quando hai parlato delle stranezze ed eccentricità della supply chain, dei tempi di consegna variabili e dell’effetto bullwhip, tutti questi concetti, la tua posizione, Nikos, nel working paper di cui stiamo parlando, era che perseguire la congruenza nelle previsioni può aiutare ad affrontare o mitigare gli effetti dell’effetto bullwhip. Potresti delineare questo concetto per far capire alle persone come questa idea possa contribuire a gestire quello che è un problema serio, l’effetto bullwhip?

Nikos Kourentzes: Presumo che il vostro pubblico ne sia ben consapevole. Il problema che ho con molte ricerche sull’effetto bullwhip è che si limitano a descriverlo invece di offrire azioni concrete per porvi rimedio. Almeno, dal punto di vista delle serie temporali, diciamo: “oh, guarda, questo è il tuo rapporto bullwhip”. Ma in molti modi si tratta solo di una descrizione del problema. Non ti viene detto come affrontarlo una volta misurato.

Ed è qui che dico: se voglio collegare la previsione alla decisione anziché tenerle separate, allora necessariamente ho bisogno di qualcosa che mi dica: “se procedi in questa direzione, ridurrai il tuo bullwhip”. Si scopre che, senza aver compreso questo fin dall’inizio, se si risolvono le equazioni, la congruenza e il rapporto bullwhip sembrano avere molte similitudini. Questa imposizione di similarità nel tempo, o congruenza come la chiamiamo semplicemente, risulta fortemente allineata all’idea di avere un bullwhip ridotto derivante dalle previsioni. Naturalmente, ci sono molte altre ragioni per cui potresti riscontrare un bullwhip.

Quindi, se utilizziamo una metrica congruente o qualcosa di simile per selezionare o specificare i nostri modelli di previsione, allora possiamo già puntare a una soluzione che sia più favorevole in termini di bullwhip. Qui, personalmente, lavorando nell’ambito delle previsioni, devo riconoscere che il bullwhip abbraccia molto più del solo forecasting. Il forecasting è solo una parte. Ci sono così tanti altri elementi in gioco. Ma per quanto riguarda le previsioni, puoi progettare, se pensi alla congruenza e a concetti simili, previsioni che siano almeno favorevoli in tal senso.

Joannes Vermorel: Quando iniziamo ad affrontare il bullwhip, quando ho detto che osserviamo la decisione e ottimizziamo euro e dollari, in realtà stavo semplificando. La realtà è che stiamo esaminando il processo decisionale sequenziale. E qui stiamo fondamentalmente toccando l’ottimizzazione stocastica dei processi decisionali sequenziali, un tema discusso con il Professor Warren Powell.

Ottimizziamo non solo la decisione immediatamente successiva, ma anche tutte le decisioni successive. Dobbiamo avere un meccanismo per riportare indietro tutte queste informazioni dal futuro, dove abbiamo simulato le decisioni che verranno generate tramite quelle previsioni, fino ad oggi. È qui che la programmazione differenziabile eccelle, perché sostanzialmente hai un programma che simula le decisioni future e devi essere in grado di far retropropagare il gradiente in modo da poter reiniettare quei risultati finanziari futuri nell’ingegnerizzazione delle tue previsioni attuali.

Il modo in cui di solito affrontiamo questo aspetto è: se torniamo al bullwhip, non sorprenderti dal bullwhip. Non c’è nulla nel tuo quadro di ottimizzazione che riconosca persino gli euro di costo che genererà nel tempo. Non c’è nulla che effettui quest’analisi del processo decisionale sequenziale, ripetendo la decisione nel tempo per verificare se sorge il problema del bullwhip.

La soluzione non è così complicata. Basta ottimizzare non solo la prossima decisione, ma tutte quelle che seguono. Implicitamente, quello che stiamo ottimizzando è una sorta di politica. Ma di solito la gente pensa all’ottimizzazione della politica come qualcosa di strettamente indipendente dalla previsione. Tendono ad avere un’ottimizzazione della politica che si limita a consumare la previsione. Il modo in cui Lokad vede le cose è che, no, questi elementi sono in realtà intrecciati.

La previsione superiore va di pari passo con una politica superiore. I due sono strettamente collegati. Esiste persino un recente articolo di Amazon, “Deep Inventory Optimization”, in cui eliminano completamente la distinzione. Hanno direttamente qualcosa che unifica l’approccio alla modellazione predittiva e quello della ricerca operativa, normalmente separati. Dicono: “No, faremo entrambe le cose insieme” e implementano un modello di ottimizzazione predittiva tutto in uno attraverso deep learning.

Questo è molto interessante perché significa letteralmente che la decisione è ottimizzata in maniera predittiva, ma la previsione stessa diventa completamente latente. È solo un altro modo di guardare al problema, ma è molto futuristico e crea altri problemi. Tuttavia, va detto che consideriamo ancora la modellazione predittiva e l’ottimizzazione stocastica come due fasi, due fasi altamente interconnesse tra cui ci sarà molto scambio.

Nikos Kourentzes: In realtà penso che mantenere le fasi separate abbia i suoi vantaggi. Tuttavia, non dovrebbero essere isolate e c’è una ragione per questo. Concordo pienamente sul fatto che una debba guidare l’altra. In passato ho lavorato con l’idea di un’ottimizzazione congiunta sia per l’inventory policy che per le previsioni. Il paper è stato pubblicato, quindi i dettagli sono disponibili per chi vuole approfondire. La mia preoccupazione con questo lavoro era che non riuscivo a renderlo scalabile. Non avevo un modo per eseguire l’ottimizzazione che mi permettesse di gestire un gran numero di SKU. Questo potrebbe dipendere dalle mie limitazioni nell’ottimizzazione piuttosto che dalla configurazione stessa.

Penso davvero che mantenere i due passaggi separati contribuisca a una maggiore trasparenza nel processo. Se si ha una soluzione congiunta e poi all’improvviso dico che il tuo inventario per gli ordini del periodo successivo dovrebbe essere 10 e qualcuno dice: “beh, io credo che dovrebbe essere 12”, diventa molto difficile giustificare perché il 10 abbia più merito del 12. Se comprendi la previsione e la politica derivante da essa, puoi avere una discussione più trasparente. “Va bene, ecco la mia previsione, questi sono i dettagli della previsione, ecco la mia politica, guidata da una buona previsione o eventualmente anche adeguata in base alle opzioni che ho, o viceversa”, potresti dire: “Se sono vincolato a queste politiche, forse dovrebbero essere in gioco solo determinati tipi di opzioni previsionali”. Ma così si ha comunque la trasparenza, che permette di dire: “Vedo qui elementi di previsione problematici, vedo qui elementi di ordine problematici.”

E l’altro problema che ho con chi si affida completamente a metodi di ottimizzazione o previsioni oscure, basando la propria fiducia in modo eccessivo sul deep learning, è che, indipendentemente da come si modella, a un certo punto gli esseri umani interverranno con il modello e con i suoi output. La ricerca e la mia esperienza suggeriscono che se le persone comprendono ciò che sta accadendo, la loro interazione con il modello e i numeri, e gli aggiustamenti che potrebbero adottare per incorporare informazioni contestuali, saranno più efficaci.

Se si tratta di un numero molto oscuro, di questa black box, molte persone tendono a dire che allora o non sapranno cosa farne oppure interagiranno in modo distruttivo con esso. Mi piace mantenere la separazione perché favorisce la trasparenza. Divide il problema, dicendo: “questo è il contributo proveniente da qui, questo è quello proveniente da lì”. Quindi, sono propenso ad essere abbastanza d’accordo con l’approccio che Johannes sta descrivendo. Dobbiamo in qualche modo unire i compiti, dove uno guida l’altro, ma dobbiamo anche essere in grado di spiegare cosa fa ogni passaggio.

Conor Doherty: Grazie, Nikos. Tornerò su questo punto, ma vorrei approfondire un aspetto. Hai menzionato l’intervento umano e l’override alcune volte. Qual è il ruolo dell’intervento umano in termini di congruenza delle previsioni? Spesso la tendenza, se ci si limita a misurare l’accuratezza, è di dire “il modello è sbagliato, io so meglio, lascia che intervenga” e, ovviamente, in molti casi questo aumenta soltanto il rumore. In che modo il concetto di congruenza nelle previsioni affronta questo problema? Prevede molti override o no?

Nikos Kourentzes: Questa previsione comportamentale o quei aggiustamenti giudiziali, noti con nomi diversi in letteratura, penso che ancora non ne sappiamo abbastanza, sebbene sia un campo di ricerca molto attivo. Alcuni studi sostengono che dovremmo eliminare questi aggiustamenti perché sono controproducenti o addirittura distruttivi in termini di accuratezza o del risultato finale. Il problema con questo ragionamento è che bisogna avere una metrica. Se uso l’errore percentuale assoluto medio, otterrò una risposta. Se uso l’errore quadratico medio, ne otterrò un’altra. Se uso la congruenza, otterrò un’altra risposta.

Tuttavia, la domanda che mi pongo, tornando al punto iniziale della discussione, è: perché non concentrarsi semplicemente sull’accuratezza? Voglio dire, anche voi non vi limitate all’accuratezza. Finché riconosciamo che questo aspetto è importante, dovremo ovviamente regolare o valutare gli aspetti comportamentali del processo di previsione o del processo di inventario con una metrica che vada oltre la semplice accuratezza. Non penso si debba eliminare l’intervento umano. Credo che ci siano sufficienti evidenze che, quando le informazioni contestuali a disposizione sono ricche, essi possano ottenere risultati migliori della maggior parte dei modelli. Tuttavia, non riescono ad aggiungere valore in modo costante. Ci sono molti casi in cui sentono semplicemente il bisogno di fare qualcosa o reagiscono eccessivamente a clamori o a informazioni per le quali è molto difficile capire come inciderebbero sul tuo inventario. In quei casi, l’interazione con il modello o con le previsioni diventa distruttiva.

Dobbiamo mantenere l’elemento umano perché può aggiungere valore, ma dobbiamo guidare quando esso deve farlo. È un processo che richiede tempo. Se posso dire agli analisti di lasciare alcune mansioni all’automazione completa e concentrare la loro attenzione su azioni specifiche, posso rendere il loro lavoro più efficace. Possono dedicare più tempo e risorse a fare meglio ciò in cui sono bravi. La congruenza entra in questa discussione in cui stiamo affermando che se dobbiamo andare oltre la precisione, allora, nella valutazione dei passaggi che aggiungono valore, può aiutare a discriminare quelli relativi alla gestione dell’inventario o, più in generale, alla presa di decisioni.

Una discussione simile la farei per gli ordini. I modelli o le politiche ti forniranno probabilmente una buona base se stai svolgendo bene il tuo lavoro di analista. Tuttavia, non riesco a vedere che questo possa essere universalmente il numero più informativo. Ci saranno sempre alcuni elementi, alcune disruption che, ad esempio, sono accadute questa mattina nella supply chain, qualcosa di difficile da valutare. Questo non avrà il problema di invecchiare bene o no. Ci sono conflitti nel mondo. Di solito, c’è sempre qualche conflitto in corso. A volte influenzerà la tua supply chain, altre volte no. A volte potrebbe mettere pressioni, diciamo, sull’inflazione e così via, e i tuoi consumatori potrebbero iniziare a comportarsi in modo diverso. Queste sono cose estremamente difficili da modellare.

Quindi, è qui che ripongo la mia fiducia negli esperti e negli analisti che hanno il tempo di svolgere correttamente il loro lavoro. E forse posso concludere con questo, in termini di aggiustamenti, dicendo che la ricerca suggerisce che scomporre i tuoi aggiustamenti, cioè se stai per dire “Va bene, raffinerò il numero di 100”, spiegando “Va bene, perché 100? Perché 20 per questa ragione e 80 per quest’altra”, si correla molto a quanto dicevamo prima: scomporre, se preferisci, oppure mantenere distinti – ma non isolati – i due passaggi della previsione e dell’inventario.

Perché se stai per dire “Va bene, cambierò il mio ordine del x%”, se chiediamo alla persona che lo sta facendo “Puoi spiegare quale parte di ciò deriva dalla tua comprensione del rischio proveniente dal modello di previsione o dalla realtà della supply chain?” Potenzialmente, potrebbero proporre un aggiustamento migliore.

Conor Doherty: Grazie, Nikos. Johannes, mi rivolgo a te. Sei un grande sostenitore dell’intervento umano, giusto?

Joannes Vermorel: No, durante i primi cinque anni in Lokad lasciavamo che le persone effettuassero aggiustamenti alle previsioni ed è stato un terribile errore. Il giorno in cui abbiamo iniziato a diventare un po’ dogmatici e l’abbiamo vietato del tutto, i risultati sono migliorati in modo drastico. Quindi, praticamente, non lo permettiamo più.

Quindi, prima di tutto, consideriamo il ruolo degli esseri umani. Voglio dire, le persone pensano a una SKU e direbbero, ma non è tipico. Una supply chain tipica conta milioni di SKU. E così, quando le persone dicono che vogliono fare aggiustamenti, in realtà stanno microgestendo un sistema incredibilmente complesso. È un po’ come se stessi entrando nella memoria casuale del tuo computer cercando di riorganizzare il modo in cui le cose sono memorizzate, mentre hai gigabyte di memoria e disco e altro ancora. Stai semplicemente scegliendo a caso alcune cose che hanno attirato la tua attenzione e non è un buon uso del tuo tempo.

E non importa quante informazioni tu ottenga, le informazioni che ricevi non le ottieni quasi mai a livello di SKU. Quindi, sì, c’è qualcosa che sta accadendo nel mondo, ma è qualcosa che riguarda il livello SKU? Perché se la tua interazione con un sistema consiste nel modificare qualcosa a livello di SKU, su quale base hai queste informazioni di alto livello che si traducono in qualcosa di remotamente rilevante a livello di SKU? Quindi, abbiamo questo enorme disallineamento.

La gente potrebbe pensare che, per fare un esempio semplificato, una situazione realistica sia quella di avere 10 milioni di SKU, che è una base per un’azienda che non è nemmeno molto grande. Questo è il mio problema, e qui in Lokad abbiamo notato un miglioramento massiccio, ed è perché, nella maggior parte dei casi, è un non-senso. Stai semplicemente scegliendo il 0,5% degli SKU per fare certe cose, e ciò non ha senso e solitamente crea molti problemi. E oltre a questo, crea tanto codice perché le persone non si rendono conto che permettere l’interazione significa dover scrivere moltissimo codice per supportarla, e tanto codice che può contenere bug. Questo è il problema del enterprise software. In genere, le persone lo considerano come se riguardasse solo le proprietà matematiche, ma il software enterprise ha bug, persino quello che scrive Lokad, sfortunatamente.

E quando hai una grande azienda, se vuoi avere l’interazione umana, devi avere workflows, approvazioni, controlli, auditabilità. Così finisci con così tante funzionalità che, fondamentalmente, inizi con un modello che ha tipo mille righe di codice, cioè il modello statistico, e finisci con un workflow che conta tipo un milione di righe di codice solo per far rispettare tutto.

Quindi sì, l’intento è piuttosto buono e credo che ci sia valore nell’interazione umana, ma assolutamente non nel modo tipico in cui viene prodotta. Il modo tipico in cui Lokad affronta l’interazione umana è dire: “Va bene, c’è qualcosa che sta accadendo nel mondo, sì. Ora rivediamo la struttura stessa del modello. Vedi, ancora una volta, il modello predittivo e l’ottimizzazione. E ancora, la posizione classica in letteratura è considerare i modelli come qualcosa di dato. Hai un articolo, è pubblicato, quindi operi con esso. Lokad, invece, non opera in questo modo. Noi ci approcciamo sostanzialmente alla modellazione predittiva e all’ottimizzazione tramite paradigmi di programmazione. Quindi Lokad non ha modelli, abbiamo solo una lunga serie di paradigmi di programmazione. Insomma, è sempre completamente personalizzato e assemblato al volo.

E dunque, in sostanza, è codice, con i giusti paradigmi di programmazione. E quando succede qualcosa, questi paradigmi ti offrono un modo per esprimere i tuoi modelli predittivi o modelli di ottimizzazione in maniera molto essenziale, snella e concisa. È letteralmente: “Riduciamo quelle 1.000 righe di codice, rendiamole 20 con la notazione appropriata”, se vuoi.

Poi puoi effettivamente tornare al tuo codice e pensare: “Va bene, ho qualcosa e devo intervenire.” Non si tratta a livello di SKU, è molto raro avere informazioni a quel livello. Le informazioni che ricevi dal mondo esterno sono generalmente di un livello molto più alto. E così, di solito, modificherai qualche aspetto ad alto livello del tuo modello. E questa è la bellezza: non è necessario disporre di un sacco di informazioni molto precise.

Ad esempio, se pensi, diciamo, di operare nel settore dei semiconduttori e sei preoccupato per l’intensificarsi delle tensioni tra Cina e Taiwan. Quello che faresti è prendere i tempi di consegna e aggiungere un margine in cui dici, ad esempio, che c’è il 5% di possibilità che i tempi di consegna raddoppino. Normalmente, nei semiconduttori i tempi di consegna sono molto lunghi, tipo 18 mesi, ma qui aggiungi, dal nulla, un aspetto: dici che annualmente c’è il 5% di possibilità che i tempi di consegna raddoppino, per qualunque ragione.

Non è necessario essere precisi, sai, alla fine potrebbe trattarsi di un conflitto, di una serie di lockdown, di un’influenza che chiude i porti, o di qualsiasi altra cosa. Ma questa è la bellezza di questo approccio probabilistico: combinato con i paradigmi di programmazione, ti permette di iniettare un intento a livello alto nella struttura stessa dei tuoi modelli. Sarà molto grezzo, ma ti consentirà di fare, in maniera direzionale, ciò che desideri, anziché microgestire le sovrascritture a livello di SKU.

E la cosa interessante è che, se torno a questo esempio in cui aggiungiamo questo 5% di possibilità che i tempi di consegna raddoppino, puoi letteralmente dare un nome a questo fattore. Diresti: “Questo è il nostro Fear Factor” ed è tutto. Semplicemente, dici: “Va bene, è il mio Fear Factor per le cose, sai, per le situazioni davvero negative” ed è perfetto. Ed è qui che risiede la bellezza: una volta che lo hai, tutte le tue decisioni saranno dolcemente orientate verso questa probabilità extra di un evento raro e non dovrai microgestire SKU per SKU e fare ogni sorta di cose che non invecchiano bene.

E se, dopo sei mesi, ti rendi conto che la tua paura non era giustificata, allora è molto facile annullare quell’intervento. Perché? Perché hai del codice in cui è presente questo Fear Factor corredato da un commento che dice: “Questo è il mio termine che rappresenta il Fear Factor”. Quindi, in termini di documentazione, tracciabilità, reversibilità, quando affronti un problema tramite paradigmi di programmazione, ottieni qualcosa di estremamente manutenibile. Perché questo è anche uno dei problemi che avevamo in passato quando le persone eseguivano interventi manuali, ed era quella, in effetti, la maggior parte del costo: la scarsa manutenzione degli override.

Le persone, a volte – non sempre, ma a volte – hanno l’idea giusta, applicano un override e poi se ne dimenticano. E così l’intervento rimane, diventando radicalmente negativo. Ed ecco il problema: una volta introdotto l’override, ci si potrebbe chiedere “ma perché lo hai fatto?” Beh, il problema con gli override è che, quando sei un fornitore di software come Lokad, rigeneri la tua previsione ogni giorno. Quindi le persone non possono semplicemente sovrascrivere la tua previsione e basta, perché domani rigenererai tutto.

E quindi devono in qualche modo rendere l’override persistente. E il problema è che ora hai un’impostazione persistente che rimane, e chi se ne occupa per mantenerla? E poi finisci per avere un workflow ancora più complesso per la manutenzione degli override, la loro graduale eliminazione, ecc. E tutte queste cose non vengono mai discusse in letteratura. È molto interessante, ma dal punto di vista di un fornitore di software enterprise, è semplicemente una situazione molto dolorosa, e finisci per avere 20 volte o persino 100 volte più righe di codice da gestire, un aspetto molto poco interessante rispetto all’affrontare l’elemento più fondamentale dell’ottimizzazione predittiva.

Nikos Kourentzes: In linea di principio, la posizione assunta da Joannes è una posizione con cui non credo che molte persone possano essere in disaccordo, o almeno quelle che hanno affrontato entrambi i lati. La mia opinione è che gli aggiustamenti non debbano avvenire in questo modo. Non ho ancora una soluzione a riguardo, perché si tratta di un’area di ricerca molto attiva. Come ho detto, so che molte persone hanno lavorato cercando di stabilire se sia opportuno eliminare questo tipo di aggiustamenti o quell’altro.

Si potrebbe anche pensare al problema in maniera molto diversa. Permettetemi di rispondere, in un certo senso, richiamando una ricerca analoga condotta con uno dei miei colleghi, Ive Sager. Lui è in Belgio. Abbiamo lavorato molto per cercare di capire come trasferire le informazioni esistenti a livello strategico o aziendale al livello delle SKU.

Così, questo potrebbe potenzialmente offrire un modo in cui dire: “Guarda, non andrò ad aggiustare ogni singola SKU.” Concordo pienamente che la microgestione non sia una buona idea, intendo sia per la SKU che in generale. Ma quella è una discussione diversa. Se lasci che le persone si scatentino con i loro aggiustamenti, la maggior parte delle volte, a causa dei bias umani, del senso di appartenenza e via dicendo, finiranno per sprecare tempo.

Per quanto riguarda l’aspetto software che Joannes ha menzionato, devo prendere la tua opinione per quella che è. Non opero nello stesso ambito, sebbene concordi sul fatto che i bug siano ovunque – nel mio codice, sicuramente. Ma posso vedere che esiste un modo diverso in cui qualcuno potrebbe concepire gli aggiustamenti come un processo nel suo insieme.

Non credo sia utile andare a dire, sai, “ora devo gestire X serie temporali”. Sarebbe più come: “strategicamente abbiamo cambiato direzione” oppure “il nostro concorrente ha fatto X”. Queste sono azioni molto difficili da quantificare, quindi potrebbe essere ancora meglio dire che l’inazione è preferibile a quantificare in modo casuale.

Ma vedo anche che queste informazioni non sono presenti nei modelli. Quindi, se aggiungessi al modello un rischio aggiuntivo che l’utente può calibrare, o se potessi chiedere all’utente “Puoi trovare un modo diverso di aggiustare il tuo output?”, rimane comunque un elemento soggettivo in un modo o nell’altro. Qual è il modo migliore per introdurre questo elemento soggettivo, credo sia una domanda aperta.

Non vedo il solito modo di fare aggiustamenti come produttivo. Non si tratta solo degli aspetti che complicano il processo, come ha menzionato Joannes, ma anche del fatto che vedo le persone sprecare il loro tempo. Si concentrano troppo su questo, dicendo “il mio lavoro è andare in ufficio ed esaminare ogni serie temporale una per una, guardare i numeri o i grafici”. Questo non è ciò che un analista dovrebbe fare.

Soprattutto al giorno d’oggi, quando le aziende iniziano ad avere team di data science, ci sono competenze, ci sono persone ben formate sul mercato. Non dovremmo sprecare il loro tempo in questo modo, dovremmo utilizzarli per migliorare il processo. È per questo che penso che ci sia spazio per gli aggiustamenti, ma non nel modo tradizionale. Credo che la ricerca sia piuttosto conclusiva nel dire che, a causa delle incoerenze e dei bias, in media non si otterrà il beneficio.

Conor Doherty: Non c’è nulla nel perseguire la congruenza delle previsioni come metrica che impedisca l’automazione. L’automazione potrebbe ancora essere parte del processo di previsione in un’ottica di congruenza, giusto? Oppure ho frainteso?

Nikos Kourentzes: In un certo senso, hai ragione. La mia interpretazione della congruenza, così come è definita e come l’abbiamo osservata empiricamente nei dati aziendali, indicherebbe all’utente di eliminare tutti gli aggiustamenti minori. Perché gli aggiustamenti causerebbero ulteriori fluttuazioni che risulterebbero incongruenti. Quindi, naturalmente, spingerebbe verso l’eliminazione di molti aggiustamenti.

Ma sono un po’ scettico, perché dovremmo capire dove stiamo diventando eccessivamente congruenti, dove le informazioni che gli esperti possiedono potrebbero essere critiche. Questa rimane una domanda aperta. Ma se pensiamo al processo usuale che sia Joannes che io abbiamo criticato, le metriche di congruenza ti aiuterebbero a evidenziare il problema.

Conor Doherty: Quindi, nessuno di voi ritiene che si debba prendere manualmente ogni singolo SKU e regolarlo quotidianamente. Sarebbe solo uno spreco sciocco di denaro. Quindi c’è pieno accordo su questo.

Joannes Vermorel: Ma questa è una prassi de facto della maggior parte delle aziende. Sono d’accordo quando dici che vuoi tradurre l’intento strategico. Sono completamente d’accordo. E quando dico che utilizzo il termine paradigmi di programmazione, mi riferisco semplicemente agli strumenti che te lo permettono. Quindi sostanzialmente, non vuoi che le persone si ritrovino impantanate nel micromanagement degli SKU, non vuoi che chiunque nel team di data science, che sta cercando di tradurre l’intento strategico, si ritrovi a scrivere codice prolisso e poco elegante, suscettibile di avere ancora più bug e problemi.

Ad esempio, hai una distribuzione di probabilità per la domanda, hai una distribuzione di probabilità per i lead times, e vuoi semplicemente combinarle. Hai un operatore per farlo? Se ne hai uno, Lokad ne ha uno, puoi letteralmente avere una riga di codice che ti fornisce il lead demand. Quella è la domanda integrata su un lead time variabile. Se non ce l’hai, allora puoi ricorrere al metodo Monte Carlo, nessun problema. Non è molto difficile. Con Monte Carlo campionerai la domanda, campionerai i lead times, e voilà, lo farai senza problemi. Ma anziché avere qualcosa che richiede una sola riga, ci vorrà del tempo, e avrai un ciclo. E se hai un ciclo, significa che puoi incorrere in eccezioni di indice fuori intervallo, eccezioni off-by-one, e ogni sorta di problemi. Ancora una volta, puoi risolverlo con pair programming, unit test e simili, ma questo aggiunge codice.

Quindi il mio punto era, e ti seguo davvero, penso che qui, vedi, questo è il succo di ciò che stavi menzionando. Hanno un team di data science. Spostare la soluzione – e sono completamente d’accordo con te – significa passare dal modificare un numero al modificare un pezzo di codice. E penso che sia esattamente qui che siamo allineati. Se spostiamo sostanzialmente l’intervento umano dal modificare un numero e scegliere a caso una costante nel mio sistema per modificarla, a dire “ok, mi occuperò del codice e ripenserò un po’ qual è l’intento e farò questo aggiustamento”, allora posso approvare, e funziona.

Il mio punto era spostare la soluzione dal modificare un numero al modificare un pezzo di codice. Se spostiamo l’intervento umano dal modificare un numero al gestire il codice e ripensare un po’ a qual è l’intento per fare questo aggiustamento, allora posso approvare, e funziona.

E infatti, se torniamo allo spreco di tempo, la cosa interessante è che quando modifichi il codice, sì, ci vuole molto più tempo per cambiare una riga. Può volerci un’ora, mentre cambiare un numero richiede circa un minuto. Ma quest’ora verrà applicata all’intera azienda. Sai, se viene fatto al giusto livello, significa che quell’ora di programmazione ti offre un beneficio a livello aziendale, contrariamente a quel minuto su uno SKU che potrebbe dare un beneficio, ma solo per quello SKU.

Conor Doherty: Quindi, stai parlando della differenza tra modificare manualmente un output, quello che la previsione indicava, e modificare la ricetta numerica che produce la previsione?

Joannes Vermorel: Esattamente, c’è un’informazione in questo mondo, la premessa di base credo sia che esiste un’informazione che appare nelle notizie o forse un’informazione privata a cui hai accesso tramite la rete stessa dell’azienda. Quindi, hai un’informazione extra che non è nel modello, che non è nei dati storici.

Quindi sono d’accordo con l’affermazione, e condivido l’idea che sì, non abbiamo ancora una super intelligenza, un’intelligenza generale. Non possiamo far sì che ChatGPT, sai, elabori tutte le email dell’azienda e lo faccia per noi. Quindi non abbiamo questo grado di intelligenza a disposizione. Perciò devono essere le menti umane a effettuare questo processo di filtraggio. E sono d’accordo sul fatto che c’è valore nell’avere persone che pensino in modo critico a queste informazioni e cerchino di rifletterle accuratamente nella supply chain.

E seguo davvero Nikos nel senso in cui dice, e poi data science, perché sì, in definitiva, dovrebbe essere compito del team di data science, ogni singolo giorno, dire “ho un modello. È veramente fedele all’intento strategico della mia azienda?” Che è una domanda di alto livello, ovvero, rifletto genuinamente la strategia come espressa da chi la definisce in azienda? Un problema qualitativo, non quantitativo.

Nikos Kourentzes: Lasciatemi aggiungere qualcosa qui, perché penso che Joannes abbia detto qualcosa di molto utile per far capire alle persone perché siamo critici nei confronti degli aggiustamenti tradizionali. Ha menzionato che non si tratta della previsione puntuale, ma della sua espressione probabilistica. Le persone aggiustano le previsioni puntuali, e ciò non ha alcun senso in termini di inventario. Ci interessano le probabilità dell’intera distribuzione.

Quindi, se qualcuno potesse farlo, magari potrebbe effettivamente fare qualcosa. Ma nessuno lo fa, e sai, lavoro con la statistica da, come ho detto, quasi 20 anni. Non riesco a farlo in modo semplice e immediato. E sai, la mia incapacità non significa che altri non possano farlo, ma tutto ciò che dico è che quando si pensa in termini probabilistici, l’informazione è così astratta che è molto difficile per qualcuno intervenire manualmente e dire, “sì, basta aggiustarla di 10 unità”. È un processo davvero arduo. Quindi, in un certo senso, molte persone effettuano tutti questi aggiustamenti sulla quantità sbagliata.

Joannes Vermorel: Sono completamente d’accordo. Quando dissi che a Lokad abbiamo smesso di fare aggiustamenti un decennio fa, era esattamente al momento in cui siamo passati al probabilistico. Le persone dicevano che dovevamo fare aggiustamenti, e poi venivano loro mostrati gli istogrammi della distribuzione di probabilità.

Noi dicevamo: “Fate pure”, e poi le persone si ritiravano dicendo: “No, non lo faremo”. Era infatti un meccanismo per impedire alle persone di interferire a un livello inappropriato. Quando venivano loro mostrati gli istogrammi delle distribuzioni di probabilità, capivano che c’era molta profondità. Voglio dire, le persone pensavano a quelle distribuzioni di parità per la supply chain come a morbide curve a campana, gaussiane e simili. Ma non è così.

Ad esempio, supponiamo che tu abbia un negozio fai-da-te DIY. Le persone comprerebbero determinati prodotti solo in multipli di quattro, otto o 12 perché c’è una logica in ciò. Quindi il tuo istogramma non è come una curva a campana; presenta dei picchi in cui le persone acquistano un’unità perché ne hanno bisogno come riserva, oppure comprano quattro o otto, e niente di intermedio. Quindi, quando inizi a pensare: “Ok, dovrei spostare la media da 2,5 a 3,5?” e guardi l’istogramma, scopri che mostra tre picchi: una unità, quattro unità, otto unità.

Improvvisamente le persone dicono che non ha senso cercare di spostare quei valori. Non sposterò la probabilità attualmente assegnata dal valore quattro al valore cinque, perché non succederà. Quello che probabilmente vorrei, se desidero aumentare la media, è diminuire la probabilità di zero e aumentare quella per tutte le altre occorrenze.

Le persone si rendono conto che c’è molta profondità in quelle distribuzioni di probabilità. Ci sono molte stranezze, per citare ad esempio quei multipli magici che esistono. Questa era la nostra osservazione. Siamo completamente d’accordo che, quando le persone vedono quelle distribuzioni, capiscono che non aggiusteranno manualmente l’istogramma secchio per secchio. Quindi, quella reazione di impraticabilità è reale.

Conor Doherty: Beh, ancora, tengo a mente che abbiamo effettivamente occupato parecchio del tuo tempo, Nikos. Ma ho un’ultima domanda. Lavori in un laboratorio di intelligenza artificiale, e sembrerebbe un peccato non chiederti come l’AI potrebbe inserirsi nell’intero contesto di cui stiamo parlando per il futuro. Quindi, sia che si tratti dell’automazione della previsione in linea con un’AI che effettua le sovrascritture, non so, delineaci come vedi il futuro in questo ambito, per favore.

Nikos Kourentzes: È una domanda da un milione di dollari. Posso rispondere nello stesso modo in cui uno dei revisori che ha esaminato il documento aveva alcune perplessità. La domanda era tipo: “Ok, e allora? Ecco un’altra metrica, e allora?”

E dicevo: “Guarda, se hai un modello statistico abbastanza semplice, puoi risolvere tutto tramite i calcoli, puoi trovare ogni cosa in modo analitico, bene. Ma quando inizi ad entrare nel machine learning e, soprattutto, con i massicci modelli di AI che stiamo utilizzando ora, questo diventa un compito molto difficile. Quindi è molto utile avere degli indicatori, qualcosa del genere, che possano rendere un po’ più semplice capire cosa stiano facendo questi modelli.”

Se, per esempio, ho un massiccio modello di AI e possiamo dire: “Guarda, questo spinge la previsione verso una maggiore congruenza”, allora potrei avere un modo per considerare questo modello in maniera più semplice. Quel modo più semplice non consiste nel ridurre in alcun modo la complessità del modello, ma nel comprendere come questo influenzi il mio inventario, come influisca sul mio processo decisionale, come impatti la mia ipotesi di bullwhip menzionata in precedenza, nel processo in corso.

Questo è sostanzialmente come concludiamo il nostro working paper. Stiamo dicendo che il beneficio di questa metrica è comprendere come possano comportarsi i modelli che sono scatole nere. Non credo che in futuro vedremo modelli che non siano in qualche modo ispirati dall’AI. Sono un po’ scettico quando le persone vogliono sostituire tutto con l’AI, perché alcune soluzioni possono essere semplicemente più semplici e più efficienti. La mia preoccupazione non deriva necessariamente dalla matematica del problema o dalla ricchezza dei dati, e così via. Penso che questi siano problemi che possiamo risolvere. La mia preoccupazione nasce più da un aspetto di processo molto semplice e dalla sostenibilità della questione.

Se ho un massiccio modello di AI in esecuzione che, una volta che scala tutto su quel modello, inizia a consumare moltissimo cloud computing e molta elettricità, devo davvero fare tutto ciò se otterrò solo una differenza dell'1% rispetto a una media mobile esponenziale? A volte avrò una differenza ben superiore all'1%, avanti pure. Ma a volte non ho bisogno di tutta questa complicazione. Posso optare per qualcosa di più semplice, che sia anche più trasparente per gli esperti non di AI.

L’AI è una via da seguire per molti dei problemi che abbiamo. Penso che in molti casi le sfide previsionali che affrontiamo, e soprattutto le decisioni che supportiamo con quelle previsioni, siano un ottimo terreno per applicazioni di AI. Ma non si tratta di un generico “dimentichiamo tutto ciò che sapevamo, andiamo sull’AI”. Questo è in parte riflesso anche nel documento. Perché, come ho già detto, non è il primo documento a dire: “Oh, cambiamo un po’ l’obiettivo per non limitarsi solo all’accuratezza.” Altri colleghi l’hanno fatto anch’essi. La differenza è che noi stiamo cercando di fare un po’ di algebra per mostrare: “Beh, questo è davvero ciò che accade una volta fatto.” Quindi mi piace quando riusciamo a fare questo tipo di interpretazione o a coglierne l’intuizione.

L’AI è una via da seguire per molte questioni, ma non dobbiamo dimenticare che è utile per noi capire che diavolo stiamo facendo. Non dovremmo fidarci ciecamente e dire che il modello di AI farà esattamente ciò che spero faccia. Non sto dicendo che i modelli di AI non possano fare davvero cose buone. Sto solo dicendo: “Non lasciamoli al caso o speriamo che funzionino. Dovrebbero essere migliori di quanto io possa semplicemente sperare.”

Conor Doherty: Quali sono i tuoi pensieri al riguardo?

Joannes Vermorel: Penso che Nikos abbia perfettamente ragione. Proprio come dicevo, per gli aggiustamenti va considerato il numero di linee di codice. L’overhead dei modelli di deep learning è assolutamente enorme e complica tutto. Poche persone si rendono conto che, per molte schede GPU, non è nemmeno chiaro come rendere i calcoli deterministici. Ci sono molte situazioni in cui letteralmente esegui il calcolo due volte e ottieni due numeri differenti perché l’hardware stesso non è deterministico.

Ciò significa che si finiscono per avere i cosiddetti Heisenbugs? Sai, quei bug che, quando cerchi di riprodurli, scompaiono. A un certo punto, smetti di inseguirli perché dici: “Beh, sto cercando di riprodurre il caso, non succede, quindi suppongo che funzioni.” E poi li rimetti in produzione, e il bug si ripresenta, e non riesci a riprodurlo.

Quindi sono completamente d’accordo. La semplicità rende tutto in qualche modo migliore, quando le prestazioni sono sostanzialmente nella stessa fascia. Se hai qualcosa di massicciamente più semplice, la soluzione più semplice vince sempre in pratica. Non ho mai visto una situazione in cui un modello che supera un altro di pochi percento, secondo qualsiasi metrica, si comporti meglio nel mondo reale.

È un’alternativa se l’altra opzione è un ordine di grandezza più semplice per ottenere più o meno lo stesso risultato nella stessa fascia, anche se la metrica sono quei cosiddetti dollari o Euro che Lokad cercava di ottimizzare. La ragione è un po’ strana, ma il motivo è che le supply chain cambiano, come abbiamo detto, a causa dell’intervento umano.

Quando vuoi intervenire per cambiare, il tempo è fondamentale. Se hai un programma, un modello complesso, migliaia di linee, significa che anche solo la logistica, ad esempio, qualche anno fa a Lokad, aveva decine di clienti impattati dalla Evergreen che aveva bloccato il Canale di Suez. Avevamo sostanzialmente 24 ore per regolare tutti i lead times per praticamente tutti i nostri clienti europei che importavano dall’Asia.

È per questo che poter rispondere in poche ore, anziché aver bisogno di una settimana solo perché il mio modello è molto complicato, è cruciale. Se vuoi che ti consegni la soluzione senza introdurre così tanti bug nel processo da compromettere quello che faccio, hai bisogno di un modello più semplice. Sono completamente d’accordo: c’è un valore, ma c’è anche un costo. Per quelle aziende che hanno iniziato a sperimentare con GPT4, il costo è molto elevato.

Conor Doherty: Bene, Nikos, non ho altre domande, ma è consuetudine dare la parola conclusiva all’ospite. Quindi, per favore, c’è qualche call to action o qualcosa che vorresti condividere con gli spettatori?

Nikos Kourentzes: Per me, il call to action è che dobbiamo superare le visioni tradizionali della previsione in isolamento dal processo decisionale. Nel contesto della nostra discussione, sull’inventario e così via, dobbiamo cercare di vedere queste cose in maniera più integrata.

I’m an academic, other colleagues will have other opinions, Lokad has its perspective as well. I think there is value in all these perspectives because all of them point in the same direction. We have to leave what we were doing a few decades ago, update our way of thinking, update our software, update our textbooks. There is value in doing that. It’s not just about changing our software or whatever, it will actually lead to different decisions.

Accolgo con favore l’inclusione, nel campo delle previsioni, di molte persone provenienti dall’Informatica, dal deep learning, dalla programmazione, e dal settore dell’inventario, perché ora siamo nel punto in cui possiamo affrontare questi problemi seriamente. Non voglio dare l’impressione che ciò diminuisca alcunché dal valore del mondo delle previsioni come campo di ricerca. Appartengo a quel mondo, quindi mi preme anche dire che non possiamo semplicemente prenderci un mucchio di librerie, eseguire qualche codice e dire che va bene.

Molte volte, quando collaboro con l’industria o con istituti, il valore sta nel definire il processo giusto, nell’affrontare la metodologia sbagliata, ed è proprio ciò che il campo delle previsioni può offrire. Mi piace l’idea di mantenere i vari passaggi nel processo, però dobbiamo lavorare insieme per elaborare una soluzione comune. È un ambito promettente.

Tornando all’inizio della domanda, dove ho detto che mi piace lavorare con il team all’università. C’è polifonia, ci sono molte idee. Io presenterò la mia domanda sulle previsioni e altri diranno: “Che dire di questo? Hai considerato questa prospettiva?” E io penserò: “Guarda, non ci avevo mai pensato.”

Conor Doherty: Grazie, Nikos. Non ho altre domande. Joannes, grazie per il tuo tempo. E ancora, Nikos, grazie mille per essere stato con noi e grazie a tutti voi per averci seguito. Ci vediamo alla prossima.