Propuesta de un trabajo especı́fico para Proyecto de Fin de Carrera (tipo B) en el dpto. de IA 18 de febrero de 2008 1. Datos de identificación del Proyecto de Fin de Carrera Tipo: Oferta especı́fica (tipo B). Departamento: Inteligencia Artificial. Curso: abierto Titulo: Desarrollo de un módulo de simulación de figuras humanoides para Gazebo. Director: José Ramón Álvarez Sánchez. Requisitos: Programación en C/C++ en un sistema GNU/Linux. 2. 2.1. Descripción del problema a resolver Origen y motivación Enmarcadas dentro del proyecto de investigación AVISA (TIN2004-07661), se están evaluando diversas alternativas para entornos de prueba de sistemas de vigilancia. Una de estas posibilidades considerada es el simulador de robots móviles en 3 dimensiones Gazebo, que utiliza el protocolo de comunicación 1 compatible con el proyecto Player/Stage [1]. El simulador Gazebo incorpora la posibilidad de simular cámaras móviles que generan la imagen que se verı́a desde un punto cualquiera de un entorno tridimensional. Para poder utilizar esta capacidad de Gazebo en las pruebas de sistemas de vigilancia, es necesario simular el movimiento de personas dentro de un escenario tridimensional. El proyecto Player/Stage fue concebido originalmente para simular robots de tipo genérico y Gazebo es una incorporación reciente que permite simulaciones más realistas fı́sicamente (colisiones de cuerpos rı́gidos, etc.) y más atractivas visualmente (3D). 2.2. Detalles El trabajo a realizar para este PFC consiste en desarrollar y documentar un módulo de Player/Stage para utilizar en Gazebo, que simule de la forma más parecida posible a una persona esquemática (cabeza, tronco, brazos y piernas). El módulo debe simular también la recogida, el transporte y el soltado de un objeto (bolsa o cartera prismática sencilla). El módulo debe permitir la simulación del movimiento de la persona por el escenario y también su cambio de postura entre varias posibles: “de pie parado”, “de pie en movimiento”, “sentado” y “agachado (para recoger o soltar un objeto del suelo)”, ası́ como el cambio de representación en cualquiera de estas posturas con dos variantes “con” o “sin” objeto transportado (bolsa/cartera). El módulo debe permitir el control de la persona simulada para realizar las acciones correspondientes: “avanzar de frente”, “parar”, “girar su orientación”, “sentarse”, “agacharse y recoger objeto”, “agacharse y soltar objeto”. 3. 3.1. Plan de trabajo Anteproyecto Una vez estudiada la documentación del proyecto Player/Stage [1], el alumno deberá realizar un anteproyecto, que será revisado y aprobado por el director, donde se especificará claramente los detalles del trabajo a realizar y concretar todos los aspectos que quedan abiertos en este documento, como por ejemplo, los tipos de funciones que se van a realizar en detalle, documentación, forma de implementación, etc. 2 3.2. Desarrollo A continuación, el alumno deberá desarrollar el proyecto siguiendo las fases habituales del ciclo de desarrollo de software. Deberá también aportar una arquitectura de la solución y un diseño técnico, donde se especifique la estructuración en módulos, la descripción de las interfaces, estructuras de datos fundamentales y los desarrollos algorı́tmicos no triviales. A continuación se implementará un prototipo de la solución aportada. Ası́ mismo se debe presentar un plan de pruebas y factores que permitan definir y valorar la calidad del producto aportado. Todo proyecto software debe producir una documentación, habitualmente se considera: Requisitos del usuario y del sistema, manual del usuario, manual técnico, manual del instalador, etc. Aunque al estar la implementación en este proyecto enmarcada como módulo dentro de otro proyecto, es recomendable que la documentación se centre en los detalles de implementación y uso del módulo. Una vez finalizado el trabajo, se aportará el resultado del mismo (implementación y documentación) para su incorporación en el proyecto Player/Stage de tal forma que permita su utilización por cualquiera, dada la condición y licencias de software libre que tiene el proyecto Player/Stage. 3.3. Escritura de la memoria El alumno debe redactar la memoria del PFC para su presentación siguiendo las indicaciones y requisitos del Reglamento de PFC de la ETSI Informática de la UNED. 3.4. Presentación y defensa pública Una vez concluidos los pasos anteriores y revisado por el director, el alumno debe preparar la presentación y defensa pública del trabajo, apoyándose en los medios audiovisuales que crea necesarios, siguiendo las recomendaciones del director. Referencias [1] The Player/Stage Project http://playerstage.sourceforge.net/. 3