Potential Field
- También llamado: artificial potential field, APF
- Categoría: Planning & manipulation › Motion planning
- Etiquetas: motion-planning, obstacle-avoidance, reactive-control, navigation, gradient-descent
Un método de planificación y control en el que el objetivo atrae y los obstáculos repelen, y el robot sigue el gradiente del potencial combinado; sencillo y reactivo, pero propenso a mínimos locales.
Definición
En el método del campo potencial artificial (artificial potential field), el robot se trata como una partícula que se mueve en un campo escalar U(q) definido sobre su espacio de trabajo o su espacio de configuraciones. Un potencial atractivo, a menudo cuadrático en la distancia al objetivo, lo atrae hacia la meta. Los potenciales repulsivos, que crecen bruscamente a medida que el robot se acerca a un obstáculo y se anulan más allá de una distancia de influencia, lo alejan de los obstáculos. Se ordena al robot seguir el gradiente negativo −∇U, que actúa como una fuerza virtual. Khatib (1986) introdujo el enfoque para la evitación de obstáculos en tiempo real por manipuladores y robots móviles, aplicando las fuerzas virtuales en puntos del brazo y transformándolas en pares articulares mediante la traspuesta de la jacobiana.
Su atractivo es que el cálculo es local y barato. Cada paso necesita solo las distancias actuales a los obstáculos cercanos, así que el método reacciona de inmediato a los obstáculos en movimiento y funciona a frecuencias de control. La principal limitación es que el seguimiento del gradiente se detiene en cualquier mínimo local de U, donde las fuerzas atractivas y repulsivas se anulan: un robot puede quedar atrapado dentro de un obstáculo en forma de U o delante de un hueco entre dos obstáculos cercanos. Los campos potenciales también pueden oscilar en pasos estrechos, y cuando un obstáculo está cerca del objetivo, la repulsión puede impedir que el robot lo alcance.
Existen varios remedios. Las funciones de navegación, introducidas por Rimon y Koditschek, son potenciales construidos para tener un único mínimo en el objetivo para ciertas clases de entornos, y las funciones potenciales armónicas evitan los mínimos espurios por construcción. Con más frecuencia, los campos potenciales se combinan con un planificador global que proporciona puntos de paso intermedios o con movimientos aleatorios para escapar de los mínimos, o se usan como un término de un controlador basado en optimización. La misma idea de descender por el gradiente de un coste construido a partir de objetivos y obstáculos aparece en trabajos actuales con otros nombres, como los costes de campos de distancia con signo en los optimizadores de trayectorias y los paisajes de coste compuestos dinámicamente para la manipulación reactiva.
Por qué importa
Los campos potenciales son una de las formas más sencillas de obtener evitación reactiva de obstáculos, y su problema de mínimos locales es la ilustración clásica de por qué se combinan el control reactivo y la planificación global. El seguimiento del gradiente sobre costes de objetivo y obstáculos sigue estando en el núcleo de muchos controladores reactivos y optimizadores de trayectorias.
Aplicaciones clave
- Evitación reactiva de obstáculos para robots móviles
- Evitación de colisiones en tiempo real para manipuladores cerca de personas u objetos en movimiento
- Coordinación de múltiples robots y enjambres con repulsión entre robots
- Navegación de drones en espacios abarrotados
- Capas de control local por debajo de un planificador global de rutas
- Términos de coste en optimización de trayectorias y manipulación reactiva
En la práctica
Un pequeño robot de tracción diferencial usa un lidar 2D para moverse por un laboratorio. En cada barrido, el controlador calcula una fuerza atractiva hacia el siguiente punto de paso y una fuerza repulsiva de cada retorno del lidar dentro de una distancia de influencia fijada, las suma y convierte el resultado en órdenes de velocidad lineal y angular. El robot esquiva a las personas que pasan sin replanificar. Cuando se queda atascado en una esquina formada por dos escritorios, el equipo detecta el bloqueo por una velocidad cercana a cero mientras el objetivo sigue lejos, y hace que el planificador global inserte un punto de paso intermedio alrededor del obstáculo. También limitan la fuerza repulsiva y suavizan las velocidades ordenadas para que el robot deje de oscilar en los vanos de las puertas.
Ideas erróneas comunes
- Seguir el campo potencial siempre lleva al objetivo — el seguimiento del gradiente puede detenerse en mínimos locales donde las fuerzas atractivas y repulsivas se anulan
- Los campos potenciales son un método de planificación completo — son locales y reactivos, y normalmente se combinan con un planificador global cuando hay que garantizar una trayectoria
- Una repulsión más fuerte siempre hace al robot más seguro — una repulsión demasiado fuerte o amplia puede bloquear pasos estrechos y causar oscilaciones
Quién debería saberlo
- Ingenieros de robots móviles y de navegación
- Ingenieros de control de manipuladores que trabajan en evitación de colisiones
- Desarrolladores de sistemas multirrobot y de drones
- Estudiantes que aprenden planificación de movimiento clásica
Tecnologías relacionadas
- Funciones de navegación (Navigation Functions)
- Vector Field Histogram
- Dynamic Window Approach
- Campos de distancia con signo (Signed Distance Fields)
- Formulación en el espacio operacional (Operational Space Formulation)
Términos relacionados
- Obstacle Avoidance
- Motion Planning
- Configuration Space
- Signed Distance Field
- Operational Space Control
- Control Barrier Function
Proyectos relacionados
- 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