Da Harvard uno sciame di mille robottini
Un'interessante dimostrazione pratica nell'ambito della robotica di sciame: 1024 robot di piccole dimensioni sono capaci di interagire e coordinarsi per realizzare forme arbitrarie
di Andrea Bai pubblicato il 21 Agosto 2014 nel canale Scienza e tecnologiaMille robottini capaci di coordinarsi per realizzare forme arbitrarie: è questo il traguardo raggiunto da un gruppo di ricercatori di Harvard e dai loro piccoli Kilobots e descritto in un articolo pubblicato sull'ultimo numero di Science.
Quello realizzato da Micheal Rubenstein, Alejandro Cornejo e dal professor Radhika Nagpal del Self-Organizing Systems Research Group di Harvard è uno tra i più grandi sciami di robot mai realizzati nel campo della ricerca della swarm robotics, o robotica di sciame. 1024 robot di piccole dimensioni, abbastanza semplici nel loro aspetto e nelle loro funzioni e di fattura abbastanza economica - il costo cadauno è di circa 14 dollari.
Nonostante il loro nome possa suscitare preoccupazione (kilo in inglese può ricordare kill, uccidere) e gli incubi degli sciami robotici che la fantascienza può aver instillato nelle menti di qualcuno, questi piccoli robottini sono pressoché innocui ed inutili presi singolarmente, ma esprimono tutto il loro potenziale quando parte di uno sciame. Tutto ciò che questi robot sanno fare è muoversi grazie ad una serie di steli di metallo vibranti, che fungono da zampette, e comunicare tra loro, grazie a trasmettitori e ricevitori, tramite segnali ad infrarossi riflessi dalla superficie su cui poggiano.
Perché una collettività di piccoli robot possa essere considerata uno sciame a tutti gli effetti è anzitutto necessario che i robot in gioco siano in numero elevato. Questo è un primo ostacolo che spesso si frappone fra le simulazioni al computer e la pratica, dal momento che la costruzione di centinaia o migliaia di robot può rappresentare un'attività piuttosto onerosa. I ricercatori di Harvard hanno iniziato a costruire i Kilobot nel 2011, realizzando un gruppetto di 25 robottini. Lo scorso anno il numero salì a 100, per poi arrivare a 1024 nel recente passato.
Una collettività di oltre 1000 robot può essere effettivamente considerata uno sciame poiché l'importanza di un singolo robot è prossima allo zero, che è poi una delle principali caratteristiche di uno sciame: il singolo robot può funzionale male o danneggiarsi, ma all'interno dello sciame ve ne sono così tanti che in ultima analisi è il comportamento collettivo a prevalere sul singolo.
Un secondo presupposto è l'esistenza di un sistema di software ed infrastruttura capace di supportare, gestire e controllare un numero di robot così elevato. Operazioni e compiti che sono semplici con pochi robot, possono diventare impossibili quando l'ordine di grandezza tocca le migliaia. Ricaricare le batterie dei robot, ad esempio: immaginate di dover collegare manualmente 1000 robot ai loro caricabatterie. Per quanto riguarda i Kilobot i ricercatori hanno risolto il problema interponendoli tra due fogli di metallo e facendo passare una corrente elettrica. Allo stesso modo è possibile programmare i robot direzionando verso di loro un segnale ad infrarosso. Dal momento che queste operazioni possono essere compiute una sola volta per tutti i robot esse non rappresentano un problema all'aumentare delle dimensioni dello sciame.
Dati i presupposti di elevato numero di robot e infrastruttura di supporto/gestione, è possibile realizzare uno sciame ispirandosi a quanto già accade in natura con gli sciami di insetti, con gli stormi di uccelli o con i banchi di pesci. In tutti questi sistemi biologici vigono una serie di regole molto semplici che permettono allo sciame/stormo/banco di organizzarsi e controllarsi. In un banco di pesci, ad esempio, vigono una serie di regole sul posizionamento reciproco tra i singoli componenti del banco. Per i Kilobot è stato ideato un alrgoritmo basato su un insieme di funzionalità anch'esse molto semplici, con l'obiettivo finale di consentire allo sciame di dare forma a sagome arbitrarie.
Ecco che ciascun Kilobot è quindi capace di seguire il profilo tracciato da un gruppo di altri Kilobot, muovendosi lungo il loro bordo e misurando la distanza percorsa. I Kilobot sono poi in grado di generare un messaggio con un valore di gradiente che cresce quando si propaga attraverso lo sciame, permettendo a ciascun robot di determinare la sua distanza geodetica dal robot-sorgente. Infine ciascun Kilobot può determinare un sistema locale di coordinate sfruttando le funzionalità di comunicazione e misurando la distanza con i robot limitrofi.
Di queste capacità, la localizzazione è la più complicata ma anche la più importante. Come detto i Kilobot comunicano tra loro tramite segnali infrarossi riflessi dalla superficie su cui operano. La distanza da altri robot può essere desunta misurando la variazione di luminosità della luce infrarossa: più il segnale è debole, maggiore è la distanza tra essi. Ma in questo modo i Kilobot non possono determinare con esattezza l'origine del segnale infrarosso e per poter stabilire l'esatta localizzazione essi dipendono da un gruppo iniziale di robot che definiscono l'origine di un sistema di coordinate, in maniera tale che tutti gli altri kilobot possano triangolare la propria posizione sulla base della luminosità relativa dei segnali infrarossi di almeno altri tre robot di cui sia nota la localizzazione.
Una volta che i Kilobot riescono a determinare la propria posizione, la procedura per realizzare una forma arbitraria è abbastanza immediata: i robot si muovono lungo il perimetro dello sciame fino a quando non rilevano di essere entrati nell'area stabilita dalla forma. Ciascun robot continua a muoversi lungo il perimetro degli altri robot già posizionati, fino a quando non rilevano di essere in prossimità dei confini della sagoma o fino a quando non sono a contatto con altri robot già posizionati: l'operazione procede seguendo queste semplici regole, fino a quando la forma arbitraria non viene creata.
Con un numero tanto elevato di robot come quello realizzato dai ricercatori è verosimile supporre che non tutto vada sempre per il verso giusto, motivo per il quale i ricercatori hanno cercato di realizzare un sistema dall'elevata flessibilità. Molte cose possono andare storte, come ad esempio robot che accidentalmente spingono via altri robot o che si rompono o danneggiano per qualche motivo. In questi casi la definizione di ulteriori regole, sempre basilari e semplici, permetterà allo sciame di continuare centrare il suo obiettivo (in questo caso la creazione di una forma arbitraria): un robot in stallo potrebbe ad esempio comunicare ad altri robot di collocarsi attorno ad esso, mentre un robot spostato accidentalmente potrebbe autonomamente dirigersi verso una nuova posizione. I singoli robot non devono essere necessariamente provvisti di sensori che permettano loro di rilevare determinati eventi come quelli appena descritti, ma è l'interazione tra di loro che rende lo sciame nel suo complesso più robusto ed affidabile.
Il lavoro svolto dai ricercatori di Harvard assomiglia molto a quanto Intel concettualizzò già più di 6 anni fa in occasione dell'IDF Fall 2008, illustrando il concetto di "Catom" al pubblico (a questo articolo maggiori informazioni) e rappresenta un punto di riferimento importante nell'ambito della swarm robotics specie in ottica futura, quando queste conoscenze potranno essere estese ed applicate al mondo delle nanomacchine.
9 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoIo l'ho associato a 1024
Io l'ho associato a 1024
tu non sei madrelingua inglese
non ci avevo pensato neppure io, ma immagino che per un anglosassone "non nerd"
Kilobot -> Kill-o-bot
non sia così strana come associazione di idee
Devono ancora lavorarci su
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".