Ad oggi i robot riescono ad eseguire per lo più azione semplici e ripetitive che non raggiungono la complessità e la varietà di quelle umane. Tuttavia con i progressi nella visione e intelligenza artificiale è stato possibile insegnare ai robot ad eseguire azioni anche molto complesse
I robot diventano sempre più intelligenti e capaci di azioni complicate, anche se in molti casi non possono sostituire un essere umano in modo efficiente. L’intelligenza artificiale è il cervello dei robot di nuova generazione che si pone l’obiettivo di superare un scoglio enorme: insegnare ad un robot come riprodurre azioni umane complesse. Per noi può sembrare molto semplice, ma in realtà si tratta di una sfida che gli ingegneri sono ben lontani da vincere. Anche se ci sono numerosi progressi man mano che il tempo passa e la tecnologia viene affinata.
Intelligenza artificiale: un robot che impara dagli umani
Una nuova generazione di robot potrebbe essere molto più user-friendly: ad oggi programmare un robot per farlo funzionare un maniera adeguata non è affatto semplice e richiede l’intervento di professionisti del settore. L’obiettivo è quello invece di semplificare il processo di training di un robot, avvicinandoci all’iter che seguiamo per istruire un essere umano: gli facciamo vedere come fare e poi questo esegue. Ciò che per un essere umano può sembrare banale, per un robot – e per i suoi progettisti – è una bella sfida che grazie all’intelligenza artificiale sta entrando nel vivo.
I ricercatori del MIT, lavorando a questo proposito, hanno progettato un sistema che consente ad un robot di imparare compiti complicati che normalmente li confondono per via della grande quantità di regole da seguire non ben definite. Uno di questi compiti è preparare un tavolo da pranzo a determinate sotto certe condizioni. Fondamentalmente, il sistema “Planning with Uncertain Specifications” (PUnS) dei ricercatori offre ai robot una capacità di pianificazione comparabile a quella umana per valutare simultaneamente molti requisiti ambigui e potenzialmente contraddittori in modo da raggiungere un obiettivo finale. Nel fare ciò, il sistema sceglie sempre l’azione più probabile da intraprendere, sulla base di una “convinzione” dettata da alcune specifiche aprioristiche probabili.
Migliorare l’interazione uomo macchina è una delle sfide del prossimo futuro
Ok Google, prepara la tavola!
Prima di tutto è stato necessario raccogliere un set di informazioni su come otto oggetti – una tazza, un bicchiere, un cucchiaio, una forchetta, un coltello, un piatto da pranzo, un piccolo piatto e una ciotola – potessero essere collocati su un tavolo in varie configurazioni. Un braccio robotico inizialmente ha osservato degli esseri umani apparecchiare la tavola in maniere diverse. Successivamente è stato chiesto al braccio robotico di apparecchiare la tavole, sulla base di ciò che aveva visto. Questo non è stato un compito facile per il robot: esso ha dovuto valutare numerose possibilità di posizionamento, anche quando alcuni oggetti venivano volutamente rimossi, impilati o nascosti. Normalmente, tutto ciò confonderebbe un robot. Ma incredibilmente il braccio robotico del MIT non ha commesso errori nel corso di numerosi esperimenti nel mondo reale e solo una manciata di errori su decine di migliaia di prove simulate. Il primo autore Ankit Shah, uno studente laureato nel Dipartimento di Aeronautica e Astronautics (AeroAstro) e Interactive Robotics Group, commentata sottolineando che il loro lavoro è solo un passo verso la realizzazione di sistemi di visione robotica avanzata mossi dall’intelligenza artificiale:
L’idea è quella di mettere la programmazione alla portata di tutti, in modo che programmare i robot diventi intuitivo, piuttosto che descrivere gli ordini a un ingegnere che poi produce per loro il codice. In questo modo, i robot non dovranno più svolgere attività pre-programmate. Gli operai della fabbrica possono insegnare ad un robot a svolgere attività complesse di assemblaggio. I robot domestici possono imparare a impilare i vestiti, caricare la lavastoviglie o preparare il tavolo osservando gli esseri umani.
La nuova robotica
I robot sono molto bravi a svolgere compiti con “specifiche” chiare e ben definita a priori, che aiutano a descrivere il compito che il robot deve svolgere, considerando le sue azioni, l’ambiente e l’obiettivo finale. Non riescono ad adattarsi però alle situazioni non previste in fase di programmazione. Imparare a preparare una tavola osservando le dimostrazioni è un compito ricco di specifiche incerte. Gli articoli devono essere posizionati in determinati punti, a seconda del menu e della posizione degli ospiti, e in determinati ordini, a seconda della disponibilità immediata o delle convenzioni sociali di un articolo. Gli attuali approcci alla pianificazione non sono in grado di gestire specifiche così incerte perché non è sempre definito un modo univoco di preparare la tavola. Un approccio popolare alla pianificazione è l‘apprendimento per rinforzo, una tecnica di machine learning basata su prove ed errori che li premia e li penalizza per le azioni mentre lavorano per completare un’attività. Ma per compiti con specifiche incerte, è difficile definire ricompense e penalità chiare.
Apprendimento per rinforzo.
Come istruire un robot con l’intelligenza artificiale
Il sistema dei ricercatori, chiamato PUnS ( cioè pianificazione con specifiche incerte), consente a un robot di mantenere una “convinzione” su una gamma di possibili specifiche. La convinzione può quindi essere utilizzata per distribuire ricompense e penalità. Il sistema è basato sulla “logica temporale lineare” (LTL), un linguaggio matematico che consente il ragionamento robotico su esiti attuali e futuri. I ricercatori hanno definito modelli in LTL che rappresentano varie condizioni basate sul tempo, come ciò che deve accadere ora, ciò che potrebbe accadere e quello che deve accadere fino a quando non si verifica qualcos’altro. Le osservazioni del robot su 30 dimostrazioni umane per l’impostazione della tabella hanno prodotto una distribuzione di probabilità su 25 diverse formule LTL. Ogni formula codificava una preferenza o una specifica leggermente diversa per l’impostazione della tabella. Quella distribuzione di probabilità diventa la sua convinzione. Ankit Shah spiega:
Ogni formula codifica qualcosa di diverso, ma quando il robot considera varie combinazioni di tutti i modelli e cerca di soddisfare tutto insieme, alla fine finisce per fare la cosa giusta.
Come fare scegliere il modello corretto
I ricercatori hanno inoltre sviluppato diversi criteri che guidano il robot verso la soddisfazione dell’intera convinzione basandosi sulle formule candidate. Uno, ad esempio, soddisfa la formula più probabile, e scarta tutte le altre. Altri soddisfano il maggior numero di formule uniche, senza considerare la loro probabilità complessiva, oppure soddisfano diverse formule che rappresentano la massima probabilità totale. Un altro minimizza semplicemente l’errore, quindi il sistema ignora le formule con un’alta probabilità di errore.
I progettisti possono scegliere uno dei quattro criteri da preimpostare prima dell’allenamento e dei test. Ognuno ha il proprio compromesso tra flessibilità e precisione. La scelta dei criteri dipende interamente dall’attività. In situazioni critiche per la sicurezza, ad esempio, un progettista può scegliere di limitare la possibilità di guasti. Ma dove le conseguenze del fallimento non sono così gravi, i progettisti possono scegliere di offrire ai robot una maggiore flessibilità per provare approcci diversi. Con i criteri in atto, i ricercatori hanno sviluppato un algoritmo per convertire la convinzione del robot – la distribuzione di probabilità sui diversi modelli – in un problema di apprendimento di rinforzo equivalente. Questo modello eseguirà il training del robot con una ricompensa o una penalità per un’azione intrapresa, in base alle specifiche che ha deciso di seguire.
Esempio di logica tempo lineare
Nelle simulazioni che chiedevano al robot di preparare il tavolo in diverse configurazioni, ha fatto solo sei errori su 20.000 tentativi. Nelle dimostrazioni reali, mostrava un comportamento simile a quello di un essere umano. Se un oggetto non fosse inizialmente visibile, ad esempio, il robot finirebbe di preparare il resto del tavolo senza l’oggetto. Quindi, quando l’oggetto veniva rivelato, lo posizionava nella posizione corretta. Qui risiede la potenza dell’approccio che riesce ad adattarsi alle condizioni impreviste. Successivamente, i ricercatori sperano di modificare il sistema per aiutare i robot a cambiare il loro comportamento in base a istruzioni verbali, correzioni o alla valutazione da parte dell’utente delle prestazioni del robot:
Supponiamo che una persona mostri a un robot come preparare un tavolo in un solo punto. La persona può dire: “fai la stessa cosa per tutti gli altri punti”, oppure “posiziona invece il coltello prima della forchetta qui”. Vogliamo sviluppare metodi affinché il sistema si adatti naturalmente per gestire quei comandi verbali, senza bisogno di ulteriori dimostrazioni.
I nuovi robot quindi saranno molto più flessibili e potranno facilmente imparare a svolgere compiti complessi in diverse situazioni. Ovviamente la strada è ancora lunga, ma il futuro che abbiamo visto nei film di fantascienza forse è un po’ più vicino alla realtà. Le tecniche di intelligenza artificiale che combinano la logica dei sistemi esperti con il machine learning sembrano dare risultati entusiasmanti. Dalla sezione scienze è tutto! Continuate a seguirci per tante altre news ed approfondimenti dal mondo della ricerca.
Lascia un commento