FECHA

30 de septiembre de 2026

CATEGORÍA

TAGS

Navegación autónoma (III): evitación de obstáculos

Rubén Rodríguez Abril

El artículo describe la capa de evitación de obstáculos de los vehículos no tripulados, encargada de responder ante obstáculos y otras circunstancias imprevistas durante la navegación. Esta capa se sitúa funcionalmente entre la planificación de ruta y el control de vuelo. Se presentan las principales métricas de riesgo y conflicto (TTC, TTCA y DCPA) y se examinan distintos métodos de reacción local: campos potenciales, Vector Field Histogram (VFH), obstáculos de velocidad (VO), Dynamic Window Approach (DWA), flujo óptico y control predictivo (MPC). Se analizan sus ventajas, limitaciones y ámbitos de aplicación, así como sus posibilidades de integración en función del entorno, los sensores disponibles y la capacidad computacional del vehículo.

Introducción

En un vehículo no tripulado, la capa de evitación de obstáculos es el conjunto de algoritmos que gobiernan su respuesta ante la aparición de obstáculos y otras circunstancias sobrevenidas durante la navegación. Es, quizá, una de las capas más cibernéticas de todas las que gobiernan su comportamiento. Se sitúa entre la planificación global (que decide la ruta) y el control (que ejecuta los comandos).

Los algoritmos de reacción local determinan qué movimientos inmediatos son cinemáticamente seguros para el vehículo. Algunos describen el entorno en términos espaciales: los Campos Potenciales generan regiones de atracción y repulsión (presencia de obstáculos) que empujan virtualmente al vehículo, mientras que el Vector Field Histogram (VFH) identifica sectores ocupados y corredores libres. Otros algoritmos operan sobre el espacio de velocidades: los Velocity Obstacles (VO) delimitan las velocidades que conducirían a una colisión, mientras que la Ventana Dinámica (DWA) describe el rango de velocidades que el vehículo puede ejecutar de forma segura e inmediata. Finalmente, métodos como el MPC evalúan directamente trayectorias futuras del vehículo y seleccionan aquella que minimiza una función de coste sujeta a restricciones.

En este artículo, expondremos en primer lugar las principales métricas utilizadas para ponderar el riesgo de colisión con un obstáculo, para analizar posteriormente, de forma somera, algunos de los algoritmos de evitación de objetos más conocidos.

Métricas de riesgo

El riesgo que representa un obstáculo para el vehículo puede cuantificarse mediante diferentes métricas de riesgo y conflicto. Una de las más utilizadas, y también de las más sencillas, es el tiempo hasta la colisión (TTC, Time to Collision). Si dos objetos se aproximan frontalmente, separados por una distancia d y con una velocidad de cierre vc, puede estimarse como:

TTC = \frac{d}{v_c}
El TTC también puede estimarse visualmente, sin necesidad de conocer directamente la distancia al objeto. Si \theta representa su tamaño angular aparente y \dot{\theta} la velocidad con la que este aumenta en la imagen, puede utilizarse la aproximación:
TTC \approx \frac{\theta}{\dot{\theta}}

Este fenómeno, denominado expansión óptica (looming), responde a una idea intuitiva: cuanto más rápidamente aumenta el tamaño aparente de un objeto en la imagen, menor es el tiempo restante hasta alcanzarlo, siempre que ambos mantengan aproximadamente su movimiento relativo.

Una métrica más general se obtiene mediante el punto de máxima aproximación (Closest Point of Approach, CPA). Sean r la posición relativa entre dos objetos y vrel su velocidad relativa. Suponiendo velocidades constantes, el tiempo hasta alcanzar la separación mínima (TTCA, Time to Closest Approach) viene dado por:

TTCA = -\frac{\mathbf{r}\cdot\mathbf{v}_{\mathrm{rel}}} {\|\mathbf{v}_{\mathrm{rel}}\|^2}

y la correspondiente distancia mínima de aproximación (DCPA, Distance at Closest Point of Approach) por:

DCPA = \left\| \mathbf{r}+\mathbf{v}_{\mathrm{rel}}\,TTCA \right\|

A diferencia del TTC elemental, estas magnitudes permiten analizar aproximaciones entre objetos que no van a colisionar uno contra otro. Un TTCA positivo indica que todavía se están aproximando, mientras que otro negativo indica que ya se están alejando.

Estas métricas no tienen que ser calculadas explícitamente por todos los sistemas de navegación. Algoritmos como VO, DWA o MPC, que examinaremos en las próximas secciones, incorporan el riesgo de colisión directamente en su geometría, sus criterios de admisibilidad o su función de coste. TTC, TTCA y DCPA resultan, no obstante, útiles para expresar una misma idea: determinar si dos movimientos convergen, cuándo alcanzarán su máxima aproximación y cuál será entonces su separación, información a partir de la cual puede desencadenarse una reacción local.

Campo potencial (PF, Potential Field)

Los campos potenciales trasladan a la navegación una idea tomada de la mecánica: representar el entorno mediante un paisaje de potencial. Los obstáculos generan un potencial repulsivo (positivo), que aumenta al aproximarse a ellos, mientras que el objetivo genera un potencial atractivo (negativo), que disminuye con la distancia. El vehículo tiende a moverse hacia las regiones de menor potencial, como si fuera una bola rondando sobre un paisaje, en el que el objetivo forma un valle y los obstáculos, colinas.

Figura 1. El vehículo se desplaza «pendiente abajo» por el paisaje de potencial hacia el objetivo, que constituye su mínimo global. La interacción entre los campos atractivo y repulsivos puede, sin embargo, generar mínimos locales: valles secundarios en los que el vehículo queda atrapado antes de alcanzar la meta.

A partir de este campo escalar se obtiene, mediante su gradiente, una fuerza virtual dirigida hacia las regiones de menor potencial:

F(x) = -∇ U(x)

La fuerza se transforma finalmente en una consigna de movimiento aplicada al vehículo, que se transmite a la capa de control de navegación.

Figura 2. El campo de fuerzas virtuales converge hacia el objetivo y diverge de los obstáculos, guiando al vehículo a través del espacio libre.

Los pozos de potencial: una trampa para los drones

Tal y como ya se expuso en el comentario de la Figura 1, el principal problema de un sistema basado en campos potenciales es la presencia de mínimos locales: regiones del espacio en las que las fuerzas atractivas y repulsivas se equilibran fuera del objetivo, dejando al vehículo atrapado en un punto donde

∇ U=0

Este problema puede mitigarse modificando el propio paisaje de potencial para impedir o deshacer estos equilibrios. Entre las principales soluciones se encuentran las siguientes:

–Inyección de una fuerza tangencial. Es el enfoque más directo. Cuando se detecta que la suma de fuerzas atractiva y repulsiva es cero, se introduce una fuerza de escape perpendicular a la dirección del objetivo. Esta fuerza rompe la simetría del equilibrio y empuja al vehículo fuera del punto de estancamiento. Es como darle un «empujoncito lateral» para que deje de estar clavado en el mismo sitio.

-Punto objetivo virtual. En lugar de modificar las fuerzas, se cambia temporalmente la meta. Se genera un punto objetivo virtual en una posición cercana pero fuera de la zona de conflicto (por ejemplo, en un borde del obstáculo o en una dirección lateral). El campo se recalcula usando ese nuevo punto como atractor, lo que altera el equilibrio y permite al vehículo rodear el obstáculo hasta que el mínimo local desaparece.

-Modificación temporal del campo repulsivo. Algunas variantes atenúan o eliminan temporalmente la repulsión de un obstáculo concreto. Si el gradiente se anula porque la repulsión domina, se reduce su peso o se aplica un factor de decaimiento durante un instante, permitiendo que la fuerza atractiva recupere el control y el vehículo avance. Una vez superado el conflicto, la repulsión vuelve a su estado normal.

-Búsqueda estocástica de escape. Se lanza una búsqueda aleatoria local para encontrar un punto cercano que sí tenga un gradiente útil, y tras ello redirige el vehículo hacia él.

-Replanificación con planificador global. Se delega la salida del mínimo local a un planificador global (como A* o RRT). Al detectar el estancamiento, se activa el planificador para generar una ruta alternativa que evite la zona de conflicto, y el campo potencial se usa solo como guía reactiva una vez fuera de ella.

En todos estos esquemas se fuerza al sistema a salir de la trampa mediante una perturbación (lateral, virtual, atenuada o aleatoria) que rompe el equilibrio de fuerzas y elimina temporalmente el pozo de potencial.

A pesar de este problema, los campos potenciales continúan siendo utilizados en la navegación de UAVs. Una revisión reciente de Merei et al. (2025) agrupa aproximadamente el 18 % de los trabajos examinados dentro de la categoría de campos vectoriales o potenciales.

Obstáculos de velocidad (VO, Velocity Obstacles)

Un obstáculo de velocidad no es un objeto físico, sino una región del espacio de velocidades que contiene aquellas que conducirían a una colisión futura. El método, propuesto originalmente por Fiorini y Shiller (1998), parte de la posición y velocidad relativas entre el agente ego A y un obstáculo B y determina qué velocidades de A, mantenidas durante cierto tiempo, provocarían su encuentro. Estas velocidades están cinemáticamente prohibidas.

Para ello, cada obstáculo se amplía con el radio del propio vehículo y, en su caso, con un margen adicional de seguridad. Si

R=rA+rB+dseg

el sistema determina qué velocidades del vehículo conducirían, dentro del horizonte considerado, a penetrar en esa región de seguridad. En su formulación clásica se supone que el obstáculo mantiene una velocidad constante; sin embargo, esta extrapolación puede sustituirse por las trayectorias futuras obtenidas mediante los métodos de predicción examinados en el artículo anterior. El conjunto de velocidades que producirían una intersección constituye el obstáculo de velocidad VO|A, cuyos límites corresponden a las trayectorias tangentes a la región ampliada.

Flujo óptico

Los sistemas de flujo óptico generan reacciones a partir de la información visual, sin necesidad de estimar previamente la profundidad de los objetos en el espacio tridimensional. Se denomina flujo óptico al movimiento aparente bidimensional de los píxeles entre los fotogramas sucesivos que recibe el vehículo.

Por ejemplo, un vehículo que avanza por un corredor puede comparar el flujo lateral generado a ambos lados: si los elementos situados a la izquierda se desplazan por la imagen más rápidamente que los situados a la derecha, puede corregir su trayectoria hacia este último lado hasta equilibrar aproximadamente ambos flujos.

Figura 3. Representación del flujo óptico lateral durante el avance por un corredor. Los elementos próximos producen un desplazamiento aparente mayor entre fotogramas que los más alejados. La mayor intensidad del flujo en el lado derecho indica una menor distancia respecto de esa pared, por lo que el vehículo puede corregir su trayectoria hacia la izquierda hasta equilibrar aproximadamente el flujo observado a ambos lados.

Otro patrón de flujo óptico particularmente útil es la expansión óptica (looming), a la que ya hicimos referencia en el apartado de las métricas de riesgo. Supongamos que el sistema de navegación recibe continuamente las detecciones producidas por un algoritmo como YOLO. Cuando un objeto se aproxima al vehículo, su ventana de detección y la superficie que ocupa en la imagen aumentan progresivamente. A partir de esta expansión puede estimarse el tiempo hasta la colisión (TTC) sin conocer necesariamente la distancia absoluta:

\tau \approx \frac{\theta}{\dot{\theta}}
donde θ representa el tamaño angular aparente del objeto y \dot{\theta}, su velocidad de expansión. Cuando τ desciende por debajo de un determinado umbral, el sistema puede ordenar una maniobra evasiva.

El flujo óptico presenta, sin embargo, varias limitaciones prácticas. Los desplazamientos grandes entre fotogramas dificultan la correspondencia y pueden invalidar las aproximaciones empleadas por los métodos clásicos; las oclusiones hacen desaparecer puntos previamente observados; las superficies con poca textura proporcionan escasos gradientes con los que estimar el movimiento; y los cambios de iluminación vulneran la hipótesis de constancia del brillo sobre la que descansan los métodos tradicionales. Algunas de estas limitaciones pueden mitigarse integrando el flujo óptico con los algoritmos de detección y rastreo examinados anteriormente, que permiten mantener la identidad y estimar el movimiento de los objetos incluso cuando la información proporcionada por el flujo resulta temporalmente insuficiente.

VFH (Vector Field Histogram)

El Vector Field Histogram (VFH) construye, a partir de los datos proporcionados por sensores como LiDAR o por algoritmos de estimación de profundidad, un histograma polar que representa la presencia de obstáculos en cada dirección alrededor del vehículo, como se muestra en la Figura 4. Las direcciones con una elevada concentración de obstáculos quedan descartadas, mientras que las restantes forman corredores por los que el vehículo puede desplazarse.

Figura 4. Este histograma polar tiene una única dimensión angular: la coordenada polar que discurre paralela al suelo y representa los posibles rumbos que puede adoptar el rover. Los valores asociados a cada dirección indican la densidad de obstáculos detectada: el rojo corresponde a la densidad máxima y el azul a la mínima. El algoritmo favorece las direcciones con menor densidad de obstáculos, que constituyen los corredores disponibles para el desplazamiento.

Entre estos corredores, el algoritmo selecciona la dirección más alineada con el objetivo, teniendo en cuenta además las dimensiones del vehículo, la distancia de seguridad y su radio mínimo de giro. El resultado es una dirección de movimiento que se recalcula conforme cambia el entorno.

Su principal limitación es su carácter local: el vehículo puede quedar atrapado en mínimos locales, como callejones sin salida, o desarrollar comportamientos oscilatorios o cíclicos. Por ello, VFH suele combinarse con un planificador global, encargado de proporcionar una ruta general hacia el objetivo.

Ventana dinámica (DWA)

La ventana dinámica (v,ω) es el conjunto de movimientos que un vehículo o robot puede ejecutar en un instante determinado, dadas sus actuales condiciones cinemáticas. Cada posible movimiento es identificado por un par de coordenadas v y ω correspondientes, respectivamente, a la velocidad lineal y angular. Estas coordenadas generan durante un breve intervalo así una trayectoria constante.

El algoritmo DWA elimina aquellos pares que llevarán al vehículo a una colisión a menos de una distancia crítica. Las restantes se puntúan mediante la función G(v,ω).

G(v,\omega) = \sigma\left[ \alpha\,\operatorname{orientacion}(v,\omega) + \beta\,\operatorname{distancia}(v,\omega) + \gamma\,\operatorname{velocidad}(v,\omega) \right]

donde α, β y γ ponderan respectivamente la orientación hacia el objetivo, la seguridad y la velocidad. El primer término favorece las trayectorias hacia el objetivo, el segundo, las que mantienen una mayor distancia respecto a los obstáculos, mientras que el tercero favorece que la mayor velocidad de avance, dado que una búsqueda basada en los dos criterios anteriores tiende a producir movimientos excesivamente lentos.

DWA selecciona la pareja (v,ω) que obtiene la mayor puntuación y ejecuta brevemente el movimiento correspondiente. A continuación, vuelve a observar el entorno, construye una nueva ventana dinámica y repite el cálculo, cerrando así un bucle cibernético de decisión y reacción.

MPC (Model Predictive Control)

En los modelos de control predictivo, el vehículo calcula su evolución durante un horizonte temporal y selecciona la secuencia de controles que minimiza una función de coste. En el modelo propuesto por Lindqvist et al. para un dron intervienen las siguientes variables:

  • El estado del cuerpo, x = [p,v,ϕ, θ], determinado por las tres coordenadas de posición p, las tres componentes de velocidad lineal v y los ángulos actuales de roll ϕ y pitch θ.

  • Las acciones de control, u = [T, ϕref θref], que señalan el empuje T y los ángulos de inclinación deseados. Estas consignas se transmiten al controlador de vuelo, que a su vez las transforma en órdenes para los motores.

  • El estado de referencia (xref), que representa el estado ideal (“viaje de acuerdo con el plan”) que debería tener el vehículo de acuerdo con la trayectoria de referencia proporcionada por la capa superior de planificación de ruta.

  • La entrada de referencia (uref), correspondiente al vuelo estacionario uref = (g,0,0). En este estado el dron permanece nivelado, ϕ = θ = 0, y su empuje compensa la aceleración g de la gravedad.

Figura 5. Las acciones de control, en el modelo Lindqvist et al, pueden consistir en imprimir un empuje T al dron o en variar sus órganos de inclinación.

Piloto automático

Cuando no hay obstáculos (u otro tipo de restricciones dinámicas), la función de coste, J, que debe ser minimizada es la siguiente:

J(x_k,u_k,u_{k-1|k}) = \sum_{j=0}^{N} \left\|x_{\mathrm{ref}}-x_{k+j|k}\right\|_{Q_x}^{2} + \left\|u_{\mathrm{ref}}-u_{k+j|k}\right\|_{Q_u}^{2} + \left\|u_{k+j|k}-u_{k+j-1|k}\right\|_{Q_{\Delta u}}^{2}

El sumatorio se extiende a lo largo del horizonte de predicción, hasta el instante \(N\). En el lado derecho aparecen tres términos: el coste de estado, que penaliza la desviación respecto de la trayectoria de referencia; el coste de entrada, que penaliza el apartamiento de las consignas correspondientes al vuelo estacionario; y el coste de suavidad, que penaliza los cambios bruscos de los controles entre instantes sucesivos.

Explorar todas las posibles secuencias de actuación del vehículo a lo largo del horizonte produciría una explosión combinatoria. Los algoritmos de optimización evitan esta enumeración. En cada paso temporal, se parte de una secuencia inicial de controles, que puede obtenerse de la trayectoria proporcionada por el planificador de ruta o, durante el funcionamiento, de la solución calculada en el ciclo anterior. A partir de ella, el optimizador modifica iterativamente los controles uk utilizando información sobre el gradiente de J, que indica en qué dirección varía el coste, hasta converger hacia un mínimo.

Restricciones

Figura 6. En la imagen se muestra un objeto, rodeado por su correspondiente esfera de seguridad, dirigiéndose hacia el dron, que por lo demás debe desplazarse al waypoint señalado en verde. Entre las trayectorias posibles, el optimizador selecciona aquella que minimiza la función de coste Jtotal.

MPC no es un algoritmo de reacción local en sentido estricto, sino una capa de control, que se puede transformar en reactiva imponiendo restricciones dinámicas. Su ventaja es que no sólo permite reaccionar localmente, sino que además traza toda la trayectoria del vehículo, anticipando su evolución futura (como se muestra en la Figura 6). Su principal desventaja, en cambio, es su elevado coste computacional en comparación con los métodos reactivos puros, presentados en secciones anteriores.

La evitación de obstáculos se incorpora a MPC mediante un término adicional en la función de coste. Consideremos un único obstáculo y sea p su posición respecto al vehículo en un tiempo determinado. Esta posición puede ser proporcionada por un algoritmo de predicción. A este obstáculo, de radio robs, le asignamos un margen de seguridad de rs. Definimos una función hobs que expresa si el vehículo penetra en la región de seguridad así definida:

hobs = (robs + rs)2 – |p|2

Cuando hobs > 0, el vehículo ha penetrado en la esfera de seguridad, cuando hobs < 0, está fuera de ella. La penalización asociada al obstáculo es, simplemente:

J_{\mathrm{obs}} = c\,[h_{\mathrm{obs}}]_+^2

donde h[obs]+ = max(0,hobs) y c determina el peso de la penalización. Cuando el dron está fuera de la esfera de seguridad del objeto, la penalización deviene nula.

La función que debe minimizar el controlador pasa a ser

Jtotal = J + Jobs

Restricciones adicionales impiden que el dron realice maniobras excesivamente bruscas y mantienen sus ángulos de inclinación dentro de determinados límites, evitando configuraciones de vuelo inestables.

Conclusiones

Los distintos métodos de reacción local ya expuestos presentan ventajas en escenarios diferentes. Los campos potenciales resultan especialmente apropiados cuando se busca una reacción sencilla y de bajo coste computacional frente a obstáculos próximos; VFH, cuando se dispone de información espacial relativamente densa, como la proporcionada por un LiDAR, y deben identificarse corredores transitables; y VO, cuando resulta especialmente relevante el movimiento relativo de otros agentes. DWA resulta adecuado para seleccionar en tiempo real movimientos inmediatamente ejecutables teniendo en cuenta las limitaciones cinemáticas del vehículo, mientras que MPC/NMPC permite abordar escenarios más complejos en los que interesa considerar conjuntamente la evolución futura de los obstáculos y la dinámica del propio vehículo. El flujo óptico, por su parte, resulta particularmente útil para la reacción visual ante obstáculos cuando la cámara constituye uno de los principales sensores.

Estas técnicas no son necesariamente excluyentes y pueden integrarse en una misma arquitectura. En un dron que atraviesa un bosque, por ejemplo, el flujo óptico puede advertir de la proximidad de obstáculos laterales, mientras un VFH basado en LiDAR identifica corredores libres y un algoritmo de reacción determina la maniobra. La elección y combinación de métodos dependerá finalmente del entorno, los sensores disponibles, la dinámica del vehículo y su capacidad computacional, desde la relativa simplicidad de los campos potenciales hasta el coste considerablemente mayor de resolver en tiempo real un problema de NMPC.

Lecturas Recomendadas

–  Khatib, O. “Real-Time Obstacle Avoidance for Manipulators and Mobile Robots.” (Campos Potenciales)

–  Borenstein, J.; Koren, Y. “The Vector Field Histogram—Fast Obstacle Avoidance for Mobile Robots.”. (VFH)

–  Fox, D.; Burgard, W.; Thrun, S. “The Dynamic Window Approach to Collision Avoidance.”. (DWA)

–  Fiorini, P.; Shiller, Z. “Motion Planning in Dynamic Environments Using Velocity Obstacles.”. (Velocity Obstacles, VO)

–  Lindqvist, B.; Mansouri, S. S.; Agha-mohammadi, A.; Nikolakopoulos, G. “Nonlinear MPC for Collision Avoidance and Control of UAVs With Dynamic Obstacles.». (MPC no lineal)

–  Merei, A.; Mcheick, H.; Ghaddar, A.; Rebaine, D. “A Survey on Obstacle Detection and Avoidance Methods for UAVs.». (encuesta general)

 

SERIES

Sistemas multimodales

CLIP