Potential Field
- Detto anche: artificial potential field, APF
- Categoria: Planning & manipulation › Motion planning
- Tag: motion-planning, obstacle-avoidance, reactive-control, navigation, gradient-descent
Un metodo di pianificazione e controllo in cui l'obiettivo attrae e gli ostacoli respingono, e il robot segue il gradiente del potenziale combinato; semplice e reattivo, ma soggetto a minimi locali.
Definizione
Nel metodo del campo potenziale artificiale (artificial potential field), il robot è trattato come una particella che si muove in un campo scalare U(q) definito sul suo spazio di lavoro o spazio delle configurazioni. Un potenziale attrattivo, spesso quadratico nella distanza dall'obiettivo, lo attira verso la meta. I potenziali repulsivi, che crescono bruscamente man mano che il robot si avvicina a un ostacolo e si annullano oltre una distanza di influenza, lo allontanano dagli ostacoli. Al robot viene comandato di seguire il gradiente negativo −∇U, che agisce come una forza virtuale. Khatib (1986) ha introdotto l'approccio per l'evitamento degli ostacoli in tempo reale da parte di manipolatori e robot mobili, applicando le forze virtuali in punti del braccio e mappandole in coppie ai giunti tramite la trasposta dello jacobiano.
Il vantaggio è che il calcolo è locale ed economico. Ogni passo richiede solo le distanze attuali dagli ostacoli vicini, quindi il metodo reagisce immediatamente agli ostacoli in movimento e gira alle frequenze di controllo. Il limite principale è che seguire il gradiente si arresta in qualsiasi minimo locale di U, dove le forze attrattive e repulsive si annullano: un robot può restare intrappolato all'interno di un ostacolo a forma di U o davanti a un varco tra due ostacoli vicini. I campi potenziali possono anche oscillare nei passaggi stretti, e quando un ostacolo si trova vicino all'obiettivo, la repulsione può impedire al robot di raggiungerlo.
Esistono diversi rimedi. Le funzioni di navigazione, introdotte da Rimon e Koditschek, sono potenziali costruiti per avere un unico minimo nell'obiettivo per certe classi di ambienti, e le funzioni potenziali armoniche evitano per costruzione i minimi spuri. Più spesso, i campi potenziali vengono combinati con un pianificatore globale che fornisce waypoint intermedi, con moti casuali per sfuggire ai minimi, oppure usati come un termine in un controllore basato sull'ottimizzazione. La stessa idea di discendere il gradiente di un costo costruito da obiettivi e ostacoli compare nei lavori attuali con altri nomi, come i costi basati su campi di distanza con segno negli ottimizzatori di traiettoria e i paesaggi di costo composti dinamicamente per la manipolazione reattiva.
Perché è importante
I campi potenziali sono uno dei modi più semplici per ottenere un evitamento reattivo degli ostacoli, e il loro problema dei minimi locali è l'esempio classico del perché controllo reattivo e pianificazione globale vengono combinati. Seguire il gradiente di costi legati a obiettivi e ostacoli resta al centro di molti controllori reattivi e ottimizzatori di traiettoria.
Applicazioni principali
- Evitamento reattivo degli ostacoli per robot mobili
- Evitamento delle collisioni in tempo reale per manipolatori vicino a persone o oggetti in movimento
- Coordinamento multi-robot e di sciami con repulsione tra robot
- Navigazione di droni in spazi ingombri
- Livelli di controllo locale sotto un pianificatore globale del percorso
- Termini di costo nell'ottimizzazione della traiettoria e nella manipolazione reattiva
In pratica
Un piccolo robot a trazione differenziale usa un lidar 2D per muoversi in un laboratorio. A ogni scansione, il controllore calcola una forza attrattiva verso il waypoint successivo e una forza repulsiva da ogni ritorno del lidar entro una distanza di influenza prefissata, le somma e converte il risultato in comandi di velocità lineare e angolare. Il robot aggira le persone che passano senza ripianificare. Quando resta bloccato in un angolo formato da due scrivanie, il team rileva lo stallo dalla velocità prossima a zero mentre l'obiettivo è ancora lontano, e fa inserire al pianificatore globale un waypoint intermedio attorno all'ostacolo. Il team limita anche la forza repulsiva e smussa le velocità comandate per impedire al robot di oscillare nei vani delle porte.
Idee sbagliate comuni
- Seguire il campo potenziale porta sempre all'obiettivo — seguire il gradiente può arrestarsi in minimi locali dove le forze attrattive e repulsive si annullano
- I campi potenziali sono un metodo di pianificazione completo — sono locali e reattivi, e di solito vengono abbinati a un pianificatore globale quando un percorso deve essere garantito
- Una repulsione più forte rende sempre il robot più sicuro — una repulsione troppo forte o troppo ampia può bloccare i passaggi stretti e causare oscillazioni
Chi dovrebbe saperlo
- Ingegneri di robot mobili e di navigazione
- Ingegneri del controllo di manipolatori che lavorano sull'evitamento delle collisioni
- Sviluppatori di sistemi multi-robot e di droni
- Studenti che imparano la pianificazione del movimento classica
Tecnologie correlate
- Funzioni di navigazione (Navigation Functions)
- Vector Field Histogram
- Dynamic Window Approach
- Campi di distanza con segno (Signed Distance Fields)
- Formulazione nello spazio operativo (Operational Space Formulation)
Termini correlati
- Obstacle Avoidance
- Motion Planning
- Configuration Space
- Signed Distance Field
- Operational Space Control
- Control Barrier Function
Progetti correlati
- Nav2: ROS 2 navigation stack with path planning and obstacle avoidance for mobile robots
- DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required
- ROS Motion Planning: One repo implementing 40+ classic and learning-based robot path planners as ROS plugins
- OMPL: Sampling-based motion planning library powering MoveIt and countless robotics applications
- MRPT: Comprehensive C++ toolkit for mobile robotics, SLAM, and sensor-based navigation
- MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking