726 resultados para trabajos fin de grado
Resumo:
Introducción El tema de este Trabajo Fin de Grado, TFG a partir de ahora, no es otro que el motivar al usuario final a hacer ejercicio mediante la realización de ejercicios breves e intensos. Para ello, surge la idea de desarrollar una aplicación para la plataforma Android, de nombre AndroFIT , cuyo objetivo es cumplir con la meta descrita anteriormente; que el usuario haga ejercicio de manera diaria. Hacer ejercicio es un hábito saludable que ayuda en gran medida al bienestar físico, mental y emocional de las personas. Sin embargo, no es un hábito practicado por una cantidad inmensa de gente y más pequeño es aún el número de personas que son constantes. Si empezar a hacer ejercicio es complicado, mantener el ritmo, la dedicación y la motivación a medida que pasa el tiempo es más difícil todavía. Los motivos del abandono son de distinta índole: falta de tiempo, falta de ganas, falta de apoyo o incluso el alcanzar la figura y/o el peso que se buscaban. AndroFIT no pretende ser una aplicación más en el mercado de las aplicaciones Health & Fitness, el cual ya dispone de una larga lista de aplicaciones asentadas y reconocidas a nivel mundial como por ejemplo Endomondo o Runtastic, entre otras. Esta aplicación se rige por principios más cercanos a un juego gracias a los principios de gamificación que se han implantado en la aplicación, como los logros y la diversión, entre otros. Este TFG es el primer prototipo funcional de un proyecto de carácter personal cuyo diseño, análisis, desarrollo y mantenimiento han sido llevados a cabo por mí, Abraham Hernández Valencia. Es una aplicación que dista mucho de su versión definitiva y cuya funcionalidad es limitada. En futuras versiones se añadirán funcionalidades y características, que serán descritas en esta memoria, como por ejemplo compartir los resultados en Facebook y Twitter, utilizar la biblioteca de música del usuario así como su perfil en Spotify para personalizar aún más la experiencia o la posibilidad de ejercitar una parte concreta del cuerpo a través de ejercicios específicamente diseñados para esa zona. Abstract The goal of this Degree Project is no other than to motivate users to exercise on a regular basis through short and intense routines. Therefore, an Android application named AndroFIT is developed, which purpose is it to fulfil the goal previously described; encourage daily exercising among users. To work out is a healthy habit which enormously helps physical, psychical and emotional wellbeing of people. However, it is not a trend with a large number of followers and that same number is even smaller if we focus on regular working out. Starting to work out is always challenging but keeping the rhythm, motivation and dedication high all along is even more difficult. Reasons of abandoning vary: lack of time, lack of motivation, lack of support or even not reaching the desired shape or weight. AndroFIT does not aim to be another application inside of the Health & Fitness market, which already has a long list of successful and worldknown applications such as Endomondo and Runtastic. AndroFIT´s principles such as achievements and fun, strictly taken from gamification techniques, make the application appeal more to a game rather than to a fitness application. This project is the first functional prototype of a personal project which design, analysis, development and maintenance have been taken care of by me, Abraham Hernández Valencia. This release is far away from the final one and its functionality is limited. Future versions will include enhanced functionality and extra features which will be described later in this document, like Facebook and Twitter sharing, using the user's music library as well as his Spotify profile to have an even deeper customised experience or being able to train a specific part of the body following a serie of specific designed workouts.
Resumo:
Resumen El documento que se desarrolla en los siguientes capítulos ha sido realizado como Proyecto de Fin de Grado para el Grado de Ingeniería del Software (Plan 2009) impartido por la Escuela Técnica Superior de Ingeniería de Sistemas Informáticos de la Universidad Politécnica de Madrid durante el curso académico 2014-2015 y bajo la tutela del Dr. Francisco Javier Gil Rubio, profesor del Departamento de Organización y Estructura de la Información (Actualmente DSI). La empresa Radmas Technologies pretende proporcionar con el producto Mejora Tu Ciudad —su solución para la gestión integral de Smart-Cities— un servicio REST interoperable y una capa de abstracción para el lenguaje Javascript. El presente proyecto se centra en la definición y creación de un API RESTFUL sobre la que los distintos clientes puedan interactuar con la plataforma independientemente de las herramientas de desarrollo utilizadas. Tras la definición del servicio se llevará a cabo la creación de un SDK1 válido en distintas plataformas basadas en Javascript, que facilite el acceso a aquellos clientes que utilicen dichas plataformas como punto de partida para iniciar otros desarrollos derivados. Con este pretexto nace un proyecto que pretende también cubrir todas las fases del ciclo de vida de un producto de software, ciertamente particular en este caso, ya que se trata de un ecosistema que comprende dos soluciones enfocadas hacia la interoperabilidad, una genérica y otra orientada a una única plataforma de destino, y que a su vez servirán como base para llevar a cabo futuros desarrollos. Por todo lo expuesto, el proyecto cubrirá las siguientes etapas: Estudio de la problemática: se describe la situación en la que se encuentra la compañía y los motivos por los que se propone la creación de un API REST2 y más tarde la elaboración de un Kit de Desarrollo de Software (SDK) orientado exclusivamente a plataformas basadas en Javascript como solución a las necesidades de los potenciales clientes. Estudio teórico de las distintas tecnologías y protocolos disponibles en los cuales se sustentarán los desarrollos que se lleven a cabo. Estimación de tiempos, planificación y gestión de tareas mediante metodologías ágiles y desarrollo del producto. Creación de una batería de pruebas y generación de un entorno para ejecutarlas que permita cubrir los distintos casos de uso requeridos por el usuario. También se hará uso, siempre que sea posible, de la metodología de trabajo conocida como TDD3 o Desarrollo Dirigido por las Pruebas. Generación de documentación orientada a desarrolladores exponiendo las bondades y las técnicas de uso del ecosistema definido. Creación de un conjunto de ejemplos que sirvan como punto de partida para llevar a cabo futuros desarrollos. Las fases anteriormente descritas se apoyan en los conocimientos recibidos en las distintas asignaturas que ofrece la titulación. Por tanto, haré frecuentes referencias a aquellas que tratan aspectos como los procesos de Ingeniería de Software (a través de un análisis y diseño coherentes de la estructura de la aplicación) y a la gestión de proyectos (haciendo especial hincapié en lo aprendido sobre metodologías ágiles), así como algunas de carácter más técnico que sin duda influirán en la generación de un código correcto y probado. Por todo ello este Trabajo de Fin de Grado pretende ser un desarrollo multidisciplinar en el que se obtenga como resultado un producto profesional, que haga uso de tecnologías y servicios de rabiosa actualidad y ejemplifique la realidad de los desarrollos de software modernos.
Resumo:
RESUMEN En los últimos años, debido al incremento en la demanda por parte de las empresas de tecnologías que posibiliten la monitorización y el análisis de un gran volumen de datos en tiempo real, la tecnología CEP (Complex Event Processing) ha surgido como una potencia en alza y su uso se ha incrementado notablemente en ciertos sectores como, por ejemplo, la gestión y automatización de procesos de negocios, finanzas, monitorización de redes y aplicaciones, así como redes de sensores inteligentes como el caso de estudio en el que nos centraremos. CEP se basa en un lenguaje de procesamiento de eventos (Event Processing Language,EPL) cuya utilización puede resultar bastante compleja para usuarios inexpertos. Esta complejidad supone un hándicap y, por lo tanto, un problema a la hora de que su uso se extienda. Este Proyecto Fin de Grado (PFG) pretende dar una solución a este problema, acercando al usuario la tecnología CEP mediante técnicas de abstracción y modelado. Para ello, este PFG ha definido un lenguaje de modelado específico dominio, sencillo e intuitivo para el usuario inexperto, al que se ha dado soporte mediante el desarrollo de una herramienta de modelado gráfico (CEP Modeler) en la que se pueden modelar consultas CEP de forma gráfica, sencilla y de manera más accesible para el usuario. ABSTRACT Over recent years, more and more companies demand technology for monitoring and analyzing a vast volume of data in real time. In this regard, the CEP technology (Complex Event Processing) has emerged as a novel approach to that end, and its use has increased dramatically in certain domains, such as, management and automation of business processes, finance, monitoring of networks and applications, as well as smart sensor networks as the case study in which we will focus. CEP is based on in the Event Processing Language (EPL). This language can be rather difficult to use for new users. This complexity can be a handicap, and therefore, a problem at the time of extending its use. This project aims to provide a solution to this problem, trying to approach the CEP technology to users through abstraction and modelling techniques. To that end, this project has defined an intuitive and simple domain-specific modelling language for new users through a web tool (CEP Modeler) for graphically modeling CEP queries, in an easier and more accessible way.
Resumo:
Este trabajo de fin de grado propone realizar una prueba piloto de las tecnologías móviles para incrementar la sostenibilidad de los servicios de agua dentro del marco del programa de la ONG ONGAWA para la provisión de servicios básicos de Agua y Saneamiento en la región de Same, Tanzania. Dicha línea se ha denominado a nivel local con el nombre de “MAJI MOTO – Mobile and radio to increase water services sustainability”. Además de ONGAWA, en esta línea de trabajo también intervienen VOTO Mobile, Same District Council y Farm Radio International. La cobertura de agua en las zonas rurales de Tanzania es solo del 44%. A pesar de los esfuerzos realizados, los nuevos puntos de agua construidos no incrementan la disponibilidad de agua debido a la alta tasa de no funcionabilidad (38%). Pocos años después de la construcción, la mayoría de los sistemas construidos colapsan debido a la falta de mantenimiento técnico, una gestión financiera débil y otras dificultades provocados por los intereses e influencias políticas. La mala gestión y la deficiente capacidad de gobierno del agua son las principales razones por las que mantener el servicio de agua de manera permanente en zonas rurales sea actualmente insostenible y no permita el crecimiento de puntos de agua en estas zonas. Por otro lado, el 63% de las familias tanzanas tienen un teléfono móvil, y el 58% tienen al menos una tarjeta SIM activada. La mayoría tienen varias tarjetas de las diferentes compañías para adecuar la llamada que vayan a realizar al precio que les convenga. Incluso las personas más desfavorecidas (que cuentan con menos de 2$ al día y que viven zonas rurales y pobres), un 50% tienen acceso a un terminal móvil y su propia tarjeta SIM. El dinero que dedica cada familia a las comunicaciones es prácticamente la misma o superior al que va dedicado a los gastos médicos y muy superior a los gastos escolares o destinados a la adquisición de prendas de vestir. Dado este contexto, en este trabajo se han abordado dos tipos distintos de medidas basadas en tecnologías de teléfonos móviles para apoyar en una gestión más eficiente y transparente de los servicios de agua. Por un lado, se ha pilotado la plataforma que ofrece VOTO Mobile para establecer dos canales de comunicación, hasta ahora inexistentes, a través del uso del teléfono móvil: uno entre el Departamento de Agua del Distrito y los usuarios de los servicios de agua; y otro entre el mismo departamento del Distrito de Same y los COWSOs, que son las unidades locales que se encargan de la gestión y mantenimiento de los puntos de agua de sus municipios. Por otro lado, la implantación de un sistema de pago por móvil de las tarifas de los servicios de agua. En cuanto a la implantación de los dos canales de comunicación, se ha formado a varias personas del Distrito de Same en el uso de la ”VOTO Mobile Platform”, que ofrece la posibilidad de gestionar gran cantidad de contactos y mensajes, tanto entrantes como salientes. Por otro lado, se realizaron pruebas para analizar su viabilidad y su aceptación por parte de los usuarios. Con respecto al pago por móvil, se estudió su viabilidad en las zonas rurales y se analizaron las debilidades y fortalezas del sistema.
Resumo:
En un mundo globalizado los ingenieros de redes tienen la difícil tarea de mejorar el ecosistema para evitar que colapse, como consecuencia del incremento progresivo de la información intercambiada. La finalidad de este trabajo fin de grado es proponer una enmienda al estándar IPv6 que añade soporte a paquetes multidestino. Primero se estudiarán los mecanismos disponibles actualmente para enviar un paquete a múltiples destinatarios en IPv6, así como sus limitaciones. A continuación, se diseñará una extensión de IPv6 en forma de cabecera, que permita indicar más de un destinatario en la misma, y se detallará el procesamiento a realizar en los routers intermedios, así como los mecanismos de retrocompatibilidad con Unicast. Además, se estudiará la integración de esta cabecera con el resto de extensiones de cabecera existentes en IPv6 y se determinará el punto óptimo de multiplexión que permita maximizar el envío de datos. Por último se plantearán múltiples escenarios de usos prácticos, así como una simulación de servidor web, y en la conclusión se analizarán los pros y contras de esta solución propuesta respecto a otras ya existentes.
Resumo:
En este Trabajo Fin de Grado se aborda la concepción, diseño, desarrollo y testeo de un robot esférico. En el se cubre el diseño mecánico y su fabricación, el modelado dinámico y su control, y el diseño hardware y software.
Resumo:
El presente trabajo denominado “Modelo simplificado de neumático de automóvil en elementos finitos para análisis transitorio de las estructuras de los vehículos” ha sido elaborado en la cátedra de Transportes de la Escuela Técnica Superior de Ingenieros Industriales de la Universidad Politécnica de Madrid. Su principal objetivo es el modelado y estudio de un neumático mediante el programa de elementos finitos Ansys, con el fin de obtener datos fiables acerca de su comportamiento bajo distintas situaciones. Para ello, en primer lugar se han estudiado los distintos componentes que conforman los neumáticos, poniendo especial énfasis en los materiales, que son de vital importancia para el desarrollo del trabajo. Posteriormente, se ha analizado el fundamento matemático que subyace en los programas comerciales de elementos finitos, adquiriendo una mayor seguridad en el uso de éstos, así como un mejor conocimiento de las limitaciones que presentan. Básicamente, el método matemático de los elementos finitos (MEF) consiste en la discretización de problemas continuos para resolver problemas complejos, algo que por los métodos tradicionales sería inabordable con ese grado de precisión debido a la cantidad de variables manejadas. Es ampliamente utilizado hoy en día, y cada vez más, para resolver problemas de distintas disciplinas de la ingeniería como la Mecánica del Sólido, la Mecánica de Fluidos o el Electromagnetismo. Por otro lado, como los neumáticos son un sistema complejo, el estudio de su comportamiento ha supuesto y supone un desafío importante tanto para los propios fabricantes, como para las marcas de vehículos y, en el ámbito de este proyecto, para el equipo Upm Racing. En este Trabajo Fin de Grado se han investigado los distintos modelos de neumático que existen, los cuales según su fundamento matemático pueden ser clasificados en: - Modelos analíticos - Modelos empíricos - Modelos de elementos finitos Con la intención de desarrollar un modelo novedoso de elementos finitos, se ha puesto especial hincapié en conocer las distintas posibilidades para el modelizado de neumáticos, revisando una gran cantidad de publicaciones llevadas a cabo en los ámbitos académico y empresarial. Después de toda esta fase introductoria y de recogida de información se ha procedido a la realización del modelo. Éste tiene tres fases claramente diferenciadas que son: - Pre-procesado - Solución - Post-procesado La fase de pre-procesado comprende toda la caracterización del modelo real al modelo matemático. Para ello es necesario definir los materiales, la estructura de los refuerzos, la presión del aire, la llanta o las propiedades del contacto neumático-suelo. Además se lleva a cabo el mallado del modelo, que es la discretización de dicho modelo para después ser resuelto por los algoritmos del programa. Este mallado es sumamente importante puesto que en problemas altamente no-lineales como éste, una malla no adecuada puede dar lugar a conflictos en la resolución de los sistemas de ecuaciones, originando errores en la resolución. Otro aspecto que se ha de incluir en esta fase es la definición de las condiciones de contorno, que son aquellas condiciones impuestas al sistema que definen el estado inicial del éste. Un ejemplo en resolución de estructuras podría ser la imposición de giros y desplazamientos nulos en el extremo de una viga encontrarse empotrado en este punto. La siguiente fase es la de solución del modelo. En ella se aplican las cargas que se desean al sistema. Las principales que se han llevado a cabo han sido: desplazamientos del eje del neumático, rodadura del neumático con aceleración constante y rodadura del neumático con velocidad constante. La última fase es la de post-procesado. En esta etapa se analizan los resultados proporcionados por la resolución con el fin de obtener los datos de comportamiento del neumático que se deseen. Se han estudiado principalmente tres variables que se consideran de suma importancia: - Rigidez radial estática - Características de la huella de contacto - Coeficiente de resistencia a la rodadura Seguidamente, se presentan las conclusiones generales de estos resultados, reflexionando sobre los valores obtenidos, así como sobre los problemas surgidos durante la realización del trabajo. Además, se realiza una valoración de los impactos que puede suponer a nivel económico, social y medioambiental. Por último, se ha elaborado la planificación y presupuesto del proyecto para plasmar los tiempos de trabajo y sus costos. Además, se han propuesto líneas futuras con las que avanzar y/o completar este trabajo.
Resumo:
El presente Trabajo de Fin de Grado es fruto de la colaboración en una investigación sobre la hipertermia magnética entre el Centro de Electrónica Industrial de la ETSII UPM (CEI) y el Centro de Tecnología Biomédica UPM (CTB). La hipertermia magnética es un tratamiento contra el cáncer que se encuentra en fase de desarrollo en distintos lugares alrededor del mundo. Se trata de una terapia que consiste en elevar la temperatura de las células cancerígenas hasta valores de entre 42 y 46ºC con el fin de destruirlas. Esto es posible pues por lo general, las células cancerígenas presentan una mayor sensibilidad ante efectos de hipertermia que el resto de células, por lo que una vez alcanzada la temperatura deseada se destruirían las células anómalas y las sanas quedarían intactas. Si se induce al paciente fiebre hasta los 39 ºC, tan sólo sería necesario alcanzar incrementos de temperatura de 3 o 4ºC para que el tratamiento tuviera éxito. El calentamiento se produce gracias al movimiento de nanopartículas magnéticas (NPMs) situadas en dichas células mediante técnicas médicas ya estudiadas. A su vez este movimiento se da gracias a la aplicación de un campo magnético sobre las NPMs. El equipo electrónico del que se dispone en esta investigación y que genera el campo magnético, está constituido esencialmente por un inversor de potencia en puente completo con carga inductiva, una placa de control y una fuente de tensión continua. A lo largo de este trabajo se abordarán y estudiarán varias cuestiones en línea con la continuidad de la investigación en este tratamiento y en aspectos de la misma como el estudio del equipo disponible y su mejora. En primer lugar se lleva a cabo un estudio de caracterización térmica del equipo del que se dispone, con el objetivo de conocer los parámetros de los que depende su funcionamiento y que permitirán verificar y dar consistencia a los resultados de los posteriores ensayos que con él se harán. Así mismo se realiza una fase de ensayos con el objetivo de optimizar el equipo, determinando cuales son los parámetros más relevantes y los valores de los mismos, que llevan al equipo a su máximo rendimiento en términos de incrementos de temperatura de las NPMs y por tanto hacia el éxito de la terapia. Tras la caracterización y optimización del equipo de hipertermia, se diseña una nueva fase de ensayos que tiene como fin la comparación de los resultados experimentales con el modelo físico teórico de calentamiento de las NPMs. Además se busca la comprobación de ciertas hipótesis extraídas de los mismos resultados experimentales, como la influencia de la forma de onda de la señal excitadora en el incremento de temperatura. Finalmente y con el fin de mejorar el rendimiento del equipo, se elabora un conjunto de posibles geometrías para la carga inductiva que incluya un núcleo de hierro, pues hasta el momento la bobina de la que se disponía tenía núcleo de aire. Se simulan las nuevas geometrías de la bobina con núcleo de hierro y se estudia cómo influyen los cambios en el campo magnético. Los avances en la investigación llevados a cabo en este Trabajo de Fin de Grado han permitido dar un paso más en el rendimiento, la fiabilidad de resultados y la mejora del equipo de hipertermia magnética, abriendo las puertas a ensayos in vitro y posteriormente in vivo para una terapia que podría estar más cerca de dar tratamiento eficaz a una de las enfermedades más implacables de nuestro tiempo.
Resumo:
Este proyecto fin de grado presenta dos herramientas, Papify y Papify-Viewer, para medir y visualizar, respectivamente, las prestaciones a bajo nivel de especificaciones RVC-CAL basándose en eventos hardware. RVC-CAL es un lenguaje de flujo de datos estandarizado por MPEG y utilizado para definir herramientas relacionadas con la codificación de vídeo. La estructura de los programas descritos en RVC-CAL se basa en unidades funcionales llamadas actores, que a su vez se subdividen en funciones o procedimientos llamados acciones. ORCC (Open RVC-CAL Compiler) es un compilador de código abierto que utiliza como entrada descripciones RVC-CAL y genera a partir de ellas código fuente en un lenguaje dado, como por ejemplo C. Internamente, el compilador ORCC se divide en tres etapas distinguibles: front-end, middle-end y back-end. La implementación de Papify consiste en modificar la etapa del back-end del compilador, encargada de la generación de código, de modo tal que los actores, al ser traducidos a lenguaje C, queden instrumentados con PAPI (Performance Application Programing Interface), una herramienta utilizada como interfaz a los registros contadores de rendimiento (PMC) de los procesadores. Además, también se modifica el front-end para permitir identificar cierto tipo de anotaciones en las descripciones RVC-CAL, utilizadas para que el diseñador pueda indicar qué actores o acciones en particular se desean analizar. Los actores instrumentados, además de conservar su funcionalidad original, generan una serie de ficheros que contienen datos sobre los distintos eventos hardware que suceden a lo largo de su ejecución. Los eventos incluidos en estos ficheros son configurables dentro de las anotaciones previamente mencionadas. La segunda herramienta, Papify-Viewer, utiliza los datos generados por Papify y los procesa, obteniendo una representación visual de la información a dos niveles: por un lado, representa cronológicamente la ejecución de la aplicación, distinguiendo cada uno de los actores a lo largo de la misma. Por otro lado, genera estadísticas sobre la cantidad de eventos disparados por acción, actor o núcleo de ejecución y las representa mediante gráficos de barra. Ambas herramientas pueden ser utilizadas en conjunto para verificar el funcionamiento del programa, balancear la carga de los actores o la distribución por núcleos de los mismos, mejorar el rendimiento y diagnosticar problemas. ABSTRACT. This diploma project presents two tools, Papify and Papify-Viewer, used to measure and visualize the low level performance of RVC-CAL specifications based on hardware events. RVC-CAL is a dataflow language standardized by MPEG which is used to define video codec tools. The structure of the applications described in RVC-CAL is based on functional units called actors, which are in turn divided into smaller procedures called actions. ORCC (Open RVC-CAL Compiler) is an open-source compiler capable of transforming RVC-CAL descriptions into source code in a given language, such as C. Internally, the compiler is divided into three distinguishable stages: front-end, middle-end and back-end. Papify’s implementation consists of modifying the compiler’s back-end stage, which is responsible for generating the final source code, so that translated actors in C code are now instrumented with PAPI (Performance Application Programming Interface), a tool that provides an interface to the microprocessor’s performance monitoring counters (PMC). In addition, the front-end is also modified in such a way that allows identification of a certain type of annotations in the RVC-CAL descriptions, allowing the designer to set the actors or actions to be included in the measurement. Besides preserving their initial behavior, the instrumented actors will also generate a set of files containing data about the different events triggered throughout the program’s execution. The events included in these files can be configured inside the previously mentioned annotations. The second tool, Papify-Viewer, makes use of the files generated by Papify to process them and provide a visual representation of the information in two different ways: on one hand, a chronological representation of the application’s execution where each actor has its own timeline. On the other hand, statistical information is generated about the amount of triggered events per action, actor or core. Both tools can be used together to assert the normal functioning of the program, balance the load between actors or cores, improve performance and identify problems.
Resumo:
La teoría de reconocimiento y clasificación de patrones y el aprendizaje automático son actualmente áreas de conocimiento en constante desarrollo y con aplicaciones prácticas en múltiples ámbitos de la industria. El propósito de este Proyecto de Fin de Grado es el estudio de las mismas así como la implementación de un sistema software que dé solución a un problema de clasificación de ruido impulsivo, concretamente mediante el desarrollo de un sistema de seguridad basado en la clasificación de eventos sonoros en tiempo real. La solución será integral, comprendiendo todas las fases del proceso, desde la captación de sonido hasta el etiquetado de los eventos registrados, pasando por el procesado digital de señal y la extracción de características. Para su desarrollo se han diferenciado dos partes fundamentales; una primera que comprende la interfaz de usuario y el procesado de la señal de audio donde se desarrollan las labores de monitorización y detección de ruido impulsivo y otra segunda centrada únicamente en la clasificación de los eventos sonoros detectados, definiendo una arquitectura de doble clasificador donde se determina si los eventos detectados son falsas alarmas o amenazas, etiquetándolos como de un tipo concreto en este segundo caso. Los resultados han sido satisfactorios, mostrando una fiabilidad global en el proceso de entorno al 90% a pesar de algunas limitaciones a la hora de construir la base de datos de archivos de audio, lo que prueba que un dispositivo de seguridad basado en el análisis de ruido ambiente podría incluirse en un sistema integral de alarma doméstico aumentando la protección del hogar. ABSTRACT. Pattern classification and machine learning are currently expertise areas under continuous development and also with extensive applications in many business sectors. The aim of this Final Degree Project is to study them as well as the implementation of software to carry on impulsive noise classification tasks, particularly through the development of a security system based on sound events classification. The solution will go over all process stages, from capturing sound to the labelling of the events recorded, without forgetting digital signal processing and feature extraction, everything in real time. In the development of the Project a distinction has been made between two main parts. The first one comprises the user’s interface and the audio signal processing module, where monitoring and impulsive noise detection tasks take place. The second one is focussed in sound events classification tasks, defining a double classifier architecture where it is determined whether detected events are false alarms or threats, labelling them from a concrete category in the latter case. The obtained results have been satisfactory, with an overall reliability of 90% despite some limitations when building the audio files database. This proves that a safety device based on the analysis of environmental noise could be included in a full alarm system increasing home protection standards.
Resumo:
El objetivo de este presente Trabajo Fin de Grado (TFG) consiste en la obtención de documentación gráfica de la Iglesia de San José mediante la tecnología láser escáner 3D. La Iglesia de San José está situada en la Calle Alcalá, en Madrid. Esta Iglesia fue construida en el siglo XVIII y tiene gran interés arquitectónico tanto por su situación en el centro de la ciudad como por las características de la misma. Actualmente se están planteando acciones de rehabilitación que requieren contar con planos de la Iglesia. En este TFG se propone la tecnología láser escáner como una herramienta para obtenerlos,realizando ensayos preliminares tanto de la metodología de captura como de la documentación final que puede proporcionar.
Resumo:
Hoy en día, existen numerosos sistemas (financieros, fabricación industrial, infraestructura de servicios básicos, etc.) que son dependientes del software. Según la definición de Ingeniería del Software realizada por I. Sommerville, “la Ingeniería del Software es una disciplina de la ingeniería que comprende todos los aspectos de la producción de software desde las etapas iniciales de la especificación del sistema, hasta el mantenimiento de éste después de que se utiliza.” “La ingeniería del software no sólo comprende los procesos técnicos del desarrollo de software, sino también actividades tales como la gestión de proyectos de software y el desarrollo de herramientas, métodos y teorías de apoyo a la producción de software.” Los modelos de proceso de desarrollo software determinan una serie de pautas para poder desarrollar con éxito un proyecto de desarrollo software. Desde que surgieran estos modelos de proceso, se investigado en nuevas maneras de poder gestionar un proyecto y producir software de calidad. En primer lugar surgieron las metodologías pesadas o tradicionales, pero con el avance del tiempo y la tecnología, surgieron unas nuevas llamadas metodologías ágiles. En el marco de las metodologías ágiles cabe destacar una determinada práctica, la integración continua. Esta práctica surgió de la mano de Martin Fowler, con el objetivo de facilitar el trabajo en grupo y automatizar las tareas de integración. La integración continua se basa en la construcción automática de proyectos con una frecuencia alta, promoviendo la detección de errores en un momento temprano para poder dar prioridad a corregir dichos errores. Sin embargo, una de las claves del éxito en el desarrollo de cualquier proyecto software consiste en utilizar un entorno de trabajo que facilite, sistematice y ayude a aplicar un proceso de desarrollo de una forma eficiente. Este Proyecto Fin de Grado (PFG) tiene por objetivo el análisis de distintas herramientas para configurar un entorno de trabajo que permita desarrollar proyectos aplicando metodologías ágiles e integración continua de una forma fácil y eficiente. Una vez analizadas dichas herramientas, se ha propuesto y configurado un entorno de trabajo para su puesta en marcha y uso. Una característica a destacar de este PFG es que las herramientas analizadas comparten una cualidad común y de alto valor, son herramientas open-source. El entorno de trabajo propuesto en este PFG presenta una arquitectura cliente-servidor, dado que la mayoría de proyectos software se desarrollan en equipo, de tal forma que el servidor proporciona a los distintos clientes/desarrolladores acceso al conjunto de herramientas que constituyen el entorno de trabajo. La parte servidora del entorno propuesto proporciona soporte a la integración continua mediante herramientas de control de versiones, de gestión de historias de usuario, de análisis de métricas de software, y de automatización de la construcción de software. La configuración del cliente únicamente requiere de un entorno de desarrollo integrado (IDE) que soporte el lenguaje de programación Java y conexión con el servidor. ABSTRACT Nowadays, numerous systems (financial, industrial production, basic services infrastructure, etc.) depend on software. According to the Software Engineering definition made by I.Sommerville, “Software engineering is an engineering discipline that is concerned with all aspects of software production from the early stages of system specification through to maintaining the system after it has gone into use.” “Software engineering is not just concerned with the technical processes of software development. It also includes activities such as software project management and the development of tools, methods, and theories to support software production.” Software development process models determine a set of guidelines to successfully develop a software development project. Since these process models emerged, new ways of managing a project and producing software with quality have been investigated. First, the so-called heavy or traditional methodologies appeared, but with the time and the technological improvements, new methodologies emerged: the so-called agile methodologies. Agile methodologies promote, among other practices, continuous integration. This practice was coined by Martin Fowler and aims to make teamwork easier as well as automate integration tasks. Nevertheless, one of the keys to success in software projects is to use a framework that facilitates, systematize, and help to deploy a development process in an efficient way. This Final Degree Project (FDP) aims to analyze different tools to configure a framework that enables to develop projects by applying agile methodologies and continuous integration in an easy and efficient way. Once tools are analyzed, a framework has been proposed and configured. One of the main features of this FDP is that the tools under analysis share a common and high-valued characteristic: they are open-source. The proposed framework presents a client-server architecture, as most of the projects are developed by a team. In this way, the server provides access the clients/developers to the tools that comprise the framework. The server provides continuous integration through a set of tools for control management, user stories management, software quality management, and software construction automatization. The client configuration only requires a Java integrated development environment and network connection to the server.
Resumo:
El objetivo principal de este Trabajo Fin de Grado (TFG) es la medición con un equipo láser escáner 3D y posterior modelado tridimensional de un puente situado en el municipio El Puente del Arzobispo, pueblo de la provincia de Toledo (Castilla la Mancha). Para que el modelo tuviera un aspecto realista se realizaron fotografías panorámicas para dotarlo de color y textura. En este proyecto se describen las fases de trabajo para conseguir el modelado final, los programas que se han utilizado y se analiza el potencial de la tecnología láser escáner en una de sus múltiples aplicaciones. La tecnología escáner láser es cada vez más utilizada en todo tipo de campos, y especialmente útil en arqueología ya que permite hacer un análisis exhaustivo sin tocar el elemento a estudiar y obtener, con una procesión alta en un tiempo relativamente corto, un modelo tridimensional de un elemento. El flujo de trabajo de un proyecto de modelado tridimensional con tecnología láser escáner sigue siempre los mismos pasos, que son los siguientes: Planificación previa, en la que se debe tener en cuenta la finalidad del escaneado y la intensidad de captura Captura de datos en campo Preparación de los datos Registro y georreferenciación Procesamiento de las nubes de puntos
Resumo:
El objetivo de este Trabajo de Fin de Grado es hallar la influencia de cada tipo de efeméride en la precisión a posteriori de las coordenadas de un punto de la línea base. Para ello, se plantea una comparativa entre líneas base en función de la longitud, la duración de la sesión, la constelación y el tipo de efemérides. Todo ello, eligiendo puntos de control en la Península Ibérica y contrastando las soluciones sobre el marco de referencia ETRS89. No se pretende buscar la máxima precisión en cada línea base, sino tratar de emular las características de un uso común del GNSS en topografía y geodesia. En la comparativa se plantean situaciones al límite con sesiones de observación de poca duración y con distancias muy largas. Los tiempos de observación son inferiores a los recomendados en libros y manuales, para así evitar que la redundancia enmascare la verdadera precisión de las efemérides y llevar al límite de lo posible este test.
Resumo:
Una Red de Procesadores Evolutivos o NEP (por sus siglas en ingles), es un modelo computacional inspirado por el modelo evolutivo de las celulas, específicamente por las reglas de multiplicación de las mismas. Esta inspiración hace que el modelo sea una abstracción sintactica de la manipulation de information de las celulas. En particu¬lar, una NEP define una maquina de cómputo teorica capaz de resolver problemas NP completos de manera eficiente en tóerminos de tiempo. En la praóctica, se espera que las NEP simuladas en móaquinas computacionales convencionales puedan resolver prob¬lemas reales complejos (que requieran ser altamente escalables) a cambio de una alta complejidad espacial. En el modelo NEP, las cóelulas estóan representadas por palabras que codifican sus secuencias de ADN. Informalmente, en cualquier momento de cómputo del sistema, su estado evolutivo se describe como un coleccion de palabras, donde cada una de ellas representa una celula. Estos momentos fijos de evolucion se denominan configuraciones. De manera similar al modelo biologico, las palabras (celulas) mutan y se dividen en base a bio-operaciones sencillas, pero solo aquellas palabras aptas (como ocurre de forma parecida en proceso de selection natural) seran conservadas para la siguiente configuracióon. Una NEP como herramienta de computation, define una arquitectura paralela y distribuida de procesamiento simbolico, en otras palabras, una red de procesadores de lenguajes. Desde el momento en que el modelo fue propuesto a la comunidad científica en el año 2001, múltiples variantes se han desarrollado y sus propiedades respecto a la completitud computacional, eficiencia y universalidad han sido ampliamente estudiadas y demostradas. En la actualidad, por tanto, podemos considerar que el modelo teórico NEP se encuentra en el estadio de la madurez. La motivación principal de este Proyecto de Fin de Grado, es proponer una aproxi-mación práctica que permita dar un salto del modelo teórico NEP a una implantación real que permita su ejecucion en plataformas computacionales de alto rendimiento, con el fin de solucionar problemas complejos que demanda la sociedad actual. Hasta el momento, las herramientas desarrolladas para la simulation del modelo NEP, si bien correctas y con resultados satisfactorios, normalmente estón atadas a su entorno de ejecucion, ya sea el uso de hardware específico o implementaciones particulares de un problema. En este contexto, el propósito fundamental de este trabajo es el desarrollo de Nepfix, una herramienta generica y extensible para la ejecucion de cualquier algo¬ritmo de un modelo NEP (o alguna de sus variantes), ya sea de forma local, como una aplicación tradicional, o distribuida utilizando los servicios de la nube. Nepfix es una aplicacion software desarrollada durante 7 meses y que actualmente se encuentra en su segunda iteration, una vez abandonada la fase de prototipo. Nepfix ha sido disenada como una aplicacion modular escrita en Java 8 y autocontenida, es decir, no requiere de un entorno de ejecucion específico (cualquier maquina virtual de Java es un contenedor vólido). Nepfix contiene dos componentes o móodulos. El primer móodulo corresponde a la ejecución de una NEP y es por lo tanto, el simulador. Para su desarrollo, se ha tenido en cuenta el estado actual del modelo, es decir, las definiciones de los procesadores y filtros mas comunes que conforman la familia del modelo NEP. Adicionalmente, este componente ofrece flexibilidad en la ejecucion, pudiendo ampliar las capacidades del simulador sin modificar Nepfix, usando para ello un lenguaje de scripting. Dentro del desarrollo de este componente, tambióen se ha definido un estóandar de representacióon del modelo NEP basado en el formato JSON y se propone una forma de representation y codificación de las palabras, necesaria para la comunicación entre servidores. Adicional-mente, una característica importante de este componente, es que se puede considerar una aplicacion aislada y por tanto, la estrategia de distribution y ejecución son total-mente independientes. El segundo moódulo, corresponde a la distribucióon de Nepfix en la nube. Este de-sarrollo es el resultado de un proceso de i+D, que tiene una componente científica considerable. Vale la pena resaltar el desarrollo de este modulo no solo por los resul-tados prócticos esperados, sino por el proceso de investigation que se se debe abordar con esta nueva perspectiva para la ejecución de sistemas de computación natural. La principal característica de las aplicaciones que se ejecutan en la nube es que son gestionadas por la plataforma y normalmente se encapsulan en un contenedor. En el caso de Nepfix, este contenedor es una aplicacion Spring que utiliza el protocolo HTTP o AMQP para comunicarse con el resto de instancias. Como valor añadido, Nepfix aborda dos perspectivas de implementation distintas (que han sido desarrolladas en dos iteraciones diferentes) del modelo de distribution y ejecucion, que tienen un impacto muy significativo en las capacidades y restricciones del simulador. En concreto, la primera iteration utiliza un modelo de ejecucion asincrono. En esta perspectiva asincrona, los componentes de la red NEP (procesadores y filtros) son considerados como elementos reactivos a la necesidad de procesar una palabra. Esta implementation es una optimization de una topologia comun en el modelo NEP que permite utilizar herramientas de la nube para lograr un escalado transparente (en lo ref¬erente al balance de carga entre procesadores) pero produce efectos no deseados como indeterminacion en el orden de los resultados o imposibilidad de distribuir eficiente-mente redes fuertemente interconectadas. Por otro lado, la segunda iteration corresponde al modelo de ejecucion sincrono. Los elementos de una red NEP siguen un ciclo inicio-computo-sincronizacion hasta que el problema se ha resuelto. Esta perspectiva sincrona representa fielmente al modelo teórico NEP pero el proceso de sincronizacion es costoso y requiere de infraestructura adicional. En concreto, se requiere un servidor de colas de mensajes RabbitMQ. Sin embargo, en esta perspectiva los beneficios para problemas suficientemente grandes superan a los inconvenientes, ya que la distribuciín es inmediata (no hay restricciones), aunque el proceso de escalado no es trivial. En definitiva, el concepto de Nepfix como marco computacional se puede considerar satisfactorio: la tecnología es viable y los primeros resultados confirman que las carac-terísticas que se buscaban originalmente se han conseguido. Muchos frentes quedan abiertos para futuras investigaciones. En este documento se proponen algunas aproxi-maciones a la solucion de los problemas identificados como la recuperacion de errores y la division dinamica de una NEP en diferentes subdominios. Por otra parte, otros prob-lemas, lejos del alcance de este proyecto, quedan abiertos a un futuro desarrollo como por ejemplo, la estandarización de la representación de las palabras y optimizaciones en la ejecucion del modelo síncrono. Finalmente, algunos resultados preliminares de este Proyecto de Fin de Grado han sido presentados recientemente en formato de artículo científico en la "International Work-Conference on Artificial Neural Networks (IWANN)-2015" y publicados en "Ad-vances in Computational Intelligence" volumen 9094 de "Lecture Notes in Computer Science" de Springer International Publishing. Lo anterior, es una confirmation de que este trabajo mas que un Proyecto de Fin de Grado, es solo el inicio de un trabajo que puede tener mayor repercusion en la comunidad científica. Abstract Network of Evolutionary Processors -NEP is a computational model inspired by the evolution of cell populations, which might model some properties of evolving cell communities at the syntactical level. NEP defines theoretical computing devices able to solve NP complete problems in an efficient manner. In this model, cells are represented by words which encode their DNA sequences. Informally, at any moment of time, the evolutionary system is described by a collection of words, where each word represents one cell. Cells belong to species and their community evolves according to mutations and division which are defined by operations on words. Only those cells are accepted as surviving (correct) ones which are represented by a word in a given set of words, called the genotype space of the species. This feature is analogous with the natural process of evolution. Formally, NEP is based on an architecture for parallel and distributed processing, in other words, a network of language processors. Since the date when NEP was pro¬posed, several extensions and variants have appeared engendering a new set of models named Networks of Bio-inspired Processors (NBP). During this time, several works have proved the computational power of NBP. Specifically, their efficiency, universality, and computational completeness have been thoroughly investigated. Therefore, we can say that the NEP model has reached its maturity. The main motivation for this End of Grade project (EOG project in short) is to propose a practical approximation that allows to close the gap between theoretical NEP model and a practical implementation in high performing computational platforms in order to solve some of high the high complexity problems society requires today. Up until now tools developed to simulate NEPs, while correct and successful, are usu¬ally tightly coupled to the execution environment, using specific software frameworks (Hadoop) or direct hardware usage (GPUs). Within this context the main purpose of this work is the development of Nepfix, a generic and extensible tool that aims to execute algorithms based on NEP model and compatible variants in a local way, similar to a traditional application or in a distributed cloud environment. Nepfix as an application was developed during a 7 month cycle and is undergoing its second iteration once the prototype period was abandoned. Nepfix is designed as a modular self-contained application written in Java 8, that is, no additional external dependencies are required and it does not rely on an specific execution environment, any JVM is a valid container. Nepfix is made of two components or modules. The first module corresponds to the NEP execution and therefore simulation. During the development the current state of the theoretical model was used as a reference including most common filters and processors. Additionally extensibility is provided by the use of Python as a scripting language to run custom logic. Along with the simulation a definition language for NEP has been defined based on JSON as well as a mechanisms to represent words and their possible manipulations. NEP simulator is isolated from distribution and as mentioned before different applications that include it as a dependency are possible, the distribution of NEPs is an example of this. The second module corresponds to executing Nepfix in the cloud. The development carried a heavy R&D process since this front was not explored by other research groups until now. It's important to point out that the development of this module is not focused on results at this point in time, instead we focus on feasibility and discovery of this new perspective to execute natural computing systems and NEPs specifically. The main properties of cloud applications is that they are managed by the platform and are encapsulated in a container. For Nepfix a Spring application becomes the container and the HTTP or AMQP protocols are used for communication with the rest of the instances. Different execution perspectives were studied, namely asynchronous and synchronous models were developed for solving different kind of problems using NEPs. Different limitations and restrictions manifest in both models and are explored in detail in the respective chapters. In conclusion we can consider that Nepfix as a computational framework is suc-cessful: Cloud technology is ready for the challenge and the first results reassure that the properties Nepfix project pursued were met. Many investigation branches are left open for future investigations. In this EOG implementation guidelines are proposed for some of them like error recovery or dynamic NEP splitting. On the other hand other interesting problems that were not in the scope of this project were identified during development like word representation standardization or NEP model optimizations. As a confirmation that the results of this work can be useful to the scientific com-munity a preliminary version of this project was published in The International Work- Conference on Artificial Neural Networks (IWANN) in May 2015. Development has not stopped since that point and while Nepfix in it's current state can not be consid¬ered a final product the most relevant ideas, possible problems and solutions that were produced during the seven months development cycle are worthy to be gathered and presented giving a meaning to this EOG work.