986 resultados para Application programming interfaces (API)
Resumo:
Automating the assessment of programming assignments brings benefits for both students and teachers, since it helps the formers to gain a timely feedback and releases the latter from tedious tasks. The related literature in the domain has usually focused on the assessment process and the tools required for it, proposing libraries and systems that teachers can use in this process. However, few of them have work rowards reducing the effort and time teacher require to properly set up new assessente processes. This paper describes our experience with the analysis and design of a new tool to support teachers in visually developing automatic grades of programming assignments, introducing the underlying concepts and technologies and presenting the system architecture.
Resumo:
Brain-Computer Interfaces are usually tackled from a medical point of view, correlating observed phenomena to physical facts known about the brain. Existing methods of classification lie in the application of deterministic algorithms and depend on certain degree of knowledge about the underlying phenomena so as to process data. In this demo, different architectures for an evolvable hardware classifier implemented on an FPGA are proposed, in line with the objective of generalizing evolutionary algorithms regardless of the application.
Resumo:
Throughout history, humans have cyclically return to their old traditions such as the organic orchards. Nowadays, these have been integrated into the modern cities and could supply fresh vegetables to the daily food improving human health. Organic orchards grow crops without pesticides and artificial fertilizers thus, they are respectful with the environment and guarantee the food's safety . In modern society, the application of new technology is a must, in this case to obtain an efficient irrigation. In order to monitor a proper irrigation and save water and energy, soil water content probes are used to measure soil water content. Among them, capacitive probes ,monitored with a specific data logger, are typically used. Most of them, specially the data loggers, are expensive and in many cases are not used. In this work, we have applied the open hardware Arduino to build and program a low cost datalogger for the programming of irrigation in an experimental organic orchard. Results showed that the application of such as low cost technology, which is easily available in the market and easy to understand, everyone can built and program its own device helping in managing water resources in organic orchards .
Resumo:
El objetivo de este proyecto es recoger y explicar el conjunto de tareas realizadas durante el proceso de colaboración llevado a cabo en el Instituto de Microgravedad “Ignacio Da Riva” durante el curso académico 2014/2015, las cuales han conformado las prácticas externas cursadas en la titulación de Grado en Ingeniería Aeroespacial, y el Trabajo de Fin de Grado de la misma titulación. En este documento se pretende,además, poner de manifiesto la rigurosidad con la que se trabaja en el ámbito espacial y la importancia de los protocolos y procedimientos para asegurar un resultado adecuado en los trabajos realizados. Una parte importante del proyecto detalla los procesos de monitorización y mantenimiento de la batería del satélite universitario UPMSat-2 cuyo lanzamiento está previsto para el año próximo y el cual será el segundo satélite del mundo en incorporar una batería de Ión-Litio.
Resumo:
El presente proyecto se ha realizado durante las prácticas curriculares que han tenido lugar en el Instituto Universitario de Microgravedad “Ignacio Da Riva” (IDR/UPM). A lo largo de estas prácticas se han llevado a cabo trabajos en diversos campos, todos relacionados con el UPMSat-2, desde el subsistema de potencia (placas solares y baterías) hasta el desarrollo de módulos para la Sala de Diseño Concurrente (Concurrent Design Facility, CDF). En la realización de las mismas se ha trabajado en equipo, junto con otros dos alumnos. El objetivo del proyecto es recopilar las tareas realizadas, proporcionando el desarrollo teórico necesario para llevar a cabo todas ellas. Al ser un trabajo con varias partes claramente diferenciadas, se ha optado por comenzar con unas páginas dedicadas a las misiones espaciales. A continuación el trabajo se adentra en el subsistema de potencia de un satélite, particularizando para el UPMSat-2. Finalmente, se proporciona la teoría necesaria para el desarrollo del módulo de misión de la CDF del IDR/UPM, software que se ha desarrollado y tiene reservado un espacio al final, en el cual se describe el programa y se realizan comparaciones de los resultados que proporciona frente a casos reales.
Resumo:
En este Trabajo Fin de Grado se ha realizado primero un informe técnico de la cámara de profundidad de la empresa SoftKinetic DepthSense 325 y de cuatro entornos de desarrollo que tiene como objetivo el uso de dicha cámara para el desarrollo de interfaces hombre-máquina: Perceptual Computing, RealSense, DepthSense e iisu. Posteriormente, tras la evaluación de los entornos de desarrollo y selección del más adecuado para el objetivo, se ha desarrollado un prototipo de un sistema de reconocimiento visual de gestos de manos. La principal contribución a dicho sistema es el uso de redes neuronales para la clasificación de patrones espacio-temporales que representan los gestos a reconocer. Para el entrenamiento de las redes neuronales, se han probado varias configuraciones y los métodos de optimización basados en Gradiente Conjugado y el Gradiente Conjugado Escalado, eficaces para grandes cantidades de información. El sistema propuesto basado en redes neuronales se ha comparado con las populares Máquinas Vectores Soporte, obteniéndose resultados equiparables en términos de reconocimiento de gestos
Resumo:
El objetivo de este trabajo de fin de grado es la exposición de los resultados y conclusiones, fruto de las tareas desarrolladas durante las practicas curriculares en el Instituto Universitario de Microgravedad “Ignacio Da Riva” (IDR/UPM) el presente curso académico. La estructura del trabajo se compone de dos bloques diferenciados entre sí: el seguimiento de una batería y el desarrollo de un módulo para una CDF.
Resumo:
Hoy en día el exceso de información en Internet se puede convertir en una desventaja a la hora de buscar determinada información. El objetivo de la plataforma que presento es facilitar el acceso a esta información, en concreto, al grado de conocimiento de las empresas, sobre todo las startups o emergentes en Internet. Pensada para micro-inversores que quieres participar en un proyecto ilusionante y con futuro pueden utilizar la aplicación para conocer qué empresa tiene más probabilidades de triunfar por que ya lleva parte del camino andado y es conocida dentro de las redes sociales y páginas especializadas. Para conseguir ese conocimiento vamos a dar una calificación numérica al posicionamiento de esa empresa en las principales redes sociales, donde, mediante su API, obtenemos la información más relevante para posteriormente calificar con unos criterios a gusto del inversor, es decir, según la importancia que quiera darle a cada una. Además alimentaremos la aplicación con los artículos publicados en las páginas especializadas para que los usuarios puedan informarse de las últimas novedades del sector, puedan comentarlas e incluso añadir sus propios artículos. Programando nuestro propio Crawler o araña, visitaremos esas páginas de forma ordenada adquiriendo todos los links y descargando los artículos para guardarlos en nuestra aplicación. Aprovechándonos de esta funcionalidad vamos a pasar un buscador semántico para analizar todos esos artículos y medir si la empresa es nombrada y conocida en estas páginas especializadas. Dando un valor numérico a esas menciones y añadiéndolo a la puntuación antes mencionada. Como extra se añade el módulo de Ideas, destinado a esas ideas que se encuentran en la primera fase de desarrollo y que buscan inversión o ayuda de la comunidad para prosperar. Con la base en el gestor de contenidos DRUPAL que nos ayuda a dar facilidades a los usuarios por sus sencillas y completas interfaces gráficas, desarrollamos el proyecto en PHP con MySql
Resumo:
In this paper we focus on the selection of safeguards in a fuzzy risk analysis and management methodology for information systems (IS). Assets are connected by dependency relationships, and a failure of one asset may affect other assets. After computing impact and risk indicators associated with previously identified threats, we identify and apply safeguards to reduce risks in the IS by minimizing the transmission probabilities of failures throughout the asset network. However, as safeguards have associated costs, the aim is to select the safeguards that minimize costs while keeping the risk within acceptable levels. To do this, we propose a dynamic programming-based method that incorporates simulated annealing to tackle optimizations problems.
Resumo:
The operating theatres are the engine of the hospitals; proper management of the operating rooms and its staff represents a great challenge for managers and its results impact directly in the budget of the hospital. This work presents a MILP model for the efficient schedule of multiple surgeries in Operating Rooms (ORs) during a working day. This model considers multiple surgeons and ORs and different types of surgeries. Stochastic strategies are also implemented for taking into account the uncertain in surgery durations (pre-incision, incision, post-incision times). In addition, a heuristic-based methods and a MILP decomposition approach is proposed for solving large-scale ORs scheduling problems in computational efficient way. All these computer-aided strategies has been implemented in AIMMS, as an advanced modeling and optimization software, developing a user friendly solution tool for the operating room management under uncertainty.
Resumo:
La calificación automática de tareas de programación es un tema importante dentro del campo de la innovación educativa que se enfoca en mejorar las habilidades de programación de los estudiantes y en optimizar el tiempo que el profesorado dedica a ello. Uno de los principales problemas vigentes está relacionado con la diversidad de criterios para calificar las tareas de programación. El presente trabajo propone e implementa una arquitectura, basada en el concepto de orquestación de servicios, para soportar varios procesos de calificación automática de tareas de programación. Esto es obtenido a través de las características de modularidad, extensibilidad y flexibilidad que la arquitectura provee al proceso de calificación. La arquitectura define como pieza clave un elemento llamado Grading-submodule, el mismo que provee un servicio de evaluación del código fuente considerando un criterio de calificación. La implementación se ha llevado a cabo sobre la herramienta Virtual Programming Lab; y los resultados demuestran la factibilidad de realización, y la utilidad tanto para el profesorado como para los estudiantes.
Resumo:
Computer programming is known to be one of the most difficult courses for students in the first year of engineering. They are faced with the challenge of abstract thinking and gaining programming skills for the first time. These skills are acquired by continuous practicing from the start of the course. In order to enhance the motivation and dynamism of the learning and assessment processes, we have proposed the use of three educational resources namely screencasts, self-assessment questionnaires and automated grading of assignments. These resources have been made available in Moodle which is a Learning Management System widely used in education environments and adopted by the Telecommunications Engineering School at the Universidad Politécnica de Madrid (UPM). Both teachers and students can enhance the learning and assessment processes through the use of new educational activities such as self-assessment questionnaires and automated grading of assignments. On the other hand, multimedia resources such as screencasts can guide students in complex topics. The resources proposed allow teachers to improve their tutorial actions since they provide immediate feedback and comments to students without the enormous effort of manual correction and evaluation by teachers specially taking into account the large number of students enrolled in the course. In this paper we present the case study where three proposed educational resources were applied. We describe the special features of the course and explain why the use of these resources can both enhance the students? motivation and improve the teaching and learning processes. Our research work was carried out on students attending the "Computer programming" course offered in the first year of a Telecommunications Engineering degree at UPM. This course is mandatory and has more than 450 enrolled students. Our purpose is to encourage the motivation and dynamism of the learning and assessment processes.
Resumo:
A la hora de afrontar un proyecto de investigación, no basta con una vigilancia tradicional del entorno. Ya que debido a lo cambiante del mundo, a la globalización, a lo rápido que se desarrollan nuevas tecnologías y productos es preciso realizar un proceso sistemático que permita a las organizaciones o empresas anticiparse a los cambios tecnológicos. En este contexto, el diseño de metodologías basadas en la Vigilancia Tecnológica (VT) permite gestionar la actividad innovadora de organizaciones o empresas facilitando el proceso de generación de ideas para el desarrollo de productos o servicios. Es por ello que en este Proyecto de Fin de Grado se ha diseñado una estrategia para aplicar metodologías de Vigilancia Tecnológica aplicadas a un proyecto de I+D que estudia las Interfaces Naturales de Usuario (NUI). Para ello se ha partido de la metodología de trabajo basada en el proceso de Vigilancia Tecnológica e Inteligencia Competitiva del proyecto CETISME, identificando claramente cada una de las fases que lo componen: identificación de objetivos, selección de las fuentes de información, búsqueda y almacenamiento de la información, análisis de la información y por último validación de la información que concluye con la creación de informes de Vigilancia Tecnológica. Por lo tanto, para cada una de las fases que componen lo que comúnmente se llama el ciclo de la vigilancia, se ha explicado en primer lugar en qué consisten, que estrategias a seguir son las más adecuadas así como la manera de llevarlas a cabo, y por último, si fuera necesario, qué herramientas (desde bases de datos a software) son necesarias o son de utilidad para llevar a cabo el proceso y optimizarlo. De esta manera, como se verá a lo largo de este documento, la aplicación de dicha metodología permitirá a las organizaciones o empresas obtener situaciones ventajosas a la hora de innovar, captar oportunidades o detectar amenazas, identificar competidores o alianzas potenciales, entre otros. ABSTRACT. When taking over a research project, a traditional surveillance of the environment is not enough. Mainly due to the changing the world, to the globalization, to how fast new technologies and products are developed, is necessary to make a systematic process that enables organizations or companies anticipate to technological changes. In this context, the design of methodologies based on the Technology Watch (TW) allows managing the innovative activity of organizations or companies facilitating the process of generating ideas for products or services development. For this reason, in this Thesis a strategy for applying Technological Watch methodologies applied to a R&D project studying Natural User Interfaces (NUI) has been designed. To achieve this goal, the starting point was the CETISME project methodologies, which are based on the Technology Watch and the Competitive Intelligence process, clearly identifying each of the phases that compose it: identification of objectives, selection of the information sources, storage, search and analysis of the information, and finally validating the information that concludes with the creation of Technological Watch reports. Therefore, for each of the phases composing what is commonly known as the monitoring cycle, it has been explained in first place what they consist of, what strategies are more adequate as well as how they should be implemented, and finally, if necessary, what tools (from databases to software) are needed or are useful for managing the process and optimize it. Thus, as discussed throughout this document, the application of said methodology will allow organizations or companies to obtain advantageous situations when it comes to innovate, catch opportunities or detect threats, to identify competitors or potential alliances, among others.
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:
Este proyecto consiste en el diseño e implementación de un procesador digital de efectos de audio en tiempo real orientado a instrumentos eléctricos tales como guitarras, bajos, teclados, etc. El procesador está basado en la tarjeta Raspberry Pi B+, ordenador de placa reducida de bajo coste, desarrollado en Reino unido y cuyo lanzamiento tuvo lugar en el año 2012. En primer lugar, ha sido necesario lograr que la tarjeta asuma la funcionalidad de un procesador de audio en tiempo real. Para ello se ha instalado un sistema operativo Linux orientado a Raspberry (Raspbian) y se ha hecho uso de Pure Data (Pd): lenguaje de programación gráfico que fue desarrollado en los años 90 por Miller Puckette con intención de ser enfocado a la creación de eventos multimedia y de música por computador. El papel que desempeña Pd es de capa intermedia entre el hardware y el software ya que se encarga de tomar bloques de N muestras del convertidor analógico/digital y encaminarlas a través del flujo de señal diseñado gráficamente. En segundo lugar, se han implementado diferentes efectos de audio de distintas características. Así pues, se encuentran efectos basados en retardos, filtros digitales y procesadores de dinámica. Concretamente, los efectos implementados son los siguientes: delay, flanger, vibrato, reverberador de Schroeder, filtros (paso bajo, paso alto y paso banda), ecualizador paramétrico y compresor y expansor de dinámica. Estos efectos han sido implementados en lenguaje C de acuerdo con la API de Pd. Con esto se ha conseguido obtener un objeto por cada efecto, el cual es “instanciado” en Pd pudiendo ejecutarlo en tiempo real. En este proyecto se expone la problemática que supone cada paso del diseño proponiendo soluciones válidas. Además se incluye una guía paso a paso para configurar la tarjeta y lograr realizar un bypass de señal y un efecto simple partiendo desde cero. ABSTRACT. This project involves the design and implementation of a digital real-time audio processor for electrical instruments (guitars, basses, keyboards, etc.). The processor is based on the Raspberry Pi B + card: low cost computer, developed in UK in 2012. First, it was necessary to make the cards assume the functionality of a real time audio processor. A Linux operating system called Raspberry (Raspbian) was installed. In this Project is used Pure Data (Pd): a graphical programming language developed in the 90s by Miller Puckette intending to be focused on creating multimedia and computer music events. The role of Pd is an intermediate layer between the hardware and the software. It is responsible for taking blocks of N samples of the analog/digital converter and route it through the signal flow. Secondly, it is necessary to implemented the different audio effects. There are delays based effects, digital filter and dynamics effects. Specifically, the implemented effects are: delay, flanger, vibrato, Schroeder reverb, filters (lowpass, highpass and bandpass), parametric equalizer and compressor and expander dynamics. These effects have been implemented in C language according to the Pd API. As a result, it has been obtained an object for each effect, which is instantiated in Pd. In this Project, the problems of every step are exposed with his corresponding solution. It is inlcuded a step-by-step guide to configure the card and achieve perform a bypass signal process and a simple effect.