Introducción
Los sistemas de robótica cooperativa se han usado durante los últimos 30 años para la resolución de labores que involucran el trabajo en equipo de agentes móviles, siendo uno de los temas más importantes en el área de la robótica y de la automatización industrial (Borenstein y Koren, 1989). El progreso avanzado de sistemas de robótica cooperativa desde la década de 1980 ha sido una interacción de sistemas, teorías que han sido planteadas e implementadas (Cao et al., 1995). Así mismo, dentro del estudio de estos sistemas se han utilizado métodos de control para realizar un análisis en agentes que interactúan con otros para lograr una tarea conjunta. De esta forma, el control cooperativo es uno de los temas que ha recibido mayor atención debido a sus múltiples aplicaciones como, por ejemplo, misiones de rescate, movimiento de objetos y múltiples formaciones (Espinosa et al., 2011). La cooperación en los sistemas de exploración y transporte robótico ha avanzado mediante la parametrización de datos y estrategias en las que se presentan sistemas de concepto multiagente, en los cuales su funcionamiento está constituido por un equipo temporal de robots para ejecutar una tarea asignada (Rodriguez y Reggia, 2005). En el estudio de este tipo de sistemas es importante considerar el comportamiento a analizar y la funcionalidad que este tenga dentro de un entorno libre o controlado, según sea el caso (Hu y Zeigler, 2004). Las aplicaciones de tipo cooperativo con varios robots se pueden dividir en dos clases: de tipo estricto y de tipo libre (Tar et al., 2007).
Dentro de las aplicaciones de los sistemas de robótica cooperativa se destaca el uso de métodos para el control de vehículos robóticos en forma de convoy, en donde cada vehículo esclavo sigue una ruta dada por el agente (maestro) que le precede a una distancia de separación deseada (Petrov y Parent, 2006). Se pueden, también, encontrar aplicaciones para propósito militar, vehículos HMMMV, transporte inteligente con vehículos guiados (AGV), en el que se considera al convoy robótico como un caso especial de formación en sistemas multirobóticos (Hung, Vinh y Dung, 2012).
Metodología
Este documento presenta una revisión de artículos relacionados al tema de sistemas cooperativos en aplicaciones de convoy y sistemas multirobot, además de publicaciones relacionadas con la implementación de sistemas cooperativos que utilicen técnicas de seguimiento, planeación controlada de rutas, aplicación en escenarios simulados y reales, evasión de obstáculos y sistemas de control relacionados a la optimización de este tipo de configuraciones.
Planificación de rutas
La planificación de rutas es uno de los temas más importantes para establecer las condiciones de un sistema inteligente de control en sistemas robóticos. Teniendo en cuenta lo complejo de analizar el mundo real (Belkhouche y Jin, 2009), los métodos de planificación han sido ampliamente estudiados pues proporcionan sistemas de rutas óptimos para robots, por medio de algoritmos y modelamiento matemático.
Existen esquemas que incluyen sistemas de triangulación para evitar rutas que puedan bloquear el camino de un robot, lo que permite determinar puntos medios y mejores opciones para navegación (Shirkhodaie, 2002). Los problemas más frecuentes en grupos de robots que realizan tareas cooperativas son: arquitectura, toma de decisiones, origen de cooperación, aprendizaje y problemas de geometría (Cao et al., 1995). Esto se puede solucionar con algoritmos de seguimiento de objetos basados en el mínimo de ruido y energía de correlación para determinar el camino que tomaría un robot líder en un desplazamiento usando técnicas de lógica difusa, el direccionamiento para controlar los giros y también la distancia relativa (Marapane et al., 1996).
Además, existen métodos de control de ruta, con control adaptativo, que permiten compensar las perturbaciones existentes al utilizar un esquema de control robusto. Estos aspectos pueden mejorar los valores de incertidumbres o variaciones del entorno, o simplemente controlar movimientos de cámara para mejorar la operación del sistema (Chaumette, Rives y Espiau, 1991).
Para las simulaciones tridimensionales se aplican leyes de velocidad y desviación de persecución mediante el uso de línea de vista entre vehículos sucesivos que permiten medir la eficiencia de los algoritmos (Wang, Yangy Ding, 2010). Así mismo, se encuentran técnicas utilizadas para el seguimiento de objetos y persecución, las cuales se dividen en un esquema de modelos y de características, en donde la plataforma realiza un desplazamiento de manera continua a partir de modelos propuestos, así como puede operar bajo un modelo que permite evaluar las condiciones o características de desplazamiento preliminares (Belkhouche y Belkhouche, 2005). Es importante destacar que los primeros algoritmos desarrollados contaban con información precargada en donde el entorno era totalmente conocido así como el recorrido a realizar, basándose en métodos conocidos y efectivos, como distancia de aproximación y los campos de potencial (Brackstone y McDonald, 1999).
En la optimización de estos sistemas se debe garantizar la cercanía de los vehículos así como sus funciones de arranque y paro para fortalecer el esquema ante posibles perturbaciones (Hu y Zeigler, 2004) para lo cual se desarrollan máquinas de estados finitos (FSM) que permiten controlar, orientar y supervisar cada vehículo para el seguimiento de plataformas.
Otro método eficaz de optimización es la implementación de controladores de tipo LQR basados en realimentación de estado secuencial, siendo un modelo propuesto hace 30 años y que aún es utilizado en algunas aplicaciones para el control de plataformas que sigan una secuencia o formación (Hashimoto, Umit y Neil, 2011). Existen a su vez algoritmos que integran la detección de colisión en tiempo real con funciones de navegación lineal. Las estrategias para detectar las colisiones se basan en una versión mejorada de los métodos de barrido de volumen que usan cinemática relativa de los robots en adición de consideraciones geométricas de las rutas (Belkhouche y Jin, 2009).
La planeación de rutas en ambientes desconocidas es uno de los temas más destacados, ya que los robots usan diferentes técnicas de navegación, evasión de obstáculos y localización, teniendo en cuenta factores como el tamaño y la velocidad; lo anterior permite medir el desempeño de los algoritmos utilizados (Jacinto, Martínez y Martínez, 2013). Existen además métodos de planeación de rutas servo visuales, los cuales consisten en controlar el movimiento de un robot basándose en características visuales, detección, seguimiento y métodos de visión artificial. Estas estrategias han sido utilizadas para hacer seguimiento en humanos y en cuerpos rígidos, lo que permite la implementación en tiempo real, la reacción ante un cambio abrupto en el movimiento y factores de incertidumbre (Belkhouche y Belkhouche, 2005).
Algunas falencias de estos sistemas se evidencia el procesamiento en tiempo real de datos y el alcance de los sistemas de captura en algoritmos basados en visión artificial (Della Vedova et al., 2009). En este tipo de planificación el robot móvil construye un modelo global basado en su información sensorial. Este enfoque permite garantizar la convergencia global a la meta. Sin embargo, se presentan problemas como la construcción y mantenimiento global del modelo, el cual es intenso y robusto a nivel computacional (Borg et al., 2000). Una de las técnicas implementadas en sistemas de agentes móviles es el de platooning, esta permite la coordinación de vehículos con el objetivo de permitir que cada unidad se mueva cerca al vehículo que lo precede, formando un pelotón (Marapane, et al., 1996). El enfoque de la computación en tiempo real a bordo permite hacer del comportamiento del robot algo predecible, tomando como modelo la formación de líder y vehículos seguidores (Hu, Ganapathy y Zeigler, 2005).
Estrategias de orientación y navegación
Como complemento a la planificación de rutas, es importante determinar las características de un sistema y de los agentes para realizar una navegación óptima dentro de un entorno involucrando factores como la comunicación y cooperación (Rodriguez y Reggia, 2005); así como métodos basados en colaboración secuencial, sistemas de predicción y configuración por comunicación inalámbrica para la integración de robots en un entorno bajo un esquema de comunicación suficiente para permitir la operación e interacción de agentes (Tar et al., 2007). Así mismo, dentro de algunas estrategias se encuentran la navegación de robot en enjambre o tipo Swarm, permitiendo el control autónomo y la coordinación por medio de la localización de robots con algoritmos de comportamiento bio-inspirados, usando identificación de colores y geometría de localización (Petrov y Parent, 2006).
En algunas aplicaciones se utilizan vehículos semiautomáticos capaces de realizar una conducción cooperativa por medio de sistemas de comunicación vehículo a vehículo (V2V) (Sorensen y Ren, 2007). Lo anterior para un sistema de convoy que usa controladores robustos tomando la información de los sensores y el otro vehículo a través de comunicación por medio de una máquina de estados finitos, llamada FSM longitudinal, la cual se combina con una serie de controladores para el control longitudinal del convoy durante el recorrido (Hashimoto, Umit y Neil, 2011). Para la implementación del modelo dinámico del vehículo, modelo dinámico del motor, modelo de transmisión y modelo dinámico de conversión a torque se deben realizar ajustes en los controladores para una mejor respuesta del actuador, tal como se muestra (Figura 4).
Las entradas de este controlador son la velocidad del vehículo, la distancia entre vehículos y la diferencia de velocidad entre estos. Se determina, a su vez, que la referencia de velocidad del convoy sea generada por el vehículo líder; como también que los sensores sean capaces de garantizar la distancia y la velocidad del vehículo seguidor y de implementar de manera simultánea la comunicación V2V (Cook, 2007). Respecto a los problemas que se presentan en la parte de seguimiento, se debe tener en cuenta el diseño de leyes de control para mantener la velocidad constante o ACC (control de crucero adaptivo), así como leyes que le den autonomía a los vehículos por medio del control de velocidad lineal y angular (Belkhouche, Belkhouche y Rastgoufard, 2004). En estas leyes de control se tienen en cuenta aspectos como velocidad de persecución, desviación y navegación proporcional, así como la implementación de leyes de control en lazo cerrado para hacer un seguimiento y conservando una distancia constante (Figura 5).
Algoritmos de Navegación con Control Difuso
Una de las estrategias propuestas que mejor se adapta a un entorno totalmente desconocido es la implementación en las plataformas de un control difuso. Esta permite, a partir de algoritmos basados en experiencia humana (modelados con comportamientos IF-THEN), resolver de manera óptima un recorrido del punto A hacia un punto B (Ramírez-Serrano y Boumedine, 1996). Una de las ventajas de este método, respecto a los cálculos odométricos, es la complejidad que estos últimos presentan al momento de ser desarrollados e implementados. Además, se tiene que estos cálculos requieren la implementación de sensores que son vulnerables al ruido y al entorno como lo pueden ser los encoders, sin tener en cuenta que se requiere que un procesamiento en tiempo real, lo cual demanda mayores recursos (Lee, Lai y Wu, 2005). En el método propuesto para la implementación de estos algoritmos difusos se desarrolla un algoritmo que toma información de diferentes a sensores tipo brújula o de ultrasonido, ubicados de manera estratégica con el fin de percibir la distancia de la plataforma respecto a cualquier obstáculo o la meta, así como su posición comparando diferentes valores de los sensores incorporados (Hung, Vinh y Dung, 2012). Teniendo en cuenta las estrategias implementadas para este tipo de control, siempre se debe instaurar un rango de operación partiendo de la información percibida por cada sensor para realizar un comparativo entre las lecturas de los sensores ubicados en distintas posiciones determinando así obstáculos, trayectorias por el objetivo y desviaciónes de la plataforma respecto a dicho fin por medio de coordenadas polares (Wang, Yang y Ding, 2010).
Para el desarrollo de las diferentes metodologías consultadas en el ámbito de la lógica difusa, se encuentra que todos parten de una base de conocimiento previo debido a la experiencia, y que es necesario establecer unas funciones de pertinencia que en forma lingüística definen los parámetros a ser procesados por el sistema (Maxwell, Rykowskiy Hurlock, 2013). Cada componente de la percepción del entorno en el desarrollo de un algoritmo difuso busca hacer del recorrido lo más óptimo posible, sin necesidad de involucrar demasiados recursos del procesamiento, aspecto que conduce a un desarrollo fuerte del algoritmo a implementar (Ng y Trivedi, 1996).
Prevención de colisiones
Para realizar de manera satisfactoria la navegación de plataformas a través de diferentes escenarios en los cuales se involucran tanto obstáculos móviles como fijos, entornos geográficamente controlados o no, se hace necesario la implementación de diferentes sensores que permiten evitar en un grado importante las colisiones de un agente durante el recorrido (Young, Beard y Kelsey, 2001; Hu y Zeigler, 2004). Estos sensores agrupados de manera estratégica toman datos del entorno y se utilizan como apoyo a la toma de datos (Lee, Lai y Wu, 2005). Este módulo de reconocimiento realiza la propiocepción (posición y orientación) por medio de ángulos de orientación de la plataforma y ángulos de rotación de las ruedas, apoyándose por uno de los sensores de ultrasonido el cual corrige la estima de la propiocepción, mientras que el segundo sensor rota de derecha a izquierda reconociendo el ambiente en las partes laterales y frontales (Figura 6).
Una de las estrategias que busca reducir las colisiones consiste en la ubicación de un sensor de ultrasonido que gira desde el costado izquierdo al derecho de la plataforma permitiendo un reconocimiento del entorno a partir de sectores dependientes del ángulo de dispersión del sensor, lo cual facilita la estimación de la distancia frontal de la plataforma respecto a un posible obstáculo, estableciendo un ángulo respecto a la orientación de la plataforma, lo que permite tomar la ruta que evita la colisión acorde al ángulo de dispersión del sensor y el objetivo final (Young, Beard y Kelsey, 2001). Dicho sensor, ubicado en la cara frontal de la plataforma, también asiste los datos tomados por los demás sensores (Figura 7).
En este caso, el método de seguimiento a partir de la información tomada por sensores de rotación y encoder puede ser complejo de manejar y requiere bastantes recursos por parte de la plataforma. Por ello, el desarrollo para la navegación está determinado en la propiocepción por medio de sensores de ultrasonido que generan un mapa del entorno, para así realizar el recorrido sin colisiones o atascamientos, integrados a un conjunto de decisiones de tipo if-then basadas en experiencia humana (Ramírez-Serrano y Boumedine, 1996).
Dentro de esta estrategia se definió la ubicación de siete sensores que abarcan la parte frontal y parte de la lateral de la plataforma, donde se determinan sectores de detección, los cuales determinan una información relativa a la posición del obstáculo (Ailon, 2011). Los siete parámetros de posicionamiento correspondientes a cada sensor determinan la velocidad y dirección del robot, usando un razonamiento difuso, determinando así la ruta a tomar (Ramírez-Serrano y Boumedine, 1996). (Figura 9).
También existen investigaciones que buscan determinar modelos comparativos en sistemas robóticos con enfoques en convoy de tipo militar que permitan fijar estándares aplicables a sistemas similares, ya que este tipo de sistemas ha aumentado exponencialmente en los últimos años buscando reducir situaciones que conlleven a un riesgo a las personas (Hsu y Lizarralde, 2000). Es así como la robótica y, en específico, los convoyes de tipo multi robot intentan satisfacer la seguridad, eficiencia y avances.
Sin embargo, a medida que se complementan estas investigaciones, el hecho de no existir un estándar centralizado para hacer comparativos los trabajos se torna algo complejo, se busca así proponer e iniciar la creación de un estándar aceptado con respecto a los convoyes de tipo militar que permita a los miembros del mismo medir el rendimiento y comparar los resultados (Maxwell, Rykowski y Hurlock, 2013). (Figura 10).
En términos generales, estos planteamientos permiten corregir errores asociados a una metodología en particular combinando redes de incertidumbre para la representación de obstáculos y campos potenciales para la navegación (Shirkhodaie, 2002). Esta combinación es especialmente adecuada para el alojamiento de datos de sensor inexactos (como los producidos por sensores ultrasónicos), así como para la fusión de sensores, además permite el movimiento continuo del robot sin detenerse delante de obstáculos (Borenstein y Koren, 1989).
En su mayoría, las plataformas móviles cuentan con algún tipo de sistema para la evasión de colisiones, que van desde algoritmos primitivos que detectan un obstáculo y detienen al robot a para evitar una colisión, hasta sofisticados algoritmos que permiten al robot desviar obstáculos. Los últimos son mucho más complejos ya que implican no solo la detección de un obstáculo, sino también algún tipo de medidas cuantitativas referentes a las dimensiones del obstáculo (Sorensen y Ren, 2007). Desde su perspectiva de controlador difuso neuronal integrado (NiF-T), pretenden realizar un algoritmo genérico que permita la integración de diferentes tipos de sensores que, a su vez, hagan parte de un control robusto y práctico con un mínimo de características que permitan responder al sistema en tiempo real sin necesidad de servo visión. Para ello, plantean un entrenamiento directo para las redes neuronales con reglas difusas de alto nivel en lugar de datos numéricos de muestra (Choek et al., 1997). Las reglas lingüísticas de expertos son más fáciles de obtener y más confiables. Adicionalmente, se definen unas reglas básicas llamadas reglas Padre derivadas de un experto, que en este caso es el conocimiento humano. Definiendo como en la gran mayoría de casos tres partes principales: funciones difusas de membresía, red neuronal de reglas y la red neuronal de refinamiento.
En términos generales, el número de funciones de pertenencia es igual al número de parámetros de entrada y el número de etiquetas de cada función de pertenencia determina el número de nodos de entrada. Por lo general, el número se establece al menos igual que el número de pares de entrenamiento (Ng y Trivedi, 1996). (Tabla 1).
Partiendo de una base del conocimiento descriptiva y fija, lo cual describe este trabajo, es indiferente el medio de precepción del mismo. (Choek et al., 1997). El control inteligente (IC) en su forma más simple puede ser visto como un esquema de procesamiento del conocimiento. En términos generales, las entradas consisten en datos y objetivos, mientras que la salida consiste en alguna acción de control. El control también utiliza técnicas y procedimientos (representación y/o toma de decisiones) humanos/animales/biológicos para desarrollar e implementar un controlador para un sistema. El esquema ILOS LF en este trabajo emplea el paradigma de control inteligente jerárquico con la ayuda de la lógica difusa (Choek et al., 1997). (Figura 11).
Conclusiones
Para entornos desconocidos los mejores resultados se encontraron en sistemas que vinculan un procesamiento de datos descentralizado para varios agentes, sensado por medio de receptores de gran velocidad pero de fácil procesamiento e interacción de diferentes de estos sensores, apoyados por algoritmos bioinspirados o que partían de una base del conocimiento fundamentada en la experiencia humana.
Parte del buen funcionamiento de un sistema corresponde a la correcta sincronización de sus redes de procesamiento y a la definición de reglas adecuadas para la labor a realizar. Esto en labores de tipo cooperativo (redes neuronal-lógico difusas) para plataformas móviles.
En la revisión de estados del arte se identificaron estrategias que permitían la integración de manera óptima entre percepción y navegación, sin priorizar el control de variables para enfocarse en el control de otras magnitudes. Siguiendo esta línea de investigación, se proponen estrategias adicionales que permitan percibir el entorno de forma global en diferentes ambientes.
Se pueden plantear alternativas para vincular la interacción de personal idóneo en la operación remota de una plataforma aérea de reconocimiento del entorno para así elaborar un mapeo preliminar del terreno en la cual otras plataformas terrestres harán la intervención, desarrollando de manera previa diversas estrategias para el desempeño de la tarea asignada usando sistemas terrestres, aéreos e incluso marítimos.
Con el uso de lógica difusa en sistemas de control cooperativo y algoritmos de navegación bioinspirados relacionados con la búsqueda de navegación, auto localización y comunicación se puede hacer un enfoque encaminado a la hibridación de estrategias tanto de reconocimiento como de algoritmos para la navegación.