973 resultados para Computación Interactiva


Relevância:

10.00% 10.00%

Publicador:

Resumo:

He aquı una nueva serie de tres artıculos que investigan desde un punto de vista divulgativo la relacion entre la similitud melódica y la teoría de cadenas (una rama de la computación). La similitud melódica, bajo ciertas hipótesis que simplifican el complejo fenómeno que es, se puede con- cebir como un problema de comparación de cadenas, donde las cadenas aquí representan sucesiones de notas. En un artículo titulado Comparison of musical sequences Mongeau y Sankoff [MS90]explotaron esta idea. En esta serie glosaremos su trabajo con detalle. En el artículo de este mes (I) discutimos el concepto de similitud melódica, por la parte musical, el concepto de comparación de cadenas, con especial ́enfasis en la distancia de edici ón, y finalmente analizamos los aspectos computacionales de dicha distancia.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La computación con membranas surge como una alternativa a la computación tradicional. Dentro de este campo se sitúan los denominados Sistemas P de Transición que se basan en la existencia de regiones que contienen recursos y reglas que hacen evolucionar a dichos recursos para poder llevar a cada una de las regiones a una nueva situación denominada configuración. La sucesión de las diferentes configuraciones conforman la computación. En este campo, el Grupo de Computación Natural de la Universidad Politécnica de Madrid lleva a cabo numerosas investigaciones al amparo de las cuales se han publicado numerosos artículos y realizado varias tesis doctorales. Las principales vías de investigación han sido, hasta el momento, el estudio del modelo teórico sobre el que se definen los Sistemas P, el estudio de los algoritmos que se utilizan para la aplicación de las reglas de evolución en las regiones, el diseño de nuevas arquitecturas que mejoren las comunicaciones entre las diferentes membranas (regiones) que componen el sistema y la implantación de estos sistemas en dispositivos hardware que pudiesen definir futuras máquinas basadas en este modelo. Dentro de este último campo, es decir, dentro del objetivo de construir finalmente máquinas que puedan llevar a cabo la funcionalidad de la computación con Sistemas P, la presente tesis doctoral se centra en el diseño de dos procesadores paralelos que, aplicando variantes de algoritmos existentes, favorezcan el crecimiento en el nivel de intra-paralelismo a la hora de aplicar las reglas. El diseño y creación de ambos procesadores presentan novedosas aportaciones al entorno de investigación de los Sistemas P de Transición en tanto en cuanto se utilizan conceptos que aunque previamente definidos de manera teórica, no habían sido introducidos en el hardware diseñado para estos sistemas. Así, los dos procesadores mantienen las siguientes características: - Presentan un alto rendimiento en la fase de aplicación de reglas, manteniendo por otro lado una flexibilidad y escalabilidad medias que son dependientes de la tecnología final sobre la que se sinteticen dichos procesadores. - Presentan un alto nivel de intra-paralelismo en las regiones al permitir la aplicación simultánea de reglas. - Tienen carácter universal en tanto en cuanto no depende del carácter de las reglas que componen el Sistema P. - Tienen un comportamiento indeterminista que es inherente a la propia naturaleza de estos sistemas. El primero de los circuitos utiliza el conjunto potencia del conjunto de reglas de aplicación así como el concepto de máxima aplicabilidad para favorecer el intra-paralelismo y el segundo incluye, además, el concepto de dominio de aplicabilidad para determinar el conjunto de reglas que son aplicables en cada momento con los recursos existentes. Ambos procesadores se diseñan y se prueban mediante herramientas de diseño electrónico y se preparan para ser sintetizados sobre FPGAs. ABSTRACT Membrane computing appears as an alternative to traditional computing. P Systems are placed inside this field and they are based upon the existence of regions called “membranes” that contain resources and rules that describe how the resources may vary to take each of these regions to a new situation called "configuration". Successive configurations conform computation. Inside this field, the Natural Computing Group of the Universidad Politécnica of Madrid develops a large number of works and researches that provide a lot of papers and some doctoral theses. Main research lines have been, by the moment, the study of the theoretical model over which Transition P Systems are defined, the study of the algorithms that are used for the evolution rules application in the regions, the design of new architectures that may improve communication among the different membranes (regions) that compose the whole system and the implementation of such systems over hardware devices that may define machines based upon this new model. Within this last research field, this is, within the objective of finally building machines that may accomplish the functionality of computation with P Systems, the present thesis is centered on the design of two parallel processors that, applying several variants of some known algorithms, improve the level of the internal parallelism at the evolution rule application phase. Design and creation of both processors present innovations to the field of Transition P Systems research because they use concepts that, even being known before, were never used for circuits that implement the applying phase of evolution rules. So, both processors present the following characteristics: - They present a very high performance during the application rule phase, keeping, on the other hand, a level of flexibility and scalability that, even known it is not very high, it seems to be acceptable. - They present a very high level of internal parallelism inside the regions, allowing several rule to be applied at the same time. - They present a universal character meaning this that they are not dependent upon the active rules that compose the P System. - They have a non-deterministic behavior that is inherent to this systems nature. The first processor uses the concept of "power set of the application rule set" and the concept of "maximal application" number to improve parallelism, and the second one includes, besides the previous ones, the concept of "applicability domain" to determine the set of rules that may be applied in each moment with the existing resources.. Both processors are designed and tested with the design software by Altera Corporation and they are ready to be synthetized over FPGAs.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Existe una proliferación de los llamados Smart Products. Ello es debido a que cada vez se apueste más por este tipo de productos tanto en la vida cotidiana como en el sector industrial. Sin embargo el término Smart Product se utiliza con diferentes acepciones en diferentes contextos o dominios de aplicación. La utilización del término con una semántica diferente de la habitual en un contexto puede llevar a problemas serios de compresión. El objetivo de este trabajo es analizar las diferentes definiciones de Smart Products—Productos Inteligentes, Smart Products en terminología inglesa, ampliamente utilizada—que aparecen en la literatura con el objeto de estudiar los diferentes matices y alcances que ofrecen para valorar si es posible obtener una definición de consenso que satisfaga a todas las partes, y especificarla. Con el fin de poder abarcar definiciones conexas introducimos el concepto Smart Thing—este concepto incluirá aquellas definiciones que puedan estar relacionadas con los Smart Products, como es el caso de los Intelligent Products, Smart Objects, Intelligent Systems, Intelligent Object. Para poder analizar las diferentes definiciones existentes en la literatura existente realizamos una Revisión Sistemática de la Literatura. El enfoque de Computación Autonómica—Autonomic Computing—tiene varios aspectos en común con Smart Products. Por ello una vez analizadas las diferentes definiciones existentes en la literatura hemos procedido a estudiar los puntos en común que tienen con Autonomic Computing, con el fin de valorar si Autonomic Computing es un enfoque adecuado en el que nos podamos apoyar para especificar, y diseñar Smart Products.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La minería de datos es un campo de las ciencias de la computación referido al proceso que intenta descubrir patrones en grandes volúmenes de datos. La minería de datos busca generar información similar a la que podría producir un experto humano. Además es el proceso de descubrir conocimientos interesantes, como patrones, asociaciones, cambios, anomalías y estructuras significativas a partir de grandes cantidades de datos almacenadas en bases de datos, data warehouses o cualquier otro medio de almacenamiento de información. El aprendizaje automático o aprendizaje de máquinas es una rama de la Inteligencia artificial cuyo objetivo es desarrollar técnicas que permitan a las computadoras aprender. De forma más concreta, se trata de crear programas capaces de generalizar comportamientos a partir de una información no estructurada suministrada en forma de ejemplos. La minería de datos utiliza métodos de aprendizaje automático para descubrir y enumerar patrones presentes en los datos. En los últimos años se han aplicado las técnicas de clasificación y aprendizaje automático en un número elevado de ámbitos como el sanitario, comercial o de seguridad. Un ejemplo muy actual es la detección de comportamientos y transacciones fraudulentas en bancos. Una aplicación de interés es el uso de las técnicas desarrolladas para la detección de comportamientos fraudulentos en la identificación de usuarios existentes en el interior de entornos inteligentes sin necesidad de realizar un proceso de autenticación. Para comprobar que estas técnicas son efectivas durante la fase de análisis de una determinada solución, es necesario crear una plataforma que de soporte al desarrollo, validación y evaluación de algoritmos de aprendizaje y clasificación en los entornos de aplicación bajo estudio. El proyecto planteado está definido para la creación de una plataforma que permita evaluar algoritmos de aprendizaje automático como mecanismos de identificación en espacios inteligentes. Se estudiarán tanto los algoritmos propios de este tipo de técnicas como las plataformas actuales existentes para definir un conjunto de requisitos específicos de la plataforma a desarrollar. Tras el análisis se desarrollará parcialmente la plataforma. Tras el desarrollo se validará con pruebas de concepto y finalmente se verificará en un entorno de investigación a definir. ABSTRACT. The data mining is a field of the sciences of the computation referred to the process that it tries to discover patterns in big volumes of information. The data mining seeks to generate information similar to the one that a human expert might produce. In addition it is the process of discovering interesting knowledge, as patterns, associations, changes, abnormalities and significant structures from big quantities of information stored in databases, data warehouses or any other way of storage of information. The machine learning is a branch of the artificial Intelligence which aim is to develop technologies that they allow the computers to learn. More specifically, it is a question of creating programs capable of generalizing behaviors from not structured information supplied in the form of examples. The data mining uses methods of machine learning to discover and to enumerate present patterns in the information. In the last years there have been applied classification and machine learning techniques in a high number of areas such as healthcare, commercial or security. A very current example is the detection of behaviors and fraudulent transactions in banks. An application of interest is the use of the techniques developed for the detection of fraudulent behaviors in the identification of existing Users inside intelligent environments without need to realize a process of authentication. To verify these techniques are effective during the phase of analysis of a certain solution, it is necessary to create a platform that support the development, validation and evaluation of algorithms of learning and classification in the environments of application under study. The project proposed is defined for the creation of a platform that allows evaluating algorithms of machine learning as mechanisms of identification in intelligent spaces. There will be studied both the own algorithms of this type of technologies and the current existing platforms to define a set of specific requirements of the platform to develop. After the analysis the platform will develop partially. After the development it will be validated by prove of concept and finally verified in an environment of investigation that would be define.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

En 1968, el arquitecto español José Miguel de Prada Poole (Valladolid 1938) inicia sus investigaciones sobre Estructuras Pneumáticas de Respuesta Variable, influido por la cibernética y las incipientes técnologías de computación. La ciencia de la cibernética se basa en que tanto los humanos como las máquinas forman parte de un sistema de control y respuesta, es decir, un sistema de mensajes. Conocedor de las teorías de Norbert Wiener, padre de la cibernética, Prada Poole asumió el cambio de paradigma que convertía la comunicación en el instrumento esencial para entender la sociedad y la arquitectura.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La presente Tesis plantea una metodología de análisis estadístico de roturas de tubería en redes de distribución de agua, que analiza la relación entre las roturas y la presión de agua y que propone la implantación de una gestión de presiones que reduzca el número de roturas que se producen en dichas redes. Las redes de distribución de agua se deterioran y una de sus graves consecuencias es la aparición de roturas frecuentes en sus tuberías. Las roturas llevan asociados elevados costes sociales, económicos y medioambientales y es por ello por lo que las compañías gestoras del agua tratan de reducirlas en la medida de lo posible. Las redes de distribución de agua se pueden dividir en zonas o sectores que facilitan su control y que pueden ser independientes o aislarse mediante válvulas, como ocurre en las redes de países más desarrollados, o pueden estar intercomunicados hidráulicamente. La implantación de una gestión de presiones suele llevarse a cabo a través de las válvulas reductoras de presión (VPR), que se instalan en las cabeceras de estos sectores y que controlan la presión aguas abajo de la misma, aunque varíe su caudal de entrada. Los métodos más conocidos de la gestión de presiones son la reducción de presiones, que es el control más habitual, el mantenimiento de la presión, la prevención y/o alivio de los aumentos repentinos de presión y el establecimiento de un control por alturas. A partir del año 2005 se empezó a reconocer el efecto de la gestión de presiones sobre la disminución de las roturas. En esta Tesis, se sugiere una gestión de presiones que controle los rangos de los indicadores de la presión de cabecera que más influyan en la probabilidad de roturas de tubería. Así, la presión del agua se caracteriza a través de indicadores obtenidos de la presión registrada en la cabecera de los sectores, debido a que se asume que esta presión es representativa de la presión de operación de todas las tuberías porque las pérdidas de carga son relativamente bajas y las diferencias topográficas se tienen en cuenta en el diseño de los sectores. Y los indicadores de presión, que se pueden definir como el estadístico calculado a partir de las series de la presión de cabecera sobre una ventana de tiempo, pueden proveer la información necesaria para ayudar a la toma de decisiones a los gestores del agua con el fin de reducir las roturas de tubería en las redes de distribución de agua. La primera parte de la metodología que se propone en esta Tesis trata de encontrar los indicadores de presión que influyen más en la probabilidad de roturas de tuberías. Para conocer si un indicador es influyente en la probabilidad de las roturas se comparan las estimaciones de las funciones de distribución acumulada (FDAs) de los indicadores de presiones, considerando dos situaciones: cuando se condicionan a la ocurrencia de una rotura (suceso raro) y cuando se calculan en la situación normal de operación (normal operación). Por lo general, las compañías gestoras cuentan con registros de roturas de los años más recientes y al encontrarse las tuberías enterradas se complica el acceso a la información. Por ello, se propone el uso de funciones de probabilidad que permiten reducir la incertidumbre asociada a los datos registrados. De esta forma, se determinan las funciones de distribución acumuladas (FDAs) de los valores del indicador de la serie de presión (situación normal de operación) y las FDAs de los valores del indicador en el momento de ocurrencia de las roturas (condicionado a las roturas). Si las funciones de distribución provienen de la misma población, no se puede deducir que el indicador claramente influya en la probabilidad de roturas. Sin embargo, si se prueba estadísticamente que las funciones proceden de la misma población, se puede concluir que existe una relación entre el indicador analizado y la ocurrencia de las roturas. Debido a que el número de valores del indicador de la FDA condicionada a las roturas es mucho menor que el número de valores del indicador de la FDA incondicional a las roturas, se generan series aleatorias a partir de los valores de los indicadores con el mismo número de valores que roturas registradas hay. De esta forma, se comparan las FDAs de series aleatorias del indicador con la FDA condicionada a las roturas del mismo indicador y se deduce si el indicador es influyente en la probabilidad de las roturas. Los indicadores de presión pueden depender de unos parámetros. A través de un análisis de sensibilidad y aplicando un test estadístico robusto se determina la situación en la que estos parámetros dan lugar a que el indicador sea más influyente en la probabilidad de las roturas. Al mismo tiempo, los indicadores se pueden calcular en función de dos parámetros de cálculo que se denominan el tiempo de anticipación y el ancho de ventana. El tiempo de anticipación es el tiempo (en horas) entre el final del periodo de computación del indicador de presión y la rotura, y el ancho de ventana es el número de valores de presión que se requieren para calcular el indicador de presión y que es múltiplo de 24 horas debido al comportamiento cíclico diario de la presión. Un análisis de sensibilidad de los parámetros de cálculo explica cuándo los indicadores de presión influyen más en la probabilidad de roturas. En la segunda parte de la metodología se presenta un modelo de diagnóstico bayesiano. Este tipo de modelo forma parte de los modelos estadísticos de prevención de roturas, parten de los datos registrados para establecer patrones de fallo y utilizan el teorema de Bayes para determinar la probabilidad de fallo cuando se condiciona la red a unas determinadas características. Así, a través del teorema de Bayes se comparan la FDA genérica del indicador con la FDA condicionada a las roturas y se determina cuándo la probabilidad de roturas aumenta para ciertos rangos del indicador que se ha inferido como influyente en las roturas. Se determina un ratio de probabilidad (RP) que cuando es superior a la unidad permite distinguir cuándo la probabilidad de roturas incrementa para determinados intervalos del indicador. La primera parte de la metodología se aplica a la red de distribución de la Comunidad de Madrid (España) y a la red de distribución de Ciudad de Panamá (Panamá). Tras el filtrado de datos se deduce que se puede aplicar la metodología en 15 sectores en la Comunidad de Madrid y en dos sectores, llamados corregimientos, en Ciudad de Panamá. Los resultados demuestran que en las dos redes los indicadores más influyentes en la probabilidad de las roturas son el rango de la presión, que supone la diferencia entre la presión máxima y la presión mínima, y la variabilidad de la presión, que considera la propiedad estadística de la desviación típica. Se trata, por tanto, de indicadores que hacen referencia a la dispersión de los datos, a la persistencia de la variación de la presión y que se puede asimilar en resistencia de materiales a la fatiga. La segunda parte de la metodología se ha aplicado a los indicadores influyentes en la probabilidad de las roturas de la Comunidad de Madrid y se ha deducido que la probabilidad de roturas aumenta para valores extremos del indicador del rango de la presión y del indicador de la variabilidad de la presión. Finalmente, se recomienda una gestión de presiones que limite los intervalos de los indicadores influyentes en la probabilidad de roturas que incrementen dicha probabilidad. La metodología propuesta puede aplicarse a otras redes de distribución y puede ayudar a las compañías gestoras a reducir el número de fallos en el sistema a través de la gestión de presiones. This Thesis presents a methodology for the statistical analysis of pipe breaks in water distribution networks. The methodology studies the relationship between pipe breaks and water pressure, and proposes a pressure management procedure to reduce the number of breaks that occur in such networks. One of the manifestations of the deterioration of water supply systems is frequent pipe breaks. System failures are one of the major challenges faced by water utilities, due to their associated social, economic and environmental costs. For all these reasons, water utilities aim at reducing the problem of break occurrence to as great an extent as possible. Water distribution networks can be divided into areas or sectors, which facilitates the control of the network. These areas may be independent or isolated by valves, as it usually happens in developing countries. Alternatively, they can be hydraulically interconnected. The implementation of pressure management strategies is usually carried out through pressure-reducing valves (PRV). These valves are installed at the head of the sectors and, although the inflow may vary significantly, they control the downstream pressure. The most popular methods of pressure management consist of pressure reduction, which is the common form of control, pressure sustaining, prevention and/or alleviation of pressure surges or large variations in pressure, and level/altitude control. From 2005 onwards, the effects of pressure management on burst frequencies have become more widely recognized in the technical literature. This thesis suggests a pressure management that controls the pressure indicator ranges most influential on the probability of pipe breaks. Operating pressure in a sector is characterized by means of a pressure indicator at the head of the DMA, as head losses are relatively small and topographical differences were accounted for at the design stage. The pressure indicator, which may be defined as the calculated statistic from the time series of pressure head over a specific time window, may provide necessary information to help water utilities to make decisions to reduce pipe breaks in water distribution networks. The first part of the methodology presented in this Thesis provides the pressure indicators which have the greatest impact on the probability of pipe breaks to be determined. In order to know whether a pressure indicator influences the probability of pipe breaks, the proposed methodology compares estimates of cumulative distribution functions (CDFs) of a pressure indicator through consideration of two situations: when they are conditioned to the occurrence of a pipe break (a rare event), and when they are not (a normal operation). Water utilities usually have a history of failures limited to recent periods of time, and it is difficult to have access to precise information in an underground network. Therefore, the use of distribution functions to address such imprecision of recorded data is proposed. Cumulative distribution functions (CDFs) derived from the time series of pressure indicators (normal operation) and CDFs of indicator values at times coincident with a reported pipe break (conditioned to breaks) are compared. If all estimated CDFs are drawn from the same population, there is no reason to infer that the studied indicator clearly influences the probability of the rare event. However, when it is statistically proven that the estimated CDFs do not come from the same population, the analysed indicator may have an influence on the occurrence of pipe breaks. Due to the fact that the number of indicator values used to estimate the CDF conditioned to breaks is much lower in comparison with the number of indicator values to estimate the CDF of the unconditional pressure series, and that the obtained results depend on the size of the compared samples, CDFs from random sets of the same size sampled from the unconditional indicator values are estimated. Therefore, the comparison between the estimated CDFs of random sets of the indicator and the estimated CDF conditioned to breaks allows knowledge of if the indicator is influential on the probability of pipe breaks. Pressure indicators depend on various parameters. Sensitivity analysis and a robust statistical test allow determining the indicator for which these parameters result most influential on the probability of pipe breaks. At the same time, indicators can be calculated according to two model parameters, named as the anticipation time and the window width. The anticipation time refers to the time (hours) between the end of the period for the computation of the pressure indicator and the break. The window width is the number of instantaneous pressure values required to calculate the pressure indicator and is multiple of 24 hours, as water pressure has a cyclical behaviour which lasts one day. A sensitivity analysis of the model parameters explains when the pressure indicator is more influential on the probability of pipe breaks. The second part of the methodology presents a Bayesian diagnostic model. This kind of model belongs to the class of statistical predictive models, which are based on historical data, represent break behavior and patterns in water mains, and use the Bayes’ theorem to condition the probability of failure to specific system characteristics. The Bayes’ theorem allows comparing the break-conditioned FDA and the unconditional FDA of the indicators and determining when the probability of pipe breaks increases for certain pressure indicator ranges. A defined probability ratio provides a measure to establish whether the probability of breaks increases for certain ranges of the pressure indicator. The first part of the methodology is applied to the water distribution network of Madrid (Spain) and to the water distribution network of Panama City (Panama). The data filtering method suggests that the methodology can be applied to 15 sectors in Madrid and to two areas in Panama City. The results show that, in both systems, the most influential indicators on the probability of pipe breaks are the pressure range, which is the difference between the maximum pressure and the minimum pressure, and pressure variability, referred to the statistical property of the standard deviation. Therefore, they represent the dispersion of the data, the persistence of the variation in pressure and may be related to the fatigue in material resistance. The second part of the methodology has been applied to the influential indicators on the probability of pipe breaks in the water distribution network of Madrid. The main conclusion is that the probability of pipe breaks increases for the extreme values of the pressure range indicator and of the pressure variability indicator. Finally, a pressure management which limits the ranges of the pressure indicators influential on the probability of pipe breaks that increase such probability is recommended. The methodology presented here is general, may be applied to other water distribution networks, and could help water utilities reduce the number of system failures through pressure management.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

El objetivo del presente trabajo de investigación es explorar nuevas técnicas de implementación, basadas en grafos, para las Redes de Neuronas, con el fin de simplificar y optimizar las arquitecturas y la complejidad computacional de las mismas. Hemos centrado nuestra atención en una clase de Red de Neuronas: las Redes de Neuronas Recursivas (RNR), también conocidas como redes de Hopfield. El problema de obtener la matriz sináptica asociada con una RNR imponiendo un determinado número de vectores como puntos fijos, no está en absoluto resuelto, el número de vectores prototipo que pueden ser almacenados en la red, cuando se utiliza la ley de Hebb, es bastante limitado, la red se satura rápidamente cuando se pretende almacenar nuevos prototipos. La ley de Hebb necesita, por tanto, ser revisada. Algunas aproximaciones dirigidas a solventar dicho problema, han sido ya desarrolladas. Nosotros hemos desarrollado una nueva aproximación en la forma de implementar una RNR en orden a solucionar estos problemas. La matriz sináptica es obtenida mediante la superposición de las componentes de los vectores prototipo, sobre los vértices de un Grafo, lo cual puede ser también interpretado como una coloración de dicho grafo. Cuando el periodo de entrenamiento se termina, la matriz de adyacencia del Grafo Resultante o matriz de pesos, presenta ciertas propiedades por las cuales dichas matrices serán llamadas tetraédricas. La energía asociada a cualquier estado de la red es representado por un punto (a,b) de R2. Cada uno de los puntos de energía asociados a estados que disten lo mismo del vector cero está localizado sobre la misma línea de energía de R2. El espacio de vectores de estado puede, por tanto, clasificarse en n clases correspondientes a cada una de las n diferentes distancias que puede tener cualquier vector al vector cero. La matriz (n x n) de pesos puede reducirse a un n-vector; de esta forma, tanto el tiempo de computación como el espacio de memoria requerido par almacenar los pesos, son simplificados y optimizados. En la etapa de recuperación, es introducido un vector de parámetros R2, éste es utilizado para controlar la capacidad de la red: probaremos que lo mayor es la componente a¡, lo menor es el número de puntos fijos pertenecientes a la línea de energía R¡. Una vez que la capacidad de la red ha sido controlada mediante este parámetro, introducimos otro parámetro, definido como la desviación del vector de pesos relativos, este parámetro sirve para disminuir ostensiblemente el número de parásitos. A lo largo de todo el trabajo, hemos ido desarrollando un ejemplo, el cual nos ha servido para ir corroborando los resultados teóricos, los algoritmos están escritos en un pseudocódigo, aunque a su vez han sido implamentados utilizando el paquete Mathematica 2.2., mostrándolos en un volumen suplementario al texto.---ABSTRACT---The aim of the present research is intended to explore new specifícation techniques of Neural Networks based on Graphs to be used in the optimization and simplification of Network Architectures and Computational Complexhy. We have focused our attention in a, well known, class of Neural Networks: the Recursive Neural Networks, also known as Hopfield's Neural Networks. The general problem of constructing the synaptic matrix associated with a Recursive Neural Network imposing some vectors as fixed points is fer for completery solved, the number of prototype vectors (learning patterns) which can be stored by Hebb's law is rather limited and the memory will thus quickly reach saturation if new prototypes are continuously acquired in the course of time. Hebb's law needs thus to be revised in order to allow new prototypes to be stored at the expense of the older ones. Some approaches related with this problem has been developed. We have developed a new approach of implementing a Recursive Neural Network in order to sob/e these kind of problems, the synaptic matrix is obtained superposing the components of the prototype vectors over the vértices of a Graph which may be interpreted as a coloring of the Graph. When training is finished the adjacency matrix of the Resulting Graph or matrix of weights presents certain properties for which it may be called a tetrahedral matrix The energy associated to any possible state of the net is represented as a point (a,b) in R2. Every one of the energy points associated with state-vectors having the same Hamming distance to the zero vector are located over the same energy Une in R2. The state-vector space may be then classified in n classes according to the n different possible distances firom any of the state-vectors to the zero vector The (n x n) matrix of weights may also be reduced to a n-vector of weights, in this way the computational time and the memory space required for obtaining the weights is optimized and simplified. In the recall stage, a parameter vectora is introduced, this parameter is used for controlling the capacity of the net: it may be proved that the bigger is the r, component of J, the lower is the number of fixed points located in the r¡ energy line. Once the capacity of the net has been controlled by the ex parameter, we introduced other parameter, obtained as the relative weight vector deviation parameter, in order to reduce the number of spurious states. All along the present text, we have also developed an example, which serves as a prove for the theoretical results, the algorithms are shown in a pseudocode language in the text, these algorithm so as the graphics have been developed also using the Mathematica 2.2. mathematical package which are shown in a supplementary volume of the text.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Recientemente, el paradigma de la computación en la nube ha recibido mucho interés por parte tanto de la industria como del mundo académico. Las infraestructuras cloud públicas están posibilitando nuevos modelos de negocio y ayudando a reducir costes. Sin embargo, una compañía podría desear ubicar sus datos y servicios en sus propias instalaciones, o tener que atenerse a leyes de protección de datos. Estas circunstancias hacen a las infraestructuras cloud privadas ciertamente deseables, ya sea para complementar a las públicas o para sustituirlas por completo. Por desgracia, las carencias en materia de estándares han impedido que las soluciones para la gestión de infraestructuras privadas se hayan desarrollado adecuadamente. Además, la multitud de opciones disponibles ha creado en los clientes el miedo a depender de una tecnología concreta (technology lock-in). Una de las causas de este problema es la falta de alineación entre la investigación académica y los productos comerciales, ya que aquella está centrada en el estudio de escenarios idealizados sin correspondencia con el mundo real, mientras que éstos consisten en soluciones desarrolladas sin tener en cuenta cómo van a encajar con los estándares más comunes o sin preocuparse de hacer públicos sus resultados. Con objeto de resolver este problema, propongo un sistema de gestión modular para infraestructuras cloud privadas enfocado en tratar con las aplicaciones en lugar de centrarse únicamente en los recursos hardware. Este sistema de gestión sigue el paradigma de la computación autónoma y está diseñado en torno a un modelo de información sencillo, desarrollado para ser compatible con los estándares más comunes. Este modelo divide el entorno en dos vistas, que sirven para separar aquello que debe preocupar a cada actor involucrado del resto de información, pero al mismo tiempo permitiendo relacionar el entorno físico con las máquinas virtuales que se despliegan encima de él. En dicho modelo, las aplicaciones cloud están divididas en tres tipos genéricos (Servicios, Trabajos de Big Data y Reservas de Instancias), para que así el sistema de gestión pueda sacar partido de las características propias de cada tipo. El modelo de información está complementado por un conjunto de acciones de gestión atómicas, reversibles e independientes, que determinan las operaciones que se pueden llevar a cabo sobre el entorno y que es usado para hacer posible la escalabilidad en el entorno. También describo un motor de gestión encargado de, a partir del estado del entorno y usando el ya mencionado conjunto de acciones, la colocación de recursos. Está dividido en dos niveles: la capa de Gestores de Aplicación, encargada de tratar sólo con las aplicaciones; y la capa del Gestor de Infraestructura, responsable de los recursos físicos. Dicho motor de gestión obedece un ciclo de vida con dos fases, para así modelar mejor el comportamiento de una infraestructura real. El problema de la colocación de recursos es atacado durante una de las fases (la de consolidación) por un resolutor de programación entera, y durante la otra (la online) por un heurístico hecho ex-profeso. Varias pruebas han demostrado que este acercamiento combinado es superior a otras estrategias. Para terminar, el sistema de gestión está acoplado a arquitecturas de monitorización y de actuadores. Aquella estando encargada de recolectar información del entorno, y ésta siendo modular en su diseño y capaz de conectarse con varias tecnologías y ofrecer varios modos de acceso. ABSTRACT The cloud computing paradigm has raised in popularity within the industry and the academia. Public cloud infrastructures are enabling new business models and helping to reduce costs. However, the desire to host company’s data and services on premises, and the need to abide to data protection laws, make private cloud infrastructures desirable, either to complement or even fully substitute public oferings. Unfortunately, a lack of standardization has precluded private infrastructure management solutions to be developed to a certain level, and a myriad of diferent options have induced the fear of lock-in in customers. One of the causes of this problem is the misalignment between academic research and industry ofering, with the former focusing in studying idealized scenarios dissimilar from real-world situations, and the latter developing solutions without taking care about how they f t with common standards, or even not disseminating their results. With the aim to solve this problem I propose a modular management system for private cloud infrastructures that is focused on the applications instead of just the hardware resources. This management system follows the autonomic system paradigm, and is designed around a simple information model developed to be compatible with common standards. This model splits the environment in two views that serve to separate the concerns of the stakeholders while at the same time enabling the traceability between the physical environment and the virtual machines deployed onto it. In it, cloud applications are classifed in three broad types (Services, Big Data Jobs and Instance Reservations), in order for the management system to take advantage of each type’s features. The information model is paired with a set of atomic, reversible and independent management actions which determine the operations that can be performed over the environment and is used to realize the cloud environment’s scalability. From the environment’s state and using the aforementioned set of actions, I also describe a management engine tasked with the resource placement. It is divided in two tiers: the Application Managers layer, concerned just with applications; and the Infrastructure Manager layer, responsible of the actual physical resources. This management engine follows a lifecycle with two phases, to better model the behavior of a real infrastructure. The placement problem is tackled during one phase (consolidation) by using an integer programming solver, and during the other (online) with a custom heuristic. Tests have demonstrated that this combined approach is superior to other strategies. Finally, the management system is paired with monitoring and actuators architectures. The former able to collect the necessary information from the environment, and the later modular in design and capable of interfacing with several technologies and ofering several access interfaces.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Resource analysis aims at inferring the cost of executing programs for any possible input, in terms of a given resource, such as the traditional execution steps, time ormemory, and, more recently energy consumption or user defined resources (e.g., number of bits sent over a socket, number of database accesses, number of calls to particular procedures, etc.). This is performed statically, i.e., without actually running the programs. Resource usage information is useful for a variety of optimization and verification applications, as well as for guiding software design. For example, programmers can use such information to choose different algorithmic solutions to a problem; program transformation systems can use cost information to choose between alternative transformations; parallelizing compilers can use cost estimates for granularity control, which tries to balance the overheads of task creation and manipulation against the benefits of parallelization. In this thesis we have significatively improved an existing prototype implementation for resource usage analysis based on abstract interpretation, addressing a number of relevant challenges and overcoming many limitations it presented. The goal of that prototype was to show the viability of casting the resource analysis as an abstract domain, and howit could overcome important limitations of the state-of-the-art resource usage analysis tools. For this purpose, it was implemented as an abstract domain in the abstract interpretation framework of the CiaoPP system, PLAI.We have improved both the design and implementation of the prototype, for eventually allowing an evolution of the tool to the industrial application level. The abstract operations of such tool heavily depend on the setting up and finding closed-form solutions of recurrence relations representing the resource usage behavior of program components and the whole program as well. While there exist many tools, such as Computer Algebra Systems (CAS) and libraries able to find closed-form solutions for some types of recurrences, none of them alone is able to handle all the types of recurrences arising during program analysis. In addition, there are some types of recurrences that cannot be solved by any existing tool. This clearly constitutes a bottleneck for this kind of resource usage analysis. Thus, one of the major challenges we have addressed in this thesis is the design and development of a novel modular framework for solving recurrence relations, able to combine and take advantage of the results of existing solvers. Additionally, we have developed and integrated into our novel solver a technique for finding upper-bound closed-form solutions of a special class of recurrence relations that arise during the analysis of programs with accumulating parameters. Finally, we have integrated the improved resource analysis into the CiaoPP general framework for resource usage verification, and specialized the framework for verifying energy consumption specifications of embedded imperative programs in a real application, showing the usefulness and practicality of the resulting tool.---ABSTRACT---El Análisis de recursos tiene como objetivo inferir el coste de la ejecución de programas para cualquier entrada posible, en términos de algún recurso determinado, como pasos de ejecución, tiempo o memoria, y, más recientemente, el consumo de energía o recursos definidos por el usuario (por ejemplo, número de bits enviados a través de un socket, el número de accesos a una base de datos, cantidad de llamadas a determinados procedimientos, etc.). Ello se realiza estáticamente, es decir, sin necesidad de ejecutar los programas. La información sobre el uso de recursos resulta muy útil para una gran variedad de aplicaciones de optimización y verificación de programas, así como para asistir en el diseño de los mismos. Por ejemplo, los programadores pueden utilizar dicha información para elegir diferentes soluciones algorítmicas a un problema; los sistemas de transformación de programas pueden utilizar la información de coste para elegir entre transformaciones alternativas; los compiladores paralelizantes pueden utilizar las estimaciones de coste para realizar control de granularidad, el cual trata de equilibrar el coste debido a la creación y gestión de tareas, con los beneficios de la paralelización. En esta tesis hemos mejorado de manera significativa la implementación de un prototipo existente para el análisis del uso de recursos basado en interpretación abstracta, abordando diversos desafíos relevantes y superando numerosas limitaciones que éste presentaba. El objetivo de dicho prototipo era mostrar la viabilidad de definir el análisis de recursos como un dominio abstracto, y cómo se podían superar las limitaciones de otras herramientas similares que constituyen el estado del arte. Para ello, se implementó como un dominio abstracto en el marco de interpretación abstracta presente en el sistema CiaoPP, PLAI. Hemos mejorado tanto el diseño como la implementación del mencionado prototipo para posibilitar su evolución hacia una herramienta utilizable en el ámbito industrial. Las operaciones abstractas de dicha herramienta dependen en gran medida de la generación, y posterior búsqueda de soluciones en forma cerrada, de relaciones recurrentes, las cuales modelizan el comportamiento, respecto al consumo de recursos, de los componentes del programa y del programa completo. Si bien existen actualmente muchas herramientas capaces de encontrar soluciones en forma cerrada para ciertos tipos de recurrencias, tales como Sistemas de Computación Algebraicos (CAS) y librerías de programación, ninguna de dichas herramientas es capaz de tratar, por sí sola, todos los tipos de recurrencias que surgen durante el análisis de recursos. Existen incluso recurrencias que no las puede resolver ninguna herramienta actual. Esto constituye claramente un cuello de botella para este tipo de análisis del uso de recursos. Por lo tanto, uno de los principales desafíos que hemos abordado en esta tesis es el diseño y desarrollo de un novedoso marco modular para la resolución de relaciones recurrentes, combinando y aprovechando los resultados de resolutores existentes. Además de ello, hemos desarrollado e integrado en nuestro nuevo resolutor una técnica para la obtención de cotas superiores en forma cerrada de una clase característica de relaciones recurrentes que surgen durante el análisis de programas lógicos con parámetros de acumulación. Finalmente, hemos integrado el nuevo análisis de recursos con el marco general para verificación de recursos de CiaoPP, y hemos instanciado dicho marco para la verificación de especificaciones sobre el consumo de energía de programas imperativas embarcados, mostrando la viabilidad y utilidad de la herramienta resultante en una aplicación real.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Con el auge del Cloud Computing, las aplicaciones de proceso de datos han sufrido un incremento de demanda, y por ello ha cobrado importancia lograr m�ás eficiencia en los Centros de Proceso de datos. El objetivo de este trabajo es la obtenci�ón de herramientas que permitan analizar la viabilidad y rentabilidad de diseñar Centros de Datos especializados para procesamiento de datos, con una arquitectura, sistemas de refrigeraci�ón, etc. adaptados. Algunas aplicaciones de procesamiento de datos se benefician de las arquitecturas software, mientras que en otras puede ser m�ás eficiente un procesamiento con arquitectura hardware. Debido a que ya hay software con muy buenos resultados en el procesamiento de grafos, como el sistema XPregel, en este proyecto se realizará una arquitectura hardware en VHDL, implementando el algoritmo PageRank de Google de forma escalable. Se ha escogido este algoritmo ya que podr��á ser m�ás eficiente en arquitectura hardware, debido a sus características concretas que se indicaráan m�ás adelante. PageRank sirve para ordenar las p�áginas por su relevancia en la web, utilizando para ello la teorí��a de grafos, siendo cada página web un vértice de un grafo; y los enlaces entre páginas, las aristas del citado grafo. En este proyecto, primero se realizará un an�álisis del estado de la técnica. Se supone que la implementaci�ón en XPregel, un sistema de procesamiento de grafos, es una de las m�ás eficientes. Por ello se estudiará esta �ultima implementaci�ón. Sin embargo, debido a que Xpregel procesa, en general, algoritmos que trabajan con grafos; no tiene en cuenta ciertas caracterí��sticas del algoritmo PageRank, por lo que la implementaci�on no es �optima. Esto es debido a que en PageRank, almacenar todos los datos que manda un mismo v�értice es un gasto innecesario de memoria ya que todos los mensajes que manda un vértice son iguales entre sí e iguales a su PageRank. Se realizará el diseño en VHDL teniendo en cuenta esta caracter��ística del citado algoritmo,evitando almacenar varias veces los mensajes que son iguales. Se ha elegido implementar PageRank en VHDL porque actualmente las arquitecturas de los sistemas operativos no escalan adecuadamente. Se busca evaluar si con otra arquitectura se obtienen mejores resultados. Se realizará un diseño partiendo de cero, utilizando la memoria ROM de IPcore de Xillinx (Software de desarrollo en VHDL), generada autom�áticamente. Se considera hacer cuatro tipos de módulos para que as�� el procesamiento se pueda hacer en paralelo. Se simplificar�á la estructura de XPregel con el fin de intentar aprovechar la particularidad de PageRank mencionada, que hace que XPregel no le saque el m�aximo partido. Despu�és se escribirá el c�ódigo, realizando una estructura escalable, ya que en la computación intervienen millones de páginas web. A continuación, se sintetizar�á y se probará el código en una FPGA. El �ultimo paso será una evaluaci�ón de la implementaci�ón, y de posibles mejoras en cuanto al consumo.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

El objetivo del trabajo ha sido el diseño y programación de una aplicación web basada en HTML5 que permite la visualización gráfica en tiempo real del estado de los distintos servicios y redes de sensores de la plataforma SmartCity del CEI Moncloa. Dicha plataforma, encuadrada dentro de la iniciativa “City of the Future” de la UPM, está compuesta por un conjunto de redes de sensores especializados en la recogida de datos de distintos ámbitos (medioambientales, energía, flujos de personas…)Para el desarrollo de la aplicación se ha hecho uso de tecnologías de nivel avanzado como NodeJS, un entorno de desarrollo en JavaScript de lado de servidor orientado a eventos; y librerías JavaScript como Bootstrap, que ha facilitado que el diseño de la interfaz web sea adaptativo a distintos dispositivos y resoluciones; Openlayers, ofreciendo mapas interactivos y subscritos a eventos; y D3.js, que ha permitido la visualización de datos recogidos por la plataforma de forma dinámica e interactiva en la aplicación web a través de distintos formatos como es el caso de gráficas y diagramas.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

El tratamiento de datos masivos es una tendencia cada día más extendida. Una parte fundamental del proceso de análisis de estos datos es su modelado y posterior visualización. El objetivo de este trabajo de fin de Grado, es trabajar con las últimas tecnologías en estos dos campos y lograr tratar una cantidad masiva de datos, que permita analizar la información de una forma interactiva, sencilla e intuitiva. Para el modelado de datos se usará Neo4j, una herramienta de código libre que permite montar una base de datos basada en grafos. Finalmente, la información resultante se visualizará mediante la librería D3 de Javascript, ofertando una visión clara de los datos existente y permitiendo interactuar con ellos para obtener la información que se requiera.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Las aplicaciones distribuidas que precisan de un servicio multipunto fiable son muy numerosas, y entre otras es posible citar las siguientes: bases de datos distribuidas, sistemas operativos distribuidos, sistemas de simulación interactiva distribuida y aplicaciones de distribución de software, publicaciones o noticias. Aunque en sus orígenes el dominio de aplicación de tales sistemas distribuidos estaba reducido a una única subred (por ejemplo una Red de Área Local) posteriormente ha surgido la necesidad de ampliar su aplicabilidad a interredes. La aproximación tradicional al problema del multipunto fiable en interredes se ha basado principalmente en los dos siguientes puntos: (1) proporcionar en un mismo protocolo muchas garantías de servicio (por ejemplo fiabilidad, atomicidad y ordenación) y a su vez algunas de éstas en distintos grados, sin tener en cuenta que muchas aplicaciones multipunto que precisan fiabilidad no necesitan otras garantías; y (2) extender al entorno multipunto las soluciones ya adoptadas en el entorno punto a punto sin considerar las características diferenciadoras; y de aquí, que se haya tratado de resolver el problema de la fiabilidad multipunto con protocolos extremo a extremo (protocolos de transporte) y utilizando esquemas de recuperación de errores, centralizados (las retransmisiones se hacen desde un único punto, normalmente la fuente) y globales (los paquetes solicitados se vuelven a enviar al grupo completo). En general, estos planteamientos han dado como resultado protocolos que son ineficientes en tiempo de ejecución, tienen problemas de escalabilidad, no hacen un uso óptimo de los recursos de red y no son adecuados para aplicaciones sensibles al retardo. En esta Tesis se investiga el problema de la fiabilidad multipunto en interredes operando en modo datagrama y se presenta una forma novedosa de enfocar el problema: es más óptimo resolver el problema de la fiabilidad multipunto a nivel de red y separar la fiabilidad de otras garantías de servicio, que pueden ser proporcionadas por un protocolo de nivel superior o por la propia aplicación. Siguiendo este nuevo enfoque se ha diseñado un protocolo multipunto fiable que opera a nivel de red (denominado RMNP). Las características más representativas del RMNP son las siguientes; (1) sigue una aproximación orientada al emisor, lo cual permite lograr un grado muy alto de fiabilidad; (2) plantea un esquema de recuperación de errores distribuido (las retransmisiones se hacen desde ciertos encaminadores intermedios que siempre estarán más cercanos a los miembros que la propia fuente) y de ámbito restringido (el alcance de las retransmisiones está restringido a un cierto número de miembros). Este esquema hace posible optimizar el retardo medio de distribución y disminuir la sobrecarga introducida por las retransmisiones; (3) incorpora en ciertos encaminadores funciones de agregación y filtrado de paquetes de control, que evitan problemas de implosión y reducen el tráfico que fluye hacia la fuente. Con el fin de evaluar el comportamiento del protocolo diseñado, se han realizado pruebas de simulación obteniéndose como principales conclusiones que, el RMNP escala correctamente con el tamaño del grupo, hace un uso óptimo de los recursos de red y es adecuado para aplicaciones sensibles al retardo.---ABSTRACT---There are many distributed applications that require a reliable multicast service, including: distributed databases, distributed operating systems, distributed interactive simulation systems and distribution applications of software, publications or news. Although the application domain of distributed systems of this type was originally confíned to a single subnetwork (for example, a Local Área Network), it later became necessary extend their applicability to internetworks. The traditional approach to the reliable multicast problem in internetworks is based mainly on the following two points: (1) provide a lot of service guarantees in one and the same protocol (for example, reliability, atomicity and ordering) and different levéis of guarantee in some cases, without taking into account that many multicast applications that require reliability do not need other guarantees, and (2) extend solutions adopted in the unicast environment to the multicast environment without taking into account their distinctive characteristics. So, the attempted solutions to the multicast reliability problem were end-to-end protocols (transport protocols) and centralized error recovery schemata (retransmissions made from a single point, normally the source) and global error retrieval schemata (the requested packets are retransmitted to the whole group). Generally, these approaches have resulted in protocols that are inefficient in execution time, have scaling problems, do not make optimum use of network resources and are not suitable for delay-sensitive applications. Here, the multicast reliability problem is investigated in internetworks operating in datagram mode and a new way of approaching the problem is presented: it is better to solve to the multicast reliability problem at network level and sepárate reliability from other service guarantees that can be supplied by a higher protocol or the application itself. A reliable multicast protocol that operates at network level (called RMNP) has been designed on the basis of this new approach. The most representative characteristics of the RMNP are as follows: (1) it takes a transmitter-oriented approach, which provides for a very high reliability level; (2) it provides for an error retrieval schema that is distributed (the retransmissions are made from given intermedíate routers that will always be closer to the members than the source itself) and of restricted scope (the scope of the retransmissions is confined to a given number of members), and this schema makes it possible to optimize the mean distribution delay and reduce the overload caused by retransmissions; (3) some routers include control packet aggregation and filtering functions that prevent implosión problems and reduce the traffic flowing towards the source. Simulation test have been performed in order to evalúate the behaviour of the protocol designed. The main conclusions are that the RMNP scales correctly with group size, makes optimum use of network resources and is suitable for delay-sensitive applications.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

El uso de la computación en la nube ofrece un nuevo paradigma que procura proporcionar servicios informáticos para los cuales no es necesario contar con grandes infraestructuras y sobre todo, con las complejidades de costos, seguridad y mantenimiento implícitas. Si bien se ha posicionado en los últimos años como una plataforma innovadora en el ámbito de la tecnología de consumo masivo y organizacional, también puede ser tópico de investigación importante en ciertas áreas de interés como el desarrollo de Software, presentando en ese campo, una serie de ventajas y retos estimulantes que pueden ser explorados. Este trabajo de investigación, sigue con dicho sentido, el objetivo de exponer la situación actual sobre el empleo de la computación en la nube como entorno de desarrollo de Software, sectorizando a través de su capa PaaS, el modelo conceptual de trabajo, las perspectivas recientes, problemas e implicaciones generales del uso de ésta como herramienta plausible en proyectos de desarrollo de Software. El análisis de los diferentes temas abordados, tiene la intención en general, de proporcionar información objetiva, crítica y cuantitativa sobre la concentración de la investigación relacionada a PaaS, así como un marco de interpretación reciente que aporte una perspectiva referencial para futuras investigaciones asociadas.---ABSTRACT---The use of cloud computing offers a new paradigm to provide computer services for which it is not necessary to have large infrastructure and especially with the complexities of cost, safety and maintenance implied. While it has positioned itself in recent years as an innovative platform in the field of technology and massive organizational consumption, can also be an important research topic in certain areas of interest including, the development of Software, presenting in this field, a series of advantages, disadvantages and stimulating challenges that can be explored. This research, following with that sense, try to present the current situation related to the use of cloud computing as a software development environment, through its sectorized PaaS layer, showing the conceptual working model, actual perspectives, problems and general implications of using this as a possible tool in Software development projects. The analysis of the different topics covered, intends in a general form, provide objective, critical and quantitative information about the concentration of research related to PaaS, and a recent interpretation framework to provide a referential perspective for future related researches.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

En esta tesis se aborda el problema de la externalización segura de servicios de datos y computación. El escenario de interés es aquel en el que el usuario posee datos y quiere subcontratar un servidor en la nube (“Cloud”). Además, el usuario puede querer también delegar el cálculo de un subconjunto de sus datos al servidor. Se presentan dos aspectos de seguridad relacionados con este escenario, en concreto, la integridad y la privacidad y se analizan las posibles soluciones a dichas cuestiones, aprovechando herramientas criptográficas avanzadas, como el Autentificador de Mensajes Homomórfico (“Homomorphic Message Authenticators”) y el Cifrado Totalmente Homomórfico (“Fully Homomorphic Encryption”). La contribución de este trabajo es tanto teórica como práctica. Desde el punto de vista de la contribución teórica, se define un nuevo esquema de externalización (en lo siguiente, denominado con su término inglés Outsourcing), usando como punto de partida los artículos de [3] y [12], con el objetivo de realizar un modelo muy genérico y flexible que podría emplearse para representar varios esquemas de ”outsourcing” seguro. Dicho modelo puede utilizarse para representar esquemas de “outsourcing” seguro proporcionando únicamente integridad, únicamente privacidad o, curiosamente, integridad con privacidad. Utilizando este nuevo modelo también se redefine un esquema altamente eficiente, construido en [12] y que se ha denominado Outsourcinglin. Este esquema permite calcular polinomios multivariados de grado 1 sobre el anillo Z2k . Desde el punto de vista de la contribución práctica, se ha construido una infraestructura marco (“Framework”) para aplicar el esquema de “outsourcing”. Seguidamente, se ha testado dicho “Framework” con varias implementaciones, en concreto la implementación del criptosistema Joye-Libert ([18]) y la implementación del esquema propio Outsourcinglin. En el contexto de este trabajo práctico, la tesis también ha dado lugar a algunas contribuciones innovadoras: el diseño y la implementación de un nuevo algoritmo de descifrado para el esquema de cifrado Joye-Libert, en colaboración con Darío Fiore. Presenta un mejor comportamiento frente a los algoritmos propuestos por los autores de [18];la implementación de la función eficiente pseudo-aleatoria de forma amortizada cerrada (“amortized-closed-form efficient pseudorandom function”) de [12]. Esta función no se había implementado con anterioridad y no supone un problema trivial, por lo que este trabajo puede llegar a ser útil en otros contextos. Finalmente se han usado las implementaciones durante varias pruebas para medir tiempos de ejecución de los principales algoritmos.---ABSTRACT---In this thesis we tackle the problem of secure outsourcing of data and computation. The scenario we are interested in is that in which a user owns some data and wants to “outsource” it to a Cloud server. Furthermore, the user may want also to delegate the computation over a subset of its data to the server. We present the security issues related to this scenario, namely integrity and privacy and we analyse some possible solutions to these two issues, exploiting advanced cryptographic tools, such as Homomorphic Message Authenticators and Fully Homomorphic Encryption. Our contribution is both theoretical and practical. Considering our theoretical contribution, using as starting points the articles of [3] and [12], we introduce a new cryptographic primitive, called Outsourcing with the aim of realizing a very generic and flexible model that might be employed to represent several secure outsourcing schemes. Such model can be used to represent secure outsourcing schemes that provide only integrity, only privacy or, interestingly, integrity with privacy. Using our new model we also re-define an highly efficient scheme constructed in [12], that we called Outsourcinglin and that is a scheme for computing multi-variate polynomials of degree 1 over the ring Z2k. Considering our practical contribution, we build a Framework to implement the Outsourcing scheme. Then, we test such Framework to realize several implementations, specifically the implementation of the Joye-Libert cryptosystem ([18]) and the implementation of our Outsourcinglin scheme. In the context of this practical work, the thesis also led to some novel contributions: the design and the implementation, in collaboration with Dario Fiore, of a new decryption algorithm for the Joye-Libert encryption scheme, that performs better than the algorithms proposed by the authors in [18]; the implementation of the amortized-closed-form efficient pseudorandom function of [12]. There was no prior implementation of this function and it represented a non trivial work, which can become useful in other contexts. Finally we test the implementations to execute several experiments for measuring the timing performances of the main algorithms.