Anche se le iniziative di Quantitative Supply Chain possono essere realizzate su qualsiasi piattaforma provvista di un linguaggio di programmazione, la nostra piattaforma è stata progettata appositamente per supportare queste iniziative. Lokad è una piattaforma dedicata alla progettazione e al lancio di applicazioni su misura per l’ottimizzazione predittiva della supply chain. Rispetto agli strumenti di sviluppo tradizionali, Lokad offre produttività, affidabilità, manutenibilità, sicurezza e, non da ultimo, mggiore performance per la supply chain.
Al centro di Lokad si trova
Envision, un linguaggio di programmazione DSL (
Domain-Specific programming Language). Questo linguaggio è destinato agli esperti della supply chain, non a ingegneri del software. Il nostro obiettivo primario è quello di affidare l'ottimizzazione della supply chain a coloro che hanno una competenza diretta in materia. Così facendo, Lokad alleggerisce le iniziative supply chain eliminando i passaggi intermedi tra il business e l'IT.
Grazie ad Envision, superiamo di gran lunga le capacità degli APS (
Advanced Planning Systems), "avanzati" solo di nome, della BI (
Business Intelligence) e persino quelle degli strumenti di previsione creati ad hoc. Infine, ma non meno importante, rispetto ai linguaggi di programmazione generici – come Python – Lokad offree applicazioni più sicure e maneggevoli.
Oltre i fogli di calcolo
Excel è lo strumento più utilizzato nella supply chain. Riconosciamo le grandi qualità di Excel: è semplice, intuitivo, espressivo e, soprattutto, permette di avere sempre i dati sotto controllo. Excel ha ottenuto il successo mondiale che merita. Nel mettere appunto Envision, abbiamo lavorato sodo per preservare tutte le grandi qualità di Excel.
Tuttavia, per quanto riguarda la supply chain, Excel non è esattamente il miglior strumento per l'analisi. Il punto di forza di Excel è anche la sua più grande debolezza: la logica di calcolo e i dati si aggrovigliano ripetutamente, e questo è una fonte inesauribile di problemi non appena i fogli iniziano a crescere di volume. Eppure, spesso questi grandi fogli sono indispensabili alle supply chain, e vengono utilizzati da aziende che hanno centinaia o addirittura migliaia di prodotti.
Sfortunatamente, questo problema di aggrovigliamento di logica+dati non può essere risolto in Excel, perché la "correzione" andrebbe contro ciò che rende Excel uno strumento così efficiente. Di conseguenza, noi di Lokad, abbiamo deciso di progettare Envision, una tecnologia che conservasse le preziose proprietà di Excel per quanto riguarda la supply chain, ma che supportasse anche la scalabilità fino a centinaia di milioni di ordini o SKU, se questo è ciò che di cui l’azienda ha bisogno.
I fogli di calcolo, e non solo Excel, non sono orientati ai calcoli per l'ottimizzazione della supply chain. Ad esempio, non possiedono praticamente alcuna funzione che permetta di gestire le
previsioni probabilistiche. Questo li limita ad una mentalità "drive by average" che è dannosa per le supply chain. Allo stesso modo, i fogli di calcolo non hanno quasi nessuna funzionalità che permetta di realizzare un'ottimizzazione vincolata da determinate condizioni. Di conseguenza, anche vincoli banali come i quantitativi minimi d’ordine (MOQ) richiedono l’intervento manuale dei professionisti della supply chain.
Envision fornisce dei costrutti specifici - come un'algebra di variabili casuali - che sono essenziali per l'ottimizzazione predittiva delle supply chain, ma che non sono disponibili nei fogli di calcolo. Quindi, le applicazioni costruite con Envision sono molto più maneggevoli rispetto ai fogli di calcolo, che sono poco scalabili in presenza di problemi complessi.
Non solo osservare i dati, ma agire su di essi
Le soluzioni di Business Intelligence (BI) sono spesso vendute come l’evoluzione di Excel in termini di
business analytics. Tuttavia, sulla base degli anni di esperienza di Lokad, siamo giunti alla conclusione che, per quanto riguarda le supply chain, la BI raramente raggiunge i benefici previsti. Il problema non risiede nella qualità degli strumenti di Business Intelligence: il mercato della BI è maturo e sono disponibili alcune soluzioni eccellenti. La difficoltà sta piuttosto nel fatto che osservare i dati per "ottenere delle intuizioni" è estremamente costoso per le aziende con migliaia di prodotti e clienti.
Nella supply chain, gli strumenti di BI non riescono a scalare non perché non possano elaborare tutti i dati disponibili – al contrario di Excel, buoni strumenti di BI possono elaborare grandi quantità di dati – ma perché la vera difficoltà è quella di produrre pochi numeri rilevanti al giorno che valga la pena leggere e su cui valga la pena agire (come abbiamo detto prima, produrre milioni di numeri al giorno è economico, ma non molto utile). Nonostante tutti i suoi difetti, Excel si presenta con questo spirito di "ottenere le cose fatte", mentre la BI no.
Con Envision, volevamo assolutamente preservare questa prospettiva del "fare le cose". Per esempio, Envision può generare liste di azioni prioritarie come:
- Elencare i prodotti da mantenere ad un basso margine lordo per fare pressione sui concorrenti
- Generare le quantità necessarie per riempire con precisione il prossimo container da ordinare
- Elencare i principali articoli che devono essere liquidati per fare spazio all’interno del magazzino
- Elencare i principali articoli che vengono regolarmente rinviati dai clienti e che devono essere ritirati dalla lista
Le decisioni quantitative generate da Envision possono poi essere automaticamente reimportate nell'ERP, o scaricate sotto forma di fogli di calcolo. L'esatto perimetro di Envision si adatta alle priorità della vostra azienda.
La vostra azienda non può sottrarsi alla programmabilità
Envision è un linguaggio di programmazione. A tutti coloro che non sono sviluppatori di software, questo probabilmente sembrerà "molto" tecnico; la maggior parte dei dirigenti aziendali, anche nella più grande delle aziende, si chiederà se il proprio team sarà in grado di essere produttivo con uno strumento così avanzato. La nostra esperienza ci dice che la supply chain è incredibilmente complessa. Abbiamo visto alcuni fornitori promettere strumenti così semplici che anche "un bambino di 9 anni avrebbe potuto usarli", e alla fine ottenere risultati in linea con quelli che un "bambino di 9 anni" avrebbe ottenuto.
Le supply chain sono composte da migliaia di prodotti, e spesso anche molti di più. Ogni prezzo, ogni livello di stock, ogni assortimento deve essere costantemente aggiustato. Non è possibile mantenere un livello di produttività soddisfacente senza automatizzare tutti questi compiti di routine. Eppure l'automazione da sola non è sufficiente: deve essere un'automazione intelligente che sia perfettamente allineata con i vostri specifici driver aziendali. Ed è la parte "programmabile" che permette di raggiungere questo allineamento.
Ogni volta che qualcuno crea una formula complessa in un foglio di calcolo, questa persona fa leva sull'espressività programmatica del foglio di calcolo. Non ci si può liberare dalla "follia dei fogli di calcolo" se i team non hanno un'alternativa migliore per introdurre tutta la loro esperienza all’interno dei sistemi. Envision è concepito proprio come quest’alternativa superiore.
Oltre Python
Nonostante la crescente popolarità delle iniziative di
data science, la dura realtà è che la stragrande maggioranza di queste iniziative non si dimostra all'altezza delle aspettative. Più nello specifico, nonostante i prototipi iniziali siano spesso promettenti, queste iniziative di solito falliscono nella fase di avanzamento verso la messa in produzione. Al contrario, Envision è stato progettato pensando alla
produzione nella supply chain, per mitigare il più possibile questi tipi di problemi. Ci sono due cause alla base di questi insuccessi. Discutere i pro e i contro di tutte le alternative ad Envision rischierebbe di essere un po' noioso, quindi, per chiarezza, la discussione sarà incentrata sul contrasto tra Python ed Envision.
In primo luogo,
Python richiede ingegneri del software. Infatti, Python, come ogni vero e proprio linguaggio di programmazione, rivela tonnellate di complessità tecniche a chi scrive codice in questo linguaggio. Aspettarsi che il personale siano sia esperto sia di ingegneria della supply chain che di ingegneria del software è troppo. Le capacità programmatiche devono essere accessibili ad un ampio spettro di persone tecnicamente preparate, non solo a ingegneri del software professionisti.
In secondo luogo,
i costi di manutenzione dei modelli scritti in maniera frettolosa in Python salgono alle stelle. I costi di manutenzione devono essere tenuti sotto controllo. Python è ben lungi dall'essere
lean, snello, dal punto di vista hardware. Poi, la decifrazione dei problemi di ottimizzazione della supply chain è un processo disordinato: i dati di molti sistemi (poco affidabili) devono essere incanalati in modo affidabile, i processi imprecisi e in continua evoluzione devono essere documentati e modellati, le metriche di ottimizzazione devono riflettere una strategia d’impresa in continua fluttuazione, ecc. Python non offre quasi nessuna “correctness-by-design” a supporto di tali sforzi.
Envision è la nostra risposta a queste problematiche. Esso brilla in campi che non sono alla portata di Python, vale a dire:
- Difesa in profondità, previene intere categorie di problemi di sicurezza che si presentano ogni volta che è coinvolto un linguaggio di programmazione generico.
- Performance trasparente, impedisce la scrittura di programmi che non saranno in grado di funzionare velocemente una volta in produzione.
- Aggiornamento trasparente, per quanto lo stato dell'arte sia un obiettivo in costante evoluzione, gli aggiornamenti dovrebbero essere effettuati automaticamente, in genere attraverso la riscrittura del codice in background.
- Stack compatto, elimina l'onere di assemblare decine di pezzi di software, anche considerando l'applicazione più semplice.
Per concludere, anche se Python è fantastico (e lo è), non è una soluzione soddisfacente per l'ottimizzazione della supply chain quanto lo è Envision. Costruire e mantenere in produzione un'applicazione di machine learning in Python è possibile, ma i costi sono elevati, e a meno che la vostra azienda non sia pronta ad avere un team di ingegneri del software completo dedicato alla manutenzione di questa applicazione, non funzionerà una volta in produzione.