SciELO - Scientific Electronic Library Online

 
vol.18 issue34A comparison of robust Kalman filtering methods for artifact correction in heart rate variability analysisInfluence of compaction temperature on the resistance of a stabilized granular material with asphalt cement author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

  • On index processCited by Google
  • Have no similar articlesSimilars in SciELO
  • On index processSimilars in Google

Share


TecnoLógicas

Print version ISSN 0123-7799On-line version ISSN 2256-5337

TecnoL. vol.18 no.34 Medellín Jan./June 2015

 

Artículo de investigación/Research article

Planeación de trayectorias para cuadricópteros en ambientes dinámicos tridimensionales

Path planning for quadrotors in 3D dynamic environments

Diego M. Rivera-Pinzón1, Flavio A. Prieto-Ortiz2

1Magíster en Ingeniería - Automatización Industrial, Departamento de Tecnología, Universidad Pedagógica Nacional, Bogotá-Colombia, dmrivera@pedagogica.edu.co

2Doctor en Automatización Industrial, Departamento de Ingeniería Mecánica y Mecatrónica, Universidad Nacional de Colombia, Bogotá-Colombia, faprietoo@unal.edu.co

Fecha de recepción: 10 de junio de 2014 / Fecha de aceptación: 22 de septiembre de 2014


Como citar / How to cite

D. M. Rivera-Pinzón y F. A. Prieto-Ortiz, “Planeación de trayectorias para cuadricópteros en ambientes dinámicos tridimensionales”, Tecno Lógicas, vol. 18, no. 34, pp. 37-50, 2015.


Resumen

Un tema de interés sobre los vehículos aéreos no tripulados es la determinación de trayectorias apropiadas que le permitan moverse de una posición inicial a una posición objetivo, garantizando que la trayectoria sea segura, es decir, que no existan riesgos de colisión. En este artículo se presentan dos técnicas de planificación de trayectorias y una estrategia de evasión de obstáculos para cuadricópteros, ambas técnicas funcionales sobre ambientes tridimensionales con obstáculos estáticos o dinámicos restringidos a velocidades constantes. Las técnicas funcionan sobre un ambiente modelado con planos que generan un campo de potencial artificial. La primera técnica está basada en puntos móviles que interconectan la posición inicial con la meta, posteriormente cada punto se mueve hacia zonas libres de la influencia de los obstáculos siguiendo el campo potencial, lo que hace que se encuentren caminos libres de obstáculos. La segunda técnica usa el concepto de zonas seguras, el cual se utiliza como criterio para actualizar la posición de los puntos. Adicionalmente, se propone una metodología de evasión de obstáculos dinámicos, que consiste en transformar el problema de planeación de trayectorias con obstáculos dinámicos al caso de planeación de trayectorias con obstáculos estáticos mediante un proceso de análisis de las posibilidades de colisión. Los resultados muestran que estas técnicas superan los inconvenientes de los algoritmos basados en gradiente descendente como mínimos locales y oscilaciones inestables.

Palabras clave: Planificación de trayectorias 3D, evasión de obstáculos, cuadricópteros, campos de fuerza artificial, vehículos aéreos no tripulados.


Abstract

A topic of interest on unmanned aerial vehicles is determining appropriate paths that allow them to move from an initial position to a target position, ensuring that the path is safe, in other words, that there is no risk of collision. In this article, two techniques of path planning and an obstacle avoidance strategy for quadricopters are presented. Both techniques are functional on three-dimensional environments with static or dynamic obstacles restricted to constant speeds. The techniques work on an environment modeling with planes which generate an artificial potential field. The first technique is based on moving points that connect the initial position to the goal, and then every point moves towards free zones of influence of obstacles along the potential field, which makes unobstructed paths. The second technique uses the concept of safe areas, which is used as a criterion for updating the position of the points. Additionally, a methodology of dynamic obstacles avoidance is proposed, which is to transform the problem of trajectory planning with dynamic obstacles to the case of path planning with static obstacles through a process of analyzing the possibility of a collision. The results show that these techniques overcome the drawbacks of the gradient descent-based algorithms as local minima and unstable oscillations problems.

Keywords: 3D path planning, obstacle evasion, quadrotors, artificial potential field, unmanned aerial vehicles.


1. Introducción

Un vehículo aéreo no tripulado o UAV (sigla de Unmanned Aerial Vehicle) es una aeronave que puede volar sin ningún control humano abordo y, normalmente, está equipado con instrumentos que le permiten realizar tareas en el ámbito civil o militar. Entre los UAV de tamaño pequeño se encuentran los cuadricópteros los cuales se caracterizan por la capacidad de despegar y aterrizar en forma vertical, su capacidad de flotar en un punto en el espacio, y su maniobrabilidad en pequeñas áreas, lo que representa ventajas de operación con respecto a las aeronaves de ala fija.

Existen varias revisiones exhaustivas con estados del arte sobre planeación de trayectorias para UAV, en [1] se describen claramente los conceptos de niveles de control autónomo para UAV, se presentan los diferentes tipos de arquitectura, las cuales son divididas en tres niveles: ejecución, coordinación y organización. En [2] se presenta una revisión sobre mecanismos de localización de la posición de robots UAV usando navegación basada en terreno, donde según el autor se clasificaron los mejores y más representativos artículos sobre este campo. Se destaca que las técnicas aplicadas en esta revisión no han sido implementadas en espacios cerrados ya que se han considerado solamente para espacios abiertos y a grandes alturas, dejando la posibilidad de tomar estas ideas como base para una localización de UAV en escenarios diferentes a un relieve. La revisión [3] presenta sistemas de visión computacional aplicados en vehículos aéreos con el objetivo de lograr autonomía de vuelo, adicionalmente, se describen técnicas y subsistemas visuales, sistemas de navegación basados en visión para UAVs y sistemas de vigilancia aérea, incluyendo, seguimientos de referencias y cooperación de múltiples UAVs.

El método de campos de fuerza artificial (APF por las iniciales en inglés de Artificial Potential Field) se basa en la construcción de un campo escalar que comprende colinas artificiales que representan obstáculos y valles que representan zonas libres [4]. El gradiente del campo potencial genera las fuerzas de repulsión y de atracción apropiadas para garantizar la evasión de obstáculos y para permitir que se pueda alcanzar el punto de destino. El método APF presenta algunos inconvenientes como mínimos locales en ciertas configuraciones del ambiente, oscilaciones en la ruta encontrada y problemas de convergencia si la meta está muy cerca a un obstáculo. Adicionalmente puede no funcionar para formas arbitrarias de los obstáculos, debido a que los modela como un elemento puntual. En la literatura se encuentran varias mejoras con respecto a la versión original de la técnica, en particular con respecto a la eliminación de los mínimos locales [5].

En [6], [7] se describe el problema de convergencia cuando el punto de destino se encuentra muy cerca a un obstáculo (GNRON) y proponen una nueva función de repulsión para solucionar el problema. En [8] generan un método de seguimiento de pared que se activa en cuanto el móvil cae en un mínimo local. En [9], [10] se define una nueva función de potencial basado en establecer un potencial de densidad alrededor de los obstáculos el cual permite modelarlos aunque tengan formas arbitrarias. En [11]-[14] se presenta el estudio de la técnica en tres dimensiones, aunque en algunos no se considera que el UAV tenga la posibilidad de pasar por debajo de un obstáculo.

En [13], [14] utilizan funciones sigmoides para generar un campo potencial tridimensional que abarca todo el espacio, teniendo en cuenta la posición y la forma de los elementos que componen el ambiente. Se destaca que el uso de estas funciones permite crear un campo de fuerza continuo en todo el ambiente y solo es necesario ajustar un parámetro para cambiar el rango de acción efectiva del campo, dando la posibilidad de crearlo de manera individual por cada obstáculo. Adicionalmente, permite que el APF generado se extienda perpendicularmente desde las fronteras del obstáculo y no radialmente desde el centro de masa como lo hacen otros métodos.

En este artículo se presentan dos técnicas de planeación de trayectorias libres de colisiones en ambientes 3D, además se presentan las ventajas obtenidas realizando la comparación con la técnica clásica basada en el descenso de gradiente. Las técnicas permiten evadir obstáculos en interiores no solo rodeándolos sino dando la posibilidad de volar por encima o por debajo de ellos. Una de las técnicas presentadas funciona de manera iterativa mientras que la otra da la posibilidad de ser ejecutada en paralelo. También se presenta una metodología de evasión de obstáculos que funciona con cualquiera de las técnicas, basada en la transformación del problema de planeación de trayectorias en ambientes dinámicos al caso de planeación de trayectorias en ambientes estáticos realizando un análisis de las posibilidades de colisión.

El documento continúa de la siguiente forma: en el marco teórico se presentan las bases teóricas de tres técnicas de planeación de trayectorias en ambientes estáticos, de las cuales, las dos últimas son originales. Posteriormente, se presenta una extensión del uso de estas técnicas en ambientes dinámicos. En la sección resultados se presenta la simulación de tres escenarios posibles para explorar las características de las técnicas propuestas, a continuación se presentan las conclusiones y la referencias.

2.  Marco teórico y metodología propuesta

La planeación de trayectorias se realiza sobre un ambiente modelado con funciones sigmoides, el APF generado por un obstáculo en un punto q en el espacio, se presenta de forma general en (1).

Donde γ es el coeficiente que permite modificar el rango de acción del obstáculo, N es el número de planos que conforman el poliedro convexo que contiene al obstáculo y fj(q)es una función que depende de la ecuación de cada plano. El valor total del APF generado en un punto en el espacio es tomado como el máximo APF generado por los obstáculos de forma individual (ver Fig. 1a).

La zona segura es un concepto abstracto que se utiliza como criterio para tomar decisiones en las técnicas de planeación de trayectorias que se presentarán más adelante. Cada punto en el espacio tiene asociado un valor de APF, el cual es más alto entre más cerca se encuentre el punto a un obstáculo, y más bajo en las regiones libres. Es posible restringir las zonas en el espacio sobre las cuales puede movilizarse el vehículo de forma segura de acuerdo al valor del APF asociado a cada punto, esta región segura se interpreta como los puntos en el espacio sobre los cuales no existiría colisión con ningún obstáculo si el cuadricóptero se ubica allí. La zona segura se determina fijando un valor de umbral que se denominará Usafe. Si el valor de APF calculado para un punto q es menor al valor de Usafe, se puede afirmar que el punto se encuentra en la zona segura. Si se selecciona un valor Usafe muy alto, es decir, muy cercano al valor máximo de campo, es posible que el cuadricóptero pase muy cerca de los obstáculos y corra peligro de colisión.

Si el valor seleccionado es muy bajo el vehículo intentaría evitar los obstáculos alejándose una gran distancia de ellos, lo que implicaría que la trayectoria encontrada puede tener una distancia de recorrido mucho más grande. En la Fig. 1b se presenta un ejemplo en el cual se visualizan las posibles fronteras que tendría la zona segura, dependiendo del valor de umbral que se seleccione.

2.1 Técnica basada en descenso del gradiente o método clásico (DG)

En [15] se presenta un método de planeación para la guía de un vehículo autónomo para el caso bidimensional, el cual utiliza una estrategia iterativa basada en campos potenciales. El problema es formulado de tal manera que se convierte en un problema de optimización que se puede descomponer en dos partes, primero según cómo se genera la función objetivo y segundo, según cómo se busca encontrar el mínimo de la función. Esto se le considera el método basado en descenso de gradiente clásico. A continuación se presenta una forma de hacer la extrapolación del método clásico a tres dimensiones.

2.1.1 Generación de la función objetivo

La función de costo J se genera mediante la construcción de un modelo de representación del entorno, calculado mediante (2).

Donde J0(x,y,z) se toma directamente de la representación de los obstáculos que se modelan utilizando funciones sigmoides, Jg(x,y,z) es la función generada por el punto de destino y w1 y w2 son pesos que permiten especificar la importancia relativa de las funciones. Los pesos se utilizan para convertir el problema de optimización multi-objetivo a mono-objetivo a través de un enfoque de escalarización de las funciones. Jg se modela utilizando una función cuadrática, w1 = 1 y w2 se toma como coeficiente de sintonización.

2.1.2 Método iterativo de evaluación y avance

La estrategia que se utiliza asume que el vehículo siempre conoce su posición dentro del marco de referencia y, además, se ignora por completo la dinámica del movimiento, es decir, que puede desplazarse siempre a las referencias planteadas. Inicialmente, el vehículo tiene la posibilidad de evaluar J sobre ciertos puntos que se encuentran a una distancia λ medida desde su centro, al evaluar cada punto se puede determinar cuál de ellos tiene el menor valor de J, determinando así la dirección hacia la cual hay que desplazarse. Para actualizar la posición se utiliza (3).

Donde el primer término a la derecha de la igualdad representa la posición actual del vehículo en el espacio, el segundo término es la variación en la posición a la que se desea mover el vehículo. Para este caso, depende de los lugares en los cuales se consideren movimientos posibles. Finalmente el tercer término representa un factor de ruido para generar cierta incertidumbre en la actualización de la magnitud de la posición, se busca que el ruido de Δλ esté uniformemente distribuido entre cierto intervalo. La función f(θ, ϕ) depende del tipo de selección de los puntos que se realice. Se escogió una configuración en la cual el vehículo autónomo puede usar las mismas direcciones que en el caso bidimensional y, adicionalmente, tiene la capacidad de moverse hacia arriba o hacia abajo. Esta selección se realiza debido a la capacidad que tienen los cuadricópteros de moverse libremente en el eje vertical, además la posibilidad de cambiar su ángulo de guiñada. La selección podría interpretarse como si los movimientos válidos del cuadricóptero fueran los vértices de un poliedro dipiramidal octogonal. La ecuación (4) permite realizar la actualización de la posición teniendo en cuenta los 10 puntos de la función seleccionada, donde θ toma los valores 0, π/4, π/2, 3π/4, π, 5π/4, 3π/2, 7π/4, mientras que ϕ solo toma los valores π/2, 0, -π/2.

2.2 Técnica basada en puntos independientes móviles (BM)

Se propone una técnica que permite generar trayectorias libres de obstáculos entre dos puntos en el espacio. Está basada en el principio de campos potenciales artificiales y utiliza para su funcionamiento el concepto de zonas seguras. Para el cálculo de la trayectoria inicialmente se generan n puntos distribuidos en el entorno tal que interconecten la posición inicial y la posición de destino. Posteriormente, se actualiza la posición de cada punto para que se muevan, en un ambiente modelado por campos potenciales, hacia zonas seguras.

2.2.1 Ubicación inicial de los puntos

Inicialmente se determinan cuantos puntos conformarán la trayectoria y posteriormente se distribuyen sobre el segmento de línea que une el punto de partida con el punto de destino.

2.2.2 Cálculo del vector gradiente

Para cada una de las posiciones  se calcula un vector gradiente en el campo potencial, hallando la derivada parcial en cada dirección sobre un punto seleccionado y posteriormente normalizándolo (5).

2.2.3 Movimiento en la dirección del gradiente

Cada uno de los puntos puede ser evaluado en el APF, así es posible determinar si se encuentra dentro de la zona segura o si está muy cerca o dentro de un obstáculo. Si un punto se encuentra dentro de la zona segura no cambiará su posición y será tenido en cuenta directamente en la trayectoria final. En el caso en el que un punto no se encuentre dentro de la región que comprende la zona segura cambiará de posición, se iniciará un proceso de búsqueda en el cual, desde la posición inicial comienza un desplazamiento siguiendo la dirección del vector gradiente hasta el momento en el que el punto se encuentre dentro de la zona segura, una vez ahí será tenido en cuenta en la trayectoria final (ver Fig. 2).

La suavidad de la trayectoria final depende principalmente del número de puntos utilizados, entre más puntos mayor la suavidad en el resultado, aunque esto conlleva a un incremento en el costo computacional. Otro factor es la distribución que se haga de los puntos sobre la recta inicial, es posible distribuir los puntos sobre la recta de manera uniforme, como se mostró previamente, o buscando una mayor densidad de ellos donde el APF tenga valores más altos y menor densidad donde el campo tenga valores bajos.

Esto permite que se genere una acumulación de puntos en las regiones cercanas a los obstáculos y pocos de ellos en las regiones de baja influencia, lo que determina que los puntos móviles quedarán más cerca entre ellos evitando grandes saltos en la referencia que seguirá el UAV. En el Algoritmo 1 se realiza la descripción de los pasos del procedimiento.

2.3 Técnica basada en la permanencia en la zona segura (BZS)

Se propone una técnica iterativa que permite generar trayectorias libres de obstáculos en tres dimensiones. Está basada en el principio de campos potenciales artificiales y utiliza para su funcionamiento el concepto de zonas seguras. Para el cálculo de la trayectoria inicialmente se ubica un punto en la posición de partida. Iterativamente se irán generando nuevos puntos realizando un desplazamiento hacia la posición objetivo, teniendo en cuenta que siempre se debe permanecer dentro de la zona segura. Si un nuevo punto se ubica fuera de la zona segura, se utilizará un movimiento basado en el descenso de gradiente para que retorne a la región permitida. Es necesario un coeficiente para determinar el comportamiento final de la trayectoria, este es, el valor del desplazamiento que realizarán los puntos consecutivos.

2.3.1 Nueva posición cuando los puntos están en la zona segura

Cuando un punto k se encuentra dentro de la región en el espacio denominada zona segura, se procede a encontrar la posición para el punto de la trayectoria k + 1, para esto se calcula el vector normalizado v que dará la dirección del movimiento, el cual está dado por la dirección de la recta que interconecta el punto k con el punto objetivo. La posición del punto k + 1 está determinada por la posición de k + Δ xv, donde Δ x es un escalar que determina el valor de la distancia de desplazamiento.

2.3.2 Regreso a la zona segura

Cuando el punto k se encuentra fuera de la región en el espacio denominada zona segura, se procede a utilizar los valores del APF para determinar un vector gradiente al campo, como en (5). Posteriormente, se inicia un proceso de búsqueda en el cual, desde la posición actual del punto k comienza un desplazamiento en la dirección del vector gradiente, hasta que el punto se encuentre dentro de la zona segura, una vez ahí será considerado en la trayectoria final.

La suavidad de la trayectoria final depende principalmente del valor del coeficiente de desplazamiento, entre menor sea la distancia mayor la suavidad en el resultado, aunque esto conlleva a un incremento en el costo computacional. Por la naturaleza de la técnica es necesario generar un criterio de parada en caso de que el algoritmo no converja, este puede ser, utilizar un número máximo de iteraciones. El Algoritmo 2 resume este procedimiento.

2.4 Planeación de trayectorias en ambientes dinámicos tridimensionales

En este apartado se propone una adaptación de las técnicas precedentes para encontrar trayectorias libres de colisiones en ambientes dinámicos tridimensionales. Para la explicación se utiliza la técnica de banda móvil, aunque el principio de funcionamiento es igualmente aplicable a cualquier técnica presentada previamente. Los obstáculos dinámicos seleccionados son otros cuadricópteros que tienen las mismas dimensiones y modelo dinámico que el vehículo que se utiliza para calcular las trayectorias en ambientes estáticos. La idea general es transformar el problema de planeación de trayectorias con obstáculos dinámicos generando un equivalente al caso con obstáculos estáticos. A continuación se explican los pasos necesarios.

2.4.1 Cálculo inicial de las trayectorias

Primero, se realiza el cálculo de la trayectoria como si fuese un ambiente estático, seleccionando apropiadamente el número de puntos y el umbral que determina la delimitación de región de la zona segura, además es necesario generar los puntos de la trayectoria de cada uno de los obstáculos dinámicos. Se evalúa posteriormente si existe posibilidad de colisión entre el cuadricóptero y los obstáculos móviles, de no ser así, está trayectoria será el resultado final. En el caso en que se presenta cruce se hace necesario tomar medidas evasivas para actualizar la trayectoria.

2.4.2 Evaluación de colisión

Una vez encontrados los n puntos de la trayectoria inicial T y los m puntos de la trayectoria de los obstáculos dinámicos D, se procede a comparar la distancia entre ellos para determinar si existe la posibilidad de un cruce, lo que podría generar eventualmente un choque. El resultado esperado son los puntos que pertenecen a T en los cuales se presenta riesgo. Para realizar el cálculo se necesita un coeficiente Δ d que representa la distancia mínima a la que deben estar dos puntos para considerar que su cercanía implica que las trayectorias se cruzan, este coeficiente se puede obtener directamente de las dimensiones del cuadricóptero. El procedimiento de cálculo es el siguiente: se toma un punto de T y se mide la distancia que tiene con cada uno de los puntos de D, si en al menos una ocasión la distancia es menor a Δ d el punto se marca como potencialmente inseguro. Se continúa el proceso hasta evaluar todos los puntos de T.

2.4.3 Estimación del tiempo de colisión

Con los puntos de T que presentan riesgo de colisión, se procede a hacer el cálculo, para cada punto, del tiempo que tarda el cuadricóptero y cada uno de los obstáculos móviles, con sus respectivas dinámicas, en llegar a él. Si la diferencia de los tiempos está por debajo de un tiempo Δ t hay que tomar medidas evasivas, de lo contrario, T será la trayectoria final. En la Fig. 3 se presenta un ejemplo en el cual, pese a que las trayectorias se cruzan en un punto, no se presenta un choque debido a que los dos UAVs pasan por el mismo punto en tiempos diferentes.

Para calcular el tiempo que le toma al obstáculo móvil en llegar desde su punto de origen hasta el punto de riesgo, se calcula con τo = do / vd, donde do es la distancia desde el punto de inicio hasta el punto de riesgo, vd es la velocidad constante con la que se mueve y τo es el tiempo que tarda en llegar al punto de riesgo, τo depende de factores como el modelo dinámico del sistema y el mecanismo que se utilice para hacer el cambio de referencia de posición.

2.4.4 Ubicación del obstáculo fantasma

Si para algún punto de riesgo, el tiempo está por debajo del umbral planteado, se realiza la ejecución de la siguiente estrategia de evasión: teniendo en cuenta la dirección y el tamaño de cada obstáculo móvil, se procede a ubicar un obstáculo fantasma sobre cada una de las trayectoria de los obstáculos dinámicos, con el fin de evitar que el cuadricóptero genere una trayectoria que tenga posibilidades de colisión. El objetivo de ubicar un obstáculo fantasma es el de generar un efecto de túnel, es decir, es como si los obstáculos dinámicos se estuvieran moviendo a través del interior de algunos obstáculos estáticos. El tamaño de cada fantasma estará dado por el conocimiento que se tiene del obstáculo móvil, el largo será determinado de tal manera que abarque la trayectoria (ver Fig. 4).

2.4.5 Cálculo final de la trayectoria

Se recalcula la trayectoria utilizando la técnica para ambientes estáticos, utilizando las posiciones y dimensiones de los obstáculos previamente conocidos y adicionando los obstáculos fantasmas dentro de los argumentos de entrada. En la Fig. 4 se presenta un ejemplo en el cual hay un punto de colisión detectado y se procede a ubicar el fantasma teniendo en cuenta la trayectoria dinámica. No se procede a ubicar obstáculos fantasmas desde el inicio del algoritmo para tener la posibilidad de tomar medidas evasivas solo en el caso de que exista una alta probabilidad de choque, permitiendo así encontrar caminos más cortos, al finalizar se presenta la trayectoria final encontrada con el algoritmo.

3. Resultados

En esta sección se presentan los resultados del comportamiento de las técnicas de forma simulada. La ventaja de presentar los resultados de forma simulada es que permite estudiar la respuesta exclusiva de las técnicas sin que existan perturbaciones debido a interferencias o limitaciones del sistema de control. Las técnicas al estar basadas en campos potenciales artificiales dependen fuertemente del conocimiento de la posición del vehículo y de los obstáculos dentro del marco de referencia, así que para una implementación se hace necesario contar con un cuadricóptero que tenga un sistema de control de posición robusto con respecto al marco de referencia.

A continuación se presenta la simulación de tres escenarios posibles para explorar las características de las técnicas propuestas, se utilizó un motor 3D utilizado generalmente para el desarrollo de juegos de vídeo. En la primera escena existen obstáculos entre el punto de partida y la meta, en la segunda escena se presenta una configuración con un corredor, finalmente se presenta un arreglo de obstáculos formando corredores estrechos. En cada caso se utiliza el modelo dinámico identificado de un cuadricóptero comercial y cada escenario se genera para que la proporción de los objetos coincida con posibles escenarios reales.

3.1 Caso 1

Se plantea un caso en el cual se cuenta con uno y dos obstáculos que por su ubicación hacen que no exista punto de visión entre el punto de partida y el punto de meta. En la Fig. 5 se presentan la aplicación de las tres técnicas sobre la misma escena.

En la configuración propuesta, las tres técnicas convergen generando trayectorias en tres dimensiones. En la técnica DG, la cual es la que presenta la forma rectangular, se ponen en evidencia algunos de los inconvenientes del descenso por el gradiente como las oscilaciones cerca de los obstáculos y la falta de control sobre la distancia mínima que se aproxima a los objetos, inconvenientes que no presentan las otras técnicas. Se evidencia como las técnicas BM y BZS generan puntos de trayectoria que mantienen una distancia mínima a los obstáculos sin importar las dimensiones que estos tengan, permitiendo que la trayectoria sea libre de colisiones y adicionalmente se eviten los obstáculos teniendo control sobre la cercanía a ellos. La distancia total recorrida usando BZS es menor con respecto a BM, esto se debe a la heurística manejada por BZS, en donde los puntos se actualizan en cada iteración buscando moverse hacia el punto objetivo, mientras que en BM los puntos se actualizan de acuerdo a su posición inicial.

3.2 Caso 2

En este caso se ubican dos obstáculos de tal forma que exista espacio entre ellos para que pueda cruzar el cuadricóptero, se generan dos situaciones diferentes en las cuales se cambian los pesos de los algoritmos. Primero se busca que el cuadricóptero pueda encontrar una trayectoria que pase por el medio de los obstáculos, haciendo que los obstáculos tengan un rango de acción bajo, para esto se configura DG dejando que la función del obstáculo no tenga un valor muy alto y se configuran BM y BZS con un valor de umbral de zona segura relativamente alto. En los resultados se evidencia que las tres trayectorias convergen al punto objetivo. Pero la trayectoria generada por DG pasa muy cerca del obstáculo, lo cual aumenta la probabilidad de colisión. En las Fig. 6a y 6b se presentan dos vistas diferentes de esta configuración.

Hasta aquí las conclusiones son similares a las del caso 1. En la segunda situación se busca que el cuadricóptero no pase por entre los obstáculos de la escena, sino que busque trayectorias alternativas, haciendo que los obstáculos tengan un rango de acción relativamente alto, esto se logra en DG, aumentando el peso relativo de la función obstáculo, y para el caso de BM y BZS dejando un valor muy bajo en el umbral de la zona segura. En las Fig. 6c y 6d se presentan dos vistas diferentes de esta configuración. En los resultados se evidencia que las tres trayectorias convergen al punto objetivo. La trayectoria generada por DG realizó el proceso de evasión pasando por debajo de los obstáculos, BM evade por un costado, mientras que BZS evade por encima. Las trayectorias de BM y BZS encuentran trayectorias que mantienen una distancia mínima segura con respecto a los obstáculos. La distancia recorrida por la trayectoria BM es mayor que las distancias recorridas por las otras trayectorias.

3.3 Caso 3

En la Fig. 7 se presenta una configuración en la cual los obstáculos tienen pequeños pasadizos entre ellos, a través de los cuales el cuadricóptero no puede cruzar. En esta configuración la técnica DG se estanca en un mínimo local, mientras que las otras técnicas sí convergen al punto objetivo.

Los algoritmos BM y BZS generan trayectorias que rodean todos los obstáculos, esto debido a que el tamaño del cuadricóptero es tenido en cuenta para generar el modelo del entorno y a la heurística de las técnicas; acumulaciones de obstáculos como estas generan un modelo de APF similar al de un solo obstáculo de dimensiones más grandes.

La técnica BZM en esta configuración particular presenta dificultades para la sintonización de sus parámetros, debido a que para lograr convergencia el valor del umbral de la zona segura debe ser bajo en comparación con BM, si se escoge un valor de umbral alto la técnica podría no converger. Es posible tener en cuenta un factor de ruido que permita modificar la posición de actualización de cada punto, para que la técnica no se estanque en mínimos locales. La Tabla 1 presenta algunos criterios que permiten contrastar las tres técnicas.

3.4 Seguimiento de trayectorias

Las trayectorias encontradas pueden ser utilizadas como referencia por un cuadricóptero debido a su capacidad de movimiento con respecto a otros UAV. La dosificación de la entrega de los puntos de referencia al sistema es un factor crítico para el buen seguimiento de una trayectoria. Primero es necesario alcanzar un punto de referencia antes de enviar una nueva posición de referencia al controlador, realizando este proceso iterativamente es posible hacer que el vehículo se desplace hasta la posición objetivo. Para dosificar los puntos de referencia se utilizó la siguiente estrategia: desde el punto de partida se entrega el siguiente punto de la trayectoria como referencia del sistema, una vez alcanzado dicho punto, se procede a entregar como referencia el siguiente punto de la trayectoria. El proceso se realiza de forma iterativa hasta que se alcance la posición destino. Un punto de referencia es considerado alcanzado si el cuadricóptero entra a una esfera de radio r centrada sobre ese punto, el radio de esa esfera corresponde al máximo error admitido para el seguimiento de la trayectoria.

El seguimiento de trayectorias descrito en esta sección tiene en cuenta el modelo dinámico del sistema correspondiente a un cuadricóptero comercial llamado AR-Drone desarrollado por Parrot, donde la referencia del modelo son las coordenadas del punto de destino.

El vehículo presenta la posibilidad de variar la velocidad máxima a la que puede desplazarse, para esta evaluación, se tuvo en cuenta una velocidad máxima de 5 m/s. Una vez se cuenta con una trayectoria libre de obstáculos, se procede a permitir que el cuadricóptero tome control de su cambio de posición e inicie su recorrido a través del ambiente, siguiendo la trayectoria como referencia de su sistema.

La estrategia de seguimiento de trayectoria solo utiliza el parámetro r, que es un coeficiente que representa el máximo error admitido para el seguimiento de la trayectoria, su variación tiene como efecto el cambio en el error que se presentará entre la trayectoria real a la trayectoria de referencia. En la medida en que el valor de r aumenta el error se hará mucho mayor, si r tiende a 0, el error entre las dos trayectorias también tiende a 0. Con respecto al tiempo que tarda el cuadricóptero en realizar todo el recorrido, en la medida en la que r sea pequeño, el tiempo total se hace más grande, esto debido a la exigencia de precisión entre las trayectorias, lo que genera que se necesite más tiempo para que el sistema alcance el punto de referencia. En la medida que r sea un valor grande, el cuadricóptero tenderá a realizar sus desplazamientos a mayor velocidad, mejorando el tiempo del recorrido, pero aumentando las posibilidades de una colisión. En la Fig. 8 se presentan las trayectorias obtenidas por simulación que se generan teniendo en cuenta el modelo del vehículo cuando se varía el coeficiente r, se presentan los valores seleccionados y el tiempo que tarda en hacer el recorrido visible el vehículo.

4. Conclusiones

Se propusieron dos técnicas de planeación de trayectorias libres de colisiones en ambientes 3D y se compararon contra una técnica clásica como es la técnica basada en el descenso de gradiente. La técnica basada en la permanencia en la zona segura aunque presenta similitudes con el descenso de gradiente, por su heurística de búsqueda tiene las siguientes ventajas: i) permite controlar la distancia mínima que tendrán los puntos de la trayectoria a los obstáculos, ii) no genera oscilaciones inestables ya que los puntos de la trayectoria tienden a quedar sobre la frontera de la zona segura, y iii) la distancia de la trayectoria es menor en comparación con la segunda técnica presentada.

La técnica basada en puntos independientes móviles, por la heurística manejada presentan las siguientes mejoras con respecto a la técnica basada en el descenso del gradiente: i) no cae en los mínimos locales debido a que no actualiza la dirección del gradiente en cada iteración, ii) cada punto de la trayectoria se desplaza siguiendo su propia dirección del gradiente la cual mantiene hasta que se llegue a la zona segura, y iii) la técnica se puede paralelizar ya que la actualización de un punto no depende de sus puntos vecinos.

También se propuso una metodología de evasión de obstáculos que funciona con cualquiera de las técnicas, y que consiste en transformar el problema de planeación de trayectorias con obstáculos dinámicos al caso de planeación de trayectorias con obstáculos estáticos mediante un proceso de análisis de las posibilidades de choque.

Las técnicas presentadas se pueden expandir a otras aplicaciones, en algunos casos sería necesario agregar restricciones y en otras se podrían utilizar de manera directa, por ejemplo, para el trabajo con robots manipuladores puede que sea necesario realizar modificaciones debido a la diferencia de grados de libertad entre los sistemas, mientras que en aplicaciones de videojuegos que requieran controlar la dinámica del movimiento de agentes, la adaptación sería directa.

Referencias

[1] H. Chen, X. Wang, and Y. Li, “A Survey of Autonomous Control for UAV,” in 2009 International Conference on Artificial Intelligence and Computational Intelligence, 2009, vol. 2, pp. 267-271.         [ Links ]

[2] S. Carreno, P. Wilson, P. Ridao, and Y. Petillot, “A survey on Terrain Based Navigation for AUVs,” in OCEANS 2010 MTS/IEEE SEATTLE, 2010, pp. 1-7.         [ Links ]

[3] Y. Liu and Q. Dai, “A survey of computer vision applied in Aerial robotic Vehicles,” in 2010 International Conference on Optics, Photonics and Energy Engineering (OPEE), 2010, vol. 1, pp. 277-280.         [ Links ]

[4] O. Khatib, “Real-time obstacle avoidance for manipulators and mobile robots,” in 1985 IEEE International Conference on Robotics and Automation. Proceedings, 1985, vol. 2, pp. 500-505.         [ Links ]

[5] J.-O. Kim and P. K. Khosla, “Real-time obstacle avoidance using harmonic potential functions,” IEEE Trans. Robot. Autom., vol. 8, no. 3, pp. 338-349, Jun. 1992.         [ Links ]

[6] S. S. Ge and Y. J. Cui, “New potential functions for mobile robot path planning,” IEEE Trans. Robot. Autom., vol. 16, no. 5, pp. 615-620, Oct. 2000.         [ Links ]

[7] S. S. Ge and Y. J. Cui, “Dynamic Motion Planning for Mobile Robots Using Potential Field Method,” Auton. Robots, vol. 13, no. 3, pp. 207-222, 2002.         [ Links ]

[8] X. Yun and K.-C. Tan, “A wall-following method for escaping local minima in potential field based motion planning,” in 1997 8th International Conference on Advanced Robotics. Proceedings. ICAR'97, 1997, pp. 421-426.         [ Links ]

[9] J. Agirrebeitia, R. Avilés, I. F. de Bustos, and G. Ajuria, “A new APF strategy for path planning in environments with obstacles,” Mech. Mach. Theory, vol. 40, no. 6, pp. 645-658, Jun. 2005.         [ Links ]

[10] Q. Jia and X. Wang, “An improved potential field method for path planning,” in 2010 Chinese Control and Decision Conference, 2010, pp. 2265-2270.         [ Links ]

[11] X. Chen and J. Zhang, “The Three-Dimension Path Planning of UAV Based on Improved Artificial Potential Field in Dynamic Environment,” in 2013 5th International Conference on Intelligent Human-Machine Systems and Cybernetics, 2013, vol. 2, pp. 144-147.         [ Links ]

[12] J. Luo, W. Su, and D. Wang, “The improvement of the artificial potential field robot path planning based on 3-D space,” in International Conference on Automatic Control and Artificial Intelligence (ACAI 2012), 2012, pp. 2128-2131.         [ Links ]

[13] J. Ren, K. A. McIsaac, R. V Patel, and T. M. Peters, “A Potential Field Model Using Generalized Sigmoid Functions,” IEEE Trans. Syst. Man Cybern. Part B, vol. 37, no. 2, pp. 477-484, Apr. 2007.         [ Links ]

[14] D. M. Rivera, F. A. Prieto, and R. Ramirez, “Trajectory Planning for UAVs in 3D Environments Using a Moving Band in Potential Sigmoid Fields,” in 2012 Brazilian Robotics Symposium and Latin American Robotics Symposium, 2012, pp. 115-119.         [ Links ]

[15] K. Passino, Biomimicry for Optimization, Control, and Automation. London, UK: Springer-Verlag, 2005, p. 926.         [ Links ]