56 research outputs found

    Decentrally Coordinated Execution of Adaptations in Distributed Self-Adaptive Software Systems

    Get PDF
    Software systems in domains like Smart Cities, the Internet of Things or autonomous cars are coined by a high degree of distribution across several independent computing devices and the requirement to be able to adjust themselves to varying situations in their operational environment. Self-adaptive software systems are a natural choice to implement such context-dependent software systems. A multitude of approaches already implement self-adaptive systems and some consider even distribution aspects.Yet, none of the existing solutions supports the coordination of adaptation operations spanning multiple independent nodes, which is necessary to ensure a consistent adaptation even in presence of network errors or node failures. In this paper, we tackle this challenge to execute adaptations in distributed self-adaptive software systems in a coordinated manner. We present a protocol that enables the self-adaptive software system to execute correlated adaptations on multiple nodes in a transactional manner ensuring an atomic and consistent transition of the distributed system from its source to the desired target configuration. The protocol is validated to be free of deadlocks for any given adaptation at any point in time using a model-checking approach. The performance of our approach is investigated in experiments that emulate the protocol's execution on real devices for different sizes of distributed applications and adaptation scenarios

    ThinkingSkins:

    Get PDF
    New technologies and automation concepts emerge in the digitalization of our environment. This is, for example, reflected by intelligent production systems in Industry 4.0. A core aspect of such systems is their cyber-physical implementation, which aims to increase productivity and flexibility through embedded computing capacities and the cooperation of decentrally networked production plants. This development stage of automation has not yet been achieved in the current state-of-the-art of faƧades. Being responsible for the execution of adaptive measures, faƧade automation is part of hierarchically and centrally organised Building Automation Systems (BAS). The research project ThinkingSkins is guided by the hypothesis that, aiming at an enhanced overall building performance, faƧades can be implemented as cyber-physical systems. Accordingly, it addresses the research question: How can cyber-physical systems be applied to faƧades, in order to enable coordinated adaptations of networked individual faƧade functions? The question is approached in four partial investigations. First, a comprehensive understanding of intelligent systems in both application fields, faƧades and Industry 4.0, is elaborated by a literature review. Subsequently, relevant faƧade functions are identified by a second literature review in a superposition matrix, which also incorporates characteristics for a detailed assessment of each functionā€™s adaptive capacities. The third investigation focuses on existing conditions in building practice by means of a multiple case study analysis. Finally, the technical feasibility of faƧades implemented as cyber-physical systems is investigated by developing a prototype. The research project identifies the possibility and promising potential of cyberphysical faƧades. As result, the doctoral dissertation provides a conceptual framework for the implementation of such systems in building practice and for further research

    Thinking- Skins

    Get PDF
    Under the guiding concept of a thinking skin, the research project examines the transferability of cyber-physical systems to the application field of faƧades. It thereby opens up potential increases in the performance of automated and adaptive faƧade systems and provides a conceptual framework for further research and development of intelligent building envelopes in the current age of digital transformation. The project is characterized by the influence of digital architectural design methods and the associated computational processing of information in the design process. The possible establishment of relationships and dependencies in an architecture understood as a system, in particular, are the starting point for the conducted investigation. With the available automation technologies, the possibility of movable building constructions, and existing computer-based control systems, the technical preconditions for the realisation of complex and active buildings exist today. Against this background, dynamic and responsive constructions that allow adaptations in the operation of the building are a current topic in architecture. In the application field of the building envelope, the need for such designs is evident, particularly with regards to the concrete field of adaptive faƧades. In its mediating role, the faƧade is confronted with the dynamic influences of the external microclimate of a building and the changing comfort demands of the indoor climate. The objective in the application of adaptive faƧades is to increase building efficiency by balancing dynamic influencing factors and requirements. FaƧade features are diverse and with the increasing integration of building services, both the scope of fulfilled faƧade functions and the complexity of todayā€™s faƧades increase. One challenge is the coordination of adaptive functions to ensure effective reactions of the faƧade as a complete system. The ThinkingSkins research project identifies cyber-physical systems as a possible solution to this challenge. This involves the close integration of physical systems with their digital control. Important features are the decentralized organization of individual system constituents and their cooperation via an exchange of information. Developments in recent decades, such as the miniaturisation of computer technology and the availability of the Internet, have established the technical basis required for these developments. Cyber-physical systems are already employed in many fields of application. Examples are decentralized energy supply, or transportation systems with autonomous vehicles. The influence is particularly evident in the transformation of the industrial sector to Industry 4.0, where formerly mechatronic production plants are networked into intelligent technical systems with the aim of achieving higher and more flexible productivity. In the ThinkingSkins research project it is assumed that the implementation of cyber-physical systems based on the role model of cooperating production plants in IIndustry 4.0 can contribute to an increase in the performance of faƧades. Accordingly, the research work investigates a possible transfer of cyber-physical systems to the application field of building envelopes along the research question: How can cyber-physical systems be applied to faƧades, in order to enable coordinated adaptations of networked individual faƧade functions? To answer this question, four partial studies are carried out, which build upon each other. The first study is based on a literature review, in which the understanding and the state-of-the-art development of intelligent faƧade systems is examined in comparison to the exemplary field of application of cyber-physical systems in the manufacturing industry. In the following partial study, a second literature search identifies faƧade functions that can be considered as components of a cyber-physical faƧade due to their adaptive feasibility and their effect on the faƧade performance. For the evaluation of the adaptive capabilities, characteristics of their automated and adaptive implementation are assigned to the identified faƧade functions. The resulting superposition matrix serves as an organizational tool for the third investigation of the actual conditions in construction practice. In a multiple case study, realized faƧade projects in Germany are examined with regard to their degree of automation and adaptivity. The investigation includes interviews with experts involved in the projects as well as field studies on site. Finally, an experimental examination of the technical feasibility of cyber-physical faƧade systems is carried out through the development of a prototype. In the sense of an internet of faƧade functions, the automated adaptive faƧade functions ventilation, sun protection as well as heating and cooling are implemented in decentrally organized modules. They are connected to a digital twin and can exchange data with each other via a communication protocol. The research project shows that the application field of faƧades has not yet been exploited for the implementation of cyber-physical systems. With the automation technologies used in building practice, however, many technical preconditions for the development of cyber-physical faƧade systems already exist. Many features of such a system are successfully implemented within the study by the development of a prototype. The research project therefore comes to the conclusion that the application of cyber-physical systems to the faƧade is possible and offers a promising potential for the effective use of automation technologies. Due to the lack of artificial intelligence and machine learning strategies, the project does not achieve the goal of developing a faƧade in the sense of a true ThinkingSkin as the title indicates. A milestone is achieved by the close integration of the physical faƧade system with a decentralized and integrated control system. In this sense, the researched cyber-physical implementation of faƧades represents a conceptual framework for the realisation of corresponding systems in building practice, and a pioneer for further research of ThinkingSkins

    A survey on engineering approaches for self-adaptive systems (extended version)

    Full text link
    The complexity of information systems is increasing in recent years, leading to increased effort for maintenance and configuration. Self-adaptive systems (SASs) address this issue. Due to new computing trends, such as pervasive computing, miniaturization of IT leads to mobile devices with the emerging need for context adaptation. Therefore, it is beneficial that devices are able to adapt context. Hence, we propose to extend the definition of SASs and include context adaptation. This paper presents a taxonomy of self-adaptation and a survey on engineering SASs. Based on the taxonomy and the survey, we motivate a new perspective on SAS including context adaptation

    Optimistic Adaptation of Decentralised Role-based Software Systems

    Get PDF
    The complexity of computer networks has been rising over the last decades. Increasing interconnectivity between multiple devices, growing complexity of performed tasks and a strong collaboration between nodes are drivers for this phenomenon. An example is represented by Internet-of-Things devices, whose relevance has been rising in recent years. The increasing number of devices requiring updates and supervision makes maintenance more difficult. Human interaction, in this case, is costly and requires a lot of time. To overcome this, self-adaptive software systems (SAS) can be used. SAS are a subset of autonomous systems which can monitor themselves and their environment to adapt to changes without human interaction. In the literature, different approaches for engineering SAS were proposed, including techniques for executing adaptations on multiple devices based on generated plans for reacting to changes. Among those solutions, also decentralised approaches can be found. To the best of our knowledge, no approach for engineering a SAS exists which tolerates errors during the execution of adaptation in a decentralised setting. While some approaches for role-based execution reset the application in case of a single failure during the adaptation process, others do not make assumptions about errors or do not consider an erroneous environment. In a real-world environment, errors will likely occur during run-time, and the adaptation process could be disturbed. This work aims to perform adaptations in a decentralised way on role-based systems with a relaxed consistency constraint, i.e., errors during the adaptation phase are tolerated. This increases the availability of nodes since no rollbacks are required in case of a failure. Moreover, a subset of applications, such as drone swarms, would benefit from an approach with a relaxed consistency model since parts of the system that adapted successfully can already operate in an adapted configuration instead of waiting for other peers to apply the changes in a later iteration. Moreover, if we eliminate the need for an atomic adaptation execution, asynchronous execution of adaptation would be possible. In that case, we can supervise the adaptation process for a long time and ensure that every peer takes the planned actions as soon as the internal task execution allows it. To allow for a relaxed consistent way of adaptation execution, we develop a decentralised adaptation execution protocol, which supports the notion of eventual consistency. As soon as devices reconnect after network congestion or restore their internal state after local failures, our protocol can coordinate the recovery process among multiple devices to attempt recovery of a globally consistent state after errors occur. By superseding the need for a central instance, every peer who received information about failing peers can start the recovery process. The developed approach can restore a consistent global configuration if almost all peers fail. Moreover, the approach supports asynchronous adaptations, i.e., the peers can execute planned adaptations as soon as they are ready, which increases overall availability in case of delayed adaptation of single nodes. The developed protocol is evaluated with the help of a proof-of-concept implementation. The approach was run in five different experiments with thousands of iterations to show the applicability and reliability of this novel approach. The time for execution of the protocol and the number of exchanged messages has been measured to compare the protocol for different error cases and system sizes, as well as to show the scalability of the approach. The developed solution has been compared to a blocking approach to show the feasibility compared to an atomic approach. The applicability in a real-world scenario has been described in an empirical study using an example of a fire-extinguishing drone swarm. The results show that an optimistic approach to adaptation is suitable and specific scenarios can benefit from the improved availability since no rollbacks are required. Systems can continue their work regardless of the failures of participating nodes in large-scale systems.:Abstract VI 1. Introduction 1 1.1. Motivational Use-Case 2 1.2. Problem Definition 3 1.3. Objectives 4 1.4. Research Questions 5 1.5. Contributions 5 1.6. Outline 6 2. Foundation 7 2.1. Role Concept 7 2.2. Self-Adaptive Software Systems 13 2.3. Terminology for Role-Based Self-Adaptation 15 2.4. Consistency Preservation and Consistency Models 17 2.5. Summary 20 3. Related Work 21 3.1. Role-Based Approaches 22 3.2. Actor Model of Computation and Akka 23 3.3. Adaptation Execution in Self-Adaptive Software Systems 24 3.4. Change Consistency in Distributed Systems 33 3.5. Comparison of the Evaluated Approaches 40 4. The Decentralised Consistency Compensation Protocol 43 4.1. System and Error Model 43 4.2. Requirements to the Concept 44 4.3. The Usage of Roles in Adaptations 45 4.4. Protocol Overview 47 4.5. Protocol Description 51 4.6. Protocol Corner- and Error Cases 64 4.7. Summary 66 5. Prototypical Implementation 67 5.1. Technology Overview 67 5.2. Reused Artifacts 68 5.3. Implementation Details 70 5.4. Setup of the Prototypical Implementation 76 5.5. Summary 77 6. Evaluation 79 6.1. Evaluation Methodology 79 6.2. Evaluation Setup 80 6.3. Experiment Overview 81 6.4. Default Case: Successful Adaptation 84 6.5. Compensation on Disconnection of Peers 85 6.6. Recovery from Failed Adaptation 88 6.7. Impact of Early Activation of Adaptations 91 6.8. Comparison with a Blocking Approach 92 6.9. Empirical Study: Fire Extinguishing Drones 95 6.10. Summary 97 7. Conclusion and Future Work 99 7.1. Recap of the Research Questions 99 7.2. Discussion 101 7.3. Future Work 101 A. Protocol Buffer Definition 103 Acronyms 108 Bibliography 10

    Run-time Adaptation of Role-based Software Systems

    Get PDF
    Self-adaptive software systems possess the ability to modify their own structure or behavior in response to changes in their operational environment. Access to sensor data providing information on the monitored environment is a necessary prerequisite in such software systems. In the future, self-adaptive software systems will be increasingly distributed and interconnected to perform their assigned tasks, e.g., within smart environments or as part of autonomous systems. Adaptations of the software systems\\\' structure or behavior will therefore have to be performed consistently on multiple remote subsystems. Current approaches, however, do not completely support the run-time adaptation of distributed and interconnected software systems. Supported adaptations are local to a specific device and do not require further coordination or the execution of such adaptations is controlled by a centralized management system. Approaches that support the decentralized adaptation process, help to determine a stable state, e.g., defined by quiescence, of one adaptable entity without central knowledge ahead of the actual adaptation process. The execution of complex adaptation scenarios comprising several adaptations on multiple computational devices is currently not supported. Consequently, inherent properties of a distributed system such as intermittent connectivity or local adaptation failures pose further challenges on the execution of adaptations affecting system parts deployed to multiple devices. Adaptation operations in the current research landscape cover different types of changes that can be performed upon a self-adaptive software system. Simple adaptations allow the modification of bindings between components or services as well as the removal or creation and integration of such components or services into the system. Semantically more expressive operations allow for the relocation of behavioral parts of the system. In this thesis, a coordination protocol is presented that supports the decentralized execution of multiple, possibly dependent adaptation operations and ensures a consistent transition of the software system from its source to a desired target configuration. An adaptation operation describes exactly one behavioral modification of the system, e.g., the addition or replacement of a component representing a behavioral element of the system\\\'s configuration. We rely on the notion of Roles as an abstraction to define the software system\\\'s static and dynamic, i.e., context-dependent, parts. Roles are an intuitive means to describe behavioral adaptations in distributed, context-dependent software systems due to their behavioral, relational and context-dependent nature. Adaptation operations therefore utilize the Role concept to describe the intended run-time modifications of the software system. The proposed protocol is designed to maintain a consistent transition of the software system from a given source to a target configuration in the presence of link failures between remote subsystems, i.e., messages used by the protocol to coordinate the adaptation process are lost on transmission, and in case of local failures during the adaptation process. The evaluation of our approach comprises two aspects: In one step, the correctness of the coordination protocol is formally validated using the model checking tool PRISM. The protocol is shown to be deadlock-free even in the presence of coordination message losses and local adaptation failures. In a second step, the approach is evaluated with the help of an emulated execution environment in which the degree of coordination message losses and adaptation failures is varied. The adaptation duration and the partial unavailability of the system, i.e., the time roles are passive due to ongoing adaptations, is measured as well as the success rate of the adaptation process for different rates of message losses and adaptation failures

    Model-Based Engineering of Collaborative Embedded Systems

    Get PDF
    This Open Access book presents the results of the "Collaborative Embedded Systems" (CrESt) project, aimed at adapting and complementing the methodology underlying modeling techniques developed to cope with the challenges of the dynamic structures of collaborative embedded systems (CESs) based on the SPES development methodology. In order to manage the high complexity of the individual systems and the dynamically formed interaction structures at runtime, advanced and powerful development methods are required that extend the current state of the art in the development of embedded systems and cyber-physical systems. The methodological contributions of the project support the effective and efficient development of CESs in dynamic and uncertain contexts, with special emphasis on the reliability and variability of individual systems and the creation of networks of such systems at runtime. The project was funded by the German Federal Ministry of Education and Research (BMBF), and the case studies are therefore selected from areas that are highly relevant for Germanyā€™s economy (automotive, industrial production, power generation, and robotics). It also supports the digitalization of complex and transformable industrial plants in the context of the German government's "Industry 4.0" initiative, and the project results provide a solid foundation for implementing the German government's high-tech strategy "Innovations for Germany" in the coming years

    A framework for engineering reusable self-adaptive systems

    Full text link
    The increasing complexity and size of information systems result in an increasing effort for maintenance. Additionally, miniaturization of devices leads to mobility and the need for context-adaptation. Self-adaptive Systems (SASs) can adapt to changes in their environment or the system itself. So far, however, development of SASs is frequently tailored towards the requirements of use cases. The research for reusable elements ā€” for implementation as well as design processes ā€” is often neglected. Integrating reusable processes and implementation artifacts into a framework and offering a tool suite to developers would make development of SASs faster and less error-prone. This thesis presents the Framework for Engineering Self-adaptive Systems (FESAS). It offers a reusable implementation of a reference system, tools for implementation and design as well as a middleware for controlling system deployment. As a second contribution, this thesis introduces a new approach for self-improvement of SASs which complements the SAS with meta-adaptation

    Stigmergy-based Load Scheduling in a Demand Side Management Context

    Get PDF
    This work proposes an approach, based on a fundamental coordination mechanism from nature, namely stigmergy. The proposed meta-heuristic is utilized to distributively calculate global schedules for a population of customers provided with intelligent devices. These schedules maximize renewable energy sources utilization. Furthermore, this approach is adapted and utilized as a coordination mechanism of autonomous customers to modify their consumption behavior in a real-time optimization context

    Decentralized task allocation for dynamic, time-sensitive tasks

    Get PDF
    Thesis: S.M., Massachusetts Institute of Technology, Department of Mechanical Engineering, 2018.This electronic version was submitted by the student author. The certified thesis is available in the Institute Archives and Special Collections.Cataloged from student-submitted PDF version of thesis.Includes bibliographical references (pages 103-110).In time-sensitive and dynamic missions, autonomous vehicles must respond quickly to new information and objectives. In the case of dynamic task allocation, a team of agents are presented with a new, unknown task that must be allocated with their original allocations. This is exacerbated further in decentralized settings where agents are limited to utilizing local information during the allocation process. This thesis presents a fully decentralized, dynamic task allocation algorithm that extends the Consensus-Based Bundle Algorithm (CBBA) to allow for allocating new tasks. Whereas static CBBA requires a full resetting of previous allocations, CBBA with Partial Replanning (CBBA-PR) enables the agents to only partially reset their allocations to efficiently and quickly allocate a new task. By varying the number of existing tasks that are reset during replan, the team can trade-off convergence speed with amount of coordination. By specifically choosing the lowest bid tasks for resetting, CBBA-PR is shown to converge linearly with the number of tasks reset and the network diameter of the team. In addition, limited replanning methods are presented for scenarios without sufficient replanning time. These include a single reset bidding procedure for agents at capacity, a no-replanning heuristic that can identify scenarios that does not require replanning, and a subteam formation algorithm for reducing the network diameter. Finally, this thesis describes hardware and simulation experiments used to explore the effects of ad-hoc, decentralized communication on consensus algorithms and to validate the performance of CBBA-PR.by Noam Buckman.S.M
    • ā€¦
    corecore