Affordance
- Detto anche: affordances, affordance detection, action possibilities
- Categoria: Planning & manipulation › Manipulation
- Tag: perception, manipulation, grasping, robot-learning, cognitive-robotics
Un'azione che un oggetto o un ambiente rende possibile per un particolare agente, come una maniglia che può essere afferrata o una superficie che può sostenere un oggetto appoggiato.
Definizione
Affordance sono le possibilità d'azione che l'ambiente offre a un particolare agente. Il termine è stato introdotto dallo psicologo James J. Gibson, secondo il quale gli animali percepiscono il mondo in parte in termini di ciò che possono farci: una sedia offre la possibilità di sedersi, una maniglia quella di essere afferrata, una superficie piana quella di appoggiarvi qualcosa. Le affordance sono relazionali; dipendono sia dall'oggetto sia dal corpo e dalle capacità dell'agente.
In robotica, ragionare sulle affordance significa prevedere quali azioni sono possibili e dove. Il rilevamento delle affordance etichetta parti di un'immagine o di una nuvola di punti con azioni come afferrare, tagliare, versare, spingere o contenere. Le mappe di affordance assegnano un punteggio a ogni pixel o posizione, per esempio la probabilità che una presa in quel punto vada a buon fine. Queste rappresentazioni collegano la percezione direttamente all'azione invece di fermarsi ai nomi degli oggetti.
La natura relazionale conta per i robot. Il manico di una tazza offre una presa a una mano che vi passa attraverso, ma non a una grande pinza a ganasce parallele; un gradino offre la salita a un robot con gambe, ma non a uno su ruote. Per questo i buoni modelli di affordance tengono conto dell'embodiment del robot, non solo della categoria dell'oggetto.
Con i grandi modelli linguistici e visivi, le affordance servono anche come segnale di grounding. Un modello linguistico può proporre i passi di un compito, ma non sa quali di quei passi il robot possa davvero eseguire nella scena attuale. Sistemi come SayCan hanno combinato i suggerimenti di un modello linguistico con stime apprese della probabilità che ogni abilità riuscisse a partire dallo stato attuale, una affordance nel senso di Gibson.
Perché è importante
I robot devono sapere non solo che cosa sono gli oggetti, ma che cosa ci si può fare. Le affordance collegano la percezione all'azione, ed è per questo che ricorrono in tutta la presa, l'uso di utensili e la manipolazione guidata dal linguaggio.
Applicazioni principali
- Previsione di presa e posizionamento da immagini o nuvole di punti
- Uso di utensili e manipolazione a livello di parti, come manici, coperchi e beccucci
- Grounding delle istruzioni in linguaggio naturale in azioni che il robot può davvero eseguire
- Navigazione e locomozione su terreni che sostengono o non sostengono il robot
In pratica
Un team che costruisce un sistema di manipolazione domestica potrebbe addestrare una rete che prevede, per ogni pixel di un'immagine RGB-D, dove la pinza del robot può afferrare e dove si possono appoggiare gli oggetti. Il pianificatore dei compiti interroga poi queste mappe: per aprire un cassetto cerca una regione di maniglia afferrabile, e per posare una tazza cerca una superficie su cui appoggiarla. I dati di addestramento provengono spesso dai tentativi di presa del robot stesso, etichettati in base al loro esito, così che le previsioni rispecchino quella specifica pinza.
Idee sbagliate comuni
- Un'affordance è una proprietà del solo oggetto — è una relazione tra l'oggetto e il corpo e le capacità dell'agente
- Il rilevamento delle affordance è la stessa cosa del riconoscimento degli oggetti — il riconoscimento dà un nome a un oggetto, mentre il rilevamento delle affordance prevede quali azioni supporta e dove
- Le affordance apprese per un robot si trasferiscono direttamente a un altro — una pinza o un corpo diversi possono cambiare quali azioni sono possibili
Chi dovrebbe saperlo
- Ricercatori di manipolazione e presa
- Ingegneri della percezione che costruiscono modelli di visione orientati all'azione
- Ricercatori che collegano i modelli linguistici alle abilità dei robot
Tecnologie correlate
- Pianificazione della presa (Grasp Planning)
- Segmentazione semantica (Semantic Segmentation)
- Modelli visione-linguaggio (Vision-Language Models)
- Pianificazione dei compiti (Task Planning)
- Elaborazione di nuvole di punti (Point Cloud Processing)
Termini correlati
Progetti correlati
- LeRobot: HuggingFace ML library for real-world robotics in PyTorch
- OpenPI: Physical Intelligence VLA foundation models for general robot control
- Open3D: Modern library for 3D point cloud processing, mesh operations, and 3D machine learning
- PCL: Industry-standard C++ library for point cloud processing in robotics perception
- Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
- NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills