56 resultados para ESPECIFICACIÓN
Resumo:
El esquema actual que existe en el ámbito de la normalización y el diseño de nuevos estándares de codificación de vídeo se está convirtiendo en una tarea difícil de satisfacer la evolución y dinamismo de la comunidad de codificación de vídeo. El problema estaba centrado principalmente en poder explotar todas las características y similitudes entre los diferentes códecs y estándares de codificación. Esto ha obligado a tener que rediseñar algunas partes comunes a varios estándares de codificación. Este problema originó la aparición de una nueva iniciativa de normalización dentro del comité ISO/IEC MPEG, llamado Reconfigurable Video Coding (RVC). Su principal idea era desarrollar un estándar de codificación de vídeo que actualizase e incrementase progresivamente una biblioteca de los componentes, aportando flexibilidad y la capacidad de tener un código reconfigurable mediante el uso de un nuevo lenguaje orientado a flujo de Actores/datos denominado CAL. Este lenguaje se usa para la especificación de la biblioteca estándar y para la creación de instancias del modelo del decodificador. Más tarde, se desarrolló un nuevo estándar de codificación de vídeo denominado High Efficiency Video Coding (HEVC), que actualmente se encuentra en continuo proceso de actualización y desarrollo, que mejorase la eficiencia y compresión de la codificación de vídeo. Obviamente se ha desarrollado una visión de HEVC empleando la metodología de RVC. En este PFC, se emplean diferentes implementaciones de estándares empleando RVC. Por ejemplo mediante los decodificadores Mpeg 4 Part 2 SP y Mpeg 4 Part 10 CBP y PHP así como del nuevo estándar de codificación HEVC, resaltando las características y utilidad de cada uno de ellos. En RVC los algoritmos se describen mediante una clase de actores que intercambian flujos de datos (tokens) para realizar diferentes acciones. El objetivo de este proyecto es desarrollar un programa que, partiendo de los decodificadores anteriormente mencionados, una serie de secuencia de vídeo en diferentes formatos de compresión y una distribución estándar de los actores (para cada uno de los decodificadores), sea capaz de generar diferentes distribuciones de los actores del decodificador sobre uno o varios procesadores del sistema sobre el que se ejecuta, para conseguir la mayor eficiencia en la codificación del vídeo. La finalidad del programa desarrollado en este proyecto es la de facilitar la realización de las distribuciones de los actores sobre los núcleos del sistema, y obtener las mejores configuraciones posibles de una manera automática y eficiente. ABSTRACT. The current scheme that exists in the field of standardization and the design of new video coding standards is becoming a difficult task to meet the evolving and dynamic community of video encoding. The problem was centered mainly in order to exploit all the features and similarities between different codecs and encoding standards. This has forced redesigning some parts common to several coding standards. This problem led to the emergence of a new initiative for standardization within the ISO / IEC MPEG committee, called Reconfigurable Video Coding (RVC). His main idea was to develop a video coding standard and gradually incrementase to update a library of components, providing flexibility and the ability to have a reconfigurable code using a new flow -oriented language Actors / data called CAL. This language is used for the specification of the standard library and to the instantiation model decoder. Later, a new video coding standard called High Efficiency Video Coding (HEVC), which currently is in continuous process of updating and development, which would improve the compression efficiency and video coding is developed. Obviously has developed a vision of using the methodology HEVC RVC. In this PFC, different implementations using RVC standard are used. For example, using decoders MPEG 4 Part 2 SP and MPEG 4 Part 10 CBP and PHP and the new coding standard HEVC, highlighting the features and usefulness of each. In RVC, the algorithms are described by a class of actors that exchange streams of data (tokens) to perform different actions. The objective of this project is to develop a program that, based on the aforementioned decoders, a series of video stream in different compression formats and a standard distribution of actors (for each of the decoders), is capable of generating different distributions decoder actors on one or more processors of the system on which it runs, to achieve greater efficiency in video coding. The purpose of the program developed in this project is to facilitate the realization of the distributions of the actors on the cores of the system, and get the best possible settings automatically and efficiently.
Resumo:
The objective of this dissertation is to analyze, design, and implement an activity module for a larger educational platform with the use of gamification techniques with the purpose to improve learning, pass rates, and feedback. The project investigates how to better incentivize student learning. A software requirement specification was delineated to establish the system guidelines and behavior. Following, a definition of the activities in the module was created. This definition encompassed a detailed description of each activity, together with elements that compose it, available customizations and the involved formulas. The activity high-level design process includes the design of the defined activities by use of the software methodology UWE (UML-based Web Engineering) for their future implementation, modeling requirements, content, navigation and presentation. The low-level design is composed of the database schema and types and the relating EER (Enhanced Entity-Relationship) diagram. After this, the implementation of the designed module began, together with testing in the later stages. We expect that by using the implemented activity module, students will become more interested in learning, as well as more engaged in the process, resulting in a continuous progress during the course.---RESUMEN---El objetivo de este trabajo es analizar, diseñar e implementar un módulo de actividades didácticas que formará parte de una plataforma educativa, haciendo uso de técnicas de gamificación con la finalidad de mejorar el aprendizaje, ratio de aprobados y retroalimentación para los alumnos. El proyecto investiga como incentivar mejor el aprendizaje estudiantil. Se trazó una especificación de requisitos de software para establecer las pautas del sistema y su comportamiento. A continuación, se definieron las actividades del módulo. Esta definición abarca una descripción detallada de cada actividad, junto a los elementos que la componen, las configuraciones disponibles y las formulas involucradas. El proceso de diseño de alto nivel incluye el diseño de las actividades definidas usando la metodología de software UWE (UML-based Web Engineering) para su futura implementación, requisitos de modelaje, contenido, navegación y presentación. El diseño de bajo nivel está compuesto por el esquema y tipos de la base de datos y el diagrama de entidad-relación correspondiente. Tras esto se realizó la implementación y pruebas de parte del sistema. Se espera que usando el módulo de actividades implementado, los estudiantes muestren un mayor interés por aprender, así como estar más involucrados en el proceso, resultando en un progreso más continuo durante el curso.
Resumo:
El trabajo se enmarca dentro de los proyecto INTEGRATE y EURECA, cuyo objetivo es el desarrollo de una capa de interoperabilidad semántica que permita la integración de datos e investigación clínica, proporcionando una plataforma común que pueda ser integrada en diferentes instituciones clínicas y que facilite el intercambio de información entre las mismas. De esta manera se promueve la mejora de la práctica clínica a través de la cooperación entre instituciones de investigación con objetivos comunes. En los proyectos se hace uso de estándares y vocabularios clínicos ya existentes, como pueden ser HL7 o SNOMED, adaptándolos a las necesidades particulares de los datos con los que se trabaja en INTEGRATE y EURECA. Los datos clínicos se representan de manera que cada concepto utilizado sea único, evitando ambigüedades y apoyando la idea de plataforma común. El alumno ha formado parte de un equipo de trabajo perteneciente al Grupo de Informática de la UPM, que a su vez trabaja como uno de los socios de los proyectos europeos nombrados anteriormente. La herramienta desarrollada, tiene como objetivo realizar tareas de homogenización de la información almacenada en las bases de datos de los proyectos haciendo uso de los mecanismos de normalización proporcionados por el vocabulario médico SNOMED-CT. Las bases de datos normalizadas serán las utilizadas para llevar a cabo consultas por medio de servicios proporcionados en la capa de interoperabilidad, ya que contendrán información más precisa y completa que las bases de datos sin normalizar. El trabajo ha sido realizado entre el día 12 de Septiembre del año 2014, donde comienza la etapa de formación y recopilación de información, y el día 5 de Enero del año 2015, en el cuál se termina la redacción de la memoria. El ciclo de vida utilizado ha sido el de desarrollo en cascada, en el que las tareas no comienzan hasta que la etapa inmediatamente anterior haya sido finalizada y validada. Sin embargo, no todas las tareas han seguido este modelo, ya que la realización de la memoria del trabajo se ha llevado a cabo de manera paralela con el resto de tareas. El número total de horas dedicadas al Trabajo de Fin de Grado es 324. Las tareas realizadas y el tiempo de dedicación de cada una de ellas se detallan a continuación: Formación. Etapa de recopilación de información necesaria para implementar la herramienta y estudio de la misma [30 horas. Especificación de requisitos. Se documentan los diferentes requisitos que ha de cumplir la herramienta [20 horas]. Diseño. En esta etapa se toman las decisiones de diseño de la herramienta [35 horas]. Implementación. Desarrollo del código de la herramienta [80 horas]. Pruebas. Etapa de validación de la herramienta, tanto de manera independiente como integrada en los proyectos INTEGRATE y EURECA [70 horas]. Depuración. Corrección de errores e introducción de mejoras de la herramienta [45 horas]. Realización de la memoria. Redacción de la memoria final del trabajo [44 horas].---ABSTRACT---This project belongs to the semantic interoperability layer developed in the European projects INTEGRATE and EURECA, which aims to provide a platform to promote interchange of medical information from clinical trials to clinical institutions. Thus, research institutions may cooperate to enhance clinical practice. Different health standards and clinical terminologies has been used in both INTEGRATE and EURECA projects, e.g. HL7 or SNOMED-CT. These tools have been adapted to the projects data requirements. Clinical data are represented by unique concepts, avoiding ambiguity problems. The student has been working in the Biomedical Informatics Group from UPM, partner of the INTEGRATE and EURECA projects. The tool developed aims to perform homogenization tasks over information stored in databases of the project, through normalized representation provided by the SNOMED-CT terminology. The data query is executed against the normalized version of the databases, since the information retrieved will be more informative than non-normalized databases. The project has been performed from September 12th of 2014, when initiation stage began, to January 5th of 2015, when the final report was finished. The waterfall model for software development was followed during the working process. Therefore, a phase may not start before the previous one finishes and has been validated, except from the final report redaction, which has been carried out in parallel with the others phases. The tasks that have been developed and time for each one are detailed as follows: Training. Gathering the necessary information to develop the tool [30 hours]. Software requirement specification. Requirements the tool must accomplish [20 hours]. Design. Decisions on the design of the tool [35 hours]. Implementation. Tool development [80 hours]. Testing. Tool evaluation within the framework of the INTEGRATE and EURECA projects [70 hours]. Debugging. Improve efficiency and correct errors [45 hours]. Documenting. Final report elaboration [44 hours].
Resumo:
En esta tesis se tratan dos aspectos fundamentales de los sistemas funcionales, de cuyo tratamiento depende, en gran medida, la eficiencia de tales sistemas. En primer lugar, se presentan y evalúan una serie de soluciones al problema de representación interna en los sistemas funcionales, soluciones basadas en la utilización de estructuras lineales para obtener una mejora en el tiempo de ejecución y en la ocupación de la memoria del sistema. En segundo lugar, se presenta un sistema de evaluación multitarea para reducir programas funcionales, basado en la especificación de varios ficheros de salida. En él, las tareas del sistema evalúan, de forma concurrente, las diversas partes del resultado de un programa y se .comunican entre sí en base a mensajes que permiten detectar y resolver, sin necesidad de abortar la ejecución, bucles de dependencias entre tareas. El sistema reacciona ante estas situaciones de error de forma comedida, de modo que este error no afecta al resto de las tareas del sistema. Se plantea también un mecanismo de gestión de memoria, mecanismo que introduce una tarea especial en el sistema, encargada de la gestión de una memoria común a todo él, y satisface las necesidades de memoria de las tareas de forma, transparente al mecanismo de evaluación.---ABSTRACT---Two fundamental aspects of functional systems, of which their efficiency to a large extent depends, are dealt with in this thesis. Firstly, several solutions to the internal representation problem of functional systems are proposed and evaluated. These solutions are based on the use of linear data structures in order to achieve a shorter execution time and smaller memory requirement. Secondly, a new multitask evaluation system for the reduction of functional programs is described; it is based on the specifücation of several output files. In this evaluation system, the task evaluates in the different parts of the program result concurrently. Tasks communicate one another through messages, which make it possible to detect and solve the dependency loops within tasks. The program does not need to be aborted, the sistem reacts to such error situations in a smooth way, no other tasks are affected. A memory management system is also introduced. This management system inserts a special task, that carries-out the management of a common memory and serves all tasks memory requirements in a transparent mode to the evaluation mechanism.
Resumo:
La creciente complejidad, heterogeneidad y dinamismo inherente a las redes de telecomunicaciones, los sistemas distribuidos y los servicios avanzados de información y comunicación emergentes, así como el incremento de su criticidad e importancia estratégica, requieren la adopción de tecnologías cada vez más sofisticadas para su gestión, su coordinación y su integración por parte de los operadores de red, los proveedores de servicio y las empresas, como usuarios finales de los mismos, con el fin de garantizar niveles adecuados de funcionalidad, rendimiento y fiabilidad. Las estrategias de gestión adoptadas tradicionalmente adolecen de seguir modelos excesivamente estáticos y centralizados, con un elevado componente de supervisión y difícilmente escalables. La acuciante necesidad por flexibilizar esta gestión y hacerla a la vez más escalable y robusta, ha provocado en los últimos años un considerable interés por desarrollar nuevos paradigmas basados en modelos jerárquicos y distribuidos, como evolución natural de los primeros modelos jerárquicos débilmente distribuidos que sucedieron al paradigma centralizado. Se crean así nuevos modelos como son los basados en Gestión por Delegación, en el paradigma de código móvil, en las tecnologías de objetos distribuidos y en los servicios web. Estas alternativas se han mostrado enormemente robustas, flexibles y escalables frente a las estrategias tradicionales de gestión, pero continúan sin resolver aún muchos problemas. Las líneas actuales de investigación parten del hecho de que muchos problemas de robustez, escalabilidad y flexibilidad continúan sin ser resueltos por el paradigma jerárquico-distribuido, y abogan por la migración hacia un paradigma cooperativo fuertemente distribuido. Estas líneas tienen su germen en la Inteligencia Artificial Distribuida (DAI) y, más concretamente, en el paradigma de agentes autónomos y en los Sistemas Multi-agente (MAS). Todas ellas se perfilan en torno a un conjunto de objetivos que pueden resumirse en alcanzar un mayor grado de autonomía en la funcionalidad de la gestión y una mayor capacidad de autoconfiguración que resuelva los problemas de escalabilidad y la necesidad de supervisión presentes en los sistemas actuales, evolucionar hacia técnicas de control fuertemente distribuido y cooperativo guiado por la meta y dotar de una mayor riqueza semántica a los modelos de información. Cada vez más investigadores están empezando a utilizar agentes para la gestión de redes y sistemas distribuidos. Sin embargo, los límites establecidos en sus trabajos entre agentes móviles (que siguen el paradigma de código móvil) y agentes autónomos (que realmente siguen el paradigma cooperativo) resultan difusos. Muchos de estos trabajos se centran en la utilización de agentes móviles, lo cual, al igual que ocurría con las técnicas de código móvil comentadas anteriormente, les permite dotar de un mayor componente dinámico al concepto tradicional de Gestión por Delegación. Con ello se consigue flexibilizar la gestión, distribuir la lógica de gestión cerca de los datos y distribuir el control. Sin embargo se permanece en el paradigma jerárquico distribuido. Si bien continúa sin definirse aún una arquitectura de gestión fiel al paradigma cooperativo fuertemente distribuido, estas líneas de investigación han puesto de manifiesto serios problemas de adecuación en los modelos de información, comunicación y organizativo de las arquitecturas de gestión existentes. En este contexto, la tesis presenta un modelo de arquitectura para gestión holónica de sistemas y servicios distribuidos mediante sociedades de agentes autónomos, cuyos objetivos fundamentales son el incremento del grado de automatización asociado a las tareas de gestión, el aumento de la escalabilidad de las soluciones de gestión, soporte para delegación tanto por dominios como por macro-tareas, y un alto grado de interoperabilidad en entornos abiertos. A partir de estos objetivos se ha desarrollado un modelo de información formal de tipo semántico, basado en lógica descriptiva que permite un mayor grado de automatización en la gestión en base a la utilización de agentes autónomos racionales, capaces de razonar, inferir e integrar de forma dinámica conocimiento y servicios conceptualizados mediante el modelo CIM y formalizados a nivel semántico mediante lógica descriptiva. El modelo de información incluye además un “mapping” a nivel de meta-modelo de CIM al lenguaje de especificación de ontologías OWL, que supone un significativo avance en el área de la representación y el intercambio basado en XML de modelos y meta-información. A nivel de interacción, el modelo aporta un lenguaje de especificación formal de conversaciones entre agentes basado en la teoría de actos ilocucionales y aporta una semántica operacional para dicho lenguaje que facilita la labor de verificación de propiedades formales asociadas al protocolo de interacción. Se ha desarrollado también un modelo de organización holónico y orientado a roles cuyas principales características están alineadas con las demandadas por los servicios distribuidos emergentes e incluyen la ausencia de control central, capacidades de reestructuración dinámica, capacidades de cooperación, y facilidades de adaptación a diferentes culturas organizativas. El modelo incluye un submodelo normativo adecuado al carácter autónomo de los holones de gestión y basado en las lógicas modales deontológica y de acción.---ABSTRACT---The growing complexity, heterogeneity and dynamism inherent in telecommunications networks, distributed systems and the emerging advanced information and communication services, as well as their increased criticality and strategic importance, calls for the adoption of increasingly more sophisticated technologies for their management, coordination and integration by network operators, service providers and end-user companies to assure adequate levels of functionality, performance and reliability. The management strategies adopted traditionally follow models that are too static and centralised, have a high supervision component and are difficult to scale. The pressing need to flexibilise management and, at the same time, make it more scalable and robust recently led to a lot of interest in developing new paradigms based on hierarchical and distributed models, as a natural evolution from the first weakly distributed hierarchical models that succeeded the centralised paradigm. Thus new models based on management by delegation, the mobile code paradigm, distributed objects and web services came into being. These alternatives have turned out to be enormously robust, flexible and scalable as compared with the traditional management strategies. However, many problems still remain to be solved. Current research lines assume that the distributed hierarchical paradigm has as yet failed to solve many of the problems related to robustness, scalability and flexibility and advocate migration towards a strongly distributed cooperative paradigm. These lines of research were spawned by Distributed Artificial Intelligence (DAI) and, specifically, the autonomous agent paradigm and Multi-Agent Systems (MAS). They all revolve around a series of objectives, which can be summarised as achieving greater management functionality autonomy and a greater self-configuration capability, which solves the problems of scalability and the need for supervision that plague current systems, evolving towards strongly distributed and goal-driven cooperative control techniques and semantically enhancing information models. More and more researchers are starting to use agents for network and distributed systems management. However, the boundaries established in their work between mobile agents (that follow the mobile code paradigm) and autonomous agents (that really follow the cooperative paradigm) are fuzzy. Many of these approximations focus on the use of mobile agents, which, as was the case with the above-mentioned mobile code techniques, means that they can inject more dynamism into the traditional concept of management by delegation. Accordingly, they are able to flexibilise management, distribute management logic about data and distribute control. However, they remain within the distributed hierarchical paradigm. While a management architecture faithful to the strongly distributed cooperative paradigm has yet to be defined, these lines of research have revealed that the information, communication and organisation models of existing management architectures are far from adequate. In this context, this dissertation presents an architectural model for the holonic management of distributed systems and services through autonomous agent societies. The main objectives of this model are to raise the level of management task automation, increase the scalability of management solutions, provide support for delegation by both domains and macro-tasks and achieve a high level of interoperability in open environments. Bearing in mind these objectives, a descriptive logic-based formal semantic information model has been developed, which increases management automation by using rational autonomous agents capable of reasoning, inferring and dynamically integrating knowledge and services conceptualised by means of the CIM model and formalised at the semantic level by means of descriptive logic. The information model also includes a mapping, at the CIM metamodel level, to the OWL ontology specification language, which amounts to a significant advance in the field of XML-based model and metainformation representation and exchange. At the interaction level, the model introduces a formal specification language (ACSL) of conversations between agents based on speech act theory and contributes an operational semantics for this language that eases the task of verifying formal properties associated with the interaction protocol. A role-oriented holonic organisational model has also been developed, whose main features meet the requirements demanded by emerging distributed services, including no centralised control, dynamic restructuring capabilities, cooperative skills and facilities for adaptation to different organisational cultures. The model includes a normative submodel adapted to management holon autonomy and based on the deontic and action modal logics.
Resumo:
En la actualidad existe una gran expectación ante la introducción de nuevas herramientas y métodos para el desarrollo de productos software, que permitirán en un futuro próximo un planteamiento de ingeniería del proceso de producción software. Las nuevas metodologías que empiezan a esbozarse suponen un enfoque integral del problema abarcando todas las fases del esquema productivo. Sin embargo el grado de automatización conseguido en el proceso de construcción de sistemas es muy bajo y éste está centrado en las últimas fases del ciclo de vida del software, consiguiéndose así una reducción poco significativa de sus costes y, lo que es aún más importante, sin garantizar la calidad de los productos software obtenidos. Esta tesis define una metodología de desarrollo software estructurada que se puede automatizar, es decir una metodología CASE. La metodología que se presenta se ajusta al modelo de ciclo de desarrollo CASE, que consta de las fases de análisis, diseño y pruebas; siendo su ámbito de aplicación los sistemas de información. Se establecen inicialmente los principios básicos sobre los que la metodología CASE se asienta. Posteriormente, y puesto que la metodología se inicia con la fijación de los objetivos de la empresa que demanda un sistema informático, se emplean técnicas que sirvan de recogida y validación de la información, que proporcionan a la vez un lenguaje de comunicación fácil entre usuarios finales e informáticos. Además, estas mismas técnicas detallarán de una manera completa, consistente y sin ambigüedad todos los requisitos del sistema. Asimismo, se presentan un conjunto de técnicas y algoritmos para conseguir que desde la especificación de requisitos del sistema se logre una automatización tanto del diseño lógico del Modelo de Procesos como del Modelo de Datos, validados ambos conforme a la especificación de requisitos previa. Por último se definen unos procedimientos formales que indican el conjunto de actividades a realizar en el proceso de construcción y cómo llevarlas a cabo, consiguiendo de esta manera una integridad en las distintas etapas del proceso de desarrollo.---ABSTRACT---Nowdays there is a great expectation with regard to the introduction of new tools and methods for the software products development that, in the very near future will allow, an engineering approach in the software development process. New methodologies, just emerging, imply an integral approach to the problem, including all the productive scheme stages. However, the automatization degree obtained in the systems construction process is very low and focused on the last phases of the software lifecycle, which means that the costs reduction obtained is irrelevant and, which is more important, the quality of the software products is not guaranteed. This thesis defines an structured software development methodology that can be automated, that is a CASE methodology. Such a methodology is adapted to the CASE development cycle-model, which consists in analysis, design and testing phases, being the information systems its field of application. Firstly, we present the basic principies on which CASE methodology is based. Secondly, since the methodology starts from fixing the objectives of the company demanding the automatization system, we use some techniques that are useful for gathering and validating the information, being at the same time an easy communication language between end-users and developers. Indeed, these same techniques will detail completely, consistently and non ambiguously all the system requirements. Likewise, a set of techniques and algorithms are shown in order to obtain, from the system requirements specification, an automatization of the Process Model logical design, and of the Data Model logical design. Those two models are validated according to the previous requirement specification. Finally, we define several formal procedures that suggest which set of activities to be accomplished in the construction process, and how to carry them out, getting in this way integrity and completness for the different stages of the development process.
Resumo:
Una de las dificultades principales en el desarrollo de software es la ausencia de un marco conceptual adecuado para su estudio. Una propuesta la constituye el modelo transformativo, que entiende el desarrollo de software como un proceso iterativo de transformación de especificaciones: se parte de una especificación inicial que va transformándose sucesivamente hasta obtener una especificación final que se toma como programa. Este modelo básico puede llevarse a la práctica de varias maneras. En concreto, la aproximación deductiva toma una sentencia lógica como especificación inicial y su proceso transformador consiste en la demostración de la sentencia; como producto secundario de la demostración se deriva un programa que satisface la especificación inicial. La tesis desarrolla un método deductivo para la derivación de programas funcionales con patrones, escritos en un lenguaje similar a Hope. El método utiliza una lógica multigénero, cuya relación con el lenguaje de programación es estudiada. También se identifican los esquemas de demostración necesarios para la derivación de funciones con patrones, basados en la demostración independiente de varias subsentencias. Cada subsentencia proporciona una subespecificación de una ecuación del futuro programa a derivar. Nuestro método deductivo está inspirado en uno previo de Zohar Manna y Richard Waldinger, conocido como el cuadro deductivo, que deriva programas en un lenguaje similar a Lisp. El nuevo método es una modificación del cuadro de estos autores, que incorpora géneros y permite demostrar una especificación mediante varios cuadros. Cada cuadro demuestra una subespecificación y por tanto deriva una ecuación del programa. Se prevén mecanismos para que los programas derivados puedan contener definiciones locales con patrones y variables anónimas y sinónimas y para que las funciones auxiliares derivadas no usen variables de las funciones principales. La tesis se completa con varios ejemplos de aplicación, un mecanismo que independentiza el método del lenguaje de programación y un prototipo de entorno interactivo de derivación deductiva. Categorías y descriptores de materia CR D.l.l [Técnicas de programación]: Programación funcional; D.2.10 [Ingeniería de software]: Diseño - métodos; F.3.1 [Lógica y significado de los programas]: Especificación, verificación y razonamiento sobre programas - lógica de programas; F.3.3 [Lógica y significado de los programas]: Estudios de construcciones de programas - construcciones funcionales; esquemas de programa y de recursion; 1.2.2 [Inteligencia artificial]: Programación automática - síntesis de programas; 1.2.3 [Inteligencia artificial]: Deducción y demostración de teoremas]: extracción de respuesta/razón; inducción matemática. Términos generales Programación funcional, síntesis de programas, demostración de teoremas. Otras palabras claves y expresiones Funciones con patrones, cuadro deductivo, especificación parcial, inducción estructural, teorema de descomposición.---ABSTRACT---One of the main difficulties in software development is the lack of an adequate conceptual framework of study. The transformational model is one such proposal that conceives software development as an iterative process of specifications transformation: an initial specification is developed and successively transformed until a final specification is obtained and taken as a program. This basic model can be implemented in several ways. The deductive approach takes a logical sentence as the initial specification and its proof constitutes the transformational process; as a byproduct of the proof, a program which satisfies the initial specification is derived. In the thesis, a deductive method for the derivation of Hope-like functional programs with patterns is developed. The method uses a many-sorted logic, whose relation to the programming language is studied. Also the proof schemes necessary for the derivation of functional programs with patterns, based on the independent proof of several subsentences, are identified. Each subsentence provides a subspecification of one equation of the future program to be derived. Our deductive method is inspired on a previous one by Zohar Manna and Richard Waldinger, known as the deductive tableau, which derives Lisp-like programs. The new method incorporates sorts in the tableau and allows to prove a sentence with several tableaux. Each tableau proves a subspecification and therefore derives an equation of the program. Mechanisms are included to allow the derived programs to contain local definitions with patterns and anonymous and synonymous variables; also, the derived auxiliary functions cannot reference parameters of their main functions. The thesis is completed with several application examples, i mechanism to make the method independent from the programming language and an interactive environment prototype for deductive derivation. CR categories and subject descriptors D.l.l [Programming techniques]: Functional programming; D.2.10 [Software engineering]: Design - methodologies; F.3.1 [Logics and meanings of programa]: Specifying and verifying and reasoning about programs - logics of programs; F.3.3 [Logics and meanings of programs]: Studies of program constructs - functional constructs; program and recursion schemes; 1.2.2 [Artificial intelligence]: Automatic programming - program synthesis; 1.2.3 [Artificial intelligence]: Deduction and theorem proving - answer/reason extraction; mathematical induction. General tenas Functional programming, program synthesis, theorem proving. Additional key words and phrases Functions with patterns, deductive tableau, structural induction, partial specification, descomposition theorem.
Resumo:
En esta Tesis se plantea una nueva forma de entender la evacuación apoyándonos en tecnologías existentes y accesibles que nos permitirán ver este proceso como un ente dinámico. Se trata de una metodología que implica no solo el uso de herramientas de análisis que permitan la definición de planes de evacuación en tiempo real, sino que también se apunta hacia la creación de una infraestructura física que permita alimentar con información actualizada al sistema de forma que, según la situación y la evolución de la emergencia, sea posible realizar planes alternativos que se adapten a las nuevas circunstancias. En base a esto, el sistema asimilará toda esa información y aportará soluciones que faciliten la toma de decisiones durante toda la evolución del incidente. Las aportaciones originales de esta Tesis son múltiples y muy variadas, pudiéndolas resumir en los siguientes puntos: 1. Estudio completo del estado del arte: a. Detección y análisis de diferentes proyectos a nivel internacional que de forma parcial tratan algunos aspectos desarrollados en la Tesis. b. Completo estudio a nivel mundial del software desarrollado total o parcialmente para la simulación del comportamiento humano y análisis de procesos de evacuación. Se ha generado una base de datos que cataloga de forma exhaustiva estas aplicaciones, permitiendo realizar un completo análisis y posibilitando la evolución futura de los contenidos de la misma. En la tesis se han analizado casi un centenar de desarrollos, pero el objetivo es seguir completando esta base de datos debido a la gran utilidad y a las importantes posibilidades que ofrece. 2. Desarrollo de un importante capítulo que trata sobre la posibilidad de utilizar entornos virtuales como alternativa intermedia al uso de simuladores y simulacros. En esta sección se divide en dos bloques: a. Ensayos en entornos reales y virtuales. b. Ensayos en entornos virtuales (pruebas realizadas con varios entornos virtuales). 3. Desarrollo de e-Flow net design: paquete de herramientas desarrolladas sobre Rhinoceros para el diseño de la red de evacuación basada en los elementos definidos en la tesis: Nodes, paths, Relations y Areas. 4. Desarrollo de e-Flow Simulator: Conjunto de herramientas que transforman Rhinoceros en un simulador 3D de comportamiento humano. Este simulador, de desarrollo propio, incorpora un novedoso algoritmo de comportamiento a nivel de individuo que incluye aspectos que no se han encontrado en otros simuladores. Esta herramienta permite realizar simulaciones programadas de grupos de individuos cuyo comportamiento se basa en el análisis del entorno y en la presencia de referencias dinámicas. Incluye otras importantes novedades como por ejemplo: herramientas para análisis de la señalización, elementos de señalización dinámica, incorporación sencilla de obstáculos, etc. También se ha creado una herramienta que posibilita la implementación del movimiento del propio escenario simulando la oscilación del mismo, con objeto de reflejar la influencia del movimiento del buque en el desplazamiento de los individuos. 5. En una fase avanzada del desarrollo, se incorporó la posibilidad de generar un vídeo de toda la simulación, momento a partir del cual, se han documentado todas las pruebas (y se continúan documentando) en una base de datos que recoge todas las características de las simulaciones, los problemas detectados, etc. Estas pruebas constituyen, en el momento en que se ha cerrado la redacción de la Tesis, un total de 81 GB de datos. Generación y análisis de rutas en base a la red de evacuación creada con e-Flow Net design y las simulaciones realizadas con e-Flow Net simulator. a. Análisis para la optimización de la configuración de la red en base a los nodos por área existentes. b. Definición de procesos previos al cálculo de rutas posibles. c. Cálculo de rutas: i. Análisis de los diferentes algoritmos que existen en la actualidad para la optimización de rutas. ii. Desarrollo de una nueva familia de algoritmos que he denominado “Minimum Decision Algorithm (MDA)”, siendo los algoritmos que componen esta familia: 1. MDA básico. 2. MDA mínimo. 3. MDA de no interferencia espacial. 4. MDA de expansión. 5. MDA de expansión ordenada para un único origen. 6. MDA de expansión ordenada. iii. Todos estos algoritmos se han implementado en la aplicación e-Flow creada en la Tesis para el análisis de rutas y que constituye el núcleo del Sistema de Ayuda al Capitán. d. Determinación de las alternativas para el plan de evacuación. Tras la definición de las rutas posibles, se describen diferentes procesos existentes de análisis por ponderación en base a criterios, para pasar finalmente a definir el método de desarrollo propio propuesto en esta Tesis y cuyo objetivo es responder en base a la población de rutas posibles obtenidas mediante los algoritmos MDA, qué combinación de rutas constituyen el Plan o Planes más adecuados para cada situación. La metodología creada para la selección de combinaciones de rutas que determinan un Plan completo, se basa en cuatro criterios básicos que tras su aplicación ofrecen las mejores alternativas. En esta fase también se incluye un complejo análisis de evolución temporal que incorpora novedosas definiciones y formulaciones. e. Derivado de la definición de la metodología creada en esta Tesis para la realización de los análisis de evolución temporal, se ha podido definir un nuevo teorema matemático que se ha bautizado como “Familia de cuadriláteros de área constante”. 7. Especificación de la infraestructura física del Sistema de Ayuda al Capitán: parte fundamental de sistema es la infraestructura física sobre la que se sustentaría. Esta infraestructura estaría compuesta por sensores, actuadores, aplicaciones para dispositivos móviles, etc. En este capítulo se analizan los diferentes elementos que la constituirían y las tecnologías implicadas. 8. Especificación de la infraestructura de servicios. 9. Creación del Blog Virtual Environments (http://epcinnova-virtualenvironments.blogspot.com.es/) en el que se han publicado todas las pruebas realizadas en el capítulo que analiza los entornos virtuales como alternativa a los simuladores y a los ensayos en laboratorio o los simulacros, incluyendo en muchos casos la posibilidad de que el visitante del blog pueda realizar la simulación en el entorno virtual. Este blog también incluye otras secciones que se han trabajado durante la Tesis: • Recopilación de diferentes entornos virtuales existentes. • Diagrama que recopila información sobre accidentes tanto en el ámbito marítimo como en el terrestre (en desarrollo). • Esquema propuesto para el acopio de información obtenida a partir de un simulacro. 10. Esta Tesis es la base para el proyecto e-Flow (nombre de una de las aplicaciones que desarrolladas en esta obra), un proyecto en el que el autor de esta Tesis ha trabajado como Project Manager. En el proyecto participa un consorcio de empresas y la UPM, y tiene como objetivo trasladar a la realidad gran parte de los planteamientos e ideas presentadas en esta Tesis. Este proyecto incluye el desarrollo de la infraestructura física y de servicios que permitirán, entre otras cosas, implementar en infraestructuras complejas una plataforma que posibilita la evacuación dinámica y un control ubicuo de los sistemas de monitorización y actuación implementados. En estos momentos se está finalizando el proyecto, cuyo objetivo final es la implementación de un piloto en un Hospital. También destacamos los siguientes avances a nivel de difusión científico-tecnológico: • Ponencia en el “52 congreso de la Ingeniería Naval en España” presentando un artículo “e-Flow- Sistema integral inteligente de soporte a la evacuación”. En este artículo se trata tanto el proyecto e-Flow del que soy Project Manager, como esta Tesis Doctoral, al ser temas estrechamente vinculados. En 2014 se publicó en dos números de la Revista Ingeniería Naval el artículo presentado a estas jornadas. • Co-autor en el artículo “E-Flow: A communication system for user notification in dynamic evacuation scenarios” presentado en el 7th International Conference on Ubicuous Computing & Ambient Intelligence (UCAMI) celebrado en Costa Rica. Por último, una de las aportaciones más interesantes, es la definición de un gran número de líneas de investigación futuras en base a todos los avances realizados en esta Tesis. ABSTRACT With this Thesis a new approach for understanding evacuation process is considered, taking advantage of the existing and open technologies that will allow this process to be interpreted as a dynamic entity. The methodology involves not only tools that allows on.-time evacuation plans, but also creates a physical insfrastructure that makes possible to feed the system with information on real time so, considering in each moment the real situation as well as the specific emergency development it will be feasible to generate alternative plans that responds to the current emergency situation. In this respect, the system will store all this information and will feedback with solutions that will help the decision making along the evacuation process. The innovative and singular contributions of this Thesis are numerous and rich, summarised as follows: 1.- Complete state-of-art study: a. Detection and analysis of different projects on an international level that, although partially, deal with some aspects developed in this Thesis. b. Thorough study at a international level of the developed software - total or partially done - for the simulation of the human behaviour and evacuation processes analysis. A database has been generated that classifies in detail these applications allowing to perform a full analysis and leading to future evolution of its contents. Within the Thesis work, almost a hundred of developments have been analysed but the purpose is to keep up updating this database due to the broad applications and possibilities that it involves. 2. Development of an important chapter that studies the possibility of using virtual scenarios as mid-term alternative for the use of simulations. This section is divided in two blocks: a. Trials in virtual and real scenarios b. Trials in virutal scenarios (trials performed with several ones). 3. E-Flow net design development: Set of tools developed under Rhinoceros for the evacuation net design based on the elements defined in the Thesis: Nodes, Paths, Relations, Areas 4. E-Flow simulator development: Set of tools that uses Rhinoceros as a 3D simulator of human behaviour. This simulator, of my own design, includes a new and original algorithm of human behaviour that involves aspects that are not found in other simulators. This tool allows to perform groups programmed simulations which behaviour is based on their enviroment analysis and presence of dynamic references. It includes other important innovations as for example: tools for signals analysis, dynamic signal elements, easy obstacle adding etc... More over, a tool that allows the own scenario movement implementation has been created by simulating the own oscillation movement, with the purpose of playing the vessel movement's influences in the individuals' displacements. 5. In an advanced stage of the development, the possibility of generating a video recording of all the simulation was also integrated, then from that moment all tests have been filed (and keep on doing so) in a database that collects all simulation characteristics, failures detected, etc. These stored tests amounts to a total of 81 GB at the moment of finishing the Thesis work. Generation and analysis of paths regarding the evacuation net created with E-Flow design and the simulations performed with E-Flow net Simulator. a. Analysis for the optimisation of the network configuration based in the existing nodes per area. b. Definition of the processes previous to the calculation of the feasible paths c. Paths calculation: i. Analysis of the different algorithms on existance nowadays for the routes optimisation. ii. Development of a new family of algorithms that I have called “Minimum Decision Algorithm (MDA)”, being composed of: 1. MDA basic 2. MDA minimum 3. MDA of not spacial interference 4. MDA of expansion (es de extenderse) o enlargement ( es de crecimiento) 5. MDA of organised expansion for a single origin (of organised enlargement for a single origin) 6. MDA of organised expansion (of organised enlargement) iii. All these algorithms have been implemented in the E-Flow application created in the Thesis dfor the routes analysis and it is the core of the Captain's support system. d. Determination of the alternatives for the evacuation plan. After defining all possible paths, different processes of analysis existing for weighing-based criteria are described, thus to end defining the own development method proposed in this Thesis and that aims to respond in an agreggation of possible routes basis obtained by means of the MDA algorithms what is the routes' combination more suitable for the Plan or Plans in every situation. The methodology created fot the selection of the combinations of routes that determine a complete Plan is baesd in four basic criteria that after applying, offer the best alternatives. In this stage a complex analysis of the progress along time is also included, that adds original and innovative defintions and formulations. e. Originated from the methodology created in this Thesis for the perfoming of the analysy of the progress along time, a new mathematic theorem has been defined, that has been called as "Family of quadrilateral of constant area". 7. Specification of the physiscal infrastructure of the Captain's help system: essential part is this physical infrastructure that will support it. This system will be made of sensors, actuators, apps for mobile devices etc... Within this chapter the different elements and technologies that make up this infrastructure will be studied. 8. Specification for the services infrastructure. 9. Start up of the Blog. " Virtual Environments (http://epcinnova-virtualenvironments.blogspot.com.es/)" in which all tests performed have been published in terms of analysis of the virtual enviroments as alternative to the simulators as well as to the laboratory experiments or simulations, including in most of the cases the possibility that the visitor can perform the simulation within the virtual enviroment. This blog also includes other sections that have been worked along and within this Thesis: - Collection of different virtual scenarios existent. - Schema that gathers information concerning accidents for maritime and terrestrial areas (under development) - Schema proposed for the collecting of information obtained from a simulation. 10. This Thesis is the basis of the E-Flow project (name of one of the applications developed in this work), a project in which the Thesis' author has worked in as Project Manager. In the project takes part a consortium of firms as well as the UPM and the aim is to bring to real life most part of the approaches and ideas contained in this Thesis. This project includes the development of the physical infrastructure as well as the services that will allow, among others, implement in complex infrastrucutres a platform that will make possible a dynamic evacuation and a continuous control of the monitoring and acting systems implemented. At the moment the project is getting to an end which goal is the implementation of a pilot project in a Hospital. We also would like to highlight the following advances concerning the scientific-technology divulgation: • Talk in the " 52th Congress of the Naval Engineering in Spain" with the article "E-Flow . Intelligent system integrated for supporting evacuation". This paper is about project E-Flow which I am Project Manager of, as well as this Thesis for the Doctorate, being both closely related. Two papers published In 2014 in the Naval Engineering Magazine. • Co-author in the article “E-Flow: A communication system for user notification in dynamic evacuation scenarios” [17] introduced in the 7th International Conference on Ubicuous Computing & Ambient Intelligence (UCAMI) held in Costa Rica. Last, but not least, one of the more interesting contributions is the defintion of several lines of research in the future, based on the advances made in this Thesis.
Resumo:
En la situación actual donde los sistemas TI sanitarios son diversos con modelos que van desde soluciones predominantes, adoptadas y creadas por grandes organizaciones, hasta soluciones a medida desarrolladas por cualquier empresa de la competencia para satisfacer necesidades concretas. Todos estos sistemas se encuentran bajo similares presiones financieras, no sólo de las condiciones económicas mundiales actuales y el aumento de los costes sanitarios, sino también bajo las presiones de una población que ha adoptado los avances tecnológicos actuales, y demanda una atención sanitaria más personalizable a la altura de esos avances tecnológicos que disfruta en otros ámbitos. El objeto es desarrollar un modelo de negocio orientado al soporte del intercambio de información en el ámbito clínico. El objetivo de este modelo de negocio es aumentar la competitividad dentro de este sector sin la necesidad de recurrir a expertos en estándares, proporcionando perfiles técnicos cualificados menos costosos con la ayuda de herramientas que simplifiquen el uso de los estándares de interoperabilidad. Se hará uso de especificaciones abiertas ya existentes como FHIR, que publica documentación y tutoriales bajo licencias abiertas. La principal ventaja que nos encontramos es que ésta especificación presenta un giro en la concepción actual de la disposición de información clínica, vista hasta ahora como especial por el requerimiento de estándares más complejos que solucionen cualquier caso por específico que sea. Ésta especificación permite hacer uso de la información clínica a través de tecnologías web actuales (HTTP, HTML, OAuth2, JSON, XML) que todo el mundo puede usar sin un entrenamiento particular para crear y consumir esta información. Partiendo por tanto de un mercado con una integración de la información casi inexistente, comparada con otros entornos actuales, hará que el gasto en integración clínica aumente dramáticamente, dejando atrás los desafíos técnicos cuyo gasto retrocederá a un segundo plano. El gasto se centrará en las expectativas de lo que se puede obtener en la tendencia actual de la personalización de los datos clínicos de los pacientes, con acceso a los registros de instituciones junto con datos ‘sociales/móviles/big data’.---ABSTRACT---In the current situation IT health systems are diverse, with models varying from predominant solutions adopted and created by large organizations, to ad-hoc solutions developed by any company to meet specific needs. However, all these systems are under similar financial pressures, not only from current global economic conditions and increased health care costs, but also under pressure from a population that has embraced the current technological advances, and demand a more personalized health care, up to those enjoyed by technological advances in other areas. The purpose of this thesis is to develop a business model aimed at the provision of information exchange within the clinical domain. It is intended to increase competitiveness in the health IT sector without the need for experts in standards, providing qualified technical profiles less expensively with the help of tools that simplify the use of interoperability standards. Open specifications, like FHIR, will be used in order to enable interoperability between systems. The main advantage found within FHIR is that introduces a shift in the current conception of available clinical information. So far seen, the clinical information domain IT systems, as a special requirement for more complex standards that address any specific case. This specification allows the use of clinical information through existing web technologies (HTTP, HTML, OAuth2, JSON and XML), which everyone can use with no particular training to create and consume this information. The current situation in the sector is that the integration of information is almost nonexistent, compared to current trends. Spending in IT health systems will increase dramatically within clinical integration for the next years, leaving the technical challenges whose costs will recede into the background. The investment on this area will focus on the expectations of what can be obtained in the current trend of personalization of clinical data of patients with access to records of institutions with ‘social /mobile /big data’.
Resumo:
Un Service Business Framework consiste en una serie de componentes interrelacionados que permiten la gestión de servicios de negocio a través de su ciclo de vida, desde su creación, descubrimiento y comparación, hasta su monetización (incluyendo un posible reparto de beneficios). De esta manera, el denominado FIWARE Business Framework trata de permitir a los usuarios de la plataforma FIWARE mejorar sus productos con funcionalidades de búsqueda, describrimiento, comparación, monetización y reparto de beneficios. Para lograr este objetivo, el Business Framework de FIWARE proporciona la especificación abierta y las APIs de una serie de components (denominados \Generic Enablers" en terminología FIWARE), junto con una implementación de referencia de las mismas pueden ser facilmente integradas en los sitemas existentes para conseguir aplicaciones con valor a~nadido. Al comienzo de este trabajo de fin de master, el Business Framework de FIWARE no era lo suficientemente maduro como para cubrir los requisitos de sus usuarios, ya que ofrecía modelos demasiado generales y dejaba algunas funcionalidades clave para ser implementadas por los usuarios. Para solucionar estos problemas, el principal objectivo desarrollado en el contexto de este trabajo de fin de master ha consistido en mejorar y evolucionar el Business Framework de FIWARE para dar respuesta a las demandas de sus usuarios. Para alcanzar el pricipal objetivo propuesto, el Business Framework de FIWARE ha sido evaluado usando la información proporcionada por los usuarios de la plataforma, principalmente PyMEs y start-ups que usan este framework en sus soluciones, con el objetivo de obtener una lista de requisitos y de dise~nar a partir de éstos un roadmap de evolución a 6 meses. Después, los diferentes problemas identificados se han tratado uno por uno dando en cada caso una solución capaz de cubrir los requisitos de los usuarios. Finalmente, se han evaluado los resultados obtenidos en el proyecto integrando el Business Framework desarrollado con un sistema existente para la gestión de datos de consusmo energético, construyendo lo que se ha denominado Mercado de Datos de Consumo Energético. Esto además ha permitido demostrar la utilidad del framework propuesto para evolucionar una plataforma de datos abiertos bien conocida como es CKAN a un verdadero mercado de datos.---ABSTRACT---Service Business Frameworks consist on a number of interrelated components that support the management of business services across their whole lifecycle, from their creation, publication, discovery and comparison, to their monetization (possibly including revenue settlement and sharing). In this regard, the FIWARE Business Framework aims at allowing FIWARE users to enhance their solutions with search, discovery, comparison, monetization and revenue settlement and sharing features. To achieve this objective, the FIWARE Business Framework provides the open specification and APIs of a comprehensive set of components (called Generic Enablers in FIWARE terminology), along with a reference implementation of these APIs,, that can be easily integrated with existing systems in order to create value added applications. At the beginning of the current Master's Thesis, the FIWARE Business Framework was not mature enough to cover the requirements of the its users, since it provided too general models and leaved some key functionality to be implemented by those users. To deal with these issues, the main objective carried out in the context of this Master's Thesis have been enhancing and evolving the FIWARE Business Framework to accomplish with the demands of its users. For achieving the main objective of this Master's Thesis, the FWARE Business Framework has been evaluated using the feedback provided by FIWARE users, mainly SMEs and start-ups, actually using the framework in their solutions, in order to determine a list of requirements and to design a roadmap for the evolution and improvement of the existing framework in the next 6 months. Then, the diferent issues detected have been tackle one by one enhancing them, and trying to give a solution able to cover users requirements. Finally, the results of the project have been evaluated by integrating the evolved FIWARE Business Framework with an existing system in charge of the management of energy consumption data, building what has been called the Energy Consumption Data Market. This has also allowed demonstrating the usefulness of the proposed business framework to evolve CKAN, a renowned open data platform, into an actual, fully- edged data market.
Resumo:
Los tipos de datos concurrentes son implementaciones concurrentes de las abstracciones de datos clásicas, con la diferencia de que han sido específicamente diseñados para aprovechar el gran paralelismo disponible en las modernas arquitecturas multiprocesador y multinúcleo. La correcta manipulación de los tipos de datos concurrentes resulta esencial para demostrar la completa corrección de los sistemas de software que los utilizan. Una de las mayores dificultades a la hora de diseñar y verificar tipos de datos concurrentes surge de la necesidad de tener que razonar acerca de un número arbitrario de procesos que invocan estos tipos de datos de manera concurrente. Esto requiere considerar sistemas parametrizados. En este trabajo estudiamos la verificación formal de propiedades temporales de sistemas concurrentes parametrizados, poniendo especial énfasis en programas que manipulan estructuras de datos concurrentes. La principal dificultad a la hora de razonar acerca de sistemas concurrentes parametrizados proviene de la interacción entre el gran nivel de concurrencia que éstos poseen y la necesidad de razonar al mismo tiempo acerca de la memoria dinámica. La verificación de sistemas parametrizados resulta en sí un problema desafiante debido a que requiere razonar acerca de estructuras de datos complejas que son accedidas y modificadas por un numero ilimitado de procesos que manipulan de manera simultánea el contenido de la memoria dinámica empleando métodos de sincronización poco estructurados. En este trabajo, presentamos un marco formal basado en métodos deductivos capaz de ocuparse de la verificación de propiedades de safety y liveness de sistemas concurrentes parametrizados que manejan estructuras de datos complejas. Nuestro marco formal incluye reglas de prueba y técnicas especialmente adaptadas para sistemas parametrizados, las cuales trabajan en colaboración con procedimientos de decisión especialmente diseñados para analizar complejas estructuras de datos concurrentes. Un aspecto novedoso de nuestro marco formal es que efectúa una clara diferenciación entre el análisis del flujo de control del programa y el análisis de los datos que se manejan. El flujo de control del programa se analiza utilizando reglas de prueba y técnicas de verificación deductivas especialmente diseñadas para lidiar con sistemas parametrizados. Comenzando a partir de un programa concurrente y la especificación de una propiedad temporal, nuestras técnicas deductivas son capaces de generar un conjunto finito de condiciones de verificación cuya validez implican la satisfacción de dicha especificación temporal por parte de cualquier sistema, sin importar el número de procesos que formen parte del sistema. Las condiciones de verificación generadas se corresponden con los datos manipulados. Estudiamos el diseño de procedimientos de decisión especializados capaces de lidiar con estas condiciones de verificación de manera completamente automática. Investigamos teorías decidibles capaces de describir propiedades de tipos de datos complejos que manipulan punteros, tales como implementaciones imperativas de pilas, colas, listas y skiplists. Para cada una de estas teorías presentamos un procedimiento de decisión y una implementación práctica construida sobre SMT solvers. Estos procedimientos de decisión son finalmente utilizados para verificar de manera automática las condiciones de verificación generadas por nuestras técnicas de verificación parametrizada. Para concluir, demostramos como utilizando nuestro marco formal es posible probar no solo propiedades de safety sino además de liveness en algunas versiones de protocolos de exclusión mutua y programas que manipulan estructuras de datos concurrentes. El enfoque que presentamos en este trabajo resulta ser muy general y puede ser aplicado para verificar un amplio rango de tipos de datos concurrentes similares. Abstract Concurrent data types are concurrent implementations of classical data abstractions, specifically designed to exploit the great deal of parallelism available in modern multiprocessor and multi-core architectures. The correct manipulation of concurrent data types is essential for the overall correctness of the software system built using them. A major difficulty in designing and verifying concurrent data types arises by the need to reason about any number of threads invoking the data type simultaneously, which requires considering parametrized systems. In this work we study the formal verification of temporal properties of parametrized concurrent systems, with a special focus on programs that manipulate concurrent data structures. The main difficulty to reason about concurrent parametrized systems comes from the combination of their inherently high concurrency and the manipulation of dynamic memory. This parametrized verification problem is very challenging, because it requires to reason about complex concurrent data structures being accessed and modified by threads which simultaneously manipulate the heap using unstructured synchronization methods. In this work, we present a formal framework based on deductive methods which is capable of dealing with the verification of safety and liveness properties of concurrent parametrized systems that manipulate complex data structures. Our framework includes special proof rules and techniques adapted for parametrized systems which work in collaboration with specialized decision procedures for complex data structures. A novel aspect of our framework is that it cleanly differentiates the analysis of the program control flow from the analysis of the data being manipulated. The program control flow is analyzed using deductive proof rules and verification techniques specifically designed for coping with parametrized systems. Starting from a concurrent program and a temporal specification, our techniques generate a finite collection of verification conditions whose validity entails the satisfaction of the temporal specification by any client system, in spite of the number of threads. The verification conditions correspond to the data manipulation. We study the design of specialized decision procedures to deal with these verification conditions fully automatically. We investigate decidable theories capable of describing rich properties of complex pointer based data types such as stacks, queues, lists and skiplists. For each of these theories we present a decision procedure, and its practical implementation on top of existing SMT solvers. These decision procedures are ultimately used for automatically verifying the verification conditions generated by our specialized parametrized verification techniques. Finally, we show how using our framework it is possible to prove not only safety but also liveness properties of concurrent versions of some mutual exclusion protocols and programs that manipulate concurrent data structures. The approach we present in this work is very general, and can be applied to verify a wide range of similar concurrent data types.
Resumo:
La integración de fuentes de información heterogéneas ha sido un problema abordado en diferentes tipos de fuentes a lo largo de las décadas de diferentes maneras. Una de ellas es el establecimiento de unas relaciones semánticas que permitan poder unir la información de las fuentes relacionadas. A estos enlaces, claves en la integración, se les ha llamado generalmente mappings. Los mappings se han usado en multitud de trabajos y se han abordado, de manera más práctica que teórica en muchos casos, diferentes soluciones para su descubrimiento, su almacenaje, su explotación, etc. Sin embargo, aunque han sido muchas las contribuciones sobre mappings, no hay una definición generalizada y admitida por la comunidad que cubra todos los aspectos vinculados a los mappings. Además, en su proceso de descubrimiento, no existe un marco teórico que defina metódicamente los procesos a seguir y sus características. Igualmente, la actual forma de evaluar el descubrimiento de mappings no es suficiente para toda la casuística existente. En este trabajo se aporta una definición de mapping génerica que engloba todos los sistemas actuales, la especificación detallada del proceso de descubrimiento y el análisis y la propuesta de un proceso de evaluación del descubrimiento. La validez de estos aportes se comprueba con la formulación de hipótesis y su comprobación mediante un estudio cuantitativo sobre un caso de uso con recursos geoespaciales heterogéneos. ABSTRACT The integration of heterogeneous information resources has been an issue addressed in different types of sources over the decades in different ways. One of them is the establishment of semantic relations which allow information from different related resources to be linked. These links, crucial pieces of this integration, are usually known as mappings. These mappings have been widely used in many applications, and different solutions for their discovery, storing, explotation, etc. have been presented, following rather a more practical than theoretical way in many cases. However, although mappings have been widely applied by many researchers, there is a lack of a generally accepted definition that can cover all the aspects related to mappings. Moreover, in the process of mapping discovery, there is not a theoretical framework that defines methodically the processes to be followed and their characteristics. Similarly, the current way of assessing or evaluating the discovery of mappings is insufficient for all the existing use cases. The main contributions of this work are threefold. On the one hand, it presents a general definition of "mapping" which covers all current systems. On the other hand, it describes a detailed specification of the discovery process, and, finally, it faces the analysis and the purpose of the evaluation of this discovery process. The validity of these contributions has been checked with the formulation of hypothesis which have been verified by using heterogeneous geospatial resources in a quantitative study.
Resumo:
El objetivo de este trabajo es desarrollar el módulo central para el futuro sistema web de la asignatura Procesadores de Lenguajes impartida en la Escuela Técnica Superior de Ingenieros Informáticos de la Universidad Politécnica de Madrid. Para dicho desarrollo se aplicarán técnicas de gamificación con el objetivo de mejorar el aprendizaje, subir la tasa de aprobados de la asignatura y despertar interés por parte del alumnado de la misma. Se modelizaron, diseñaron e implementaron una serie de funciones para el nombrado módulo central del proyecto, incluyendo partes de la interfaz gráfica. En el presente documento se ofrece una breve explicación en cuanto al tema de la gamificación y se presentan los requisitos de este módulo siguiendo el documento oficial del IEEE para la especificación de requisitos. Se ofrece también una explicación del proceso de diseño de dichas funcionalidades usando la metodología de software UWE (UML-based Web Engineering). Este sistema presenta varios modelos entre los que se encuentran el modelo de requisitos, modelo de contenido, modelo de navegación y modelo de presentación de los elementos del sistema. Se espera que gracias a este proyecto el alumno se vea más involucrado en la asignatura, a la vez que aumenta su interés sobre dicha materia.---ABSTRACT---The objective of this document is to explain how the work in the central module of a web system has been done. This web system is a platform for the subject Procesadores de Lenguajes which is taught at Escuela Técnica Superior de Ingenieros Informáticos of the Universidad Politécnica de Madrid. Gamification techniques are included in this project with the purpose to improve learning, to increase pass rates and to get students more engaged with the subject. Functions for the central node of this project were analyzed, designed and implemented, including the graphic interface. The present document offers a brief explanation about gamification and presents the system requirements, which were created following the official document for Requirements Specificication by IEEE. It also offers a detailed explanation of the design process using UWE methodology (UML-based Web Engineering). This methodology presents a requirement model, content model, navigation model and presentation model of the elements of the system. We expect that by using this system, students will become more interested in learning, as well as more engaged in the process, resulting in a continuous progress during the course.
Resumo:
La Arquitectura de la Red de las Cosas (IoT) hace referencia a una red de objetos cotidianos interconectados digitalmente. Gracias a IoT, no sólo podemos almacenar, analizar e intercambiar información y datos con dichos objetos, sino que además ellos pueden tener la capacidad de interactuar entre ellos de forma autónoma. Para ellos, los objetos cotidianos disponen de actuadores y sensores que permiten modificar su comportamiento y conocer su estado y propiedades, respectivamente. La gestión de IoT combina todas las funcionalidades necesarias para coordinar un sistema con una Arquitectura de la Red de las Cosas. Una buena gestión del sistema puede reducir costes, mejorar la asistencia a problemas de uso inesperado, corregir fallos y permitir la escalabilidad del sistema permitiéndole la incorporación de nuevos módulos y funcionalidades. En este Proyecto Fin de Grado se realizará primero un análisis de los aspectos de IoT relacionados con la gestión de dispositivos integrados en la Arquitectura de la Red de las Cosas. Después se procederá a realizar la especificación y el diseño de plataforma de gestión. Y finalmente se desarrollarán un caso de uso que permita validar algunos elementos de la plataforma diseñada. Se realizarán distintas pruebas para comprobar una correcta gestión de los dispositivos como el correcto funcionamiento del diseño previamente establecido, por medio, entre otras, de las siguientes operaciones: listar los elementos conectados, posibilidad de obtener y/o modificar dichos elementos (su configuración y su estado) o presentar informes y comprobar el estado en el que se encuentran los dispositivos: operativos o no operativos. De tal forma, en esta memoria se plasma como se ha desarrollado la gestión de dispositivos integrados en un sistema con Arquitectura de la Red de las Cosas utilizando tanto plataformas Intel Galileo como Arduino. ABSTRACT. The Architecture of the Internet of Things (IoT) refers to a network of digitally interconnected everyday objects. With IoT, not only we can store, analyze and exchange information and data with objects, but they can also autonomously interact among them. To accomplish that, the everyday objects are made of actuators and sensors that let us act on their behavior and know their state and properties, respectively. Management of IoT combines all the functionalities needed for coordinating a system with an Architecture of the Internet of Things. A good management system can reduce faults, improve assistance to reduce unexpected problems, correct errors and allow the scalability of the system, allowing the addition of new modules and functionalities. In this Degree Final Project, an analysis about aspects of IoT related to the management of devices integrated into the Architecture of the Internet of things is carried out first. Then, the specification and the design of the management platform is made. Finally, a use case will be developed to validate some elements of the designed platform. Several tests will be run to check the correct management of the devices such as the proper functioning of the design previously established, requesting, among others, the following set of operations: list the connected elements, possibility to obtain or modify these elements (their configuration and their state) or reporting and checking which devices are operating or non-operating. So, in this memory it is explained how it has been carried out the management of devices integrated in a system with an Architecture of the Internet of Things (IoT), based on the Intel Galileo and Arduino platforms.
Resumo:
Este estudio pretende estimar la eficiencia y la productividad de las principales provincias de la producción de trigo en Egipto. Los datos utilizados en este estudio son datos de panel a nivel de provincias del período 1990-2012, obtenidos del Ministerio de Agricultura y Recuperación Tierras, y de la Agencia Central de Movilización Pública y Estadística, Egipto. Se aplica el enfoque de fronteras estocásticas para medir la eficiencia (función de producción de Cobb-Douglas) y se emplean las especificaciones de Battese y Coelli (1992) y (1995). También se utiliza el índice de Malmquist como una aproximación no paramétrica (Análisis de Envolvente de Datos) para descomponer la productividad total de los factores de las principales provincias productoras de trigo en Egipto en cambio técnico y cambio de eficiencia. El coeficiente de tierra es positivo y significativo en los dos especificaciones Battese y Coelli (1992) y (1995), lo que implica que aumentar la tierra para este cultivo aumentaría significativamente la producción de trigo. El coeficiente de trabajo es positivo y significativo en la especificación de Battese y Coelli (1992), mientras que es positivo y no significativo en la especificación de Battese y Coelli (1995). El coeficiente de la maquinaria es negativo y no significativo en las dos especificaciones de Battese y Coelli (1992) y (1995). El coeficiente de cambio técnico es positivo y no significativo en la especificación de Battese y Coelli (1992), mientras que es positiva y significativo en la especificación de Battese y Coelli (1995). Las variables de efectos del modelo de ineficiencia Battese y Coelli (1995) indican que no existe impacto de las diferentes provincias en la producción de trigo en Egipto; la ineficiencia técnica de la producción de trigo tendió a disminuir durante el período de estudio; y no hay ningún impacto de género en la producción de trigo en Egipto. Los niveles de eficiencia técnica varían entre las diferentes provincias para las especificaciones de Battese y Coelli (1992) y (1995); el nivel mínimo medio de eficiencia técnica es 91.61% en la provincia de Fayoum, mientras que el nivel máximo medio de la eficiencia técnica es 98.69% en la provincia de Dakahlia. La eficiencia técnica toma un valor medio de 95.37%, lo que implica poco potencial para mejorar la eficiencia de uso de recursos en la producción de trigo. La TFPCH de la producción de trigo en Egipto durante el período 1990-2012 tiene un valor menor que uno y muestra un declive. Esta disminución es debida más al componente de cambio técnico que al componente de cambio de eficiencia. La disminución de TFPCH mejora con el tiempo. La provincia de Menoufia tiene la menor disminución en TFPCH, 6.5%, mientras que dos provincias, Sharkia y Dakahlia, son las que más disminuyen en TFPCH, 13.1%, en cada uno de ellas. Menos disminución en TFPCH ocurre en el período 2009-2010, 0.3%, mientras que más disminución se produce en TFPCH en el período 1990-1991, 38.9%. La disminución de la PTF de la producción de trigo en Egipto se atribuye principalmente a la mala aplicación de la tecnología. ABSTRACT The objectives of this study are to estimate the efficiency and productivity of the main governorates of wheat production in Egypt. The data used in this study is a panel data at the governorates level, it represents the time period 1990-2012 and taken from the Ministry of Agriculture and Land Reclamation, and the Central Agency for Public Mobilization and Statistics, Egypt. We apply the stochastic frontier approach for efficiency measurement (Cobb-Douglas production function) and the specifications of Battese and Coelli (1992) and (1995) are employed. Also we use Malmquist TFP index as a non-parametric approach (DEA) to decompose total factor productivity of the main governorates of wheat production in Egypt into technical change and efficiency change. The coefficient of land is positive and significant at Battese and Coelli (1992) and (1995) specifications, implying that increasing the wheat area could significantly enhance the production of wheat. The coefficient of labor is positive and significant at Battese and Coelli (1992) specification, while it is positive and insignificant at Battese and Coelli (1995) specification. The coefficient of machinery is negative and insignificant at the specifications of Battese and Coelli (1992) and (1995). The technical change coefficient is positive and insignificant at Battese and Coelli (1992) specification, while it is positive and significant at Battese and Coelli (1995) specification. The variables of the inefficiency effect model indicate that there is no impact from the location of the different governorates on wheat production in Egypt, the technical inefficiency of wheat production tended to decrease through the period of study, and there is no impact from the gender on wheat production in Egypt. The levels of technical efficiency vary among the different governorates for the specifications of Battese and Coelli (1992) and (1995); the minimum mean level of technical efficiency is 91.61% at Fayoum governorate, while the maximum mean level of technical efficiency is 98.69% at Dakahlia governorate. The technical efficiency takes an average value of 95.37%, this implying that little potential exists to improve resource use efficiency in wheat production. The TFPCH of wheat production in Egypt during the time period 1990-2012 has a value less than one and shows a decline; this decline is due mainly to the technical change component than the efficiency change component. The decline in TFPCH is generally improves over time. Menoufia governorate has the least declining in TFPCH by 6.5%, while two governorates, Sharkia and Dakahlia have the most declining in TFPCH by 13.1% for each of them. The least declining in TFPCH occurred at the period 2009- 2010 by 0.3%, while the most declining in TFPCH occurred at the period 1990-1991 by 38.9%. The declining in TFP of wheat production in Egypt is attributed mainly to poor application of technology.