Nonostante la ricchezza di soluzioni proposte in letteratura, la generazione di movimenti per robot umanoidi si rivela ancora un problema non risolto. I robot umanoidi presentano spesso oltre 20 gradi di libertà, anche nel caso di umanoidi di dimensioni ridotte. Questo rende impossibile applicare gli approcci classici dell'intelligenza artificiale, e richiede lo sviluppo di soluzioni specifiche per ciascun problema. Alcuni task particolari, come la locomozione o il grasping, sono stati studiati approfonditamente, e sono stati introdotti importanti concetti come lo Zero Moment Point (ZMP) per la camminata stabile o le grasping shape primitives per il grasping. Quando si ha che fare con task più generici, una dimostrazione da parte di un essere umano può essere utilizzata per derivare un movimento preliminare, che può poi venir ottimizzato dal robot stesso. In particolare, uno degli approcci più comuni è far eseguire il movimento direttamente ad un attore umano, registrarlo ed adattarlo al robot. Questa tecnica si rivela efficace nel produrre movimenti che appaiono naturali, e viene infatti spesso utilizzata nel campo della computer grafica. Questo è un grosso vantaggio, in quanto, sebbene avere movimenti naturali risulti importante per la comunicazione tra utenti e robot, al momento non esistono formalizzazioni matematiche. Il trasferire i movimenti da esseri umani a robot presenta tuttavia alcuni inconvenienti. Innanzitutto, la strumentazione per l'acquisizione di movimenti è costosa, richiede particolare cura per l'allestimento del sistema e non è fruibile alla maggior parte degli utenti. In secondo luogo, un attore in grado di compiere il movimento che si vuole far eseguire al robot potrebbe non essere disponibile. Infine, le differenze di forma, gradi di libertà, forza e distribuzione del peso tra esseri umani e umanoidi potrebbe richiedere di modificare in modo sostanziale il movimento. Durante questo processo di adattamento, caratteristiche importanti del movimento potrebbero venir modificate con una conseguente perdita di naturalezza del movimento. Un approccio alternativo che non presenta questi problemi è ottenere il movimento mediante interazione diretta tra il robot ed un insegnante umano. Un modo tipico di effettuare questo trasferimento di conoscenza è prevedere che l'insegnante muova direttamente gli arti del robot, mostrando come il task debba essere eseguito. L'idea di base di questa tecnica, denominata ``kinesthetic demonstration'', è comparsa molto presto in robotica, e sebbene sotto diversi nomi come ``teach-in'', ``guiding'', ``play back'', ``direct teaching'' o ``walk-through programming'', costituisce uno degli approcci più efficaci e diffusi per la programmazione di bracci robotici industriali. Solitamente quando viene impiegato questo approccio i giunti vengono lasciati liberi di muoversi. Se non vengono presi opportuni accorgimenti, quindi, vi è lo svantaggio che il robot si muova per il semplice effetto della forza di gravità. Sistemi per compensare automaticamente la forza di gravità sono stati proposti in letteratura. Altre soluzioni adottate sono rendere i giunti passivi solo localmente, quando l'utente tocca il robot. A parte eventuali compensazioni della gravità, quando viene impiegata la kinesthetic demonstration il robot si muove in modo totalmente passivo sotto effetto delle forze applicategli. Allo scopo di facilitare l'insegnamento di movimenti, questa tesi propone un nuovo paradigma di programmazione, chiamato ``teaching by touching''. Questo approccio consiste nel prevedere che il robot interpreti il significato delle istruzioni tattili che riceve, e si muova in base alla stima dell'intenzione sottostante all'istruzione tattile, anziché limitarsi a muoversi passivamente sotto l'effetto delle forze applicate. Per esempio, se il robot è accovacciato, e l'utente preme i sensori sui fianchi del robot, il robot potrebbe intuire che l'utente desideri che il robot si alzi, e potrebbe applicare forze agli arti inferiori in modo da assumere una posizione eretta. Viceversa, se viene utilizzata la kinesthetic demonstration classica, il robot non si muove quando gli vengono applicate forze ad ambo i lati del corpo, e per fare in modo che il robot si alzi l'utente deve esplicitamente sollevare il robot. In altri termini, la metodologia proposta cambia il modo di interagire tra esseri umani e robot: con la kinesthetic demonstration classica il robot si muove passivamente come farebbe una marionetta, mentre con il teaching by touching, le istruzioni tattili sono considerate come una forma di comunicazione tra uomo e robot ed il robot assume un ruolo attivo nel processo di apprendimento. Tra le varie forme di comunicazione tra esseri umani, il tatto è infatti una di quelle meno studiate ma più efficaci per trasferire una grande varietà di informazioni. Si pensi ad esempio a come, con semplici tocchi, istruttori di sport o di danza riescano a suggerire ai loro allievi come modificare il proprio movimento. Osservazioni di questo tipo, suggeriscono come il tatto risulti quindi una forma di comunicazione interessante anche per la comunicazione tra esseri umani e robot. L'interpretazione di istruzioni tattili fornite in modo spontaneo da insegnati umani risulta però essere complessa per sistemi artificiali. Infatti, il modo in cui gli esseri umani usano il tatto per comunicare le loro intenzioni è un campo completamente inesplorato, e modelli di come le istruzioni debbano essere interpretate sono completamenti assenti in letteratura. Questa tesi riporta i primi risultati ottenuti nella realizzazione di un sistema di sviluppo di movimenti per robot umanoidi basato su interazione tattile. In particolare viene dimostrato come il significato delle istruzioni tattili dipenda sia dal contesto che dall'utente che le fornisce. Un semplice esempio di dipendenza dal contesto può essere facilmente fornito: se il robot è in posizione eretta e l'utente preme la parte superiore della gamba allora ci si può aspettare che l'utente desideri portare indietro la gamba, mentre se il robot è accovacciato si può pensare che l'utente desideri che il robot pieghi le ginocchia per accovacciarsi ulteriormente. Per quanto riguarda la dipendenza dall'utente, esperimenti hanno dimostrato che, quando lasciati liberi di interagire a piacimento con il robot, utenti diversi tendono talvolta ad associare significati sostanzialmente differenti a istruzioni molto simili. In particolare, i risultati riportati in questa tesi sembrano suggerire che le differenze nel modo di insegnare di utenti diversi possano essere interpretate come differenze nel livello di astrazione usato da diverse persone. Per esempio, alcuni utenti hanno deciso di utilizzare un mapping fisso tra sensori e giunti. Altri soggetti hanno adottato una relazione tra sensori premuti e movimenti che sembrano derivare da considerazioni fisiche, ed in particolare dall'immaginare che i giunti siano elastici e che il robot si muova sotto l'effetto delle forze applicate dall'utente o dalla reazione del pavimento. Infine, altri utenti impiegano un mapping tra un singolo tocco ed un movimento completo. Con questo approccio, ad esempio, la pressione di un ginocchio è associata ad un passo effettuato con la relativa gamba. Gli esperimenti presentati sono stati condotti inizialmente con un sensori di tatto simulati. Una tecnica che permette di interagire con sensori simulati, visualizzati su un touch screen, è introdotta nella tesi. Il vantaggio di questo tipo di approccio sta nel fatto che permette di applicare la tecnica del teaching by touching anche agli umanoidi di basso costo tipicamente disponibili sul mercato. Un secondo insieme di esperimenti è stato condotto con M3-Neony, una nuova piattaforma robotica dotata di sensori tattili su tutto il corpo. L'analisi dei dati ha confermato la complessità della struttura del mapping tra istruzioni tattili e modifiche del movimento. D'altro canto, i risultati sperimentali indicano che i movimenti attesi come riposta alle istruzioni tattili giacciono in un sottospazio dello spazio dei giunti. In particolare, il fatto interessante è che tale sottospazio coincide con in sottospazio in cui può essere proiettato il movimento che l'utente sta sviluppando. Questa constatazione suggerisce che le posture assunte dal robot durante l'esecuzione del task possono essere impiegate per migliorare la stima del significato delle istruzioni tattili. La parte finale della tesi presenta brevemente due semplici tecniche che possono essere utilizzate per migliorare la robustezza a perturbazioni esterne dei movimenti generati. La prima, basata sulla costruzione di in grafo, tenta di far ritornare il robot in uno stato conosciuto il prima possibile dopo che una perturbazione porta lo stato lontano da quello aspettato. Il secondo approccio, derivato dalla chemiotassi di un batterio denominato Escherichia Coli, si basa sull'aggiunta di rumore al controllo, con un intensità che dipende dal fatto che lo stato evolva nel modo atteso o meno.
Humanoid robot motion creation based on touch interpretation: A new programming paradigm
DALLA LIBERA, FABIO
2011
Abstract
Nonostante la ricchezza di soluzioni proposte in letteratura, la generazione di movimenti per robot umanoidi si rivela ancora un problema non risolto. I robot umanoidi presentano spesso oltre 20 gradi di libertà, anche nel caso di umanoidi di dimensioni ridotte. Questo rende impossibile applicare gli approcci classici dell'intelligenza artificiale, e richiede lo sviluppo di soluzioni specifiche per ciascun problema. Alcuni task particolari, come la locomozione o il grasping, sono stati studiati approfonditamente, e sono stati introdotti importanti concetti come lo Zero Moment Point (ZMP) per la camminata stabile o le grasping shape primitives per il grasping. Quando si ha che fare con task più generici, una dimostrazione da parte di un essere umano può essere utilizzata per derivare un movimento preliminare, che può poi venir ottimizzato dal robot stesso. In particolare, uno degli approcci più comuni è far eseguire il movimento direttamente ad un attore umano, registrarlo ed adattarlo al robot. Questa tecnica si rivela efficace nel produrre movimenti che appaiono naturali, e viene infatti spesso utilizzata nel campo della computer grafica. Questo è un grosso vantaggio, in quanto, sebbene avere movimenti naturali risulti importante per la comunicazione tra utenti e robot, al momento non esistono formalizzazioni matematiche. Il trasferire i movimenti da esseri umani a robot presenta tuttavia alcuni inconvenienti. Innanzitutto, la strumentazione per l'acquisizione di movimenti è costosa, richiede particolare cura per l'allestimento del sistema e non è fruibile alla maggior parte degli utenti. In secondo luogo, un attore in grado di compiere il movimento che si vuole far eseguire al robot potrebbe non essere disponibile. Infine, le differenze di forma, gradi di libertà, forza e distribuzione del peso tra esseri umani e umanoidi potrebbe richiedere di modificare in modo sostanziale il movimento. Durante questo processo di adattamento, caratteristiche importanti del movimento potrebbero venir modificate con una conseguente perdita di naturalezza del movimento. Un approccio alternativo che non presenta questi problemi è ottenere il movimento mediante interazione diretta tra il robot ed un insegnante umano. Un modo tipico di effettuare questo trasferimento di conoscenza è prevedere che l'insegnante muova direttamente gli arti del robot, mostrando come il task debba essere eseguito. L'idea di base di questa tecnica, denominata ``kinesthetic demonstration'', è comparsa molto presto in robotica, e sebbene sotto diversi nomi come ``teach-in'', ``guiding'', ``play back'', ``direct teaching'' o ``walk-through programming'', costituisce uno degli approcci più efficaci e diffusi per la programmazione di bracci robotici industriali. Solitamente quando viene impiegato questo approccio i giunti vengono lasciati liberi di muoversi. Se non vengono presi opportuni accorgimenti, quindi, vi è lo svantaggio che il robot si muova per il semplice effetto della forza di gravità. Sistemi per compensare automaticamente la forza di gravità sono stati proposti in letteratura. Altre soluzioni adottate sono rendere i giunti passivi solo localmente, quando l'utente tocca il robot. A parte eventuali compensazioni della gravità, quando viene impiegata la kinesthetic demonstration il robot si muove in modo totalmente passivo sotto effetto delle forze applicategli. Allo scopo di facilitare l'insegnamento di movimenti, questa tesi propone un nuovo paradigma di programmazione, chiamato ``teaching by touching''. Questo approccio consiste nel prevedere che il robot interpreti il significato delle istruzioni tattili che riceve, e si muova in base alla stima dell'intenzione sottostante all'istruzione tattile, anziché limitarsi a muoversi passivamente sotto l'effetto delle forze applicate. Per esempio, se il robot è accovacciato, e l'utente preme i sensori sui fianchi del robot, il robot potrebbe intuire che l'utente desideri che il robot si alzi, e potrebbe applicare forze agli arti inferiori in modo da assumere una posizione eretta. Viceversa, se viene utilizzata la kinesthetic demonstration classica, il robot non si muove quando gli vengono applicate forze ad ambo i lati del corpo, e per fare in modo che il robot si alzi l'utente deve esplicitamente sollevare il robot. In altri termini, la metodologia proposta cambia il modo di interagire tra esseri umani e robot: con la kinesthetic demonstration classica il robot si muove passivamente come farebbe una marionetta, mentre con il teaching by touching, le istruzioni tattili sono considerate come una forma di comunicazione tra uomo e robot ed il robot assume un ruolo attivo nel processo di apprendimento. Tra le varie forme di comunicazione tra esseri umani, il tatto è infatti una di quelle meno studiate ma più efficaci per trasferire una grande varietà di informazioni. Si pensi ad esempio a come, con semplici tocchi, istruttori di sport o di danza riescano a suggerire ai loro allievi come modificare il proprio movimento. Osservazioni di questo tipo, suggeriscono come il tatto risulti quindi una forma di comunicazione interessante anche per la comunicazione tra esseri umani e robot. L'interpretazione di istruzioni tattili fornite in modo spontaneo da insegnati umani risulta però essere complessa per sistemi artificiali. Infatti, il modo in cui gli esseri umani usano il tatto per comunicare le loro intenzioni è un campo completamente inesplorato, e modelli di come le istruzioni debbano essere interpretate sono completamenti assenti in letteratura. Questa tesi riporta i primi risultati ottenuti nella realizzazione di un sistema di sviluppo di movimenti per robot umanoidi basato su interazione tattile. In particolare viene dimostrato come il significato delle istruzioni tattili dipenda sia dal contesto che dall'utente che le fornisce. Un semplice esempio di dipendenza dal contesto può essere facilmente fornito: se il robot è in posizione eretta e l'utente preme la parte superiore della gamba allora ci si può aspettare che l'utente desideri portare indietro la gamba, mentre se il robot è accovacciato si può pensare che l'utente desideri che il robot pieghi le ginocchia per accovacciarsi ulteriormente. Per quanto riguarda la dipendenza dall'utente, esperimenti hanno dimostrato che, quando lasciati liberi di interagire a piacimento con il robot, utenti diversi tendono talvolta ad associare significati sostanzialmente differenti a istruzioni molto simili. In particolare, i risultati riportati in questa tesi sembrano suggerire che le differenze nel modo di insegnare di utenti diversi possano essere interpretate come differenze nel livello di astrazione usato da diverse persone. Per esempio, alcuni utenti hanno deciso di utilizzare un mapping fisso tra sensori e giunti. Altri soggetti hanno adottato una relazione tra sensori premuti e movimenti che sembrano derivare da considerazioni fisiche, ed in particolare dall'immaginare che i giunti siano elastici e che il robot si muova sotto l'effetto delle forze applicate dall'utente o dalla reazione del pavimento. Infine, altri utenti impiegano un mapping tra un singolo tocco ed un movimento completo. Con questo approccio, ad esempio, la pressione di un ginocchio è associata ad un passo effettuato con la relativa gamba. Gli esperimenti presentati sono stati condotti inizialmente con un sensori di tatto simulati. Una tecnica che permette di interagire con sensori simulati, visualizzati su un touch screen, è introdotta nella tesi. Il vantaggio di questo tipo di approccio sta nel fatto che permette di applicare la tecnica del teaching by touching anche agli umanoidi di basso costo tipicamente disponibili sul mercato. Un secondo insieme di esperimenti è stato condotto con M3-Neony, una nuova piattaforma robotica dotata di sensori tattili su tutto il corpo. L'analisi dei dati ha confermato la complessità della struttura del mapping tra istruzioni tattili e modifiche del movimento. D'altro canto, i risultati sperimentali indicano che i movimenti attesi come riposta alle istruzioni tattili giacciono in un sottospazio dello spazio dei giunti. In particolare, il fatto interessante è che tale sottospazio coincide con in sottospazio in cui può essere proiettato il movimento che l'utente sta sviluppando. Questa constatazione suggerisce che le posture assunte dal robot durante l'esecuzione del task possono essere impiegate per migliorare la stima del significato delle istruzioni tattili. La parte finale della tesi presenta brevemente due semplici tecniche che possono essere utilizzate per migliorare la robustezza a perturbazioni esterne dei movimenti generati. La prima, basata sulla costruzione di in grafo, tenta di far ritornare il robot in uno stato conosciuto il prima possibile dopo che una perturbazione porta lo stato lontano da quello aspettato. Il secondo approccio, derivato dalla chemiotassi di un batterio denominato Escherichia Coli, si basa sull'aggiunta di rumore al controllo, con un intensità che dipende dal fatto che lo stato evolva nel modo atteso o meno.File | Dimensione | Formato | |
---|---|---|---|
thesis110123compressed.pdf
accesso aperto
Dimensione
10.88 MB
Formato
Adobe PDF
|
10.88 MB | Adobe PDF | Visualizza/Apri |
I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/20.500.14242/110038
URN:NBN:IT:UNIPD-110038