20 resultados para Branch-and-bound algorithm
Resumo:
Probabilistic graphical models are a huge research field in artificial intelligence nowadays. The scope of this work is the study of directed graphical models for the representation of discrete distributions. Two of the main research topics related to this area focus on performing inference over graphical models and on learning graphical models from data. Traditionally, the inference process and the learning process have been treated separately, but given that the learned models structure marks the inference complexity, this kind of strategies will sometimes produce very inefficient models. With the purpose of learning thinner models, in this master thesis we propose a new model for the representation of network polynomials, which we call polynomial trees. Polynomial trees are a complementary representation for Bayesian networks that allows an efficient evaluation of the inference complexity and provides a framework for exact inference. We also propose a set of methods for the incremental compilation of polynomial trees and an algorithm for learning polynomial trees from data using a greedy score+search method that includes the inference complexity as a penalization in the scoring function.
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:
PAMELA (Phased Array Monitoring for Enhanced Life Assessment) SHMTM System is an integrated embedded ultrasonic guided waves based system consisting of several electronic devices and one system manager controller. The data collected by all PAMELA devices in the system must be transmitted to the controller, who will be responsible for carrying out the advanced signal processing to obtain SHM maps. PAMELA devices consist of hardware based on a Virtex 5 FPGA with a PowerPC 440 running an embedded Linux distribution. Therefore, PAMELA devices, in addition to the capability of performing tests and transmitting the collected data to the controller, have the capability of perform local data processing or pre-processing (reduction, normalization, pattern recognition, feature extraction, etc.). Local data processing decreases the data traffic over the network and allows CPU load of the external computer to be reduced. Even it is possible that PAMELA devices are running autonomously performing scheduled tests, and only communicates with the controller in case of detection of structural damages or when programmed. Each PAMELA device integrates a software management application (SMA) that allows to the developer downloading his own algorithm code and adding the new data processing algorithm to the device. The development of the SMA is done in a virtual machine with an Ubuntu Linux distribution including all necessary software tools to perform the entire cycle of development. Eclipse IDE (Integrated Development Environment) is used to develop the SMA project and to write the code of each data processing algorithm. This paper presents the developed software architecture and describes the necessary steps to add new data processing algorithms to SMA in order to increase the processing capabilities of PAMELA devices.An example of basic damage index estimation using delay and sum algorithm is provided.
Resumo:
Las enfermedades arteriales vienen presididas por la aterosclerosis, que es un proceso crónico de degeneración, que evoluciona hacia la obstrucción de la luz arterial. La pared de la arteria se engrosa debido al depósito de elementos grasos tales como el colesterol. Los stents intraluminales son diminutas estructuras tubulares autoexpandibles de malla de metal, que se colocan dentro de la arteria coronaria después de una angioplastia con balón para prevenir el cierre de dicha arteria. A pesar de estar diseñados para ser compatibles con el tejido humano, a menudo se da una reacción en cadena de consecuencias indeseables. La reestenosis intra-stent es un problema creciente debido al importante incremento que se ha producido en la utilización del stent intracoronario como forma de revascularización percutánea. Se habla de una incidencia global del 28%, siendo la causa principal de su aparición la proliferación neointimal a través de una compleja cascada de sucesos que pueden tardar meses en desarrollarse. Una de las reacciones más importantes es la trombosis o la formación de una fina capa de coágulo como respuesta a la presencia de un material extraño. Este proceso es multifactorial, y en él intervienen la regresión de la pared como consecuencia del estiramiento previo, la denudación endotelial, lo que permite la agregación plaquetaria, la proliferación neointimal, lo que facilita a los receptores de membrana desencadenar un proceso de agregación posterior y, por último, el remodelado negativo inadecuado de la pared, lo que produce pérdida de luz arterial. Se ha observado frecuentemente que el depósito de ateroma en la pared arterial está relacionado con el valor de los esfuerzos cortantes en la misma. Hay mayores probabilidades de engrosamiento de la pared en las zonas donde son bajos los esfuerzos cortantes, quizá por el mayor tiempo de residencia de las partículas circulantes por el torrente sanguíneo. Si nos centramos en la afirmación anterior, el siguiente paso sería buscar las zonas susceptibles de presentar un valor bajo de dichos esfuerzos. Las zonas potencialmente peligrosas son los codos y bifurcaciones, entre otras. Nos hemos centrado en una bifurcación coronaria, ya que los patrones de flujo que se suelen presentar, tales como recirculación y desprendimiento de vórtices están íntimamente relacionados con las técnicas de implantación de stents en esta zona. Proyectamos nuestros esfuerzos en el estudio de dos técnicas de implante, utilizando un único stent y una tercera a través de una configuración de culotte con el uso de dos stents. El primer caso trata de una bifurcación con un único stent en la rama principal cuyos struts cierran el orificio lateral que da salida a la rama secundaria de la bifurcación, es decir sería un stent sin orificio. El segundo consiste en un único stent también, pero con la diferencia de que éste presenta un orificio de comunicación con la rama lateral. Todas estas técnicas se aplicaron a bifurcaciones de 45º y de 90º. Introdujimos las geometrías -una vez confeccionadas con el código comercial Gambit- en el programa Ansys-Fluent contemplando régimen estacionario. Los resultados obtenidos fueron cotejados con los experimentales, que se realizaron paralelamente, con el fin de corroborarlos. Una vez validados, el estudio computacional ya contó con la fiabilidad suficiente como para abordar el régimen no estacionario, tanto en la versión de reposo como en la de ejercicio –hiperemia- El comportamiento reológico de la sangre para régimen no estacionario en estado de reposo es otra de las tareas abordadas, realizando una comparativa de los modelos Newtoniano, Carreau y Ley de Potencias. Finalmente, en una última etapa, debido a la reciente incursión de los stents diseñados específicamente frente a los convencionales, se aborda el comportamiento hemodinámico de los mismos. Concretamente, se comparó el patrón de flujo en un modelo de bifurcación coronaria con los nuevos stents (Stentys) y los convencionales. Se estudiaron cuatro modelos, a saber, stent simple en la rama principal, stent simple en la rama secundaria, culotte desplegando el primer stent en la rama principal y culotte desplegando el primer stent en la rama secundaria. La bifurcación estudiada presenta un ángulo de apertura de 45º y la relación de diámetros de las ramas hija se ajustaron de acuerdo a la ley de Finet. Se recogieron resultados experimentales en el laboratorio y se corrieron simulaciones numéricas con Ansys Fluent paralelamente. Las magnitudes que se tuvieron en cuenta con el fin de ubicar las regiones potencialmente ateroscleróticas fueron los esfuerzos cortantes, vorticidad y caída de presión. ABSTRACT Nowadays, restenosis after percutaneous dilation is the major drawback of coronary angioplasty. It represents a special form of atherosclerosis due to the healing process secondary to extensive vessel trauma induced after intracoronary balloon inflation. The use of coronary stents may decrease the incidence of this phenomenon. Unfortunately, intra-stent restenosis still occurs in 20-30% of the cases following the stent implantation. Most experiments suggest a correlation between low wall shear stress and wall thickness. The preferential locations for the atherosclerotic plaque are bifurcations. The objective of this work is to analyze the local hemodynamic changes caused in a coronary bifurcation by three different stenting techniques: simple stenting of the main vessel, simple stenting of the main vessel with kissing balloon in the side branch and culotte. To carry out this study an idealized geometry of a coronary bifurcation is used, and two bifurcation angles, 45º and 90º, are chosen as representative of the wide variety of real configurations. Both numerical simulations and experimental measurements are performed. First, steady simulations are carried out with the commercial code Ansys-Fluent, then, experimental measurements with PIV (Particle Image Velocimetry), obtained in the laboratory, are used to validate the numerical simulations. The steady computational simulations show a good overall agreement with the experimental data. Then, pulsatile flow is considered to take into account the transient effects. The time averaged wall shear stress, oscillatory shear index and pressure drop obtained numerically are used to compare the behavior of the stenting techniques. In a second step, the rheologic behavior of blood was considered comparing Newtonian, Carreau and Power Law models. Finally, as a result of previous investigations with conventional stents and after the recent emergence of several devices specifically designed for coronary bifurcations angioplasty, the hemodynamic performance of these new devices (Stentys) was compared to conventional ones and techniques in a coronary bifurcation model. Four different stenting techniques: simple stenting of the main vessel, simple stenting of the side vessel, culotte deploying the first stent in the main vessel and culotte deploying the first stent in the side vessel have been considered. To carry out this study an idealized geometry of a coronary bifurcation is used. A 45 degrees bifurcation angle is considered and the daughter branches diameters are obtained according to the Finet law. Both experiments in the laboratory and numerical simulations were used , focusing on important factors for the atherosclerosis development, like the wall shear stress, the oscillation shear index, the pressure loss and the vorticity.
Resumo:
Los sistemas empotrados son cada día más comunes y complejos, de modo que encontrar procesos seguros, eficaces y baratos de desarrollo software dirigidos específicamente a esta clase de sistemas es más necesario que nunca. A diferencia de lo que ocurría hasta hace poco, en la actualidad los avances tecnológicos en el campo de los microprocesadores de los últimos tiempos permiten el desarrollo de equipos con prestaciones más que suficientes para ejecutar varios sistemas software en una única máquina. Además, hay sistemas empotrados con requisitos de seguridad (safety) de cuyo correcto funcionamiento depende la vida de muchas personas y/o grandes inversiones económicas. Estos sistemas software se diseñan e implementan de acuerdo con unos estándares de desarrollo software muy estrictos y exigentes. En algunos casos puede ser necesaria también la certificación del software. Para estos casos, los sistemas con criticidades mixtas pueden ser una alternativa muy valiosa. En esta clase de sistemas, aplicaciones con diferentes niveles de criticidad se ejecutan en el mismo computador. Sin embargo, a menudo es necesario certificar el sistema entero con el nivel de criticidad de la aplicación más crítica, lo que hace que los costes se disparen. La virtualización se ha postulado como una tecnología muy interesante para contener esos costes. Esta tecnología permite que un conjunto de máquinas virtuales o particiones ejecuten las aplicaciones con unos niveles de aislamiento tanto temporal como espacial muy altos. Esto, a su vez, permite que cada partición pueda ser certificada independientemente. Para el desarrollo de sistemas particionados con criticidades mixtas se necesita actualizar los modelos de desarrollo software tradicionales, pues estos no cubren ni las nuevas actividades ni los nuevos roles que se requieren en el desarrollo de estos sistemas. Por ejemplo, el integrador del sistema debe definir las particiones o el desarrollador de aplicaciones debe tener en cuenta las características de la partición donde su aplicación va a ejecutar. Tradicionalmente, en el desarrollo de sistemas empotrados, el modelo en V ha tenido una especial relevancia. Por ello, este modelo ha sido adaptado para tener en cuenta escenarios tales como el desarrollo en paralelo de aplicaciones o la incorporación de una nueva partición a un sistema ya existente. El objetivo de esta tesis doctoral es mejorar la tecnología actual de desarrollo de sistemas particionados con criticidades mixtas. Para ello, se ha diseñado e implementado un entorno dirigido específicamente a facilitar y mejorar los procesos de desarrollo de esta clase de sistemas. En concreto, se ha creado un algoritmo que genera el particionado del sistema automáticamente. En el entorno de desarrollo propuesto, se han integrado todas las actividades necesarias para desarrollo de un sistema particionado, incluidos los nuevos roles y actividades mencionados anteriormente. Además, el diseño del entorno de desarrollo se ha basado en la ingeniería guiada por modelos (Model-Driven Engineering), la cual promueve el uso de los modelos como elementos fundamentales en el proceso de desarrollo. Así pues, se proporcionan las herramientas necesarias para modelar y particionar el sistema, así como para validar los resultados y generar los artefactos necesarios para el compilado, construcción y despliegue del mismo. Además, en el diseño del entorno de desarrollo, la extensión e integración del mismo con herramientas de validación ha sido un factor clave. En concreto, se pueden incorporar al entorno de desarrollo nuevos requisitos no-funcionales, la generación de nuevos artefactos tales como documentación o diferentes lenguajes de programación, etc. Una parte clave del entorno de desarrollo es el algoritmo de particionado. Este algoritmo se ha diseñado para ser independiente de los requisitos de las aplicaciones así como para permitir al integrador del sistema implementar nuevos requisitos del sistema. Para lograr esta independencia, se han definido las restricciones al particionado. El algoritmo garantiza que dichas restricciones se cumplirán en el sistema particionado que resulte de su ejecución. Las restricciones al particionado se han diseñado con una capacidad expresiva suficiente para que, con un pequeño grupo de ellas, se puedan expresar la mayor parte de los requisitos no-funcionales más comunes. Las restricciones pueden ser definidas manualmente por el integrador del sistema o bien pueden ser generadas automáticamente por una herramienta a partir de los requisitos funcionales y no-funcionales de una aplicación. El algoritmo de particionado toma como entradas los modelos y las restricciones al particionado del sistema. Tras la ejecución y como resultado, se genera un modelo de despliegue en el que se definen las particiones que son necesarias para el particionado del sistema. A su vez, cada partición define qué aplicaciones deben ejecutar en ella así como los recursos que necesita la partición para ejecutar correctamente. El problema del particionado y las restricciones al particionado se modelan matemáticamente a través de grafos coloreados. En dichos grafos, un coloreado propio de los vértices representa un particionado del sistema correcto. El algoritmo se ha diseñado también para que, si es necesario, sea posible obtener particionados alternativos al inicialmente propuesto. El entorno de desarrollo, incluyendo el algoritmo de particionado, se ha probado con éxito en dos casos de uso industriales: el satélite UPMSat-2 y un demostrador del sistema de control de una turbina eólica. Además, el algoritmo se ha validado mediante la ejecución de numerosos escenarios sintéticos, incluyendo algunos muy complejos, de más de 500 aplicaciones. ABSTRACT The importance of embedded software is growing as it is required for a large number of systems. Devising cheap, efficient and reliable development processes for embedded systems is thus a notable challenge nowadays. Computer processing power is continuously increasing, and as a result, it is currently possible to integrate complex systems in a single processor, which was not feasible a few years ago.Embedded systems may have safety critical requirements. Its failure may result in personal or substantial economical loss. The development of these systems requires stringent development processes that are usually defined by suitable standards. In some cases their certification is also necessary. This scenario fosters the use of mixed-criticality systems in which applications of different criticality levels must coexist in a single system. In these cases, it is usually necessary to certify the whole system, including non-critical applications, which is costly. Virtualization emerges as an enabling technology used for dealing with this problem. The system is structured as a set of partitions, or virtual machines, that can be executed with temporal and spatial isolation. In this way, applications can be developed and certified independently. The development of MCPS (Mixed-Criticality Partitioned Systems) requires additional roles and activities that traditional systems do not require. The system integrator has to define system partitions. Application development has to consider the characteristics of the partition to which it is allocated. In addition, traditional software process models have to be adapted to this scenario. The V-model is commonly used in embedded systems development. It can be adapted to the development of MCPS by enabling the parallel development of applications or adding an additional partition to an existing system. The objective of this PhD is to improve the available technology for MCPS development by providing a framework tailored to the development of this type of system and by defining a flexible and efficient algorithm for automatically generating system partitionings. The goal of the framework is to integrate all the activities required for developing MCPS and to support the different roles involved in this process. The framework is based on MDE (Model-Driven Engineering), which emphasizes the use of models in the development process. The framework provides basic means for modeling the system, generating system partitions, validating the system and generating final artifacts. The framework has been designed to facilitate its extension and the integration of external validation tools. In particular, it can be extended by adding support for additional non-functional requirements and support for final artifacts, such as new programming languages or additional documentation. The framework includes a novel partitioning algorithm. It has been designed to be independent of the types of applications requirements and also to enable the system integrator to tailor the partitioning to the specific requirements of a system. This independence is achieved by defining partitioning constraints that must be met by the resulting partitioning. They have sufficient expressive capacity to state the most common constraints and can be defined manually by the system integrator or generated automatically based on functional and non-functional requirements of the applications. The partitioning algorithm uses system models and partitioning constraints as its inputs. It generates a deployment model that is composed by a set of partitions. Each partition is in turn composed of a set of allocated applications and assigned resources. The partitioning problem, including applications and constraints, is modeled as a colored graph. A valid partitioning is a proper vertex coloring. A specially designed algorithm generates this coloring and is able to provide alternative partitions if required. The framework, including the partitioning algorithm, has been successfully used in the development of two industrial use cases: the UPMSat-2 satellite and the control system of a wind-power turbine. The partitioning algorithm has been successfully validated by using a large number of synthetic loads, including complex scenarios with more that 500 applications.