FlingBot: The Unreasonable Effectiveness of Dynamic Manipulation for Cloth Unfolding
Autori: Huy Ha, Shuran Song · CoRL 2021
Licenze
- Open access
- Articolo: CC BY 4.0
Tutto ciò che segue si basa sull'articolo completo secondo la sua licenza CC BY 4.0; la figura è riportata citando gli autori.
In breve
Un robot a due bracci impara, in modo auto-supervisionato, dove afferrare un tessuto stropicciato per un movimento fisso di presa, tensione e sbattimento, superando il pick & place quasi-statico per copertura e numero di passi.
Perché è importante
L'articolo mostra che una singola primitiva appresa ad alta velocità può dispiegare un tessuto in poche azioni, gestire tessuti più grandi della portata e trasferirsi dai rettangoli alle magliette. Il sistema reale rileva il tessuto teso con una seconda telecamera RGB-D invece che con sensori di forza, e il segnale di addestramento proviene da una maschera di una telecamera dall'alto, il che mantiene semplice l'hardware.
Problema
La maggior parte dei sistemi per dispiegare tessuti usa azioni quasi-statiche con un solo braccio, come il pick & place, che richiedono molte interazioni su tessuti molto stropicciati e non riescono a gestire tessuti più grandi della portata del braccio. I metodi euristici basati su angoli, bordi o pieghe falliscono quando questi punti chiave sono occlusi, non visibili o assenti nei tessuti non quadrati.
Soluzione proposta
FlingBot fissa una primitiva di movimento a due bracci (presa a pinza dall'alto in due punti, sollevamento a 0,30 m e tensione fino a tendere il tessuto, sbattimento in avanti di 0,70 m a 1,4 m/s, ritorno di 0,50 m, deposizione) e apprende solo dove afferrare, parametrizzando la presa con un pixel centrale, un angolo e una larghezza così che i vincoli di ordinamento dei bracci e di larghezza della presa restino lineari e indipendenti. Una rete di valore predice la copertura delta per pixel su un'immagine dall'alto a 12 rotazioni e 8 scale (mappe d'azione spaziali); è addestrata in modo auto-supervisionato in un simulatore personalizzato basato su PyFleX e poi sottoposta a fine-tuning su due bracci UR5 reali.
Idee chiave
- Fissare il movimento di tensione e sbattimento riduce l'apprendimento alla scelta di due punti di presa; apprendere anche la velocità dello sbattimento (FlingBot-S) non ha dato alcun guadagno significativo.
- Parametrizzare la presa a due bracci tramite centro, angolo in [−90°, 90°] e larghezza rende lineari e indipendenti i vincoli sinistra-destra e di distanza tra i bracci.
- Sfruttare l'equivarianza a traslazione, rotazione e scala tramite mappe d'azione spaziali è essenziale: la regressione diretta dei parametri di presa (Fling-Reg) ha raggiunto solo +0,3 % di copertura delta sui rettangoli normali.
- Per tentativi ed errori la policy ha imparato ad afferrare angoli e bordi visibili, o a sbattere il tessuto per renderli visibili, una strategia che i precedenti metodi euristici progettavano a mano.
- Lo sbattimento espande la portata effettiva, quindi anche tessuti più grandi della portata dei bracci possono essere dispiegati.
Risultati principali
- Simulazione, rettangoli normali (copertura finale / delta): FlingBot 91,9 % / +63,1 % contro Pick&Place 53,0 / +24,2, Pick&Drag 58,0 / +29,2 e Stretch&Drag 77,2 / +48,4.
- Oltre l'80 % di copertura entro 3 azioni su tessuti rettangolari normali nuovi in simulazione.
- Rettangoli grandi, oltre la portata: 79,2 % di copertura finale e +52,0 % di copertura delta, circa il doppio delle baseline quasi-statiche (+24,8 %, +27,1 %, +23,1 %).
- Magliette, mai viste in addestramento: 93,3 % di copertura finale / +46,8 % di copertura delta in simulazione.
- Sistema reale con due UR5, 10 episodi di test per tipo di tessuto: copertura finale dell'81,9 %, 88,5 % e 89,2 % su rettangolo normale, rettangolo grande e maglietta, contro 43,2 %, 38,4 % e 42,7 % per Pick&Place; il fine-tuning ha portato la copertura sul tessuto normale dal 69,8 % all'81,9 %.
- Tempo mediano per primitiva di sbattimento di 16,7 s contro 8,8 s per il pick & place, più overhead di 2,5 s e 2,9 s per entrambi.
Limiti
- Serve lavoro futuro per compiti più complessi sui tessuti, condizionati all'obiettivo, come la piegatura, che gli autori suggeriscono di affrontare combinando azioni dinamiche e quasi-statiche con la stima della posa del tessuto.
- Gli esperimenti usano un piano di lavoro nero uniforme e tessuti colorati non testurizzati per facilitare il mascheramento; texture arbitrarie richiederebbero segmentazione aggiuntiva o sottrazione dello sfondo.
- I risultati nel mondo reale sono mediati su 10 episodi di test per tipo di tessuto, escludendo gli errori di presa del mondo reale.
- Uno sbattimento richiede più tempo di un pick & place (mediana di 16,7 s contro 8,8 s), anche se servono meno azioni.
- Il setup reale si affidava a un tappetino di gomma da 2 pollici e a coperture in gomma per le dita della pinza per facilitare le prese a pinza, e l'addestramento fino alla convergenza ha richiesto circa 6 giorni su una GTX 1080 Ti.
Impatto sul settore
Vincitore del CoRL 2021 Best System Paper Award, con 229 citazioni secondo il dato riportato. Gli autori rilasciano codice, ambiente di simulazione, dati e video degli esperimenti tramite la pagina del progetto, incluso un simulatore personalizzato su PyFleX che carica mesh di tessuto arbitrarie.
Abstract
Le azioni dinamiche ad alta velocità (ad es. sbattere o lanciare) svolgono un ruolo cruciale nella nostra interazione quotidiana con gli oggetti deformabili, migliorando la nostra efficienza ed espandendo di fatto la nostra portata fisica. Tuttavia, la maggior parte dei lavori precedenti ha affrontato la manipolazione dei tessuti usando esclusivamente azioni quasi-statiche con un solo braccio, il che richiede un gran numero di interazioni per configurazioni iniziali difficili del tessuto e limita rigidamente la dimensione massima del tessuto alla portata del robot. In questo lavoro dimostriamo l'efficacia delle azioni dinamiche di sbattimento per dispiegare i tessuti con il framework di apprendimento auto-supervisionato da noi proposto, FlingBot. Il nostro approccio impara a dispiegare un pezzo di tessuto da configurazioni iniziali arbitrarie usando una primitiva di presa, tensione e sbattimento per un sistema a due bracci a partire da osservazioni visive. Il sistema finale raggiunge oltre l'80 % di copertura entro 3 azioni su tessuti nuovi, riesce a dispiegare tessuti più grandi della portata del sistema e generalizza alle magliette pur essendo addestrato solo su tessuti rettangolari. Abbiamo inoltre eseguito il fine-tuning di FlingBot su una piattaforma robotica reale a due bracci, dove ha aumentato la copertura del tessuto più di 4 volte rispetto a quanto ha fatto la baseline quasi-statica. La semplicità di FlingBot, unita alle sue prestazioni superiori rispetto alle baseline quasi-statiche, dimostra l'efficacia delle azioni dinamiche per la manipolazione di oggetti deformabili.
Link
- arXiv 2105.03655: https://arxiv.org/abs/2105.03655
- DOI 10.48550/arXiv.2105.03655: https://doi.org/10.48550/arXiv.2105.03655
- PDF: https://proceedings.mlr.press/v164/ha22a/ha22a.pdf
- Codice: https://github.com/columbia-ai-robotics/flingbot
- Pagina del progetto: https://flingbot.cs.columbia.edu/