• No results found

4.2 Consumer/h-worker system

4.2.1.2 Overload prevention

Las principales partes de un robot móvil son las siguientes: • Sensores • Actuadores • Comunicación • “Inteligencia” • Control • Potencia

La Figura 3.1 muestra las partes anteriormente mencionadas [Sucar, 2005]. Actuadores

Son los dispositivos los cuales permiten al robot interactuar ó modificar su medio ambiente. Existen dos tipos: Locomoción y manipulación.

Potencia

Se refiere a la energía que el robot necesita para poder activar sus motores, sensores, actuadores.

Sensores

Dispositivo del robot el cual permite obtener información del medio ambiente que lo rodea, así como del estado interno del robot. Entre los principales tipos de sensores se encuentran:

• Cámaras • Fotorreceptores • Apuntadores láser • Telémetros láser • Sensores de energía • Brújulas • Fuerza (Bumpers) • Táctiles • Ultrasonido (sonares)

Figura 3. 1 Principales partes de un robot. Control

Provee el enlace entre el sistema de procesamiento del robot y sus sensores y actuadores. Normalmente se realiza mediante una combinación de hardware y software. Provee una serie de comandos (subrutinas) para los programas de alto nivel del robot (“inteligencia”).

Inteligencia

Se refiere a la programación que permite al robot realizar tareas complejas. La complejidad depende del robot, la dificultad y variedad de tareas que puede realizar.

Comunicación

En algunas aplicaciones es necesario que el robot se comunique, ya se sea con otro robot o con una computadora central. Entre los diferentes tipos de comunicación se encuentran:

Telecontrol: programación y control a distancia.

Interacción humano-robot: comunicación con personas para recibir comandos o dar información.

El robot que se utilizará en las pruebas reales, será el EyeBot [Bräunl, 2005], para ver más detalles de éste robot así como sus principales características ver el Anexo A.

3.3

Aplicaciones de la robótica

En las últimas tres décadas, la automatización y el uso de la robótica en procesos de manufactura han emergido como herramientas que aumentan la productividad y mejoran la calidad de los productos. Actualmente, las máquinas móviles autónomas destacan en construcción, minería y otros entornos de trabajo al aire libre. La automatización de procesos realizados con máquinas se puede realizar de diversas formas, desde aquellas que proporcionan ayuda al operador hasta las máquinas autónomas que no requieren de un operador abordo.

La idea de construir máquinas que pudieran realizar los trabajos del ser humano se remonta a muy tempranas épocas y tomó mucho mayor auge con la automatización de las fábricas del siglo XVIII, apareciendo en escena máquinas para poner las tapas a las botellas de refresco o para el enlatado, por mencionar algunos ejemplos.

Sin embargo, no fue sino hasta 1954 que el inventor estadounidense George Devol desarrolló un brazo mecánico que se podía programar para efectuar tareas específicas, lográndose así el primer gran avance en busca de obtener una máquina que tuviera la versatilidad del brazo humano.

Con el paso del tiempo se fueron dando diversos avances y en distintas partes del mundo se fue extendiendo la euforia por la robótica y la inteligencia artificial. Así, en 1968 el Stanford Research Institute desarrolló un robot de tipo móvil que poseía algunas capacidades de visión usando una cámara de televisión, un localizador óptico y sensores de contacto. Además, este sistema innovador tenía la peculiaridad de reconocer y reaccionar a ciertos comandos de voz (palabras en inglés). Más tarde en 1975, el ingeniero mecánico estadounidense Víctor Scheinman, de la universidad de Stanford desarrolló un sistema manipulador verdaderamente flexible conocido como “Brazo Manipulador Universal Programable” (PUMA por sus siglas en inglés). Este sistema era capaz de tomar un objeto y moverlo hacia una posición deseada que estuviera a su alcance, colocándolo en cualquier orientación.

Los robots móviles, son aquellos que cuentan con dispositivos que le proporcionan capacidad de desplazamiento, están provistos de patas, ruedas u orugas que los capacitan para moverse de acuerdo su programación. Elaboran la información que reciben a través de sus propios sistemas de sensores y se emplean en determinado tipo de instalaciones industriales, sobre todo para el transporte de mercancías en cadenas de producción y almacenes. También se utilizan robots de este tipo para la investigación en lugares de difícil acceso o muy distantes, como es el caso de la exploración espacial y las investigaciones o rescates submarinos.

3.4

Problema de persecución-evasión

El problema de persecución-evasión se basa principalmente en la realización de una persecución de un evasor, el cual tratará de escapar del perseguidor. Recientemente se han realizado trabajos relacionados con ésta actividad, las principales son detalladas a continuación.

Mariscal [2005] presenta el desarrollo de un sistema de planeación y seguimiento de trayectorias por medio de un robot móvil para transportar objetos en cooperación con otros robots en un ambiente real de trabajo, ésta implementación es de bajo costo, ya que no requiere de un ambiente controlado, sin sacrificio de confiabilidad o precisión, para aplicación inmediata en problemas reales. Las principales aportaciones en el trabajo desarrollado fueron: construir un ambiente simulado en una computadora para llevar a cabo

el desarrollo de las actividades de un robot móvil, utilizando algunas herramientas programación de Basic 7 con rutinas de lectura de pantalla en lenguaje de ensamblador. Desarrollaron la planeación de la trayectoria del mismo en la cual se desplazará evadiendo obstáculos y llevándola de manera suave. Aplicaron algoritmos para generación de espacios de trabajo, exploración del ambiente, creación del mapa y trazar trayectorias. Encontraron que los robots móviles pueden seguir una trayectoria segura sin colisiones utilizando la técnica de exploración a través de un sistema de señales en los que las marcas indicadas en el suelo hacen que el trabajo sea más preciso.

Murrieta y Briot [1998] presentaron una investigación sobre seguimiento de objetos, donde su principal interés se centró en el seguimiento de un objeto móvil y la estimación del desplazamiento entre dos imágenes apoyado en el cambio de escena percibido, utilizando una técnica basada en el cálculo de la distancia de Hausddorff [Serra, 1982]. Sus principales contribuciones se enfocaron en la presentación de un método capaz de calcular la translación y rotación de los elementos de la imagen, gracias a lo cual es posible estabilizar al captor. Por parte del seguimiento del objeto móvil desarrollaron estrategias que reducen el tiempo de ejecución de los algoritmos, lo cual les permitió realizar el seguimiento de diversos elementos. [Murrieta y Briot, 1998].

En muchas tareas es altamente deseable que una robot puede determinar las posiciones de los seres humanos en su alrededor. Schulz y Burgard introdujeron la unión de los filtros probabilísticos de asociación de datos comunes basados en ejemplos, para seguir múltiples objetos móviles desde un robot móvil. Su técnica utiliza los sensores del robot y un modelo del movimiento de los objetos que son seguidos. Aplicaron una técnica de filtros bayesianos para adaptar el proceso del seguimiento hacia el número de objetos en el rango del sensor del robot. Además el método para seguir los múltiples objetos móviles fue puesto en ejecución y se probó en un robot real. Parte interesante de éste método radica en evitar la perdida del seguimiento de las múltiples personas u objetos, incluso en las situaciones en las cuales se ocluyen temporalmente [Schulz y Burgard, 2001].

Algo que cabe resaltar, es que aunque los trabajos presentados anteriormente realizan seguimiento de objetos, éstos no abordan claramente el problema de persecución-evasión, ya que solo se limitan a seguir un objeto, ya sea fijo o móvil, comúnmente desde una

ellos, además todas las acciones del robot son programadas y no aprendidas, esto lleva a un problema al momento de realizar un cambio en el ambiente ya que puede ser necesaria una reprogramación y dependiendo de la complejidad del ambiente, será la complejidad de los cambios al programa. Por lo anterior es importante mencionar que en este trabajo de investigación se aprende a realizar la persecución/evasión, lo cual lleva a tener una mayor adaptación a los cambios de ambiente, además de poder cambiar la política cuando sea necesario. Otro punto a resaltar es que la política aprendida fue implementada en robots reales y no solo en simulación.

3.5

Aprendizaje por refuerzo en la robótica

El aprendizaje por refuerzo aplicado a la robótica, busca mejorar un comportamiento a través de prueba y error. De manera general, el comportamiento del robot estará determinado principalmente por las recompensas obtenidas para las acciones en su etapa de aprendizaje, en la cual el robot realizará movimientos en diferentes estados y obtendrá las distintas recompensas positivas o negativas, dependiendo si hubo o no una mejoría en su situación .

La información recibida por el sistema de aprendizaje por refuerzo está basada en los datos sensados por el robot. De manera similar, la señal de recompensa está establecida en base a la información recibida. Las acciones del sistema de aprendizaje influyen sobre los actuadores del robot [Gaskett, 2002].

En los avances de aprendizaje por refuerzo en la robótica se tiene una de las implementaciones más conocidas: el control del péndulo invertido. Lo que ahí se buscaba era controlar la posición x para que se mantenga aproximadamente derecho (θ ≈ Π/2), manteniéndose en los límites de la pista.

Boxes [Michie y Chambers, 1968] balanceaba el péndulo por más de una hora, después de 30 intentos (no simulado). Idea utilizada fue: discretizar el espacio en cajas. Se corría el sistema hasta que se caía el péndulo o se salía de los límites. Entonces se daba un refuerzo negativo a la última “caja" y se propagaba a la secuencia de “cajas" por las que pasó.

Entre las aplicaciones que utilizan aprendizaje por refuerzo, muchas de ellas usan el algoritmo Q-Learning. En 1992 Tesauro usando Q-Learning, desarrolló un programa que

juega backgammon con un nivel de gran maestro el cual combina el algoritmo DT(γ) y una función de aproximación usando una red neuronal multicapa backpropagation [Tesauro, 1992]. Mahadevan utiliza una variante de Q-Learning para controlar un robot móvil autónomo que se desempeña en un ambiente de oficina [Mahadevan, 1991], éste último tiene relación directa con el presente trabajo de investigación ya que es aplicado a robots móviles en ambientes reales utilizando el mismo método de solución, aunque no ataca el problema de persecución-evasión. El robot Xavier desarrollado por Koening y Simmons, es controlado usando estas técnicas [Koenig y Simmons, 1998]. Maja Mataric desarrolla conductas cooperativas para sistemas de múltiples robots autónomos [Schneider y Maja, 1998].

Algunos de los diferentes problemas que aparecen en la robótica para los cuales se está empleando el aprendizaje por refuerzo son los siguientes:

• Aprendizaje de secuencias de movimientos y optimización de consumos: [Kimura, 1997], [Kimura 1999], [DeJong, 1994], [Boone, 1997], [Tham, 1994],

• Coordinación de varios agentes: [Uchibe, 1995], [Uchibe, 1996a], [Uchibe, 1996b]. • Navegación: [Busquets, 2002], [Mataric, 1994].

• Agentes sociales (aprendizaje por imitación, aprendizaje de la comunicación): [Billard, 1997], [Hayes, 1994], [Demiris, 1996].

• Aprendizaje de comportamientos: [Asada, 1996]

• Tareas más complejas / aprendizaje por refuerzo jerárquico: [Dietterich, 2000], [Ryan, 2000]

• Control: [Schaal, 1994], [Mahadevan, 1991].

3.6

Conclusiones del capítulo

El uso de la robótica móvil día a día está creciendo en nuestros alrededores. Las aplicaciones autónomas y con aprendizaje forman parte de un futuro próximo, y los avances que hoy sean realizados ayudarán en esta creciente investigación que aún tiene mucho por delante.

El uso de aprendizaje en robótica ha demostrado ser eficiente, gran parte de las diversas aplicaciones en el mundo real que han sido implementadas, lograron obtener resultados

Entre las limitantes del aprendizaje por refuerzo en la robótica, se encuentra el número de estados que sea necesario evaluar. También es necesario conocer lo que se desea aprender a realizar.

Los trabajos relacionados para el problema de persecución-evasión, aunque no ha sido muy abordado en la literatura, si se han sido realizados múltiples trabajos en el área de seguimiento de objetos, desde fijos [Murrieta y Briot, 1998], hasta móviles [Schulz y Burgard, 2001].

C

Caappííttuulloo

44

I

Immpplleemmeennttaacciióónn

eenn

uunn

a

ammbbiieennttee

ssiimmuullaaddoo

El uso de simuladores resulta de gran utilidad cuando se requiere una aproximación del mundo real, sin estar necesariamente en él. Buscando tener una base de trabajo antes de pasar a ambientes reales fue implementado el sistema de aprendizaje por refuerzo en un sistema simulado. En el presente capítulo se expone la problemática de persecución- evasión de un robot móvil y cómo fue resuelto, la representación utilizada y las implementaciones de un algoritmo de aprendizaje por refuerzo, así como el modelado mediante un proceso de decisión de Markov y su solución utilizando iteración de valor. Todo lo anterior en ambientes simulados utilizando Player/Stage [Gerkey, 2005] y el simulador de EyeBot [Bräunl, 2005], estos simuladores fueron usados ya que proporcionan las características necesarias para abordar el problema de manera eficiente, además, el simulador del EyeBot es el que más se acerca a la realidad en la que serán implementados los robots. Se describen los resultados obtenidos de cada enfoque en el simulador del EyeBot.

Related documents