L’AI bussa alla porta, l’industria guarda dallo spioncino e non apre (ma lo farà…)

 

Un pò di chiarezza

Intelligenza artificiale, reti neurali, machine learning e deep learning: sono i termini di recente comparsi in migliaia di pubblicazioni. Il loro utilizzo è diventato quasi compulsivo. Il concetto di Intelligenza Artificiale si riferisce alla capacità di una macchina di emulare in modo più o meno fedele e articolato il comportamento umano. Si tratta di un concetto datato: già negli anni 40 i primi studi sulle macchine da calcolo automatiche partorirono l’idea che un automa elettronico potesse imparare qualcosa accumulando conoscenza.

Anche il termine Machine Learning è piuttosto datato, risale agli anni 50 e indica un algoritmo in grado di “adattarsi” nel tempo man mano che viene sottoposto ad alcuni stimoli (dati). L’idea di base è che un dispositivo elettronico non programmato esplicitamente per risolvere un problema (ad esempio prendere una decisione analizzando i dati) possa imparare a farlo dopo aver processato esempi di problemi analoghi già risolti, cioè di cui è nota la soluzione.

In questi anni nascono anche i primi studi sulle Reti Neurali (artificiali), che si svilupperanno appieno negli anni 60. L’algoritmo è progettato per emulare il comportamento dei neuroni e le loro connessioni. Nella sua formulazione più semplice, una combinazione lineare di valori (dati) genera un risultato (decisione), capace di imparare attraverso un grande numero di esempi, commettendo sempre meno errori.

Deep Learning è un termine più moderno. Derivato da Machine Learning, indica modelli più sofisticati, capaci di sviluppare una conoscenza più complessa grazie alla presenza di molti “strati” di elaborazione nascosti (deep) che si interpongono tra gli stimoli e la decisione, similmente a quanto accade in un cervello umano.Queste tecnologie sono rimaste “nel cassetto” per tanto tempo, relegate a utilizzi di nicchia. Il motivo? Per funzionare richiedono potenze di calcolo enormi, fino a pochi anni fa fuori dalla portata di un singolo processore. Oggi, grazie all’evoluzione tecnologica, esempi di intelligenza artificiale piuttosto complessi si ritrovano all’interno di uno Smartphone o di un assistente vocale.

L’intelligenza Artificiale e l’Industria

Sebbene l’Intelligenza Artificiale rappresenti una grande potenzialità nell’industria moderna, tuttavia questa stenta a decollare e occupa ancora un ruolo marginale. Eppure disporre di sistemi in grado di adattarsi rapidamente e ridurre gli errori o gli scarti è il sogno di qualsiasi impianto produttivo.

La direzione è già tracciata, ma il tasso di adozione è limitato. La maggior parte delle applicazioni dell’AI sono legate a singoli sensori o moduli oppure, se abbracciano una porzione più ampia di impianto, sono impiegate in compiti di analisi delle performance, reporting e manutenzione predittiva.

È praticamente impossibile trovare una rete neurale che prenda decisioni operative di alto livello, ad esempio, supervisionando attivamente un’acciaieria. Quali sono dunque le principali criticità che rallentano questa (inevitabile) diffusione in ambito industriale?

Processo di Sviluppo del SW

L’ingegneria del Software è il riferimento per il design di sistemi complessi, a volte costituiti da milioni di linee di codice. L’approccio strutturato è basato sul concetto di decomposizione. Nel processo iterativo in cui si susseguono livelli di definizione caratterizzati da un dettaglio sempre maggiore: un requisito definito a un livello viene “mappato” all’interno di sottosistemi e componenti e declinato in requisiti più semplici e specifici. Il comportamento di ogni componente nel suo contesto di utilizzo è definito in modo univoco e non ambiguo: è stabilito cosa deve fare ciascun modulo SW se sottoposto a un certo input. Un’applicazione di AI si allontana da questo paradigma: il comportamento di un sistema esperto non è noto a priori e dipende dall’esperienza che ha vissuto.

Questa discrepanza genera questioni di difficile soluzione, in quanto già in fase di design diventa arduo inquadrare il comportamento di un modulo AI usando le classiche espressioni “shall”, tipiche del linguaggio dei requisiti. La situazione peggiora nella seconda parte del classico “V-model”: come è possibile definire in modo formale i test di validazione di un’applicazione di AI? Qual è il livello di esperienza che deve avere? I test devono essere ripetuti se il sistema continua a imparare? Inoltre nei progetti ampi la responsabilità della fornitura è spesso condivisa tra più fornitori che progettano, implementano e testano alcuni sottosistemi da integrare. Spesso la responsabilità è formalizzata attraverso procedure di test e accettazione dei deliverable.

Utilizzando un approccio tradizionale diventa complesso stabilire se un sistema intelligente “funziona” o no e – di conseguenza – imputare correttamente le responsabilità di un eventuale scostamento delle performance dell’impianto.

Quali altri fattori rallentano la diffusione dell’AI nell’Industria? Li presenteremo nel prossimo articolo!


CORRELATI