Open Source Robotics

Una raccolta curata di progetti, strumenti e software di robotica open source di alta qualità per la comunità della robotica.

Constraint Manifold

  • Detto anche: constraint surface
  • Categoria: Planning & manipulation › Trajectory optimisation
  • Tag: motion-planning, configuration-space, constrained-planning, bimanual-manipulation, sampling-based-planning

L'insieme delle configurazioni del robot che soddisfano uno o più vincoli di uguaglianza, come tenere in piano un vassoio; di solito una superficie di dimensione inferiore all'interno dello spazio delle configurazioni.

Definizione

Una varietà dei vincoli (constraint manifold) è il sottoinsieme dello spazio delle configurazioni costituito da tutte le configurazioni q che soddisfano un vincolo di uguaglianza F(q) = 0. I vincoli tipici fissano parte della posa dell'end effector: tenere dritta una tazza, tenere un pennarello contro una lavagna, mantenere una pinza sulla maniglia di una porta mentre la porta ruota, o mantenere una trasformazione fissa tra due mani che tengono lo stesso oggetto. Quando le k equazioni di vincolo sono indipendenti, il teorema della funzione implicita afferma che l'insieme delle soluzioni è localmente una varietà liscia di dimensione (n − k) all'interno dello spazio delle configurazioni di dimensione n. Poiché ha dimensione inferiore rispetto allo spazio che la contiene, ha volume nullo: una configurazione campionata a caso soddisfa il vincolo con probabilità zero.

È questa proprietà a rendere difficile la pianificazione del movimento con vincoli. I pianificatori basati sul campionamento come PRM e RRT estraggono configurazioni casuali e le collegano con segmenti rettilinei, ed entrambi i passi falliscono su una varietà, poiché i campioni non la colpiscono e un segmento rettilineo tra due punti di una varietà curva ne esce. I pianificatori con vincoli usano alcune strategie principali. I metodi di proiezione prendono un campione fuori dalla varietà e lo riportano sulla varietà, spesso con iterazioni di Newton che usano lo jacobiano dei vincoli. I metodi di continuazione o ad atlante costruiscono carte locali sullo spazio tangente ed estendono la ricerca lungo di esse. I metodi di rilassamento accettano una piccola fascia di tolleranza attorno alla varietà, che la trasforma in una regione sottile di volume non nullo. I metodi di parametrizzazione, dove disponibili, descrivono direttamente la varietà con un insieme più piccolo di coordinate libere, ad esempio usando la cinematica inversa analitica per calcolare i giunti di un braccio a partire da quelli dell'altro braccio in una presa bimanuale.

Nelle catene cinematiche chiuse, compresi due bracci che tengono un unico oggetto rigido e i meccanismi paralleli, la varietà dei vincoli è l'insieme delle configurazioni in cui l'anello resta chiuso. L'ottimizzazione della traiettoria tratta gli stessi vincoli come vincoli di uguaglianza del problema di ottimizzazione anziché come un insieme da cui campionare. La struttura della varietà conta per entrambi: può essere divisa in componenti separate dai limiti dei giunti o da rami diversi della cinematica inversa, e nessun moto continuo può passare dall'una all'altra.

Perché è importante

Molti compiti utili sono vincolati: trasportare contenitori aperti, muovere oggetti con due bracci, aprire porte e cassetti, disegnare o pulire su superfici. I pianificatori che ignorano la struttura a volume nullo della varietà dei vincoli non trovano percorsi oppure restituiscono percorsi che violano il vincolo tra un waypoint e l'altro, per cui il modo in cui un pianificatore gestisce la varietà spiega buona parte della sua velocità e affidabilità.

Applicazioni principali

  • Manipolazione bimanuale di un oggetto rigido condiviso
  • Trasporto di oggetti che devono restare dritti, come contenitori aperti
  • Apertura di porte, cassetti e valvole lungo una cerniera o una guida
  • Pianificazione per meccanismi a catena chiusa e robot paralleli
  • Moto dell'utensile su superfici, come scrivere, pulire o lucidare
  • Pianificazione per umanoidi e robot con gambe con contatti fissi di mani o piedi

In pratica

Due bracci a sette giunti trasportano una scatola lunga, tenuta rigidamente da entrambe le pinze. Lo spazio delle configurazioni combinato ha quattordici dimensioni, ma la trasformazione fissa tra le mani impone sei vincoli di uguaglianza, quindi le configurazioni valide giacciono su una varietà dei vincoli a otto dimensioni. Un RRT basato su proiezione campiona una configurazione casuale, applica passi di Newton con lo jacobiano dei vincoli per riportarla sulla varietà e verifica brevi passi lungo ogni arco sia per le collisioni sia per l'errore sul vincolo. Un'alternativa, usata quando è disponibile la cinematica inversa analitica, pianifica sui giunti di un braccio più il parametro di ridondanza dell'altro e calcola i giunti del secondo braccio in forma chiusa, così che ogni campione soddisfi il vincolo per costruzione. Il team confronta la frequenza con cui ciascun approccio fallisce vicino ai limiti dei giunti, dove né la proiezione né la soluzione in forma chiusa potrebbero avere una risposta valida.

Idee sbagliate comuni

  • La pianificazione con vincoli richiede solo più campioni — la varietà ha volume nullo, quindi i campioni casuali non vi cadono quasi mai, per quanti se ne estraggano
  • Se ogni waypoint soddisfa il vincolo, lo soddisfa l'intero percorso — l'interpolazione rettilinea tra due configurazioni valide in genere esce da una varietà curva, quindi anche gli archi vanno verificati o proiettati
  • La varietà dei vincoli è un'unica superficie connessa — i limiti dei giunti e i diversi rami della cinematica inversa possono dividerla in componenti che nessun moto continuo può unire

Chi dovrebbe saperlo

  • Ingegneri di pianificazione del movimento
  • Ricercatori di manipolazione bimanuale e manipolazione mobile
  • Ingegneri che sviluppano ottimizzatori di traiettoria con vincoli
  • Studenti di robotica che studiano lo spazio delle configurazioni

Tecnologie correlate

  • Pianificazione con vincoli basata su proiezione (Projection-Based Constrained Planning)
  • Pianificazione basata su atlanti (Atlas-Based Planning)
  • Jacobiano dei vincoli (Constraint Jacobian)
  • Metodo di Newton–Raphson (Newton–Raphson Method)
  • Teorema della funzione implicita (Implicit Function Theorem)

Termini correlati

  • Configuration Space
  • Kinematic Redundancy
  • Inverse Kinematics
  • Rapidly-exploring random tree
  • Probabilistic Roadmap
  • Graph of Convex Sets

Progetti correlati

  • OMPL: Sampling-based motion planning library powering MoveIt and countless robotics applications
  • MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking
  • PyRoki: Modular Python toolkit for kinematic optimization across CPU, GPU, and TPU via JAX
  • mink: Python inverse kinematics library built on MuJoCo supporting 20+ robot platforms
  • Ruckig: Real-time jerk-constrained time-optimal trajectory generation for robots and machines
  • NeuPAN: Real-time end-to-end planner that maps raw lidar points directly to robot actions

Questo sito richiede JavaScript. Attiva JavaScript per esplorare i nostri progetti di robotica open source.