T´ıtulo de Tesis Provisional: Robots Cooperativos para el guiado de Grupos de … · y la...

44
ıtulo de Tesis Provisional: Robots Cooperativos para el guiado de Grupos de Personas en Zonas Urbanas Estudiante: Ana´ ıs Garrell Zulueta Director i Tutor: Alberto Sanfeliu Cort ´ es Programa de Doctorado: Control, Visi ´ on y Rob ´ otica Departamento: Enginyeria de Sistemes, Autom´ atica i Inform´ atica, Institut de Rob ` otica i Inform` atica Industrial Universidad: Universitat Polit` ecnica de Catalunya

Transcript of T´ıtulo de Tesis Provisional: Robots Cooperativos para el guiado de Grupos de … · y la...

Tıtulo de Tesis Provisional:Robots Cooperativos para el guiado

de Grupos de Personas en Zonas Urbanas

Estudiante: Anaıs Garrell ZuluetaDirector i Tutor: Alberto Sanfeliu Cortes

Programa de Doctorado: Control, Vision y RoboticaDepartamento: Enginyeria de Sistemes, Automatica i Informatica, Institut

de Robotica i Informatica IndustrialUniversidad: Universitat Politecnica de Catalunya

Prologo

La robotica se define como una rama de la tecnologıa, que estudia el diseno y construccion demaquinas capaces de desempenar tareas repetitivas, tareas en las que se necesita una alta precision,tareas peligrosas para el ser humano o tareas irrealizables sin intervencion de una maquina.

El ser humano no es resolutivo en algunas situaciones, como por ejemplo la repeticion sistematicade una misma tarea o la precision durante un largo periodo de tiempo, en determinadas acciones laayuda de los robots es muy beneficiosa.

Los robots ademas de sustituir a las personas en las tareas nombradas, tambien pueden actuarjunto a ellas, ya sea informando o ayudando. El presente documento, correspondiente al proyecto detesis, se ha centrado en el estudio de los robots guıas para que trabajen cooperativamente y mostrarla importancia de los robots en el entorno humano. El estudio comienza con la introduccion de lainteraccion entre humanos y robots y que campos abarca esta rama de la robotica. A continuacion, sepresentan las funciones adicionales necesarias para el guiado, las diferentes tecnicas de guiado con unsolo robot y con grupos de robots que trabajan cooperativamente.

Institut de Robotica i Inform atica Industrial (IRI)Consejo Superior de Investigaciones Cientıficas (CSIC)

Universitat Politecnica de Catalunya (UPC)Llorens i Artigas 4-6, 08028, Barcelona

Spain

Tel (fax): +34 93 401 5750 (5751)http://www-iri.upc.es

Corresponding author:

Anaıs Garrell Zuluetatel: +34 93 4015805

[email protected]://www-iri.upc.es/people/agarrell

Copyright Anaıs Garrell Zulueta, 2008

INDICE 1

Indice

1. Objetivos 21.1. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . 21.2. Sub-objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 2

2. Estado del Arte 32.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2. Interaccion Humano-Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2.2.1. Aparicion de la interaccion entre robots y humanos como campo . . . . . . . . . 42.2.2. Definicion del problema de interaccion . . . . . . . . . . . . . . . . . . . . . . 52.2.3. Problemas de dominio de la interaccion . . . . . . . . . . . . . . . . . . . . . . 6

2.3. Tecnicas de guiado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.3.1. Funciones necesarias para el guiado . . . . . . . . . . . . . . . . . . .. . . . . 102.3.2. Guiado con un Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202.3.3. Guiado con multiples Robots . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3. Trabajo en Curso 293.1. Hipotesis preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.2. Componente Estatica del modelo DLE . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.2.1. Calculo del grafo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.3. Componente Dinamica del modelo DLE . . . . . . . . . . . . . . . . . . . . . . . . . . 323.4. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 333.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 33

4. Plan de trabajo 35

2 Proyecto de Tesis

1. Objetivos

1.1. Objetivo general

El objetivo del presente proyecto de tesis es conducir a un grupo de personas desde su posicion inicialhasta el destino deseado, siendo guiados por un conjunto de robots (dos o mas) que siguen un compor-tamiento cooperativo y comparten informacion.

Se parte de la premisa que el camino viene dado a priori y que la conduccion de personas en entornos ur-banos requiere considerar la presencia de los robots, de las personas y de las restricciones del entorno (laexistencia de obstaculos, el ancho de la calzada, etc.). Tambien se pueden plantear diversas estrategias deconduccion con dos robots, como por ejemplo, dos robots detras de la formacion, uno delante y otro de-tras o los dos robots colocados en los laterales. En nuestro trabajo consideraremos que uno de los robots(lıder) se localiza en el frente de la formacion, mientras el segundo se coloca en la parte posterior delgrupo. La tarea del robot lıder es guiar al grupo por una zona de trabajo, principalmente zonas urbanas,como por ejemplo el campus Nord de la UPC, controlando en todo momento que elgrupo no se alejeni se acerque demasiado. La funcion del segundo robot es asegurar que ningun individuo se separe delgrupo, que no hayan aglomeraciones y obtener la formacion deseada del grupo de personas en la medidade lo posible.

Los robots que se utilizaran son los mismos con los que se trabaja en el proyecto URUS1, y disponende una suma de sensores de posicionamiento y sistemas de comunicacion entre ellos. Para realizar elproyecto se utilizaran algoritmos ya disenados, como por ejemplopath plannig, seguimiento de personascon las camaras de los robots y camaras externas, informacion del GPS . . .

1.2. Sub-objetivos

Como sub-objetivos se persiguen los siguientes:

Estudio de modelos, formados dinamicamente, de representacion para la interaccion de los robotscon las personas para su guiado.

Estudio de estrategias de desplazamiento cooperativo de los robots para guiar a las personas.

Verificacion del modelo y de las estrategias en simulacion y, si es posible, realizar los experimentosen entornos reales.

Para lograr dichos sub-objetivos se debe disenar un modelo dinamico que represente elarea de trabajode los robots, i.e., la situacion de las personas, obstaculos y robots en el mundo, y debe introducirse unfiltro para la estimacion de las posiciones de las personas y de los robots unos instantes posteriores, ası,con la ayuda del estudio de estrategias de guiado para robots,estos seran capaces de tomar decisionespara conseguir sus objetivos.

1http://www.urus.upc.es

Seccion 2 Estado del Arte 3

2. Estado del Arte

2.1. Introducci on

En losultimos anos el interes por la robotica cooperativa y el diseno de robots que asisten a personasen su vida diaria ha aumentado de manera significativa. Las aplicaciones eneste campo son muy di-versas, algunos ejemplos de estudios en esta materia son la exploracion de lugares desconocidos [65],formacion de robots para la navegacion [15, 35, 62, 79], el trasporte de objetos y la evacuacion de per-sonas [10, 34, 47].

Los robots guıas son de gran ayuda, sin embargo no existe un gran numero de investigaciones que hayandado la oportunidad a los robots a trabajar como guıas en entornos con afluencia de personas. Uno delos ejemplos mas importantes de robots interactuando con personas es el caso de Rhino[9]. Este robottrabajo en elDeutsches Museum Bonn, donde guio a centenares de visitantes por todo el museo duranteun periodo de prueba de seis dıas. En las tareas de evacuacion es importante considerar que los robotsminimizan el riesgo de tareas de emergencia que realizan los humanos, como la deteccion de materialespeligrosos, la realizacion de tareas de asistencia o guiado. El desastre del World Trade Centerpermitio,por primera vez, el uso de robots moviles para el rescate y busqueda de personas en zonas urbanas [47],dicho suceso demostro que los robots pequenos tienen la capacidad de obtener datos de gran utilidad ensituaciones de emergencia.

El tema-clave discutido en este documento es el estudio para llevar a cabo elguiado de un grupo de sereshumanos hacia un destino con la ayuda de un equipo de robots moviles, los cuales interactuan con laspersonas. Estudios sobre MRS (Multi Robot System) de diferentes arquitecturas y tipos de taxonomıashan sido propuestas por otros autores [16, 30, 31].

El sistema actual puede considerarse como recorridos de guiados, sin embargo, mas alla de este concep-to, esta aplicacion puede ser pensada como un modelo realizado por varios perros que llevan a un rebanode ovejas, orientandolas hacia un objetivo. Los perros y las ovejas tienen como mınimo una forma decomunicacion explıcita. Las ovejas siguen a los perros guıas, si hubiera alguna situacion que afectara ala realizacion del proceso los perros ladrarıan y/o se aproximarıan a ellas. Sin embargo, actualmente noexiste ningun tipo de senal explıcita para el guiado ni para el control de la trayectoria, que viene dadapor un modo implıcito sobre la base de las reacciones naturales entre los seres humanos y los robots (verFig. 1, [41]). Ademas, como las conductas humanas reales son muy difıciles de estimar, se deben asumirunos patrones de comportamiento en la medida de lo posible.

El centro de la investigacion ha sido el desarrollo de una metodologıa para guiar a los seres humanos me-diante el despliegue de multiples robots moviles y sus restricciones del entorno. Sin embargo, la tarea deinterceptacion de las personas todavıa no esta suficientemente estudiada por otros autores, ya que se debehacer frente a diferentes tipos de problemas, los cuales implican mayor nivel de complejidad en las tareas.

Los recientes avances en la robotica y la inteligencia artificial han hecho posible la construccion derobots moviles interactivos, que funcionan de manera muy confiable en ambientes degran confluenciade personas. Existen en elambito de la comunidad de investigacion varios trabajos relacionados contours-guiados que abordan diferentes problemas y utilizan diferentes arquitecturas. Minerva [60], Vir-gil [63], Tourbot [9] y SAGE [50], son algunos ejemplos de gran consideracion.

4 Proyecto de Tesis

Figura 1: Guiado de personas a partir de un equipo de robots.

2.2. Interacci on Humano-Robot

La interaccion entre robots y humanos es un campo de estudio dedicado a la comprension, el diseno,y la evaluacion de sistemas roboticos para su uso con los seres humanos. La interaccion requiere lacomunicacion entre robots y los seres humanos. La comunicacion entre un humano y un robot debeadoptar diversas formas, pero estas formas vienen influenciadas en gran medida por el hecho de si elser humano y el robot se encuentran en proximidad o no. Ası pues, la comunicacion y, por lo tanto, lainteraccion puede ser separada en dos categorıas generales:

Interaccion remota: El hombre y el robot estan separados en el espacio, e incluso pueden estarlotemporalmente (por ejemplo, el Mars Rovers se separa de la tierra tanto en elespacio como en eltiempo).

Interaccion proxima: Los seres humanos y los robots estan en posiciones cercanas (como los robotsde servicio, los cuales pueden estar en la misma habitacion que los seres humanos).

Dentro de estas categorıas generales, esutil distinguir entre aplicaciones que requieren movilidad, ma-nipulacion fısica, social o interaccion. La interaccion remota con robots moviles se refiere normalmentea la teleoperacion de control o de supervision. La interaccion proxima con los robots moviles puedeadoptar la forma de un robot asistente, y puede incluir una interaccion fısica.

En la presente seccion, se presenta un estudio de la interaccion entre robots y humanos. Comienza pre-sentado la evolucion del campo de la interaccion a lo largo del tiempo. A continuacion, se procede adescribir la definicion de los problemas de interaccion, y porultimo se detallan lasareas de aplicacionde estaarea que deben ser consideradas para el guiado.

2.2.1. Aparici on de la interacci on entre robots y humanos como campo

Aunque se han realizado un gran numero de trabajos que pueden considerarse interaccion entre humanosy robots, el campo multidisciplinario comenzo a surgir a mediados de los anos 90’s. Clave de numerososacontecimientos ocurridos en este periodo de tiempo, los investigadores de larobotica, la ciencia cogni-tiva, los factores humanos, el lenguaje natural y la psicologıa empezaron a reunirse en diferentes eventosreconociendo la importancia de trabajar conjuntamente.

Seccion 2 Estado del Arte 5

Tresareas muy influyentes en la interaccion de robots con humanos son: robots de busqueda y rescate,asistencia de robots, y la exploracion del espacio. La asistencia dada por robots de busqueda y rescate hasido unambito en el que el campo de la robotica ha trabajado directamente con los usuarios. La busqueday la situacion de rescate implica la utilizacion de un robot pequeno para entrar en zonas potencialmentepeligrosas o donde hay numerosos escombros para buscar a las vıctimas del derrumbe de un edificio, porejemplo.

Los robots estan equipados normalmente con camaras de vıdeo y sensores de temperatura, y en algunasocasiones pueden estar equipados con un manipulador con el que se puede modificar el medio ambiente.El objetivo es el estudio de una zona que no es apta para el ser humano,y reunir informacion sobre laubicacion de la vıctima y la estabilidad estructural. Debido a la naturaleza no estructurada de busqueday rescate, las interacciones entre los humanos y los robots son muy ricas. En consecuencia, se abordanmuchas cuestiones sobre el problema [33, 46]. La asistencia robotica es importante para la interaccionentre robots y humanos, ya que hace hincapie en la interaccion con las personas con alguna discapacidad.Los desafıos tambien incluyen apoyo a la eficacia de las interacciones sociales y cognitivas atraves deinteracciones naturales, como gestos y discurso. Los tipos de robots/maquinas utilizadas en aplicacionesde asistencia varıan ampliamente en su apariencia fısica, e incluyen sillas de ruedas, robots moviles conmanipuladores y humanoides [18, 48, 55].

La robotica espacial tambien ha sido un importante dominio de interaccion entre robots y humanos. Losretos incluyen la explotacion de un robot a distancia cuando el tiempo que transcurre puede ser unfactorimportante, o interactuar en estrecha proximidad, tales como cuando un robot asistente ayuda a un as-tronauta en la exploracion de la superficie de un cuerpo planetario. La informacion reunida por el robotdebe ser devuelta (a) a una astronauta que se encuentra junto el roboto (b) a un equipo base de la Tier-ra, que luego, en tiempo real, estudian las hipotesis recibidas para modificar el comportamiento del robot.

2.2.2. Definici on del problema de interacci on

El principal problema de la interaccion entre humanos y robots es entender y dar forma a las interac-ciones entre uno o mas seres humanos y uno o mas robots. Las interacciones entre los seres humanos ylos robots estan presentes en todas las ramas de la robotica, incluso para los llamados robots autonomos.El trabajo es esencialmente de caracter interdisciplinario, el cual requiere contribuciones de la cienciacognitiva, la linguıstica, la psicologıa, la ingenierıa, las matematicas y ciencias de la computacion.

En esencia, existen cuatro atributos que afectan a las interacciones entrelos seres humanos y los robots:

Nivel y el comportamiento de autonomıa.

Naturaleza de intercambio de informacion.

Estructura del equipo.

Forma en el desempeno de la tarea.

La interaccion se define comoel proceso de trabajar juntos para lograr un objetivo, y surge de la con-fluencia de estos factores.

Equipos de robots

Los problemas de la interaccion entre humanos y robots no se limitan a ununico humano y ununicorobot, aunque este es, sin duda, un importante tipo de interaccion. Robots utilizados en la busqueda y

6 Proyecto de Tesis

rescate, por ejemplo, suelen ser administrados por dos o mas personas, cada uno con funciones especialesen el equipo [47, 59].

Una cuestion que ha recibido considerable atencion es el numero de robots a distancia que un solo hu-mano puede manejar. En general, la respuesta depende de los factores tales como el nivel de autonomıa delos robots (por ejemplo, la teleoperacion requiere una gran cantidad de atencion directa de los humanos),la tarea (que se define no solo por el tipo y la cantidad de datos devueltos a los humanos, sino tambienpor la cantidad de atencion y la carga cognitiva que requiere de la persona humana), y la disponibilidadde medios de comunicacion. En la busqueda y rescate, Murphy [47] afirma que las exigencias de la tarea,el factor de la forma del robot, y la necesidad de proteger los robots operadores, requieren al menos dosoperadores, una observacion que ha recibido el firme apoyo de los ensayos de campo usando tecnologıasmaduras [10], y un apoyo parcial de las competiciones de busqueda y rescate [2].

Ademas del numero de seres humanos y robots en un equipo, uno de los principales problemas que seplantea es la organizacion del equipo [20]. Una importante pregunta es quien tiene la autoridad paratomar ciertas decisiones: robot, software de interfaz o humanos?. Otra cuestion importante es quien tienela autoridad para emitir instrucciones o comandos para el robot y en que nivel. Una tercera cuestion escomo se resuelven los conflictos, especialmente cuando los robots son colocados como acompanantesen las relaciones con multiples personas. Gracias a todas estas preguntas se determina si la estructuraorganizativa es estatica o dinamica, con cambios en las responsabilidades, autoridades, y funciones.

En muchos de los problemas de la interaccion se incluyen, no solo los seres humanos y los robots queinteractuan unos con otros, sino tambien la coordinacion con agentes de software. La forma mas simplees un problema de tres-agentes que se produce cuando una interfaz inteligente es el intermediario entreun humano y un robot a distancia [56]. En este problema, la interfaz agentepuede controlar y categorizarel comportamiento humano, supervisar y detectar problemas con el robot, yapoyar el trabajo humano.

Unaultima cuestion que esta empezando a llamar la atencion es el papel de los humanos [72]. Hay casosen los que el robot puede tener que interactuar con los transeuntes o con personas que no esten esperandotrabajar con un robot. Los ejemplos incluyen las zonas urbanas de busqueda y salvamento con robots, unrobot militar en un entorno urbano que debe interactuar con los civiles, y un robot asistente de salud quedebe ayudar a un paciente e interactuar con los visitantes. El papel del robot con respecto a los seres hu-manos debe tenerse en cuenta. El papel de los humanos sera discutido con mas detalle en la seccion 2.2.3.

Realizacion de la tarea

La tecnologıa robotica se presento como un dominio para permitir que un humano realizara una tareaque antes no podıa hacer, o para hacer la tarea mas facil, o mas agradable para los humanos. La tarea deelaboracion es un termino que hace hincapie en la importancia de considerar la forma en que la tarea debehacerse. Hay procesos formales para la comprension de la forma en que la tarea debe realizarse. Estosprocesos incluyen el analisis, el trabajo cognitivo, y estudios etnograficos [72]. Woods argumento queel diseno de un sistema es equivalente a hacer una hipotesis acerca de como el artefacto se forma en laexperiencia [77]. No obstante, es importante considerar la forma en que latarea podrıa ser modificadapara un mejor apoyo para la interaccion.

2.2.3. Problemas de dominio de la interacci on

Ya se ha mencionado en varias ocasiones algunos de los diferentes problemas yareas de aplicacionde la interaccion entre robots y humanos. En la presente seccion, se explican los principales tipos de

Seccion 2 Estado del Arte 7

problemas encontrados en interaccion. Es importante destacar que muchos de estos problemas tienen unamplio impacto social, por lo tanto, muchos trabajos utilizan la ciencia y la ingenierıa para responder alas necesidades de la sociedad. Scholtz propuso una taxonomıa de las funciones que pueden asumir losrobots [56]: Supervisor, operador, mecanico, companero y espectador.

Taxonomıas similares son posibles, pero la determinacion de como la gente percibe un robot es unacuestion muy importante. El cuadro 1 clasifica los tipos mas frecuentes de interacciones con susareas deaplicacion. Para muchas de estasareas, los actuales modelos de la investigacion muestran una tendenciaa alejarse de las interacciones remotas hacia interacciones mas proximas.

Las principalesareas de aplicacion de la interaccion entre robots y humanos son las siguientes:

1. Busqueda y rescate.

2. Robots de asistencia.

3. Militares y policıa.

4. Entretenimiento.

5. Espacio.

6. Hogar e industria.

El estudio del guiado de personas de manera cooperativa con robots en espacios abiertos, abarca lossiguiente campos de interaccion entre humanos y robots: busqueda y rescate (busqueda y guiado de per-sonas en zonas peligrosas), robots de asistencia (guiado de personas mayores o con personas en terapia)y robots de entretenimiento (robot guıas en museos o guıas turısticos).

Busqueda y rescate

Estaarea de investigacion esta siendo desarrollada en diversos paises, pero en Estados Unidos cobro es-pecial importancia la aplicacion en zonas urbanas (urban search and rescue, USAR) debido a la necesidaddel uso de robots en el rescate y recuperacion de personas en el colapso del World Trade Center [10].USAR ha crecido hasta convertirse en una de lasareas mas importantes de la interactuacion entre hom-bres y robots.

Debido a su importancia, USAR se ha convertido en un desafıo para los problemas de la interaccion.Periodicamente se realizan competiciones de robots y conferencias relacionadas con USAR [33], dondese investigan y se desarrollan nuevas interfases, nuevos disenos de robots y nuevos sensores. Reciente-mente, se estan ampliando los esfuerzos para incluir robots aereos a fin de ser utilizados en los desastresnaturales.

Robots de asistencia

En el espıritu social de las investigaciones pertinentes, los robots se estan desarrollando para servir a losasistentes. La asistencia en robotica es tal vez una de lasareas con mas interes social, donde la interaccionde robots y humanos cobra especial relevancia. Un ejemplo son los robotsde ayuda a invidentes. El ob-jetivo de los trabajos en esteambito es aumentar el conjunto de tareas que una persona con discapacidadvisual puede realizar independientemente. Estas tareas incluyen, por ejemplo, la ayuda en la navegacionen ambitos no estructurados y la asistencia a los humanos, dandoles informacion sobre lugares y produc-tos.

8 Proyecto de Tesis

Otro importanteambito de la investigacion, especialmente en los paıses con una creciente poblacion dela tercera edad, es prestar apoyo a las personas de edad avanzada [45]. Los investigadores en esteambitose centran en las necesidades fısicas, el bienestar emocional, cognitivo y de asistencia. Las personas quetrabajan en esteambito son plenamente conscientes de las consideracioneseticas que surgen por la dele-gacion de una tarea que corresponde a un humano a un robot.

Para algunas personas con discapacidades fısicas y problemas mentales, los robots pueden proporcionaruna oportunidad para la interaccion y la terapia. Esta labor se esta explorando con los ninos autistas [6].Muchos de estos ninos responden debilmente a todas las senales sociales, pero responden bien a lamecanica de dispositivos. Los robots estan considerados para otrosambitos donde los ninos se bene-fician, ası como los que han sufrido un trauma. Es importante destacar que la dimension social de lainteraccion entre hombres y robots se considera necesaria, no solo en las funciones de asistencia, sinotambien en muchas zonas de proxima interaccion.

Por ejemplo, los investigadores estan trabajando en el diseno de robots que prestan apoyo a la terapiafısica. Los esfuerzos incluyen la ayuda a la fuerza y a las trayectorias demovimiento para reconstruir laflexibilidad y la fuerza [38]. Otros trabajos incluyen la deteccion de estado de motivacion y de adaptaciona la terapia para maximizar los beneficios. Sillas de ruedas inteligentes son un tipode robot que utilizansensores externos de apoyo a la planificacion de ruta.

En el espıritu de la prestacion de asistencia a las personas, algunos investigadores tambien estan estu-diando como los robots pueden ser usados para la educacion de los ninos, tanto en el hogar como en lasescuelas. El robot personal de servicio es una extension para el tema de la prestacion de servicio a lapoblacion en general.

Entretenimiento

Aunque ha habido muchos ejemplos de robotica de entretenimiento, en elambito de la interaccion no esmucho lo que ha sido publicado en la literatura. La Exposicion Internacional AICHI’05 demostro variosrobots disenados para entretener, incluyendo el uso de robots como actores o acompanantes de baile [1].Una vez mas, el papel del ser humano es como un observador, y la interaccion es mınima y mas implıcita.

Los robots Tank y Valerie, de la UniversidadCarnegie Mellon, fueron disenados como recepcionistas enun proyecto conjunto entre la CMU Instituto de Robotica y la Escuela de Drama [25]. Aunque los robotsque actuan como guıas turısticos podrıan considerarse una forma de asistencia robotica, estos robots seclasifican en la categorıa de entretenimiento, porque su funcion principal es hacer participar a los visi-tantes [38].

Otros temas relacionados con la investigacion en el uso de robots para el entretenimiento son los robotsnarradores [44] o los acompanantes de baile robotico [6].

Seccion

2E

stadodelA

rte9

Cuadro

1:A

plicacionesde

lainteracci

onentre

robotsy

humanos.

Area de aplicacion Remoto/Proximo Papel Ejemplo Ref.Busqueda y rescate Remoto El humano es un Robot de busqueda [10, 33]

supervisor o un operario. teledirigidos.Proximo Los humanos y los robots El robot sostiene [52]

son companeros. estructuras inestables.Robots de asistencia Proximo Los humanos y los robots Asistencia para los [45]

son companeros o los ciegos y terapia pararobots son una herramienta. personas mayores.

Proximo El robot es un mentor. Interaccion social [6]para ninos autistas.

Militares y policıa Remoto El humano es supervisor. Reconocimiento de [58]minas.

Remoto o El humano y el robot son Patrulla de apoyo. [66]Proximo companeros.Remoto El humano es el consumidor. Comandante utilizando [75]

informacion dereconocimiento.

Entretenimiento Proximo El robot es un mentor. Robot auxiliar de [32]aulas.

Proximo El robot es un mentor. Robot guıas en museos [9, 64]Proximo El robot es un companero. Companero Social. [12]

Espacio Remoto El humano es supervisor Ciencias remotas [65]o un operario. y exploracion.

Proximo El robot y el humano Robots astronautas [74]son companeros. asistentes.

Hogar e industria Proximo El humano y el robot Robot companero. [12, 13]son companeros.

Proximo El humano es supervisor. Robot aspiradora. [67]Remoto El humano es supervisor. Robot de construccion. [24]

10 Proyecto de Tesis

2.3. Tecnicas de guiado

2.3.1. Funciones necesarias para el guiado

La navegacion de robots para el guiado de personas es necesaria, ası como, la localizacion de los robots, yla estimacion de las posiciones posteriores para permitir a los robots actuar y planificar sus movimientos.Al trabajar con grupos de robots, tambien es necesario el estudio de formacion de robots, la localizacionde las personas y la comunicacion entre los robots para conseguir el objetivo conjuntamente.

(a) Formacion de robots

Un modelo comun para la formacion de robots moviles con restricciones no holonomicas en unespacio cartesiano es:

xc = vccosθc; yc = vcsinθc; θc = vcKc (1)

donde[xc, yc, θc]T son las coordenadas del robot,vc es la velocidad actual, yKc es la curvatura de

la trayectoria que el robot esta siguiendo. La restriccion no holonomica del sistema, implıcita en(1), es

xcsinθc + yccosθc = 0 (2)

En general, la velocidad y la curvatura del robot estan limitadas, por eso hay las siguientes restric-ciones adicionales:

|Kc| ≤ Kc,max |vc| ≤ vc,max (3)

Las ecuaciones de la cinematica para un punto de referencia vienen en las ecuaciones (1)-(3) dondeKc,max y vc,max son funciones de la formacion especıfica.

[xc(t), yc(t), θc(t)]T [vc(t) Kc(t)]

T (4)

Por conveniencia, el control puede ser escrito como funcion de distancia,dc, usando la ecuacion(4),

vc(dc); Kc(dc); dc(t) =

∫ t

ovc(τ)dτ (5)

Si [pi qi]T es constante, se deduce la siguiente formula, a fin de que el roboti permanezca en la

formacion.

vi(si) = vc(si)(1− qiKc(si))

Ki(si) =Kc(si)

1− qiKc(si)(6)

dondesi(t) = dc(t) + pi, de aquı se deduce:

xi = vicosθi; yi = visinθi; θi = viKi (7)

Seccion 2 Estado del Arte 11

Estas ecuaciones describen la cinematica del roboti. Ademas se debe comprovar que:

|Ki| ≤ Ki,max; |vi| ≤ vi,max (8)

en todos los puntos de la trayectoria para asegurar que[vc(dc) Kc(dc)] es una referencia valida detrayectoria. De lo contrario, la trayectoria no puede ser implementada por elroboti y esta parte dela formacion no puede manternerse.

El caso mas general de formacion es permitir que la estructura de la formacion pueda cambiar conel tiempo. Por ejemplo, esto serıa necesario para permitir que el grupo pasara a traves de zonas conpequenas aperturas. Este enfoque se ocupa del caso general permitiendo a[pi qi]

T ser una funcionen el tiempo. Se define la distancia recorrida por el roboti a lo largo de la trayectoria de referenciacomo:

si(t) = dc(t) + pi(t) (9)

donde se denotapi(t) cambiando en el tiempo, yqi(t) es una funcion en el tiempo, pero se trabajaenqi(si). Esto es necesario para determinar todas las cantidades siguientes despues del calculo dela trayectoria del roboti:

si(t), qi(si),dqi

dsi

(si),d2qi

ds2i

(si) (10)

La figura 2 es la interpretacion grafica de estos datos. Una vez han sido determinados, se debecalcular la trayectoria del roboti de la manera que sigue:

vi = SQvc (11)

Ki =S

Q

(

Kc +(1−qiKc)

d2qids2

i

+Kc

(dqidsi

)2

Q2

)

(12)

con,

S = sgn(1− qiKc) (13)

Q =

√(dqi

dsi

)2

+ (1− qiKc) (14)

donde todas estas cantidades son evaluadas ensi(t). Se debe asegurar de nuevo, que los lımites dela ecuacion (8), no se superen en todos los puntos de la trayectoria. Se puede observar que cuandola curvatura de la trayectoria de referencia,Kc = 0, el espacio no es curvo y la ecuacion (11 b) sesimplifica como:

Ki =

d2qids2

i

2

(1+

(dqidsi

2))

3/2

(15)

12 Proyecto de Tesis

Figura 2: Representacion grafica de la trayectoria dinamica de un robot.

(b) Comunicacion

La comunicacion en varios equipos de robots ha sido ampliamente estudiada en la literatura. Sesuele considerar la distincion entre comunicacion implıcita y explıcita. Se denomina comunicacionimplıcita cuando se produce la comunicacion como un efecto secundario de otras acciones, o ’atraves del mundo’ (vease, por ejemplo [51]); mientras que la comunicacion se considera explıcitacuando es un acto especıfico disenadounicamente para transmitir informacion a otros robots enel equipo. Varios investigadores han estudiado el efecto de la comunicacion en el desempeno deequipos de multi-robots en una variedad de tareas, y han llegado a la conclusion de que la co-municacion proporciona ciertos beneficios para determinados tipos de tareas. Ademas, diversosinvestigadores han encontrado que, en muchos casos, la comunicacion de una pequena cantidad deinformacion puede dar lugar a grandes beneficios (por ejemplo, [4]).

(c) Navegacion

La navegacion en robotica para un solo robot ha sido clasificada tradicionalmente en navegaciondeliberativa y navegacion reactiva [49]. Una exposicion similar para entornos dinamicos se pre-senta por Fujimora. Los sistemas multi-robot se han convertido en unarea activa de investigacion,ya que facilitan una mejor eficiencia y aumentan la capacidad. Los sistemas de multiples robotsmoviles se encuentran en muchasareas de aplicaciones: manipulacion de materiales peligrosos enterrenos difıciles, en tolerancia a fallos de los sistemas, exploracion de terrenos, y en la carga detransporte. La colaboracion para evitar colisiones entre robots se plantea en muchas de las aplica-ciones multi-robots, como por ejemplo, encontrar el camino mas rapido o la reunion en un lugarcomun. Tanto si se trata de un caso de navegacion de robots de rescate en zonas abiertas, como labusqueda en las distintas partes de un edificio para el desempeno de tareas domesticas, la evitacionde obstaculos cooperativa se convierte en imprescindible.

En [29] se presentan tres niveles de resolucion colaborativa. La estrategia se lleva a cabo de formadistribuida en todos los robots del sistema. En el primer nivel, los robots queparticipan en unconflicto lo resuelven independiente. En el segundo nivel, los robots que participan en el conflictomodifican sus velocidades de una manera sincronizada para que el conflicto sea resuelto. Cuando

Seccion 2 Estado del Arte 13

la fase cooperativa falla, se adapta el tercer nivel de resolucion, el cual se extiende a los robots queno forman parte del conflicto y su ayuda se solicita para resolver los conflictos entre los robots queparticipan.

1. Evitar conflictos de colision, de manera que los agentes no esten demasiado cerca. Ası, losagentes actuan de en un manera que beneficie a otro agente para evitar las colisiones.

2. Proporcionar un medio de evitacion de conflictos en situaciones donde un solo agente no escapaz de resolver el conflicto individual.

3. Actuar como un puntero en las zonas del espacio de posibles soluciones donde la busquedade una solucion es probable que sea mas fructıfera.

Matematicamente, la resolucion individual se caracteriza como una busqueda de la velocidad enel espacio de los respectivos robots que participan en el conflicto.

La resolucion de conflictos entre robots se resuelve en las tres fases mencionadas anteriormente.La modalidad de eleccion de las velocidades determina cual de las tres fases es adaptada para laresolucion.

Se consideraST , la representacion del conjunto de todas las posibles soluciones para resolver con-flictos con robots. Cada miembrosi del conjunto viene representado comosi = {v1i, . . . , vNi},para los N robots involucrados en el conflicto. El conjunto es infinito y no es numerable, por lotanto el subındicei ensi es usado solo por notacion. Los robots evitan los conflictos controlandosus velocidades en los instantes de tiempo{t1i, . . . , tNi}, se denotasi ∈ ST .

El espacio cooperativoes representado por el conjuntoSC ⊆ ST , i.e., el espacio cooperativo esun subconjunto del espacio total de soluciones y donde cada robot involucrado en el conflicto esrequerido para modificar la velocidad, de manera que cada robot tiene una parte de responsabilidadpara la resolucion del conflicto.

La fase colaborativaen navegacion es definida con la condicion SC = ST , donde cada robot notiene otra eleccion que la resolucion del conflicto. En las resoluciones individuales la eleccion develocidades en el espacioSI = ST −SC , donde la vinculacion de cada robot a cooperar no existe.Si SI = φ diremos que la navegacion tiene una fase cooperativa completa.

La figura 3 muestra la evolucion de trayectoria de dos robots, marcados como R1 y R2, moviendoseen direcciones ortogonales. Las flechas muestran la localizacion de los dos robots en el tiempot = 0. Los robots se mueven con velocidades identicasvR1 = vR2 = 2,5 unidades. Los estadosde los dos robots vienen representados por:Psi1 = (vR1, vR1, 0) y Psi2 = (vR2, vR2,−90). Lasigualdades de las velocidad se limitan a indicar que el robot se mueve con velocidad uniforme yno es una perdida de generalidad en los casos en que la velocidad difiere de la actual.

(d) Localizacion de personas

En esta seccion se explica la manera como se localizan de manera cooperativa los miembros deun grupo, existen diferentes trabajos que estudian el modo de localizar a grupos de personas conmultiples robots [26, 40, 63].

14 Proyecto de Tesis

Figura 3: Dos robots navegando en direcciones ortogonales.

El objetivo de [26, 60] es diferenciar los seres humanos de otros objetos en el mundo, y elseguimiento de cada persona mientras se desplazan, para ello debe determinarse el centro delgrupo (en el Centro de gravedad, CG).

Las zonas de discriminacion es un proceso de filtrado de 2 umbrales (shoulders& knees), donde enlos puntos localizados entre ellos, esta la mayorıa de la informacion perteneciente a las personas.Este pre-filtrado se refiere a la eliminacion de zonas innecesarias. Del mismo modo, la reducciondel ruido limpia el error producido, debido a las condiciones de luz parcial o de oclusion. La fusionde multi-sensores de datos es una recopilacion de la informacion sensorial en el centro de acogi-da, como una forma de compartir datos de sensores distribuidos y para representar a nivel globalel modelo del mundo. La segmentacion es una importante cuestion a fin de clasificar los objetoscaptados.

El metodo es un proceso de agrupacion, que depende de un umbral entre dos puntos en 2D. Laagrupacion termina con una serie de sub-grupos que representan la oscilacion objetos. Este meto-do es fiable para diferentes autores, Ohya Akihisa o Shin’ichi Yutase entre otros. No obstante,diversos autores han propuesto otras metodologıas fiables, como por ejemplo en [26] se proponeun seguimiento de personas utilizandooptical flowcon multiples camaras, o en [76], se explicaun filtro de partıculas condicionado para la localizacion y el seguimiento de personas con robotsmoviles.

Para la localizacion de humanos esutil:

Diferenciar los seres humanos de otros objetos en el mundo.

Proporcionar al centro de acogida la distribucion geometrica de las personas con el fin dehacer un plan de movimiento en cada momento.

El centro de gravedad del grupo se estima a partir de la posicion de los miembros del grupo.

Por tanto, en esta estrategia, la cuestion clave es llevar a cabo la orientacion a lo largo de unitinerario. La trayectoria de control se refiere a la forma en que el CG esta controlado para elseguimiento de la trayectoria deseada. Los tres elementos principales que son importantes para latrayectoria de control: (a) observacion de la filtracion; (b) el control del modelado de la trayectoriade modelado; y (c) la prediccion de CG entk+1.

Seccion 2 Estado del Arte 15

La posicion del CG se ve afectada por una secuencia de ruido actualizado a lo largo de cada mo-mento. Una solucion para filtrar el CG y obtener una mejor estimacion fue ampliada mediante lautilizacion del Filtro de Kalman (EKF) [73]. Una proyeccion de la estimacion de CG entk+1, secorrelaciona con un conjunto de ecuaciones que expresan la dinamica del grupo. Ver el grupo depersonas como una unidad, donde su CG es una dinamica de partıculas, la aceleracion angular,velocidad angular, velocidad lineal y los desplazamientos lineales son considerados como la inte-gracion en el diseno EKF del sistema para la obtencion de una posicion deseada de CG.

La trayectoria en [26] de control se haya obteniendo de forma implıcita la aceleracion angular delgrupoα. La ecuacion de informacion de control viene dada por:

α = −k1∆x− k2θ − k3w (16)

Donde∆x es la distancia del CG hacia la linia de seguimiento,θ es elangulo de partida yw es lavelocidad angular.k1, k2 y k3 son las constantes de beneficios establecidas a priori.

Un conjunto de ecuaciones del modelado de movimiento de CG fue propuesto como el nucleo dela trayectoria de control y prediccion. La propuesta de [41] calcula un modelo deseado siguiendola posicion del CG comogck+1(x, z, θ), con una velocidad linealv, una velocidad angularw, yuna aceleracion angularα obtenidas a partir de la trayectoria de control. Todas las representacionesson vectoriales, salvoα y w.

En [40] se describe la situacion de localizacion de multiples humanos con multi-sensor de fusionde datos. En la figura 4, se presentan las condiciones de trabajo, el metodo presentado se lleva acabo en un ambiente estacionario solo con el proposito de la realizacion de multiples tareas delocalizacion. Basicamente, las filas de personas se alinean en filas de 3 y 2 personas en lapartedelantera y en el dorso, respectivamente, entre un robot y los robots B, C (a la izquierda y laderecha tambien respectivamente). La razon por la cual varios robots moviles se utilizan para lalocalizacion de varios humanos, es por: (1) Para superar el problema de la oclusion parcial o totaldebido a varias personas. (2) Varios robots pueden servir de guıa y control junto al grupo.

Con el fin de detectar la ubicacion de varias personas utilizando ununico robot, su posicion y laorientacion debe ser organizado estrategicamente, porque de otra forma, tal robot no puede igualarcorrectamente la totalidad de miembros del grupo con un determinadoangulo. Pero por otro lado,el uso de multiples robots moviles puede permitir queestos sean mas simples. Ademas, incluso sicada robot solo puede percibir un numero parcial de personas de diferentes lugares, el problema sevuelve mas facil de superar, ya que los datos de las personas localizadas de cada robot se fundenen un marco de cooperacion.

Por medio de un marco de cooperacion se ha desarrollado un metodo, que se lleva a cabo en 6etapas principales: Tarea del calculo de los puntos 3D, (2) tarea de proceso de pre-filtrado, (3) unfiltro de reduccion del ruido, (4) transformacion de los puntos a 2D, (5) una clasificacion de losdatos basados en segmentacion , y (6) calculo de la localizacion de los humanos. En la figura 5 semuestra el funcionamiento del filtro.

Considerada como una parte del procesamiento de datos, el filtrado de datos es uno de los elemen-tos mas importantes de la esencia de este metodo. Del mismo modo, el filtrado, basicamente, sedivide en 3 fases: pre-filtrado, reduccion de ruido 2D y transformacion, esteultimo es tambien una

16 Proyecto de Tesis

Figura 4: Localizacion de un grupo de 5 personas con 3 robots.

rutina para la reduccion de puntos.

Figura 5: Diagrama del proceso de datos.

(e) Localizacion de robots

La localizacion que se realiza en la mayorıa de los trabajos es el metodo de localizacion de Markov,[21, 22, 23], consiste en mantener una distribucion de probabilidad sobre todas las localizacionesposibles del robot dentro de su entorno de movimiento.

La localizacion de un robot viene dada por las coordenadas cartesianas de un punto cualquiera delmismo (x,y) y la orientacion de alguno de sus ejes (θ ) respecto a un sistema de referencia externo

Seccion 2 Estado del Arte 17

fijo. Estas tres variables dan lugar a un espacio de estados tridimensionalL, en el que cada uno desus estadosl = (x, y, θ) es una posible localizacion del robot.

Con el metodo de localizacion de Markov, en cada instante de tiempot el robot tiene una ciertacreencia sobre cual es su posicion en el entorno, caracterizada por una distribucion de probabilidadsobre el espacioL, a la que se denominara Bel(Lt). De este modo, Bel(Lt = l) evalua la distribu-cion de probabilidad en un punto concretol, y se interpreta como la creencia del robot de estar enla posicion l en el instante de tiempot.

La distribucion de probabilidad Bel(Lt) se inicializa en t=0 en funcion del conocimiento que setenga sobre la posicion inicial del robot. En el caso de queesta sea conocida y de valorl0, Bel(L0)sera una funcion delta centrada en dicha posicion l0. En el caso contrario de no tener ninguna in-formacion sobre la posicion inicial del robot,Bel(L0) sera una distribucion uniforme a lo largo detodo el espacio L.

El metodo de Markov consiste en actualizar la distribucion de probabilidad sobre la posicion delrobotBel(Lt), cada vez que se produzca alguno de los dos siguientes sucesos:

Cuando el robot se mueve. En este caso, la actualizacion deBel(Lt) se realiza mediante elmodelo de movimiento del robot.

Cuando el robot realiza alguna medida con sus sensores. En este caso, la actualizacion deBel(Lt) se realiza mediante el conocido como modelo de percepcion del robot.

Modelo de movimiento

El movimiento del robot se modela mediante una funcion de probabilidad condicionalp(l′|l, o),que indica la probabilidad de que la nueva posicion del robot seal′ si anteriormente se encontra-ba en la posicion l, y se ha medido un desplazamientoo desde dicha posicion con los sistemasodometricos del robot.

El modelo de movimiento utilizado en esta aplicacion para el robot se basa en la cinematica de unaplataforma con traccion diferencial. Supongase que el robot realiza un movimiento caracterizadopor una rotacion arot (variacion de la orientacion) y una traslacion atras (espacio avanzado), deforma que la accion de control ejecutada es el vectora = (arot, atras). Si estas dos magnitudespudieran conocerse exactamente, sin ningun tipo de error, un modelo cinematico sencillo paradeterminar la nueva posicion l′ tras ejecutar la acciona desde la posicion l serıa el siguiente:

x′

y′

θ′

=

x + atrascos(θ + arot)y + atrassin(θ + arot)θ + arot

(17)

En la practica, estas acciones de control se miden a traves de los sistemas odometricos, que intro-ducen un cierto error de medida. Llamandoo = (orot, otras) a la rotacion y traslacion medidas porlos sistemas odometricos, y conociendo la posicion de partida del robotl, la funcion de probabili-dadp(l′|l, o) puede calcularse con los siguientes pasos:

1. De las ecuaciones cinematicas del robot, y tomandol′ y l como posiciones final e inicial, seobtiene la accion de control real necesaria para que se haya producido dicho movimiento.

2. A partir de los sistemas odometricos se obtiene el movimiento real o medido por el robot.

18 Proyecto de Tesis

3. Mediante algun modelo del ruido introducido por los sensores, (modelos tıpicos son los tri-angulares o gaussianos), se obtiene la probabilidad de que habiendo medido o, la accion decontrol real seaa. Esta probabilidad,p(a|o), coincide con la probabilidadp(l′|l, o) buscada.

Cada vez que el robot realiza un movimiento, del cual toma una medidao mediante sus sistemasodometricos, la distribucion de probabilidad sobre la creencia de su posicion,Bel(Lt) debe ser ac-tualizada. Para ello, en cada puntol′ del espacio de movimientoL debe calcularse la probabilidadde ser la nueva posicion del robot, integrando el producto de la probabilidad de estar anteriormenteen otra posicion l por la probabilidad de haber pasado del a l′ si la medida del sistema odometricoeso (dada por el modelo de movimientop(l′|l, o)) a lo largo de todo el espacio L:

Bel(Lt = l′) =

Lp(l′|l, o)Bel(Lt−1 = l)dl (18)

(f) Estimacion

Una parte importante de las investigaciones es la actuacion con antelacion para evitar posiblesproblemas, como por ejemplo, que la gente no salga del camino o que las personas no se separendel grupo. En la mayorıa de los trabajos estudiados [3, 7] se han estimado las posiciones y lasvelocidades de las personas y los robots con un Filtro de Partıculas Gaussiano.

El problema consiste en la estimacion de estados dinamicos del sistema no lineal estocastico,basado en una serie de observaciones. El modelo puede ser descrito como:

xn = f(xn−1, un) (ecuacion del proceso)

yn = h(xn, vn) (ecuacion de las observaciones) (19)

Dondef(·) y h(·) son funciones conocidas, yun y vn son vectores de ruido aleatorio de unadistribucion conocida. La ecuacion de proceso representa un sistema de tiempon, donde es repre-sentado por un estado ocultoxn. Denotamosx0:n y y0:n la senal de observacion en el tiempon,respectivamente, i.e.,x0:n := {x0, . . . , xn} y y0:n := {y0, . . . , yn}. El objetivo es estimar recursi-vamente en el tiempo:(i) la distribucion del filtrop(xn|y0:n) en el tiempon, (ii) la distribucion dela prediccionp(xn+1|y0:n), ambas se pueden escribir como:

p(xn|y0:n) = Cnp(xn|y0:n−1)p(yn|xn) (20)

Cn =

(∫p (xn|y0:n−1) p (yn|xn) dxn

)−1

p(xn+1|y0:n) =

∫p(xn+1|xn)p(xn|y0:n)dxn (21)

Ver figura 6 donde se muestran el funcionamiento del filtro de partıculas utilizado.

El filtro de partıculas gaussiano aproxima las distribuciones de 20 y 21 con densidades gaussianasusando la metodologıa del filtro de partıculas. Se calculanM partıculasX = x

(1)n , . . . , x

(M)n

de una distribucion de muestreoπ(xn). Las partıculas tienen un peso asociado comow(j) =

(p(x(j)n ))/(π(x

(j)n )). Si W =

{w(1), . . . , w(M)

}, el conjunto(X, M) representa las muestras de

Seccion 2 Estado del Arte 19

Figura 6: Secuencia general delImportance Sampling Particle Filter.

la distribucion posteriorp(xn).

Los algoritmos que describen el proceso se encuentran descritos en alg. 1 y 2.

Algorithm 1 Actualizacion de las medidas

1: Dibujar las muestras de la funcionπ(xn|y0:n)→{x

(j)n

}M

j=1

2: Normalizar los pesos como

w(j)n =

w(nj)

∑Mj=1 w

(j)n

(22)

3: Estimacion de la media y la covariancia:

µn =M∑

j=1

w(j)n x(j)

n

Σn =M∑

j=1

w(j)n (µn − x(j)

n )(µn − x(j)n )T (23)

20 Proyecto de Tesis

Algorithm 2 Actualizacion en el tiempo

1: Dibujar las muestrasN(xn, µn, Σn)→{x

(j)n

}M

j=1

2: for j=1,. . . ,M do

3: muestrearp(xn+1|xn = x(j)n ) para obtener

{x

(j)n+1

}M

j=1

4: end for5: Calcular la mediaµn+1 y la covarianciaΣn+1

µn+1 =1

M

M∑

j=1

x(j)n+1

Σn+1 =1

M

M∑

j=1

(µn+1 − x(j)n+1)(µn+1 − x(j)

n )T (24)

2.3.2. Guiado con un Robot

GUIA DE ANIMALES

Existen varios trabajos que han investigado como llevar a un grupo de personas con un robot [9,14], sin embargo, los primeros trabajos se realizaron con grupos de patos [68, 71].

En [68, 71] se presenta un sistema completo de un robot que controla el comportamiento de otrosistema inteligente con la presencia de la variabilidad, la incertidumbre y el ruido. Los robots uti-lizados en el ProyectoSheepdogdemostraron la capacidad de recogida de una manada de patos yla realizacion de maniobras con seguridad hacia un objetivo predeterminado.

El uso de los patos en lugar de ovejas permite experimentar en un ambiente controlado. El com-portamiento de los grupos de patos es reconocido por los pastores como similar al de las ovejas;los patos se utilizan a menudo para formar a los perros de pastoreo, debidoa su movimiento relati-vamente lento. Con el fin de identificar las interacciones entre el robot y losanimales, se diseno unmodelo generalizado de los comportamientos del grupo. La hipotesis presentada es la siguiente: siel modelo capta con precision la base del comportamiento, a continuacion, el sistema que controlael modelo debe controlar el comportamiento del mundo real.

Modelos del comportamiento de manadas existen en la literatura y generalmente son derivadosde las observaciones de Hamilton, las manadas vienen producidas por la accion en masa de losanimales individuales, cada uno ellos buscando la proximidad de sus vecinos mas cercanos [71].Mas tarde se sugirio que este comportamiento puede ser modelado por una fuerza atractiva entrelos animales, con la magnitud de la atraccion variando con el cuadrado del inverso de la distanciaentre los animales [69, 70]. Esta argumentado que la relacion representa una respuesta lineal dela informacion sensorial, que a su vez varıa con el inverso del cuadrado de la distancia. Modelossimilares han producido animaciones realistas de bandadas de pajaros [70].

Estas ideas estan familiarizadas con la robotica, donde se utilizan tecnicas de campos potencialespara la navegacion [39]. Esta clase de algoritmo utiliza la analogıa de las fuerzas que actuan sobrelas partıculas, de tal modo que el robot se movera como si se tratara de una partıcula, atraıdo o

Seccion 2 Estado del Arte 21

repelido segun las caracterısticas de su entorno. Un robot suele ser atraıdo hacia un objetivo yrepelido de los obstaculos.

Los sistemas experimentales, normalmente, estan compuestos por un vehıculo robot, una estacionde trabajo y una camara de vıdeo (Figura 7). Los robots estan disenados para trabajar en ambientespreparados para los patos.

Figura 7: Area de trabajo para el guiado de patos.

El vehıculo y los patos se mueven libremente en unarea de vision, elarea de trabajo era un cırculode siete metros de diametro. La posicion y la orientacion del robot, y la posicion y el tamano de lamanada vienen determinados por la tramitacion de la imagen de video. Debe tenerse en cuenta queel sistema de vision determina solo el centro de masa (y radio) de la manada y no las posicionesde cada uno de los pajaros. Se constato que el vector del robot al centro del grupo se aproximabaa la resultante de los vectores del robot a cada pajaro, informacion necesaria para realizar los ex-perimentos.

El controlador del robot utilizaba un ’algoritmo del control de la manada’,el cual guiaba hacia lasalida del cırculo a los patos. Este algoritmo tiene la vision los datos (posiciones del robot R, de lamanada F y del objetivo G) como entrada y vuelve una trayectoria deseadapara el vehıculo (R, F,G)−→ r.

Las observaciones de las velocidades y del rumbo se comparen conr, y la nueva velocidad de lasruedas vienen determinadas por la funcion:

(Rleft

Rright

)

=

(|r|+ D

2 (θ − 6 r)

|r| − D2 (θ − 6 r)

)

(25)

Dondeθ es el rumbo actual del robot,D es la distancia entre las ruedas y6 r es la direccion de lasruedas.

Dada la posicion de los patosD, la posicion deN patosD1→N , la posicion del robotR y el ultimopunto de la paredW , el vector de movimiento de grupo de patosd se determina por la funcionmostrada en la figura 8. El grupo cumple: (i) se atraen los unos a los otros,agregandose al grupo,

22 Proyecto de Tesis

(ii) se repelen entre ellos, previniendo colisiones entre ellos y respetandosus distancias, (iii) se ale-jan de los muros previniendo colisiones, (iv) se producen repulsion del robot. Todas estas fuerzasson escaladas de acuerdo con el cuadrado inverso de la distancia, y cada pato se mueve de acuerdoa la resultante de las fuerzas que actuan sobre ellos.

Figura 8: Modelo del grupo (esquematico, no dibujado en escala). Parametros de gananciaK1→4; cam-bio de parametroL; posicion del grupo de los patosD, posicion de un subgrupo de patosDn; posiciondel robotR; punto mas cercano al muroW ; terminos del algoritmo (1→ 4) y la resultanted (dondea esel vector unitario de~a).

Hay dos estudios paralelos sobre como un robot guıa un grupo de patos. En el primer experimento,el vector de movimientor viene dado por la figura 9. El robot es (1) atraıdo por cada pato con unamagnitud proporcional a su distancia mutua. Esta fuerza hace que el robot avance hacia el grupo.Una segunda fuerza (2) repele el robot de cada uno de los patos conuna magnitud proporcional alinverso del cuadrado de sus distancias, esto evita las colisiones. La resultante de estas dos fuerzascrea unaorbita circular de potencial cero alrededor del centro del grupo de animales. Otra fuerza(3) repele el robot de la posicion con una magnitud constante. Como consecuencia laorbita alrede-dor del grupo tendra un mınimo detras de la formacion respecto a la meta.

En el segundo experimento, la distancia|GF | (veanse las figuras 9 y 10) es la variable del sistemaque se intenta controlar, es decir, reducir a cero. En un controlador clasico, una salida de controlse aplicara para corregir la variable, con una magnitud proporcional al tamano del error. Si se in-troduce este termino en el controlador del grupo, se puede disenar un sistema similar, medianteel cual se repele el estımulo experimentado por los patos, que es proporcional a la distancia dela meta. Esto deberıa reducir al problema de oscilacion sobre el objetivo causado por una senalexcesiva de control.

El vector de movimiento del robotr viene dado por la funcion que se muestra en la figura 10. Elrobot es (1) atraıdo hacia el grupo con una magnitud proporcial a la distancia hasta la meta; (2)repelido de la meta con una magnitud constante.

Seccion 2 Estado del Arte 23

Figura 9: Metodo 1 (esquematico, no dibujado a escala). Parametros de gananciaK1→3; centro delgrupoF ; posicion del robotR; posicion de la metaG; terminos del algoritmo1 → 3 y la resultante~r(dondea es el vector unitario de~a).

Figura 10: Metodo 2 (esquematico, no dibujado a escala. Parametros de gananciaK1→2; centro delgrupoF ; posicion del robotR; posicion de la metaG; terminos del algoritmo1 → 3 y la resultante~r(dondea es el vector unitario de~a).

24 Proyecto de Tesis

GUIA DE PERSONAS

Desde el comienzo de los robots biologicamente inspirados, los investigadores se han sentido fasci-nados por la posibilidad de la interaccion entre un robot y su entorno, y de la posibilidad de robotsque interactuan entre sı. Estos grupos de robots sociales estan orientadas a maximizar beneficios(por ejemplo, las tareas de ejecucion) mediante la accion colectiva. La investigacion descrita hastael momento utiliza los principios de auto-organizacion y el comportamiento social inspirado enlas sociedades de insectos himenopteros. Estas sociedades son anonimas, grupos homogeneos enlos que ununico elemento no importa. Este tipo de ’comportamiento social’ ha demostrado serun atractivo modelo para la robotica, sobre todo porque permite a grupos de robots relativamentesencillos realizar tareas difıciles.

El desarrollo de un robot como ’individuo social’ requiere el uso de modelos y tecnicas diferentesde ’grupos sociales’ de robots colectivos. En particular, el aprendizaje y la imitacion social, losgestos y el lenguaje natural de comunicacion, la emocion y el reconocimiento de la interaccion detodos los socios, son factores importantes. Por otra parte, la mayorıa de la investigacion en esteambito se ha centrado en la aplicacion de la conducta social. De este modo, los robots sociales songeneralmente concebidos como asistentes, companeros, o animales de companıa.

Los estudios realizados en robots que guıan a humanos se han desarrollado en museos [9], en esta-ciones de trenes [27], en oficinas [18] o en hospitales. Las funcionesque llevan a cabo los robotsen dichos trabajos son su propia localizacion, la navegacion y la evitacion de obstaculos (estaticosy dinamicos) en los entornos cerrados.

Los principales comportamientos que desempenan los robots son los siguientes:

1. El primer comportamiento del robot es evitar colisiones, para ello se aplicala relantizacionde la velocidad del robot. Si el obstaculo no figura en el mapa (y por lo tanto es probable quesea una persona), el robot utiliza su laser para detectar el obstaculo movil [14].

2. El siguiente comportamiento es encontrar una ruta que rodee a la persona para evitar coli-siones con ella, y al mismo tiempo se modificara el mapa.

3. Si el bloqueo persistiera y no existiera un desvıo local, la modificacion del mapa conducirıa,unos segundos mas tarde, a un desvıacion global. El robot se desplaza mas lejos y escoge elsegundo mejor camino global.

2.3.3. Guiado con multiples Robots

Figura 11: Perro ovejero que guıa a los gansos gracias a sus movimientos de lado a lado por detras dela manada.

Los estudios realizados sobre la conducta que debe tener el guıa para conducir animales a las posi-ciones deseadas, han sido el origen que nos ha servido de ejemplo paralograr guiar a un grupo depersonas [5, 8, 11, 19, 42].

Seccion 2 Estado del Arte 25

El modelado y la simulacion del comportamiento de rebanos ha sido estudiado por muchos investi-gadores en diversos campos, como la robotica, el control, o la biologıa, [43, 61]. En general, es necesarioconsiderar una teorıa compleja para tratar los comportamientos imprevisibles y complejos. En el modelopresentado en [54] se muestra con detalle el comportamiento de un rebano gracias a la interaccion entresimples comportamientos particulares.

Por otra parte, en el pastoreo se investiga el comportamiento que el pastordebe tener para conducir a lasmanadas. El pastoreo es guiar o controlar la conducta de un grupo con laayuda de uno o mas agentesexternos que se llamanshepherds[36]. El pastoreo esutil para una amplia variedad de campos.

En [43] se intenta controlar el grupo con mecanismos mas simples, adecuados para la implementacion derobots autonomos. La propuesta del mecanismo de pastoreo se basa en las fuerzasde reaccion entre losindividuos. El comportamiento de un pastor se deriva del simple mecanismo basado en la informacionlocal observable en el entorno.

En [54] describen un modelo que representa de manera realista un comportamiento complejo de un grupoy el comportamiento del pastoreo con un numero de normas:

Comportamiento de los individuos del grupo que se pastorea:

1. Cohesion: Se intenta estar lo mas cercano posible a los vecinos.

2. Separacion: Se evita la colision con los vecinos o los obstaculos.

3. Escapar:Escapar de los pastores.

4. Accion aleatoria:Comportarse independientemente de las reglas 1 y 2 con cierta aleatoriedad.

Donde la norma 3 ha de prevalecer mas alto y la norma 4 se anade para representar de manera realistael comportamiento de una manada. El comportamiento de la manada se genera sobre la base de estasnormas. Un miembro de la manada reacciona con los otros miembros del conjuntosolo dentro de undeterminado entorno a su alrededor, y reacciona a los pastores dentro de una determinadaarea entorno ası misma. La primera se llamaarea de zona personaly la segunda es lazona de seguridad.

Maniobras de pastoreo:

1. Guiado:Guiar a un conjunto hacia una direccion objetivo dada por un supervisor.

2. Union del conjunto:Hacer retroceder a uno de los individuos del rebano al grupo.

3. Mantenimiento:Mantener una cierta distancia entre los miembros de la manada a fin de evitar laperturbacion del grupo.

4. Cooperacion: Evitar la superposicion de los pastores.

Un pastor reacciona segun la posicion de los demas pastores en una determinadaarea alrededor de sı mis-mo, la cual es introducida para evitar la superposicion entre ellos, y buscan al miembro del grupo en unazona determinada en torno a sı mismo. La primera zona se llamazona de manipulacion y la segundazona de observacion.

A continuacion se presentan los algoritmos que definen las conductas:llegar a la meta, navegacion,atravesar pasillos estrechos y pastoreo. Los dos primeros comportamientos influyen en la direccion del

26 Proyecto de Tesis

grupo,llegar a un objetivo pre-definido (llegar a la meta), intentar cubrir (navegacion) todos losambitosdel medio o buscar un objetivo cuya ubicacion se desconoce. El paso de pasillos estrechos es un com-portamiento que influye en el modo de posicionamiento de los miembros de la manadaen relacion acada uno cuando los demas se mueven a traves del paso. En el pastoreo, un agente externo controla elmovimiento de la manada.

Comportamiento 1: Llegar a la meta

El comportamientollegar a la metasuele ser simulado mediante la adicion de una fuerza atracti-va hacia el objetivo final. Sin embargo, este metodo puede ser facilmente atrapado en un mınimolocal. Un metodo comunmente usado en juegos de ordenador que requieren el movimiento de ungrupo de objetos se basa en el algoritmoA∗. En este enfoque, el medio es discretizado en pequenascuadrıculas y la busqueda del camino del grupo se basa en la expansion hacia el vecino de los no-dos ya visitados mas prometedor. A pesar que el algoritmo de busquedaA∗ encuentra los caminosmas cortos, tiene inconvenientes. De particular importancia, existe la necesidad de encontrar uncamino completamente nuevo para cada nueva meta, lo cual reduce la eficiencia e incrementa eltiempo de calculo para entornos complejos.

En [5], se utiliza unprobabilistic roadmap planner(PRM) para encontrar un camino para el grupo.Una de las ventajas de PRM es que los caminos obtenidos tienden a tener grandes espacios libresde obstaculos. Una vez se encuentra el camino, los agentes deben seguir la ruta. El camino esta di-vidido en un conjunto de sub-caminos (identificados como sub-metas), basados en los sensoresindividuales de los agentes. Cada miembro guarda la posicion de los sub-objetivos; tan pronto co-mo un sub-objetivo entra en el campo de vision de uno de los sensores, el siguiente sub-objetivose convierte en el sentido de direccion para el objetivo global.

El comportamiento de llegar a la meta se describe en el algortimo 3.

Algorithm 3 Llegar a la meta1: if la meta esta en el campo de vision then2: Fijar meta como objetivo3: else4: if Objetivo esta en el campo de vision then5: Fijar la siguiente sub-meta como objetivo6: end if7: end if8: Dirigirse hacia el objetivo

Comportamiento 2: Navegacion

Existen diferentes variantes para la navegacion. Por ejemplo, los agentes pueden utilizar buenosdatos a priori sobre el medio y pueden estar buscando objetos cuya ubicacion se desconoce, o elmedio puede ser desconocido. El objetivo de la conducta de navegacion es para recoger informa-cion sobre el medio. Se considera como comportamiento la busqueda de un objetivo y avanzarhaciaeste, una vez que se encuentre. Se realiza unpath planningy se pondera cada nodo del grafo.Las ponderaciones representan la relevancia de las aristas para la tarea actual, a fin de lograr el ob-jetivo. Este comportamiento es similar a las colonias de hormigas (ant colony optimization, ACO),

Seccion 2 Estado del Arte 27

donde las hormigas depositan feromonas para indicar las rutas.

En el comportamiento debusqueda del objetivoa pesar que los agentes tienen informacion delmundo que les rodea (por lo menos a nivel local) no saben la ubicacion de la meta. Si un individuollega a un lugar donde el objetivo este dentro del alcance de sus sensores, su localizacion se comu-nica a los otros miembros y luego se trata de alcanzar el objetivo.

Cuando un agente se desplaza a lo largo de un camino, recuerda la ruta; cuando se llega a unameta, aumenta el peso de los bordes de la ruta que tomo. Si el individuo llega a una hoja de ruta sinningun tipo de conexiones salientes del nodo,es decir, con una sola arista, o un nodo que ya figuraen el actual camino (es decir, un ciclo), el peso de las aristas que ha seguido sera disminuido. Elalgoritmo de este planteamiento se resume en el algoritmo 4 .

Este algoritmo puede ser implementado mediante dos reglas diferentes. La primera norma estable-cida es para todos los nodos del grafo de ruta, excepto el objetivo, seanaden los nodos visitadosa la hoja de ruta del agente. La segunda regla solo sera ejecutada si el agente llega a la meta, y latarea deeste es aumentar el peso de las aristas que ha utilizado. A continuacion, el siguiente obje-tivo se establece como el segundo punto final de la arista y esta informacion se anade al camino, afin de que las aristas prometedoras puedan ser actualizadas si los agentes llegan a la meta.

Algorithm 4 Buscar la meta1: for Cada robot guıado2: if Se ha encontrado la metathen3: Incrementar el peso de las aristas hasta la meta.4: else5: if Llega a un nodo final y no es la metathen6: Parar mientras se busca un nuevo nodo.7: Disminuir el peso de las aristas que conducen hasta dicho nodo.8: else9: Escoger un nodo vecino del actual

10: Colocar el nodo en la lista11: end if12: end if13: end for

Comportamiento 3: Atravesar pasillos estrechos

En algunas ocasiones el comportamiento del grupo dependera del entorno que le rodee. Por ejem-plo, se deben utilizar diferentes formaciones si se trabaja en zonas relativamente abiertas o cuandose pasan por regiones estrechas.

Un metodo para lograr pasar por zonas donde su recorrido es estrecho es utilizar el comportamien-to de llegar hasta la meta y seleccionar dos nodos como objetivos, primero un nodo delante de laentrada del pasillo y, acontinuacion, un nodo fuera de la salida del paso. Un inconveniente de esteenfoque es que los miembros del grupo pueden colisionar al querer desplazarse por el pasillo almismo tiempo.

28 Proyecto de Tesis

La estrategia de seguir al lıder puede evitar los problemas de congestion. En esta estrategia, primerose reune a los miembros del grupo delante del pasaje estrecho y, acontinuacion, se selecciona elagente mas cercano al paso de entrada del pasillo como lıder. Despues, los restantes miembros secolocan en una fila para seguir al lıder. Su posicion en la cola depende de su distancia a la entradadel pasillo.

Algorithm 5 Pasillos estrechos1: while No todos los miembros esten en elarea de entradado2: Meta individual← area de entrada3: end while4: while Hay miembros fuera del pasillodo5: Seleccionar el robot mas cercano como:Sub-lıder6: if Lıder no es Sub-lıderthen7: Sub-lıder← Lıder8: Nuevo objetivo del Lıder sera el nuevo paso del camino9: else

10: Meta del Lıder sera la anterior11: end if12: Incrementar el umbral de elusion de vecindad13: end while

Comportamiento 4: Pastoreo

Se ha observado dos clases de comportamientos, en el primer caso, los agentes se mueven haciaun objetivo conjunto; es decir, como una manada. En el segundo caso, los miembros del grupoestudian y planifican sus propuestas por separado. En cierto sentido, el grupo tenıa el control delmovimiento.

Para mover el rebano hacia el objetivo, el agente dirige la manada desde atras. Si algun subgrupose separa de la manada, es trabajo del agente mover el subgrupo hacia lamanada. Dicho enfoquese presenta en el algoritmo 6.

Algorithm 6 Pastoreo1: Enconrar un camino en el grafo delroadmap2: while La meta no se haya alcanzadodo3: Seleccionar el siguiente nodo del camino como sub-meta4: while La sub-meta no haya sido alcanzadado5: Colcarse en la parte trasera del grupo6: if El grupo se separathen7: Mover el subgrupo que este mas lejos del sub-goal hacia el resto del grupo8: end if9: end while

10: end while

Seccion 3 Trabajo en Curso 29

3. Trabajo en Curso

Como se ha mencionado en diferentes ocasiones en el presente trabajo, lainvestigacion se ha centrado enel guiado de personas mediante el trabajo cooperativo de dos o mas robots. La parte que se ha estudiadocon mas profundidad es la creacion de un modelo que represente elarea de trabajo de los robots, i.e,la representacion de las posiciones de las personas, sus movimiento, y las posiciones de losobstaculosmoviles (robots, coches...) y los obstaculos estaticos (edificios, bancos, papeleras . . . ). Dicho modelo sellamaDynamic model of Local Enviorment(DLE).

Parte de la motivacion del trabajo se ha desarrollado en el entorno del proyecto URUS [57]. El objeti-vo de este proyecto es planificar diferentes tareas de manera cooperativa con robots moviles, como porejemplo, robots acompanantes, robots en evacuacion o robots guıas. El modelo propuesto se utiliza paraguiar un grupo de personas en las zonas urbanas con dos robots, elprimero de ellos es ell ıder, sus tareasson calcular la trayectoria estimada y dirigir el grupo; esta situado en la parte frontal de la formacion.El segundo robot llamadoshepherd robot, es el responsable que el grupo de personas sigan la ruta yguiar a las personas que han salido de ella. El modelo DLE utiliza tecnicas de filtrado como el filtro deKalman [73] y el filtro de partıculas (PF) [3, 7, 37, 53], estas tecnicas se han aplicado al problema deestimacion de la posicion de los robots moviles y las personas y ası permitir que los robots actuen contiempo suficiente para lograr sus objetivos.

El modelo DLE consta de una componente dinamica y una componente estatica. La componente dinami-ca es el estudio de los movimientos que deben realizar los robots para lograrsu mision. La componenteestatica se utiliza para especificar la posicion y velocidad de las personas, los robots y los obstaculos, ylas orientaciones de los objetos moviles (personas y robots), dicha componente consta de la malla regularcon 8-vecinos, la tension se calcula en cada nodo de la malla segun la posicion de las personas, de losrobots y de los obstaculos, dicha tension sera la representacion de la distribucion de las personas, losobjetos y los obstaculos en la malla. En los nodos hay tambien representados los vectores directores queindican la tendencia del movimiento de las personas.

3.1. Hipotesis preliminares

Parte del objetivo de nuestro trabajo es estimar las posiciones de la gente para colocar al robot en lasmejores condiciones para orientar al grupo de personas. Por lo tanto, antes de comenzar a trabajar conel problema, debemos considerar algunas hipotesis preliminares, como por ejemplo, que la velocidaddel robot cambia gradualmente, no hay aceleraciones y desaceleraciones abruptas. Siv es la direcciondel robot guıa, las direcciones de circulacion de las personas estaran en un cono con una obertura deαgrados, dondeα ∈ [−15, 15] grados.

La zona urbana de trabajo que se ha considerado es el campus Nord dela Universidad Politecnica deCatalunya (UPC) de alrededor10000m2, vease la figura 12.

Vamos a considerar como obstaculos estaticos los edificios, bancos o macetas, y obstaculos dinamicoslos robots moviles. En un estado inicial no se tendran en cuenta los automoviles o camiones para simpli-ficar el problema.

Para crear el modelo DLE se trabaja con una malla regular con 8 vecinos, vease la figura 13. Esta mallase puede considerar como un grafo planoG = (V, E). La distancia entre los nodos es de25 cm, y eltamano total del grafo dependera del numero de personas en el grupo, se considera que el espacio vital delas personas es un cırculo de1 metro de diametro. En un grupo de personas que se desplazan de manera

30 Proyecto de Tesis

Figura 12: Campus-Nord UPC,Tech Robot Lab

calmada se dividiran en filas de 3 a 5 personas .

Figura 13: Malla regular 8-vecinos.

3.2. Componente Est atica del modelo DLE

3.2.1. Calculo del grafo

Posicion del grafo Se ha desarrollado un algoritmo para la eleccion, de entre las diferentes posicionesde la gradilla, la posicion que cubra el mayor espacio libre evitando los obstaculos, este algoritmo sebasa en [28].

El algoritmo recibe una entrada que corresponde a la posicion de la malla y devuelve un entero cor-respondiente al grado de penetracion del grafo en los obstaculos. El calculo se realiza para diferentesgradillas desplazadas en el mismo eje, y se elegira la posicion que tenga el grado de penetracion masbajo.

Tension de los nodos Para permitir que el robot tome decisiones es necesario almacenar tensiones enlos nodos del grafo, estas tensiones se calcularan segun las posiciones de las personas, robots y obstacu-los.

Tension en los obstaculos: Para evitar la colision entre los robot y los diferentes obstaculos, sealmacenara tension infinita en los nodos del grafo que esten en el interior del obstaculo y los que

Seccion 3 Trabajo en Curso 31

Algorithm 7 Calculo del grado de penetracionRequire: Posicion del grafo en el mundo

1: Detectar todos los puntos en la escena. Ver figura 14(a)2: j ← 13: while Existen puntos de colisiondo4: Identificar todos los puntos adyacentes a uno o mas puntos que no colisionan con el obstaculo,

marcarlos como puntos bordes:nj1 . . . nj

mj. Ver figura 14(c),(d)

5: for i=1 tomj do6: nj

i ← 2j

7: end for8: Marcar el conjuntonj

1 . . . njmj

como puntos de no colision9: j ← j + 1

10: end while11: gradopenetracion←

∑∀j,∀i n

ji

12: return gradopenetracion

Figura 14: Proceso del algoritmo 7 (los cuadros grises son la representacion de los obstaculos). (a)Superposicion original entre el obstaculo y el grafo; (b) Nodos bajo colision; (c) Nodos bajo colisionconectados con un nodo de libre colision; (d) Nodos considerados en superposicion despues de unospasos del algoritmo

32 Proyecto de Tesis

se encuentren a una distancia de0,5 metros del obstaculo tendran una tension de:Tobstacle =∞.

Tension de los Robots: Se trabajara con robots que miden un metro de diametro, por lo tanto, parauna mayor seguridad, se considerara un diametro de1,5 metros. La tension de los nodos que estenen el primer perımetro sera infinita, los nodosxi que esten en el segundo perımetro tendran unatension:

Trobotj =krobotj

‖xi − p‖(26)

Dondexi es el nodo sobre el que se calcula la tension, p es el nodo que representa el centro delrobots,krobotj es una constante que determina al robotj.

Se debe mencionar que segun la velocidad de un robot, la zona de tension en la parte delanteraaumenta. La distancia que un vehıculo cubre desde el momento de frenada hasta pararse dependede varios factores (estado de las carretera, neumaticos, humedad . . . ).

Tension de las personas: Basandose en [78] las personas tenemos un espacio vital dependiendo delas situaciones en las que nos encontremos, para poder trabajar se ha considerado que las personastienen un cırculo de0,5 metros de diametro. Los nodosxi que estan en dicho perımetro tendran lasiguiente tension:

Tpeoplej (xi) =kpeoplej

‖xi − p‖(27)

Dondexi es el nodo sobre el que se calcula la tension,p es el nodo que representa el centro de lapersona,kpeoplej es una constante que determina a la personaj-esima.

Sin embargo, se debe mencionar que el espacio fısico de una persona es de aproximadamente60x25 cm, [17], por esta razon, los nodos que ocupen la zona fısica de una persona tendran tensioninfinita.

La tension total en un nodoxi sera:

Ttotal(xi) = Tobst(xi) + Trob(xi) + Tpeople(xi) (28)

En las aristas del grafo se almacenaran los vectores directores que indican la tendencia de movimientode las personas, el modulo del vector vendra determinado por la velocidad de las personas, estos vec-tores se extenderan a lo largo del grafo, reduciendo a la mitad su modulo para cada arista que se extienda.

3.3. Componente Din amica del modelo DLE

Una parte importante del trabajo es la variacion del grafo a lo largo de tiempo, una vez se conoce elmetodo del calculo de tensiones y el emplazamiento de la malla, se pretende explicar la representacionde los datos en el tiempo.

Para cada instante de tiempot se estudia la imagen de la situacion y se calcula el modelo de repre-sentacion. El objetivo del modelo DLE es conocer la variacion de movimiento del grupo de personaspara permitir al robot actuar para conseguir el objetivo deseado, estoes, para que las personas sigan la

Seccion 3 Trabajo en Curso 33

trayectoria del robot lıder.

En el momento inicial, las personas estan esperando lasordenes del robot. Cuando el grupo empieza amoverse, cada∆t se realiza una nueva fotografıa para actualizar la situacion de trabajo. En cada pasose calcula la posicion optima del grafo y las tensiones. Entre los intervalos de tiempo, la posicion de laspersonas sera estimada con un Filtro de Partıculas Gaussiano. Para observar los cambios de grafo a lolargo del tiempo ver figura 15 donde se muestra como varıan las posiciones del grafo y de las personas alo largo del tiempo.

Figura 15: Variacion de posiciones a lo largo del tiempo.

3.4. Resultados

Se han realizado simulaciones con dos robots guiando a un grupo de cincopersonas en un mapa 2D sinobstaculos, donde el grupo debe llegar a su meta. La figura 16 se muestran diferentes instantes del tiempode simulacion. En cada sub-figura, se muestra la posicion de las personas, a la izquierda, y el calculo delas tensiones en los nodos del grafo, parte derecha.

3.5. Conclusiones

El trabajo realizado se ha centrado en la descripcion del modelo DLE para lograr guiar a las personasen zonas urbanas con un conjunto de robots moviles trabajando de manera cooperativa. El trabajo con elmodelo DLE permite al robot actuar sin la necesidad de estar observando constantemente los movimien-tos de las personas con la ayuda del filtro de partıculas.

El siguiente paso de la investigacion sera aplicar las tecnicas de guiado, explicadas en las seccionesanteriores, con la ayuda del modelo DLE.

34 Proyecto de Tesis

(a)

(b)

(c)

(d)

Figura 16: (a) Situacion inicial, las personas esperan lasordenes de los robots. (b)Situacion del grupounos instantes posteriores, el robot ovejero debe colocarse a la izquierda del grupo ya que hay un indi-viduo que intenta alejarse de la formacion. (c) Unos segundos mas tarde, el robot ovejero debe moversede nuevo a la izquierda del grupo porque hay dos individuos que se alejan del grupo. (d) Las personassiguen al robot guıa a lo lardo del camino deseado.

Seccion 4 Plan de trabajo 35

4. Plan de trabajo

En la figura 17 se presenta el diagrama de Gantt para la propuesta del plan de trabajo de la tesis.

Los elementos de la figura se explican a continuacion:

Estado del Arte Se estudio la literatura escrita hasta el momento sobre las tecnicas de guiado parapersonas y animales, la robotica cooperativa y diferentes ramas de su estudio, y las teorias necesariaspara crear el modelo de representacion.

Analisis de representacion para el guiado Antes de empezar a trabajar con las tecnicas de guiado, esnecesario crear una representacion optima delarea de trabajo de los robots, y la creacion de un modelodinamico que permita al robot ser capaz de tomar decisiones y actuar con suficiente antelacion. Para ello,se han estudiado los diferentes trabajos de representaciones para poder crear el que mejor se acomode alproblema.

Diseno de un modelo de representacion Una vez se han estudiado los diferentes modelos ya exis-tentes, se ha disenado un nuevo modelo para que los robots sean capaces de guiar a grupos de personas.

Proyecto de tesis El presente trabajo se ha realizado a lo largo de los meses de julio, agosto y septiem-bre , enel se ha explicado el estado del arte de los robots guıas a personas desde sus inicios.

Simulacion y verificacion del modelo Una vez se ha desarrollado el modelo de representacion, seimplementara en entornos simulados para poder estudiar su comportamiento en diferentesambientes ysituaciones y valorar si los resultados son los esperados.

DEA La presentacion del DEA se espera que sea en los meses de octubre-noviembre, en ellase ex-plicaran los avances en la tesis, y se presentaran los trabajos realizados en los cursos de doctorado.

Diseno de estrategias de guiado de personas mediante robotsUna vez se haya comprobado lavalidez del modelo, se estudiaran las diferentes estrategias de guiado, ya descritas, en las diferentessituaciones de trabajo, para conocer sus restricciones.

Simulacion y verificacion de las estrategias Se realizaran experimentaciones en entornos de simu-lacion de las estrategias de guiado junto con el modelo dinamico para comprobar su funcionalidad ypoder corregir posibles errores de su diseno y optimizar las tecnicas.

Experimentos en entornos urbanos reales dentro del proyecto URUS Una vez disenados, imple-mentados y simulados el modelo y las estrategias de guiado, se procedera a experimentar en entornosurbanos reales, ası como en zonas del barrio de gracia o el campus nord de la UPC. Dichos proyectos serealizaran en entorno del proyecto URUS.

Escritura de la tesis La escritura y correccion de la tesis se realizara seis meses antes de la lecturapara poder tener tiempo suficiente para realizar las correcciones pertinentes, y poder publicar diferentesartıculos.

Lectura de la tesis Se espera que la lectura de la tesis se realize a finales del ano 2010, principios del2011.

36 Proyecto de Tesis

Figura 17: Plan de trabajo.

REFERENCIAS 37

Referencias

[1] AICHI. Robot project: We live in the robot age at expo 2005. Available from:http://www.expo2005.or.jp/en/robot/robot project 00.html, 2005.

[2] R. C. Arkin. Behavior-based robotics.Cambridge, MA, USA: The MIT Press, 1998.

[3] MS Arulampalam, S. Maskell, N. Gordon, T. Clapp, D. Sci, T. Organ, and S.A. Adelaide. A tutorialon particle filters for online nonlinear/non-gaussian bayesian tracking.Signal Processing, IEEETransactions [see also Acoustics, Speech, and Signal Processing, IEEE Transactions], 50(2):174–188, 2002.

[4] T. Balch and R. C. Arkin. Communication in reactive multi-agent robotic systems. AutonomousRobots, 1(1):27–52, 1994.

[5] O. B. Bayazit, J. M. Lien, and N. M. Amato. Swarming behavior using probabilistic roadmaptechniques.Swarm Robotics: SAB 2004 International Workshop, Santa Monica, CA,USA, July 17,2004: Revised Selected Papers, 2005.

[6] A. Billard, B. Robins, J.Nadel, and K. Dautenhahn. Building robots, mini-humanoid robot for therehabilitation of children with autism.RESNA Assistive Technology Journal, 2006.

[7] M. D. Bolic and P. M. S. Hong. Resampling algorithms and architectures for distributed particlefilters. Signal Processing, IEEE Transactions [see also Acoustics, Speech,and Signal Processing,IEEE Transactions], 53(7):2442–2450, 2005.

[8] C. Breazeal, A. Brooks, J. Gray, G. Hoffman, C. Kidd, H. Lee, J. Lieberman, A. Lockerd, andD. Mulanda. Humanoid robots as cooperative partners for people.Int.Journal of Humanoid Robots,1(2), 2004.

[9] W. Burgard, A. B. Cremers, D. Fox, D. Haehnel, G. Lakemeyer, D. Schulz, W. Steiner, and S. Thrun.The interactive museum tour-guide robot.Proc. of AAAI, pages 11–18, 1998.

[10] J. Casper and R. R. Murphy. Human-robot interactions during therobot-assisted urban search andrescue response at the world trade center.IEEE transactions on systems, man, and cybernetics. PartB, Cybernetics: a publication of the IEEE Systems, Man, and CyberneticsSociety, 33(3):367–385,2003.

[11] L. Chaimowicz and V. Kumar. Aerial shepherds: Coordination amonguavs and swarms of robots.Proceedings of the 7th International Symposium on Distributed Autonomous Robotic Systems,2004.

[12] K. Dautenhahn, M. Walters, S. Woods, K.L. Koay, C.L. Nehaniv,A. Sisbot, R. Alami, andT. Simeon. How may i serve you?: a robot companion approaching a seated person in a helpingcontext.ACM SIGCHI/SIGART Human-Robot Interaction, pages 172–179, 2006.

[13] K. Dautenhahn, S. Woods, C. Kaouri, M. L. Walters, K. L. Koay,and I. Werry. What is a robotcompanion friend, assistant or butler?Proc. IEEE IROS, 25:1488–1493, 2005.

[14] N. Davies, K. Cheverst, G. Blair, and K. Mitchell. Developing a context sensitive tourist guide:someissues and experiments.CHI 2000 Conference Proceedings. ACM, pages 17–24, 2000.

[15] JP Desai, JP Ostrowski, and V. Kumar. Modeling and control of formations of nonholonomicmobile robots.Robotics and Automation, IEEE Transactions, 17(6):905–908, 2001.

38 REFERENCIAS

[16] G. Dudek, M. R. M. Jenkin, E. Milios, and D. Wilkes. A taxonomy for multi-agent robotics.Autonomous Robots, 5(29):19, 1996.

[17] E.Paquet and Herna L. Viktor. Adjustment of virtual mannequins through anthropometric mea-surements, cluster analysis and content-based retrieval of 3-d body scans. IEEE, transactions oninstrumentation and measurement, 2007.

[18] D. Feil-Seifer and M. J. Mataric. Defining socially assistive robotics. International Conference onRehabilitation Robotics, 2005.

[19] E. Ferranti and N. Trigoni. Robot-assisted discovery of evacuation routes in emergency scenarios.In Robotics and Automation. ICRA. IEEE International Conference, pages 2824–2830, 2008.

[20] T. Fong, C. Thorpe, and C. Baur. Evaluation of human-robot interaction awareness in searchand rescue.Collaboration, Dialogue, and Human-Robot Interaction. Springer Tracts in AdvancedRobotics. Berlin: Springer, 2003.

[21] D. Fox. Markov localization: A probabilistic framework for mobile robot localization and naviga-tion. Institute of Computer Science III.Bonn, Germany, University of Bonn, 1998.

[22] D. Fox, W. Burgard, and S. Thrun. Active markov localization formobile robots.Robotics andAutonomous Systems, 25(3-4):195–207, 1998.

[23] D. Fox, W. Burgard, and S. Thrun. Markov localization for mobile robots in dynamic environments.Journal of Artificial Intelligence Research, 11(3):391–427, 1999.

[24] E. Gambao, C. Balaguer, A. Barrientos, R. Saltaren, and E.A. Puente. Robot assembly systemfor the construction process automation. InRobotics and Automation, 1997. Proceedings, IEEEInternational Conference, volume 1, 1997.

[25] R. Gockley, R. Simmons, and J. Forlizzi. Modeling affect in socially interactive robots.15th In-ternational Symposium on Robot and Human Interactive Communication (RO-MAN), Hertforshire,Hatfield, United Kingdom, 2006.

[26] Tsutsui H., Miura J., and Shirai Y. Optical flow-based person tracking by multiple cameras.IEEEInt. Conf. On Multi-sensor Fusion and Integration in Intelligent Systems, Baden-Baden, Germany.,2001.

[27] K. Hayashi, D. Sakamoto, T. Kanda, M. Shiomi, S. Koizumi, H. Ishiguro, T. Ogasawara, andN. Hagita. Humanoid robots as a passive-social medium: a field experiment at a train station.ACM SIGCHI/SIGART Human-Robot Interaction, pages 137–144, 2007.

[28] B. Heidelberger, M. Teschner, R. Keiser, M. Muller, and M. Gross. Consistent penetration depth es-timation for deformable collision response.Vision Modeling and Visualization 2004: Proceedings,November 16-18, 2004, Standford, USA, 2004.

[29] I. Hyderabad and P. Pittsburgh. Reactive navigation of multiple movingagents by collaborativeresolution of conflicts.Journal of Robotic Systems, 22(5):249–269, 2005.

[30] L. Iocchi, D.Nardi, M. Piaggio, and A. Sgorbissa. Distributed coordination in heterogeneous multi-robot systems.Autonomous Robots, 15(2):155–168, 2003.

[31] L. Iocchi, D.Nardi, and M. Salerno. Reactivity and deliberation: A survey on multi-robot systems.Lecture Notes in Computer Science, Springer-Verlag Heidelberg, 2103, 2001.

REFERENCIAS 39

[32] W. C. Gunhee Kim, K.-R. Kim, M. Kim, S. Han, and R. H. Shinn. The autonomous tour-guiderobot jinny. IEEE/Robotics Society of Japan International Conference on Intelligent Robots andSystems, 2004.

[33] H. Kitano, S. Tadokoro, I.Noda, H. Matsubara, T. Takahsahi, A. Shinjou, and S. Shimada. Robocuprescue: Search and rescue in large-scale disasters as a domain for autonomous agents research.IEEE International Conference on Systems, Man, and Cybernetics, 1999.

[34] B. Lavis, Y. Yokokohji, and T. Furukawa. Estimation and control for cooperative autonomoussearching in crowded urban emergencies.Robotics and Automation, ICRA. IEEE InternationalConference, pages 2831–2836, 2008.

[35] Y. Li and X. Chen. Dynamic control of multi-robot formation.Mechatronics, ICM.IEEE Interna-tional Conference, pages 352–357, 2005.

[36] J. M. Lien, O. B. Bayazit, R. T. Sowell, S. Rodriguez, and N. M. Amato. Shepherding behaviors.Robotics and Automation. Proceedings.ICRA’04.2004 IEEE International Conference, 4, 2004.

[37] J. S. Liu and R. Chen. Sequential monte carlo methods for dynamic systems. Journal of theAmerican Statistical Association, 93(443):1032–1044, 1998.

[38] P. S. Lum, C. G. Burgar, P. C. Shor, M. Majmundar, and M. Van der Loos. Robot-assisted movementtraining compared with conventional therapy techniques for the rehabilitationof upper-limb motorfunction after stroke.Archives of Physical Medicine and Rehabilitation, 83, 2002.

[39] C.F. Marques and P.U. Lima. Multi-sensor navigation for soccer robots. Robot Soccer World CupV. Berlin, Germany: Springer-Verlag, 2002.

[40] E. Martinez, A. Ohya, and S. Yuta. Recognition of people’s positioning by cooperative mobilerobots for human groups steering. InComputational Intelligence in Robotics and Automation.IEEE International Symposium, volume 2, 2003.

[41] E.A. Martinez Garcia, O. Akihisa, and S. Yuta. Crowding and guidinggroups of humans by teamsof mobile robots.Advanced Robotics and its Social Impacts, 2005. IEEE Workshop, pages 91–96,2005.

[42] A. Masciotra, J.M. Lien, S. Rodriguez, and N. Amato. Composable group behaviors.TechnicalReport TR05-003,Parasol Lab, Dept. of Computer Science, Texas A&M University.

[43] T. Miki and T.Nakamura. An effective simple shepherding algorithm suitable for implementationto a multi-mmobile robot system.Proceedings of the First International Conference on InnovativeComputing, Information and Control-Volume 3, pages 161–165, 2006.

[44] J. Montemayor, H. Alborizi, A. Druin, J. Hendler, D. Pollack, J. Porteous, L. Sherman, A. Afework,J. Best, J. Hammer, A. Kruskal, and A. Lal. From pets to storykit: Creating new technology withand intergenerational design team.Workshop on Interactive Robots and Entertainment (WIRE),Pittsburgh, PA, USA, 2000.

[45] M. Montemerlo, J. Pineau, N. Roy, S. Thrun, and V. Verma. Experiences with a mobile roboticguide for the elderly.AAAI National Conference on Artificial Intelligence, 2002.

[46] R. R. Murphy, J. Casper, M. Jicire, and J. Hyams. Assessment of the nist standard test bed for urbansearch and rescue.NIST Workshop on Performance Metrics for Intelligent Systems, Gaithersburg,MD, USA, 2000.

40 REFERENCIAS

[47] R.R. Murphy. Human-robot interaction in rescue robotics.Systems, Man and Cybernetics, Part C,IEEE Transactions, 34(2):138–153, 2004.

[48] Y.Nemoto, S. Egawa, A. Koseki, S. Hattori, T. Ishii, and M. Fujie. Powerassisted walking supportsystem for elderly.IEEE International Conference on Engineering in Medicine and Biology, 1998.

[49] C. W. Nielsen and M. A. Goodrich. Comparing the usefulness of video and map information innavigation tasks.First ACM International Conference on Human-Robot Interaction, SaltLake City,UT, USA: ACM Press, 2006.

[50] I. R. Nourbakhsh, J. Bobenage, S. Grange, R. Lutz, R. Meyer, and A. Soto. An affective mobilerobot educator with a full-time job.Artificial Intelligence, 114(1-2):95–124, 1999.

[51] E. Pagello, A. D’Angelo, F. Montesello, F. Garelli, and C. Ferrari.Cooperative behaviors in multi-robot systems through implicit communication.Robotics and Autonomous Systems, 29(1):65–77,1999.

[52] J. Penders, L. Alboul, C. Roast, and E. Cervera. Robot swarming in the guardians project.ECCS07,Dresden, Germany, 2007.

[53] I. M. Rekleitis. A particle filter tutorial for mobile robot localization.Center for Intelligent Ma-chines, McGill University, Montreal, Quebec, Canada, 2004.

[54] C. W. Reynolds. Flocks, herds and schools: A distributed behavioral model. ACM SIGGRAPHComputer Graphics, 21(4):25–34, 1987.

[55] B. Robins, K. Dautenhahn, R. te Boerkhorst, and A. Billard. Robots as assistive technology doesappearance matter.IEEE International Workshop on Robot and Human Communication (ROMAN),2004.

[56] E. Rogers, R. R. Murphy, and B. Ericson. Agent-based expert assistance for visual problem solving.First International Conference on Autonomous Agents, Marina Del , CA, USA: ACM Press, 1997.

[57] A. Sanfeliu and J. Andrade-Cetto. Ubiquitous networking robotics inurban settings. InProceedingsof the IEEE/RSJ IROS Workshop on Network Robot Systems, 2006.

[58] J. Scholtz, M. Theofanos, and B. Antonishek. Development of a test bed for evaluating human-robotperformance for explosive ordnance disposal.First ACM International Conference on Human-Robot Interaction, Salt Lake City, UT, USA:ACM Press, pages 10–17, 2006.

[59] J. Scholtz, J. Young, L. Drury, and H. A. Yanco. Evaluation of human-robot interaction awareness insearch and rescue.Proceedings of the IEEE International Conference on Robotics and Automation,New Orleans, LA, USA, pages 2327–2332, 2004.

[60] J. Schulte, C. Rosenberg, and S. Thrun. Spontaneous, short-term interaction with mobile robots.Robotics and Automation.Proceedings. IEEE International Conference, 1, 1999.

[61] A. Schultz, J. J. Grefenstette, and W. Adams. Roboshepherd: Learning a complex behavior.Robotics and Manufacturing: Recent Trends in Research and Applications, 6, 1996.

[62] C. P. Tang, R. Bhatt, and V. Krovi. Decentralized kinematic control of payload transport by asystem of mobile manipulators.Proc., Preceedings of the 2004 IEEE International Conference onRobotics and Automation, 2004.

[63] R. Thrapp, C. Westbrook, and D. Subramanian. Robust localization algorithms for an autonomouscampus tour guide.Proc. of International Conference on Robotics and Automation, 2:2065– 2071,2001.

REFERENCIAS 41

[64] S. Thrun, M. Beetz, M. Bennewitz, W. Burgard, AB Cremers, F. Dellaert, D. Fox, D. Hahnel,C. Rosenberg, and N. Roy. Probabilistic algorithms and the interactive museum tour-guide robotminerva.The International Journal of Robotics Research, 19(11):972, 2000.

[65] C. Trevai, Y. Fukazawa, J. Ota, H. Yuasa, T. Arai, and H. Asama. Cooperative explo-ration of mobile robots using reaction-diffusion equation on a graph.Robotics and Automa-tion.Proceedings.ICRA’03.IEEE International Conference, 2, 2003.

[66] European Land-Robot Trial. Elrob.Available from: http://www.elrob.org/, 2006.

[67] I. Ulrich, F. Mondada, and J. D. Nicoud. Autonomous vacuum cleaner. Robotics and autonomoussystems, 19(3-4):233–245, 1997.

[68] R. Vaughan.Experiments in Animal-interactive Robotics.PhD thesis, University of Oxford, 1998.

[69] R. Vaughan, N. Sumpter, A. Frost, and S. Cameron. Robot sheepdog project achieves automaticock control.From Animals to Animats, 5, 1998.

[70] R. Vaughan, N. Sumpter, J. Henderson, A. Frost, and S. Cameron. Robot control of animal flocks.In Intelligent Control (ISIC). Held jointly with IEEE International Symposium on ComputationalIntelligence in Robotics and Automation (CIRA), Intelligent Systems and Semiotics (ISAS), Pro-ceedings of the IEEE International Symposium, pages 277–282, 1998.

[71] R. Vaughan, N. Sumpter, J. Henderson, A. Frost, and S. Cameron. Experiments in automatic flockcontrol. Robotics and Autonomous Systems, 31(1):109–117, 2000.

[72] K. Vincenti. Theory and evaluation of human robot interactions.Cognitive Work Analysis: TowardsSafe, Productive and Healthy Computer-Based Work. Lawrence Erlbaum Associates, 1999.

[73] G. Welch and G. Bishop. An introduction to the kalman filter.ACM SIGGRAPH 2001 CourseNotes, 2001.

[74] P. Wells and D. Deguire. Lunar surface reference missions: A description of human and roboticsurface activities.Houston, TX, USA: NASA Lyndon B. Johnson Space Center, 2003.

[75] P. Wells and D. Deguire. Talon: A universal unmanned ground vehicle platform, enabling themission to be the focus.Proceedings of SPIE Unmanned Ground Vehicle Technology VII, 2005.

[76] W. Whitaker, M. Montemerlo, and S. Thrun. Conditional particle filtersfor simultaneous mobilerobot localization and peopletracking.IEEE International Conference on Robotics and Automation,page 695, 2002.

[77] D. D. Woods. Designs are hypotheses about how artifacts shapecognition and collaboration.Er-gonomics, 41, 1998.

[78] S. Worchel, J. Cooper, G. R. Goethals, and J. M. Olson.Psicologia Social. Thomson LearningIbero, 2002.

[79] A. Yamashita, T. Arai, J. Ota, and H. Asama. Motion planning of multiple mobile robots forcooperative manipulation and transportation.IEEE Transactions on Robotics and Automation,19(2):223, 2003.

42 REFERENCIAS

Agradecimientos

Toda la investigacion se ha realizado gracias al soporte de la becaFormacion de Profesorado Universi-tario (FPU) del Ministerio de Educacion y Ciencia y conducida en el Instituto de Robotica e InformaticaIndustrial (IRI) de la Universidad Politecnica de Catalunya y el Consejo Superior de InvestigacionesCientificas.