34 resultados para Modular electronics
Resumo:
Este documento desarrolla todas las consideraciones, decisiones y acciones que se han llevado a cabo para diseñar y construir desde cero un sintetizador musical analógico y modular, similar en comportamiento al primer sintetizador existente (Moog Modular) pero aprovechando las ventajas de los nuevos componentes electrónicos y circuitos integrados, con el fin de mejorar las características, rendimiento y tamaño del producto final. El proyecto repasará los conceptos básicos de síntesis musical y las distinta partes (módulos) que conforman un sistema de estas características, a continuación empieza la toma de decisiones necesarias en cualquier proyecto electrónico, con el fin de poner limitaciones al comportamiento de cada parte y del sistema en conjunto, obteniendo un objetivo a cumplir. Una vez decidido ese objetivo se procederá al diseño electrónico del interior del aparato. Se complementa el documento con capítulos adicionales en los que se desglosan los resultados obtenidos en distintas medidas y un posible presupuesto de construcción. Se incluyen además anexos con los resultados de algunos de los resultados intermedios obtenidos (placas de circuito impreso y diseños de los frontales) para ser usados en el caso de que este proyecto sea continuado en el futuro.
Resumo:
We introduce an easily computable topological measure which locates the effective crossover between segregation and integration in a modular network. Segregation corresponds to the degree of network modularity, while integration is expressed in terms of the algebraic connectivity of an associated hypergraph. The rigorous treatment of the simplified case of cliques of equal size that are gradually rewired until they become completely merged, allows us to show that this topological crossover can be made to coincide with a dynamical crossover from cluster to global synchronization of a system of coupled phase oscillators. The dynamical crossover is signaled by a peak in the product of the measures of intracluster and global synchronization, which we propose as a dynamical measure of complexity. This quantity is much easier to compute than the entropy (of the average frequencies of the oscillators), and displays a behavior which closely mimics that of the dynamical complexity index based on the latter. The proposed topological measure simultaneously provides information on the dynamical behavior, sheds light on the interplay between modularity and total integration, and shows how this affects the capability of the network to perform both local and distributed dynamical tasks.
Resumo:
We present ARGoS, a novel open source multi-robot simulator. The main design focus of ARGoS is the real-time simulation of large heterogeneous swarms of robots. Existing robot simulators obtain scalability by imposing limitations on their extensibility and on the accuracy of the robot models. By contrast, in ARGoS we pursue a deeply modular approach that allows the user both to easily add custom features and to allocate computational resources where needed by the experiment. A unique feature of ARGoS is the possibility to use multiple physics engines of different types and to assign them to different parts of the environment. Robots can migrate from one engine to another transparently. This feature enables entirely novel classes of optimizations to improve scalability and paves the way for a new approach to parallelism in robotics simulation. Results show that ARGoS can simulate about 10,000 simple wheeled robots 40% faster than real-time.
Resumo:
Modular organization and degree-degree correlations are ubiquitous in the connectivity structure of biological, technological, and social interacting systems. So far most studies have concentrated on unveiling both features in real world networks, but a model that succeeds in generating them simultaneously is needed. We consider a network of interacting phase oscillators, and an adaptation mechanism for the coupling that promotes the connection strengths between those elements that are dynamically correlated. We show that, under these circumstances, the dynamical organization of the oscillators shapes the topology of the graph in such a way that modularity and assortativity features emerge spontaneously and simultaneously. In turn, we prove that such an emergent structure is associated with an asymptotic arrangement of the collective dynamical state of the network into cluster synchronization.
Resumo:
We introduce a new methodology to characterize the role that a given node plays inside the community structure of a complex network. Our method relies on the ability of the links to reduce the number of steps between two nodes in the network, which is measured by the number of shortest paths crossing each link, and its impact on the node proximity. In this way, we use node closeness to quantify the importance of a node inside its community. At the same time, we define a participation coefficient that depends on the shortest paths contained in the links that connect two communities. The combination of both parameters allows to identify the role played by the nodes in the network, following the same guidelines introduced by Guimerà et al. [Guimerà & Amaral, 2005] but, in this case, considering global information about the network. Finally, we give some examples of the hub characterization in real networks and compare our results with the parameters most used in the literature.
Resumo:
Dynamically Reconfigurable Systems are attracting a growing interest, mainly due to the emergence of novel applications based on this technology. However, commercial tools do not provide enough flexibility to design solutions, while keeping an acceptable design productivity. In this paper, a novel design flow is proposed, targeting dynamically reconfigurable systems. It is fully supported by a tool called Dreams, which is able to implement flexible systems, starting from a set of netlists corresponding to the modules, as well as a system description provided by the user. The tool automatically post-processes the nets, implementing a solution for the communications between reconfigurable regions, as well as the handling of routing conflicts, by means of a custom router. Since the design process of every module and the static system are independent, the proposed flow is compatible with system upgrade at run-time. In this paper, a use case corresponding to the design of a highly regular and parallel mesh-type architecture is described, in order to show the architectural flexibility offered by the tool.
Resumo:
Different possible input filter configurations for a modular three-phase PWM rectifier system consisting of three interleaved converter cells are studied. The system is designed for an aircraft application where MIL-STD-461E conducted EMI standards have to be met and system weight is a critical design issue. The importance of a LISN model on the simulated noise levels and the effect of interleaving and power unbalance between the different converter modules is discussed. The effect of the number of filter stages and the degree of distribution of the filter stages among the individual converter modules on the weight and losses of the input filter is studied and optimal filter structures are proposed.
Resumo:
La diversidad de propiedades que tienen los actuales sistemas digitales es tan amplia —su complejidad tan creciente— que el uso del ordenador resulta obligado tanto para su diseño como para su simulación y puesta a punto. La organización modular de un sistema simplifica notablemente su diseño y reconfiguración (Alabau, 1973). Hoy no resulta grave en principio, el desaprovechar un cierto número de componentes básicos de un circuito integrado. Sin embargo adquiere especial importancia como tema de futuro el diseño concreto de esos módulos en el contexto de un enfoque nuevo del diseño de complejos sistemas digitales y hasta renace el escrupuloso planteamiento de los antiguos criterios de diseño (Harrison, 1965) dirigidos a minimizar el número de componentes.
Resumo:
This paper presents a GA-based optimization procedure for bioinspired heterogeneous modular multiconfigurable chained microrobots. When constructing heterogeneous chained modular robots that are composed of several different drive modules, one must select the type and position of the modules that form the chain. One must also develop new locomotion gaits that combine the different drive modules. These are two new features of heterogeneous modular robots that they do not share with homogeneous modular robots. This paper presents an offline control system that allows the development of new configuration schemes and locomotion gaits for these heterogeneous modular multiconfigurable chained microrobots. The offline control system is based on a simulator that is specifically designed for chained modular robots and allows them to develop and learn new locomotion patterns.
Resumo:
3D Modular construction is poorly known and scarcely published in technical literature. In spite of that there are an increasing number of manufacturers offering their products in different countries. This method has largely evolved from early examples such as the American Gold Rush prefabrication in the nineteenth century, the Sears precut homes or Voisin´s prototypes for modular homes, to the end of the first half of the twentieth century. In this period a non negligible number of attempts in 3D modular construction have been carried out, ranging from theoretical proposals to several hundred or thousand units produced. Selected examples of modular architecture will be analyses in order to illustrate its technical evolution, concerning materials, structure, transportation and on site assembly. Success and failure factors of the different systems will be discussed. Conclusions about building criteria shown in them and their applicability in current architecture will be drawn.
Resumo:
Online services are no longer isolated. The release of public APIs and technologies such as web hooks are allowing users and developers to access their information easily. Intelligent agents could use this information to provide a better user experience across services, connecting services with smart automatic. behaviours or actions. However, agent platforms are not prepared to easily add external sources such as web services, which hinders the usage of agents in the so-called Evented or Live Web. As a solution, this paper introduces an event-based architecture for agent systems, in accordance with the new tendencies in web programming. In particular, it is focused on personal agents that interact with several web services. With this architecture, called MAIA, connecting to new web services does not involve any modification in the platform.
Resumo:
Los peces son animales, donde en la mayoría de los casos, son considerados como nadadores muy eficientes y con una alta capacidad de maniobra. En general los peces se caracterizan por su capacidad de maniobra, locomoción silencioso, giros y partidas rápidas y viajes de larga distancia. Los estudios han identificado varios tipos de locomoción que los peces usan para generar maniobras y natación constante. A bajas velocidades la mayoría de los peces utilizan sus aletas pares y / o impares para su locomoción, que ofrecen una mayor maniobrabilidad y mejor eficiencia de propulsión. A altas velocidades la locomoción implica el cuerpo y / o aleta caudal porque esto puede lograr un mayor empuje y aceleración. Estas características pueden inspirar el diseo y fabricación de una piel muy flexible, una aleta caudal mórfica y una espina dorsal no articulada con una gran capacidad de maniobra. Esta tesis presenta el desarrollo de un novedoso pez robot bio-inspirado y biomimético llamado BR3, inspirado en la capacidad de maniobra y nado constante de los peces vertebrados. Inspirado por la morfología de los peces Micropterus salmoides o también conocido como lubina negra, el robot BR3 utiliza su fundamento biológico para desarrollar modelos y métodos matemáticos precisos que permiten imitar la locomoción de los peces reales. Los peces Largemouth Bass pueden lograr un nivel increíble de maniobrabilidad y eficacia de la propulsión mediante la combinación de los movimientos ondulatorios y aletas morficas. Para imitar la locomoción de los peces reales en una contraparte artificial se necesita del análisis de tecnologías de actuación alternativos, como arreglos de fibras musculares en lugar de servo actuadores o motores DC estándar, así como un material flexible que proporciona una estructura continua sin juntas. Las aleaciones con memoria de forma (SMAs) proveen la posibilidad de construir robots livianos, que no emiten ruido, sin motores, sin juntas y sin engranajes. Asi es como un pez robot submarino se ha desarrollado y cuyos movimientos son generados mediante SMAs. Estos actuadores son los adecuados para doblar la espina dorsal continua del pez robot, que a su vez provoca un cambio en la curvatura del cuerpo. Este tipo de arreglo estructural está inspirado en los músculos rojos del pescado, que son usados principalmente durante la natación constante para la flexión de una estructura flexible pero casi incompresible como lo es la espina dorsal de pescado. Del mismo modo la aleta caudal se basa en SMAs y se modifica para llevar a cabo el trabajo necesario. La estructura flexible proporciona empuje y permite que el BR3 nade. Por otro lado la aleta caudal mórfica proporciona movimientos de balanceo y guiada. Motivado por la versatilidad del BR3 para imitar todos los modos de natación (anguilliforme, carangiforme, subcarangiforme y tunniforme) se propone un controlador de doblado y velocidad. La ley de control de doblado y velocidad incorpora la información del ángulo de curvatura y de la frecuencia para producir el modo de natación deseado y a su vez controlar la velocidad de natación. Así mismo de acuerdo con el hecho biológico de la influencia de la forma de la aleta caudal en la maniobrabilidad durante la natación constante se propone un control de actitud. Esta novedoso robot pescado es el primero de su tipo en incorporar sólo SMAs para doblar una estructura flexible continua y sin juntas y engranajes para producir empuje e imitar todos los modos de natación, así como la aleta caudal que es capaz de cambiar su forma. Este novedoso diseo mecatrónico presenta un futuro muy prometedor para el diseo de vehículos submarinos capaces de modificar su forma y nadar mas eficientemente. La nueva metodología de control propuesto en esta tesis proporcionan una forma totalmente nueva de control de robots basados en SMAs, haciéndolos energéticamente más eficientes y la incorporación de una aleta caudal mórfica permite realizar maniobras más eficientemente. En su conjunto, el proyecto BR3 consta de cinco grandes etapas de desarrollo: • Estudio y análisis biológico del nado de los peces con el propósito de definir criterios de diseño y control. • Formulación de modelos matemáticos que describan la: i) cinemática del cuerpo, ii) dinámica, iii) hidrodinámica iv) análisis de los modos de vibración y v) actuación usando SMA. Estos modelos permiten estimar la influencia de modular la aleta caudal y el doblado del cuerpo en la producción de fuerzas de empuje y fuerzas de rotación necesarias en las maniobras y optimización del consumo de energía. • Diseño y fabricación de BR3: i) estructura esquelética de la columna vertebral y el cuerpo, ii) mecanismo de actuación basado en SMAs para el cuerpo y la aleta caudal, iii) piel artificial, iv) electrónica embebida y v) fusión sensorial. Está dirigido a desarrollar la plataforma de pez robot BR3 que permite probar los métodos propuestos. • Controlador de nado: compuesto por: i) control de las SMA (modulación de la forma de la aleta caudal y regulación de la actitud) y ii) control de nado continuo (modulación de la velocidad y doblado). Está dirigido a la formulación de los métodos de control adecuados que permiten la modulación adecuada de la aleta caudal y el cuerpo del BR3. • Experimentos: está dirigido a la cuantificación de los efectos de: i) la correcta modulación de la aleta caudal en la producción de rotación y su efecto hidrodinámico durante la maniobra, ii) doblado del cuerpo para la producción de empuje y iii) efecto de la flexibilidad de la piel en la habilidad para doblarse del BR3. También tiene como objetivo demostrar y validar la hipótesis de mejora en la eficiencia de la natación y las maniobras gracias a los nuevos métodos de control presentados en esta tesis. A lo largo del desarrollo de cada una de las cinco etapas, se irán presentando los retos, problemáticas y soluciones a abordar. Los experimentos en canales de agua estarán orientados a discutir y demostrar cómo la aleta caudal y el cuerpo pueden afectar considerablemente la dinámica / hidrodinámica de natación / maniobras y cómo tomar ventaja de la modulación de curvatura que la aleta caudal mórfica y el cuerpo permiten para cambiar correctamente la geometría de la aleta caudal y del cuerpo durante la natación constante y maniobras. ABSTRACT Fishes are animals where in most cases are considered as highly manoeuvrable and effortless swimmers. In general fishes are characterized for his manoeuvring skills, noiseless locomotion, rapid turning, fast starting and long distance cruising. Studies have identified several types of locomotion that fish use to generate maneuvering and steady swimming. At low speeds most fishes uses median and/or paired fins for its locomotion, offering greater maneuverability and better propulsive efficiency At high speeds the locomotion involves the body and/or caudal fin because this can achieve greater thrust and accelerations. This can inspire the design and fabrication of a highly deformable soft artificial skins, morphing caudal fins and non articulated backbone with a significant maneuverability capacity. This thesis presents the development of a novel bio-inspired and biomimetic fishlike robot (BR3) inspired by the maneuverability and steady swimming ability of ray-finned fishes (Actinopterygii, bony fishes). Inspired by the morphology of the Largemouth Bass fish, the BR3 uses its biological foundation to develop accurate mathematical models and methods allowing to mimic fish locomotion. The Largemouth Bass fishes can achieve an amazing level of maneuverability and propulsive efficiency by combining undulatory movements and morphing fins. To mimic the locomotion of the real fishes on an artificial counterpart needs the analysis of alternative actuation technologies more likely muscle fiber arrays instead of standard servomotor actuators as well as a bendable material that provides a continuous structure without joins. The Shape Memory Alloys (SMAs) provide the possibility of building lightweight, joint-less, noise-less, motor-less and gear-less robots. Thus a swimming underwater fish-like robot has been developed whose movements are generated using SMAs. These actuators are suitable for bending the continuous backbone of the fish, which in turn causes a change in the curvature of the body. This type of structural arrangement is inspired by fish red muscles, which are mainly recruited during steady swimming for the bending of a flexible but nearly incompressible structure such as the fishbone. Likewise the caudal fin is based on SMAs and is customized to provide the necessary work out. The bendable structure provides thrust and allows the BR3 to swim. On the other hand the morphing caudal fin provides roll and yaw movements. Motivated by the versatility of the BR3 to mimic all the swimming modes (anguilliform, caranguiform, subcaranguiform and thunniform) a bending-speed controller is proposed. The bending-speed control law incorporates bend angle and frequency information to produce desired swimming mode and swimming speed. Likewise according to the biological fact about the influence of caudal fin shape in the maneuverability during steady swimming an attitude control is proposed. This novel fish robot is the first of its kind to incorporate only SMAs to bend a flexible continuous structure without joints and gears to produce thrust and mimic all the swimming modes as well as the caudal fin to be morphing. This novel mechatronic design is a promising way to design more efficient swimming/morphing underwater vehicles. The novel control methodology proposed in this thesis provide a totally new way of controlling robots based on SMAs, making them more energy efficient and the incorporation of a morphing caudal fin allows to perform more efficient maneuvers. As a whole, the BR3 project consists of five major stages of development: • Study and analysis of biological fish swimming data reported in specialized literature aimed at defining design and control criteria. • Formulation of mathematical models for: i) body kinematics, ii) dynamics, iii) hydrodynamics, iv) free vibration analysis and v) SMA muscle-like actuation. It is aimed at modelling the e ects of modulating caudal fin and body bend into the production of thrust forces for swimming, rotational forces for maneuvering and energy consumption optimisation. • Bio-inspired design and fabrication of: i) skeletal structure of backbone and body, ii) SMA muscle-like mechanisms for the body and caudal fin, iii) the artificial skin, iv) electronics onboard and v) sensor fusion. It is aimed at developing the fish-like platform (BR3) that allows for testing the methods proposed. • The swimming controller: i) control of SMA-muscles (morphing-caudal fin modulation and attitude regulation) and ii) steady swimming control (bend modulation and speed modulation). It is aimed at formulating the proper control methods that allow for the proper modulation of BR3’s caudal fin and body. • Experiments: it is aimed at quantifying the effects of: i) properly caudal fin modulation into hydrodynamics and rotation production for maneuvering, ii) body bending into thrust generation and iii) skin flexibility into BR3 bending ability. It is also aimed at demonstrating and validating the hypothesis of improving swimming and maneuvering efficiency thanks to the novel control methods presented in this thesis. This thesis introduces the challenges and methods to address these stages. Waterchannel experiments will be oriented to discuss and demonstrate how the caudal fin and body can considerably affect the dynamics/hydrodynamics of swimming/maneuvering and how to take advantage of bend modulation that the morphing-caudal fin and body enable to properly change caudal fin and body’ geometry during steady swimming and maneuvering.
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.
Resumo:
Logic programming (LP) is a family of high-level programming languages which provides high expressive power. With LP, the programmer writes the properties of the result and / or executable specifications instead of detailed computation steps. Logic programming systems which feature tabled execution and constraint logic programming have been shown to increase the declarativeness and efficiency of Prolog, while at the same time making it possible to write very expressive programs. Tabled execution avoids infinite failure in some cases, while improving efficiency in programs which repeat computations. CLP reduces the search tree and brings the power of solving (in)equations over arbitrary domains. Similarly to the LP case, CLP systems can also benefit from the power of tabling. Previous implementations which take ful advantage of the ideas behind tabling (e.g., forcing suspension, answer subsumption, etc. wherever it is necessary to avoid recomputation and terminate whenever possible) did not offer a simple, well-documented, easy-to-understand interface. This would be necessary to make the integratation of arbitrary CLP solvers into existing tabling systems possible. This clearly hinders a more widespread usage of the combination of both facilities. In this thesis we examine the requirements that a constraint solver must fulfill in order to be interfaced with a tabling system. We propose and implement a framework, which we have called Mod TCLP, with a minimal set of operations (e.g., entailment checking and projection) which the constraint solver has to provide to the tabling engine. We validate the design of Mod TCLP by a series of use cases: we re-engineer a previously existing tabled constrain domain (difference constraints) which was connected in an ad-hoc manner with the tabling engine in Ciao Prolog; we integrateHolzbauer’s CLP(Q) implementationwith Ciao Prolog’s tabling engine; and we implement a constraint solver over (finite) lattices. We evaluate its performance with several benchmarks that implement a simple abstract interpreter whose fixpoint is reached by means of tabled execution, and whose domain operations are handled by the constraint over (finite) lattices, where TCLP avoids recomputing subsumed abstractions.---ABSTRACT---La programación lógica con restricciones (CLP) y la tabulación son extensiones de la programación lógica que incrementan la declaratividad y eficiencia de Prolog, al mismo tiempo que hacen posible escribir programasmás expresivos. Las implementaciones anteriores que integran completamente ambas extensiones, incluyendo la suspensión de la ejecución de objetivos siempre que sea necesario, la implementación de inclusión (subsumption) de respuestas, etc., en todos los puntos en los que sea necesario para evitar recomputaciones y garantizar la terminación cuando sea posible, no han proporcionan una interfaz simple, bien documentada y fácil de entender. Esta interfaz es necesaria para permitir integrar resolutores de CLP arbitrarios en el sistema de tabulación. Esto claramente dificulta un uso más generalizado de la integración de ambas extensiones. En esta tesis examinamos los requisitos que un resolutor de restricciones debe cumplir para ser integrado con un sistema de tabulación. Proponemos un esquema (y su implementación), que hemos llamadoMod TCLP, que requiere un reducido conjunto de operaciones (en particular, y entre otras, entailment y proyección de almacenes de restricciones) que el resolutor de restricciones debe ofrecer al sistema de tabulación. Hemos validado el diseño de Mod TCLP con una serie de casos de uso: la refactorización de un sistema de restricciones (difference constraints) previamente conectado de un modo ad-hoc con la tabulación de Ciao Prolog; la integración del sistema de restricciones CLP(Q) de Holzbauer; y la implementación de un resolutor de restricciones sobre retículos finitos. Hemos evaluado su rendimiento con varios programas de prueba, incluyendo la implementación de un intérprete abstracto que alcanza su punto fijo mediante el sistema de tabulación y en el que las operaciones en el dominio son realizadas por el resolutor de restricciones sobre retículos (finitos) donde TCLP evita la recomputación de valores abstractos de las variables ya contenidos en llamadas anteriores.
Resumo:
Coordinación Modular