17,477 research outputs found

    Multi-agent evolutionary systems for the generation of complex virtual worlds

    Full text link
    Modern films, games and virtual reality applications are dependent on convincing computer graphics. Highly complex models are a requirement for the successful delivery of many scenes and environments. While workflows such as rendering, compositing and animation have been streamlined to accommodate increasing demands, modelling complex models is still a laborious task. This paper introduces the computational benefits of an Interactive Genetic Algorithm (IGA) to computer graphics modelling while compensating the effects of user fatigue, a common issue with Interactive Evolutionary Computation. An intelligent agent is used in conjunction with an IGA that offers the potential to reduce the effects of user fatigue by learning from the choices made by the human designer and directing the search accordingly. This workflow accelerates the layout and distribution of basic elements to form complex models. It captures the designer's intent through interaction, and encourages playful discovery

    Earth observing system. Data and information system. Volume 2A: Report of the EOS Data Panel

    Get PDF
    The purpose of this report is to provide NASA with a rationale and recommendations for planning, implementing, and operating an Earth Observing System data and information system that can evolve to meet the Earth Observing System's needs in the 1990s. The Earth Observing System (Eos), defined by the Eos Science and Mission Requirements Working Group, consists of a suite of instruments in low Earth orbit acquiring measurements of the Earth's atmosphere, surface, and interior; an information system to support scientific research; and a vigorous program of scientific research, stressing study of global-scale processes that shape and influence the Earth as a system. The Eos data and information system is conceived as a complete research information system that would transcend the traditional mission data system, and include additional capabilties such as maintaining long-term, time-series data bases and providing access by Eos researchers to relevant non-Eos data. The Working Group recommends that the Eos data and information system be initiated now, with existing data, and that the system evolve into one that can meet the intensive research and data needs that will exist when Eos spacecraft are returning data in the 1990s

    Metaheuristic models for decision support in the software construction process

    Get PDF
    En la actualidad, los ingenieros software no solo tienen la responsabilidad de construir sistemas que desempe~nen una determinada funcionalidad, sino que cada vez es más importante que dichos sistemas también cumplan con requisitos no funcionales como alta disponibilidad, efciencia o seguridad, entre otros. Para lograrlo, los ingenieros se enfrentan a un proceso continuo de decisión, pues deben estudiar las necesidades del sistema a desarrollar y las alternativas tecnológicas existentes para implementarlo. Todo este proceso debe estar encaminado a la obtención de sistemas software de gran calidad, reutilizables y que faciliten su mantenimiento y modificación en un escenario tan exigente y competitivo. La ingeniería del software, como método sistemático para la construcción de software, ha aportado una serie de pautas y tareas que, realizadas de forma disciplinada y adaptadas al contexto de desarrollo, posibilitan la obtención de software de calidad. En concreto, el proceso de análisis y diseño del software ha adquirido una gran importancia, pues en ella se concibe la estructura del sistema, en términos de sus bloques funcionales y las interacciones entre ellos. Es en este momento cuando se toman las decisiones acerca de la arquitectura, incluyendo los componentes que la conforman, que mejor se adapta a los requisitos, tanto funcionales como no funcionales, que presenta el sistema y que claramente repercuten en su posterior desarrollo. Por tanto, es necesario que el ingeniero analice rigurosamente las alternativas existentes, sus implicaciones en los criterios de calidad impuestos y la necesidad de establecer compromisos entre ellos. En este contexto, los ingenieros se guían principalmente por sus habilidades y experiencia, por lo que dotarles de métodos de apoyo a la decisión representaría un avance significativo en el área. La aplicación de técnicas de inteligencia artificial en este ámbito ha despertado un gran interés en los últimos años. En particular, la inteligencia artificial ha encontrado en la ingeniería del software un ámbito de aplicación complejo, donde diferentes técnicas pueden ayudar a conseguir la semi-automatización de tareas tradicionalmente realizadas de forma manual. De la unión de ambas áreas surge la denominada ingeniería del software basada en búsqueda, que propone la reformulación de las actividades propias de la ingeniería del software como problemas de optimización. A continuación, estos problemas podrían ser resueltos mediante técnicas de búsqueda como las metaheurísticas. Este tipo de técnicas se caracterizan por explorar el espacio de posibles soluciones de una manera \inteligente", a menudo simulando procesos naturales como es el caso de los algoritmos evolutivos. A pesar de ser un campo de investigación muy reciente, es posible encontrar propuestas para automatizar una gran variedad de tareas dentro del ciclo de vida del software, como son la priorización de requisitos, la planifcación de recursos, la refactorización del código fuente o la generación de casos de prueba. En el ámbito del análisis y diseño de software, cuyas tareas requieren de creatividad y experiencia, conseguir una automatización completa resulta poco realista. Es por ello por lo que la resolución de sus tareas mediante enfoques de búsqueda debe ser tratada desde la perspectiva del ingeniero, promoviendo incluso la interacción con ellos. Además, el alto grado de abstracción de algunas de sus tareas y la dificultad de evaluar cuantitativamente la calidad de un diseño software, suponen grandes retos en la aplicación de técnicas de búsqueda durante las fases tempranas del proceso de construcción de software. Esta tesis doctoral busca realizar aportaciones significativas al campo de la ingeniería del software basada en búsqueda y, más concretamente, al área de la optimización de arquitecturas software. Aunque se están realizando importantes avances en este área, la mayoría de propuestas se centran en la obtención de arquitecturas de bajo nivel o en la selección y despliegue de artefactos software ya desarrollados. Por tanto, no existen propuestas que aborden el modelado arquitectónico a un nivel de abstracción elevado, donde aún no existe un conocimiento profundo sobre cómo será el sistema y, por tanto, es más difícil asistir al ingeniero. Como problema de estudio, se ha abordado principalmente la tarea del descubrimiento de arquitecturas software basadas en componentes. El objetivo de este problema consiste en abstraer los bloques arquitectónicos que mejor definen la estructura actual del software, así como sus interacciones, con el fin de facilitar al ingeniero su posterior análisis y mejora. Durante el desarrollo de esta tesis doctoral se ha explorado el uso de una gran variedad de técnicas de búsqueda, estudiando su idoneidad y realizando las adaptaciones necesarias para hacer frente a los retos mencionados anteriormente. La primera propuesta se ha centrado en la formulación del descubrimiento de arquitecturas como problema de optimización, abordando la representación computacional de los artefactos software que deben ser modelados y definiendo medidas software para evaluar su calidad durante el proceso de búsqueda. Además, se ha desarrollado un primer modelo basado en algoritmos evolutivos mono-objetivo para su resolución, el cual ha sido validado experimentalmente con sistemas software reales. Dicho modelo se caracteriza por ser comprensible y exible, pues sus componentes han sido diseñados considerando estándares y herramientas del ámbito de la ingeniería del software, siendo además configurable en función de las necesidades del ingeniero. A continuación, el descubrimiento de arquitecturas ha sido tratado desde una perspectiva multiobjetivo, donde varias medidas software, a menudo en con icto, deben ser simultáneamente optimizadas. En este caso, la resolución del problema se ha llevado a cabo mediante ocho algoritmos del estado del arte, incluyendo propuestas recientes del ámbito de la optimización de muchos objetivos. Tras ser adaptados al problema, estos algoritmos han sido comparados mediante un extenso estudio experimental con el objetivo de analizar la ifnuencia que tiene el número y la elección de las métricas a la hora de guiar el proceso de búsqueda. Además de realizar una validación del rendimiento de estos algoritmos siguiendo las prácticas habituales del área, este estudio aporta un análisis detallado de las implicaciones que supone la optimización de múltiples objetivos en la obtención de modelos de soporte a la decisión. La última propuesta en el contexto del descubrimiento de arquitecturas software se centra en la incorporación de la opinión del ingeniero al proceso de búsqueda. Para ello se ha diseñado un mecanismo de interacción que permite al ingeniero indicar tanto las características deseables en las soluciones arquitectónicas (preferencias positivas) como aquellos aspectos que deben evitarse (preferencias negativas). Esta información es combinada con las medidas software utilizadas hasta el momento, permitiendo al algoritmo evolutivo adaptar la búsqueda conforme el ingeniero interactúe. Dadas las características del modelo, su validación se ha realizado con la participación de ingenieros con distinta experiencia en desarrollo software, a fin de demostrar la idoneidad y utilidad de la propuesta. En el transcurso de la tesis doctoral, los conocimientos adquiridos y las técnicas desarrolladas también han sido extrapolados a otros ámbitos de la ingeniería del software basada en búsqueda mediante colaboraciones con investigadores del área. Cabe destacar especialmente la formalización de una nueva disciplina transversal, denominada ingeniería del software basada en búsqueda interactiva, cuyo fin es promover la participación activa del ingeniero durante el proceso de búsqueda. Además, se ha explorado la aplicación de algoritmos de muchos objetivos a un problema clásico de la computación orientada a servicios, como es la composición de servicios web.Nowadays, software engineers have not only the responsibility of building systems that provide a particular functionality, but they also have to guarantee that these systems ful l demanding non-functional requirements like high availability, e ciency or security. To achieve this, software engineers face a continuous decision process, as they have to evaluate system needs and existing technological alternatives to implement it. All this process should be oriented towards obtaining high-quality and reusable systems, also making future modi cations and maintenance easier in such a competitive scenario. Software engineering, as a systematic method to build software, has provided a number of guidelines and tasks that, when done in a disciplinarily manner and properly adapted to the development context, allow the creation of high-quality software. More speci cally, software analysis and design has acquired great relevance, being the phase in which the software structure is conceived in terms of its functional blocks and their interactions. In this phase, engineers have to make decisions about the most suitable architecture, including its constituent components. Such decisions are made according to the system requirements, either functional or non-functional, and will have a great impact on its future development. Therefore, the engineer has to rigorously analyse existing alternatives, their implications on the imposed quality criteria and the need of establishing trade-o s among them. In this context, engineers are mostly guided by their own capabilities and experience, so providing them with decision support methods would represent a signi cant contribution. The application of arti cial intelligent techniques in this area has experienced a growing interest in the last years. Particularly, software engineering represents a complex application domain to arti cial intelligence, whose diverse techniques can help in the semi-automation of tasks traditionally performed manually. The union of both elds has led to the appearance of search-based software engineering, which proposes reformulating software engineering activities as optimisation problems. For their resolution, search techniques like metaheuristics can be then applied. This type of technique performs an \intelligent" exploration of the space of candidate solutions, often inspired by natural processes as happens with evolutionary algorithms. Despite the novelty of this research eld, there are proposals to automate a great variety of tasks within the software lifecycle, such as requirement prioritisation, resource planning, code refactoring or test case generation. Focusing on analysis and design, whose tasks require creativity and experience, trying to achieve full automation is not realistic. Therefore, solving design tasks by means of search approaches should be oriented towards the engineer's perspective, even promoting their interaction. Furthermore, design tasks are also characterised by a high level of abstraction and the di culty of quantitatively evaluating design quality. All these aspects represent key challenges for the application of search techniques in early phases of the software construction process. The aim of this Ph.D. Thesis is to make signi cant contributions in search-based software engineering and, specially, in the area of software architecture optimisation. Although it is an area in which signi cant progress is being done, most of the current proposals are focused on generating low-level architectures or selecting and deploying already developed artefacts. Therefore, there is a lack of proposals dealing with architectural modelling at a high level of abstraction. At this level, engineers do not have a deep understanding of the system yet, meaning that assisting them is even more di cult. As case study, the discovery of component-based software architectures has been primary addressed. The objective for this problem consists in the abstraction of the architectural blocks, and their interactions, that best de ne the current structure of a software system. This can be viewed as the rst step an engineer would perform in order to further analyse and improve the system architecture. In this Ph.D. Thesis, the use of a great variety of search techniques has been explored. The suitability of these techniques has been studied, also making the necessary adaptations to cope with the aforementioned challenges. A rst proposal has been focused on the formulation of software architecture discovery as an optimisation problem, which consists in the computational representation of its software artefacts and the de nition of software metrics to evaluate their quality during the search process. Moreover, a single-objective evolutionary algorithm has been designed for its resolution, which has been validated using real software systems. The resulting model is comprehensible and exible, since its components have been designed under software engineering standards and tools and are also con gurable according to engineer's needs. Next, the discovery of software architectures has been tackled from a multi-objective perspective, in which several software metrics, often in con ict, have to be simultaneously optimised. In this case, the problem is solved by applying eight state-of-theart algorithms, including some recent many-objective approaches. These algorithms have been adapted to the problem and compared in an extensive experimental study, whose purpose is to analyse the in uence of the number and combination of metrics when guiding the search process. Apart from the performance validation following usual practices within the eld, this study provides a detailed analysis of the practical implications behind the optimisation of multiple objectives in the context of decision support. The last proposal is focused on interactively including the engineer's opinion in the search-based architecture discovery process. To do this, an interaction mechanism has been designed, which allows the engineer to express desired characteristics for the solutions (positive preferences), as well as those aspects that should be avoided (negative preferences). The gathered information is combined with the software metrics used until the moment, thus making possible to adapt the search as the engineer interacts. Due to the characteristics of the proposed model, engineers of di erent expertise in software development have participated in its validation with the aim of showing the suitability and utility of the approach. The knowledge acquired along the development of the Thesis, as well as the proposed approaches, have also been transferred to other search-based software engineering areas as a result of research collaborations. In this sense, it is worth noting the formalisation of interactive search-based software engineering as a cross-cutting discipline, which aims at promoting the active participation of the engineer during the search process. Furthermore, the use of many-objective algorithms has been explored in the context of service-oriented computing to address the so-called web service composition problem

    Genetic Programming for Smart Phone Personalisation

    Full text link
    Personalisation in smart phones requires adaptability to dynamic context based on user mobility, application usage and sensor inputs. Current personalisation approaches, which rely on static logic that is developed a priori, do not provide sufficient adaptability to dynamic and unexpected context. This paper proposes genetic programming (GP), which can evolve program logic in realtime, as an online learning method to deal with the highly dynamic context in smart phone personalisation. We introduce the concept of collaborative smart phone personalisation through the GP Island Model, in order to exploit shared context among co-located phone users and reduce convergence time. We implement these concepts on real smartphones to demonstrate the capability of personalisation through GP and to explore the benefits of the Island Model. Our empirical evaluations on two example applications confirm that the Island Model can reduce convergence time by up to two-thirds over standalone GP personalisation.Comment: 43 pages, 11 figure

    Combining structural performance and designer preferences in evolutionary design space exploration

    Get PDF
    This paper addresses the need to consider both quantitative performance goals and qualitative requirements in conceptual design. A new computational approach for design space exploration is proposed that extends existing interactive evolutionary algorithms for increased inclusion of designer preferences, overcoming the weaknesses of traditional optimization that have limited its use in practice. This approach allows designers to set the evolutionary parameters of mutation rate and generation size, in addition to parent selection, in order to steer design space exploration. This paper demonstrates the potential of this approach through a numerical parametric study, a software implementation, and series of case studies

    Artificial Intelligence Applied to Conceptual Design. A Review of Its Use in Architecture

    Get PDF
    Financiado para publicación en acceso aberto: Universidade da Coruña/CISUG[Abstract] Conceptual architectural design is a complex process that draws on past experience and creativity to generate new designs. The application of artificial intelligence to this process should not be oriented toward finding a solution in a defined search space since the design requirements are not yet well defined in the conceptual stage. Instead, this process should be considered as an exploration of the requirements, as well as of possible solutions to meet those requirements. This work offers a tour of major research projects that apply artificial intelligence solutions to architectural conceptual design. We examine several approaches, but most of the work focuses on the use of evolutionary computing to perform these tasks. We note a marked increase in the number of papers in recent years, especially since 2015. Most employ evolutionary computing techniques, including cellular automata. Most initial approaches were oriented toward finding innovative and creative forms, while the latest research focuses on optimizing architectural form.This project was supported by the General Directorate of Culture, Education and University Management of Xunta de Galicia (Ref. ED431G/01, ED431D 2017/16), and the Spanish Ministry of Economy and Competitiveness via funding of the unique installation BIOCAI (UNLC08-1E-002, UNLC13-13-3503) and the European Regional Development Funds (FEDER)Xunta de Galicia; ED431G/01Xunta de Galicia; ED431D 2017/1

    Proceedings of the ECCS 2005 satellite workshop: embracing complexity in design - Paris 17 November 2005

    Get PDF
    Embracing complexity in design is one of the critical issues and challenges of the 21st century. As the realization grows that design activities and artefacts display properties associated with complex adaptive systems, so grows the need to use complexity concepts and methods to understand these properties and inform the design of better artifacts. It is a great challenge because complexity science represents an epistemological and methodological swift that promises a holistic approach in the understanding and operational support of design. But design is also a major contributor in complexity research. Design science is concerned with problems that are fundamental in the sciences in general and complexity sciences in particular. For instance, design has been perceived and studied as a ubiquitous activity inherent in every human activity, as the art of generating hypotheses, as a type of experiment, or as a creative co-evolutionary process. Design science and its established approaches and practices can be a great source for advancement and innovation in complexity science. These proceedings are the result of a workshop organized as part of the activities of a UK government AHRB/EPSRC funded research cluster called Embracing Complexity in Design (www.complexityanddesign.net) and the European Conference in Complex Systems (complexsystems.lri.fr). Embracing complexity in design is one of the critical issues and challenges of the 21st century. As the realization grows that design activities and artefacts display properties associated with complex adaptive systems, so grows the need to use complexity concepts and methods to understand these properties and inform the design of better artifacts. It is a great challenge because complexity science represents an epistemological and methodological swift that promises a holistic approach in the understanding and operational support of design. But design is also a major contributor in complexity research. Design science is concerned with problems that are fundamental in the sciences in general and complexity sciences in particular. For instance, design has been perceived and studied as a ubiquitous activity inherent in every human activity, as the art of generating hypotheses, as a type of experiment, or as a creative co-evolutionary process. Design science and its established approaches and practices can be a great source for advancement and innovation in complexity science. These proceedings are the result of a workshop organized as part of the activities of a UK government AHRB/EPSRC funded research cluster called Embracing Complexity in Design (www.complexityanddesign.net) and the European Conference in Complex Systems (complexsystems.lri.fr)

    HyperCell

    Get PDF
    This research believes that understanding the relationship between Interactive Architecture and the principles of biology will become a mainstream research area in future architectural design. Aiming towards achieving the goal of “making architecture as organic bodies”, almost all the current digital techniques in architectural design are executed using computational simulation: digital fabrication technologies and physical computing. Based on its’ main biological inspirations, Evolutionary Development Biology (Evo-Devo), this research intends to propose a novel bio-inspired design thinking wherein architecture should become analogs to the growing process of living organisms (Figure 6.1). Instead of being born from static optimization results most of the architecture seems content at aiming for nowadays, this research is looking towards designing dynamic architectural bodies which can adapt to the constantly changing environments and are thus seeking optimization in real-time. In other words, architecture should come “alive” as a living creature in order to actively optimize itself with respect to dynamic environmental conditions and user behavior’ requirements in real-time. Following the notion of “architecture as organic bodies”, six major topics were derived from the publication of “New Wombs: Electric Bodies and Architectural Disorders” (Palumbo, 2000). These topics are aimed at initiating critical discussions between body and space, which, are used here to re-interpret six main traits of being an interactive architecture: Dis-measurement, Uprooting, Fluidity, Visceral Nature, Virtuality, and Sensitivity. These six topics merge diverse key points from aforementioned chapters including outlining the vision of active interacting architecture, the transformation of human bodies under digital culture, the profound biological inspiration from Evo-Devo and the fundamental componential notion of swarm, which leads to the ultimate notion of embodying organic body-like interactive Bio-architecture. Dis-measurement: Acknowledging the premise of “architecture (technology) as an extension of human bodies” proposed by Marshall McLuhan (McLuhan, Understanding Media: The Extensions of Man, 1964), it is, still difficult to explicitly define the boundary of a space, especially in the context of a borderless cyberspace (the Internet). Space in such a context expands more than ever before and thus makes traditional measurements techniques unfeasible. With cyberspace, people can be virtually present in different places at the same time, thus breaking existing physical boundaries of a space. From another point of view, space as an extension of our bodies constantly adapting to environmental conditions and user demands, creates an intimate linkage between physical bodies and spatial bodies. Interaction in such instances can be seen from a micro-scale: between biological cells and intelligent architectural components to the macro-scale: between physical organic bodies and spatial bodies/architectural space. Uprooting: Apart from further extending the “Dis-measurement” idea by directly plugging into cyberspace (the Internet), “Uprooting” is also interpreted as adaptation devoid of any site/location constraints. In other words, the idea of “Uprooting” implies, generating an architecture that can adjust/modify in accordance with its existing surroundings by interactions between its smallest intelligent components like cells in a body searching for dynamic equilibrium. In this case, architecture has no particular reason to be designed as “rooted” on sites. Fluidity: With the neural system inside the body, most of the messages can be transmitted, received and sent within less than a millionth of a second. To envision architecture as an information processor, which has abilities to react to dynamic environmental conditions and user demands, efficient information protocols must be built into such an organic architectural body to create seamless exterior/interior transformations. Visceral Nature: Visceral can be interpreted in the form of an embodied organ. This implies envisioning architecture in the form of a living-entity. It is no longer the case of mimicking a natural form and thus claiming a building to be organic, but rather instigates one to look deeper into the principles of a natural form’s morphogenesis and apply these to generate a truly organic space. Through the study of Evo-Devo, several principles will be applied to generate an interactive organic Bio-architecture. It is thus not an organic looking shape that matters, but the principles behind the shape, which matter. For instance, principles of self-organization, self-assembly, and self-adaptation, providing possibilities of making body-like architectures with multi-directional and multi-modal communications both inside out and outside in. An intelligent architecture, should “live” in the environment just as how the body lives with its’ Visceral Nature. Virtuality: It is impossible to talk about physical space without mentioning virtual space nowadays. From cyberspace, augmented reality to virtual reality, “Virtuality” is related to “interaction” since the beginning and has gradually become an inevitable aspect of our daily lives. In fact, virtual space has to still use constraints from the physical world to enhance experiential aspects. The ultimate goal of virtual reality here is not to end up with a VR helmet and keep constantly being stimulated by electronic messages, but to bring the physical to the virtual and in the process, attempt to search for a dynamic balance between the virtual and real by merging them together. With the assistance of virtual reality, novel unrealistic space can still be realized into creative tangible immersive and fascinating spaces, which, earlier was not possible. Sensitivity: The notion of “architecture is an extension of human bodies”, is crucial to embrace, if we consider enhancing the sensing abilities of the space as a body not only externally but also internally. In a digital space, active sensing can be achieved by attaching specific devices. In an interactive space, like an organic body, the sensing capabilities of the space have to be fast, accurate, intuitive, and predictive. The sensing system should thus not only work externally to sense the surrounding environment but also internally in order to fulfill the users’ demands in time. With such a connection between human bodies and spatial bodies, it should become relatively understandable for the space to know the requirements of the users by means of hand gestures instead of verbal cues. The sensitivity, in this case, should rely on local information distribution as a bottom-up system rather than a top-down centralized demanding structure
    corecore