Rappresentazioni di sistemi elettronici embedded con intelligenza artificiale

“Oggi si tende a separare l’elettronica dall’informatica, pensando che da un lato ci siano i circuiti, dall’altro il codice. In realtà, questa distinzione è ormai superata. Il chip, che rappresenta il cuore di ogni sistema elettronico, viene realizzato attraverso un’attenta programmazione. Con l’evoluzione tecnologica e la diffusione di dispositivi smart, siamo arrivati a integrare persino modelli di intelligenza artificiale, come le reti neurali, direttamente nei microcontrollori. Quello dell’ingegnere elettronico è dunque un percorso che unisce competenze diverse, dalle basi di matematica e fisica alla progettazione dell’hardware, fino alla programmazione necessaria per far funzionare e “pensare” questi dispositivi. È proprio questo intreccio tra discipline, questa continuità tra teoria e applicazione che ha fatto in modo che la curiosità di capire come funzionassero i dispositivi elettronici diventasse poi il mio lavoro”.

È con questa riflessione che Laura Falaschetti, ingegnere elettronico, ricercatrice e docente presso l’Università Politecnica delle Marche, apre la sua intervista per la Società Italiana di Elettronica. Dopo la laurea e il dottorato in ingegneria elettronica, ha proseguito il suo percorso accademico e di ricerca nello stesso ateneo, approfondendo diversi ambiti con un costante focus sui sistemi embedded.

“Un sistema embedded è un sistema elettronico digitale progettato per controllare ed eseguire operazioni specifiche. È molto più diffuso di quanto si pensi perché lo troviamo in tantissimi oggetti della vita quotidiana, dai dispositivi domotici agli elettrodomestici come frigoriferi e lavatrici. Per esempio, quando apriamo il frigorifero, la temperatura interna cambia e c’è un sistema embedded che la rileva e interviene attivando il compressore per riportarla al valore impostato. Si tratta di sistemi progettati per svolgere una funzione ben precisa. Proprio questa specializzazione consente di realizzare dispositivi efficienti, affidabili e a basso costo, con numerosi vantaggi rispetto a soluzioni più generiche. Oggi è possibile arricchire questi sistemi con nuove funzionalità, tra cui l’intelligenza artificiale. Riprendendo l’esempio del frigorifero: se prima ci limitavamo a rilevare e regolare la temperatura, ora possiamo integrare sensori e telecamere per riconoscere gli alimenti presenti e generare automaticamente la lista della spesa. Questo significa passare da un sistema embedded tradizionale a uno AI-enabled, in cui l’intelligenza è integrata direttamente “on edge”, cioè sul dispositivo stesso. In questo contesto, l’uso delle reti neurali in ingegneria assume caratteristiche particolari: lavorando su microcontrollori, infatti, non si dispone di potenza di calcolo illimitata. Non basta quindi programmare per una funzione specifica, ma è necessario conoscere a fondo anche l’architettura hardware per ottimizzare l’acquisizione e l’elaborazione dei dati. L’ingegnere elettronico deve avere una visione completa del sistema, dal circuito alla programmazione. Non a caso, la ricerca si sta orientando sempre più verso acceleratori hardware per l’AI: non solo integrare reti neurali in sistemi esistenti, ma progettare componenti dedicati capaci di massimizzarne le prestazioni. In questo scenario, il compito dell’ingegnere è ottimizzare sia la componentistica sia la comunicazione tra i vari elementi del sistema”.

Secondo la dottoressa Falaschetti, l’ingegnere elettronico è sempre più orientato verso lo sviluppo di acceleratori hardware. In passato l’obiettivo era ottimizzare il software per adattarlo all’hardware disponibile, oggi la sfida è progettare hardware per valorizzare il software, in particolare gli algoritmi di intelligenza artificiale. Si tratta di ripensare le architetture tradizionali alla luce di una nuova elaborazione del segnale basata su reti neurali.

Dalla ricerca sul segnale all’edge AI

Durante il suo dottorato la dottoressa Falaschetti ha iniziato a lavorare nell’ambito del riconoscimento vocale, sia dal punto di vista algoritmico che di quello dell’integrazione di questi algoritmi su microprocessori. L’obiettivo era quello di realizzare dispositivi simili agli attuali assistenti vocali, come Alexa, che oggi diamo per scontati ma che, all’epoca, rappresentavano un vero trend emergente.

“Il lavoro si sviluppava su due fronti: da una parte lo studio degli algoritmi, dall’altra la sfida di adattarli a piattaforme con risorse limitate. Si trattava di algoritmi complessi, pensati per funzionare su PC o nel cloud, che dovevano essere “portati” su microprocessori con capacità di calcolo ridotte, costi contenuti e dimensioni compatte, adatti quindi a sistemi embedded portabili e facilmente integrabili in diversi contesti. È qui che entra in gioco il concetto di edge computing che consente di ottimizzare un algoritmo affinché possa essere eseguito su una piattaforma diversa da quella per cui è stato progettato. All’epoca non utilizzavo ancora le reti neurali perché si lavorava principalmente nell’ambito del signal processing. Ho assistito all’evoluzione verso l’uso sempre più consolidato delle reti neurali, che oggi permettono di ottenere feedback a partire dall’elaborazione dei segnali attraverso modelli capaci di emulare, in parte, il funzionamento del nostro sistema neurale. Il tutto sempre con l’obiettivo di integrare queste soluzioni all’interno di sistemi embedded”.

La dottoressa Falaschetti ha spiegato che inizialmente, l’intelligenza artificiale e il machine learning erano pensati per l’informatica tradizionale, quindi per ambienti con grandi risorse di calcolo come PC, server o smartphone che si appoggiavano a infrastrutture remote. Il dispositivo acquisiva i dati, li inviava a un server su cui era implementata la rete neurale e riceveva indietro una risposta.

“Oggi, invece, si parla sempre più di edge AI, ovvero di intelligenza artificiale integrata direttamente nel dispositivo che acquisisce i dati. Questo significa che il sistema non deve più interrogare una risorsa esterna dato che la rete neurale è già incorporata nel software e può fornire una risposta in tempo reale. A questo punto viene spontaneo chiedersi perché sia necessario comprimere una rete neurale per portarla nel sistema. Perché esistono applicazioni in cui questo approccio è fondamentale. Un esempio è la guida autonoma o assistita. La vista, per esempio, è una nostra capacità naturale che può essere affiancata da dispositivi elettronici dotati di telecamere che analizzano l’ambiente circostante, rilevando pedoni, semafori o altri elementi critici. A questo punto si aprono due possibilità: inviare le immagini a un server remoto per l’elaborazione oppure integrare direttamente la rete neurale nel dispositivo. La seconda soluzione offre vantaggi decisivi. Innanzitutto, riduce drasticamente la latenza perché il dispositivo elabora i dati in tempo reale, senza dipendere da una comunicazione esterna, un aspetto cruciale in situazioni in cui la risposta deve essere immediata, come nel rilevamento di un pedone. Inoltre, elimina la dipendenza dalla connettività. Non tutte le aree, infatti, sono coperte dalla rete e un’interruzione potrebbe avere conseguenze critiche. Con l’edge AI, invece, il sistema continua a funzionare in modo autonomo. Infine, c’è il tema della privacy: trattandosi di un sistema chiuso, i dati incluse immagini e informazioni sensibili non vengono trasmessi all’esterno, riducendo il rischio di esposizione. Abbiamo citato la guida autonoma ma l’edge AI trova applicazione in molti altri ambiti in cui servono risposte rapide, affidabilità e indipendenza dalla connessione di rete. Un altro esempio, infatti, sono i dispositivi medicali indossabili che consentono il monitoraggio continuo di parametri vitali, o ancora nel settore industriale dove l’edge AI viene utilizzata per la manutenzione predittiva delle macchine”.

Il concetto non è abbandonare il cloud, ma ripensarne il ruolo in un’architettura ibrida, in cui cloud ed edge lavorano in sinergia. Il cloud lavora per l’addestramento e l’elaborazione di grandi quantità di dati mentre il dispositivo lavora all’esecuzione locale e in tempo reale delle decisioni.

In chiusura, un consiglio a chi si avvicina con timore allo studio dell’ingegneria elettronica: “le difficoltà esistono in ogni corso di laurea, ma con la giusta dose di interesse e curiosità possono essere affrontate con serenità. Non bisogna lasciarsi scoraggiare dal timore di non avere una preparazione adeguata perché i docenti sono disponibili ad aiutare gli studenti a colmare eventuali lacune e di non sottovalutare il ruolo dei tutor, sempre pronti ad affiancare i docenti e a supportare gli studenti lungo il loro percorso formativo”.