The Evolving Philosophers Problem: Dynamic Change Management
IEEE Transactions on Software Engineering
Adaptation in natural and artificial systems
Adaptation in natural and artificial systems
Genetic programming: on the programming of computers by means of natural selection
Genetic programming: on the programming of computers by means of natural selection
ACT: An Adaptive CORBA Template to Support Unanticipated Adaptation
ICDCS '04 Proceedings of the 24th International Conference on Distributed Computing Systems (ICDCS'04)
Computer
Utility Functions in Autonomic Systems
ICAC '04 Proceedings of the First International Conference on Autonomic Computing
FAST '04 Proceedings of the 3rd USENIX Conference on File and Storage Technologies
Model-based development of dynamically adaptive software
Proceedings of the 28th international conference on Software engineering
Architecture-based self-adaptation in the presence of multiple objectives
Proceedings of the 2006 international workshop on Self-adaptation and self-managing systems
Distributed context management in a mobility and adaptation enabling middleware (MADAM)
Proceedings of the 2006 ACM symposium on Applied computing
Linear Genetic Programming (Genetic and Evolutionary Computation)
Linear Genetic Programming (Genetic and Evolutionary Computation)
Self-Managed Systems: an Architectural Challenge
FOSE '07 2007 Future of Software Engineering
MESO: Supporting Online Decision Making in Autonomic Computing Systems
IEEE Transactions on Knowledge and Data Engineering
Tranquility: A Low Disruptive Alternative to Quiescence for Ensuring Safe Dynamic Updates
IEEE Transactions on Software Engineering
Digital Evolution of Behavioral Models for Autonomic Systems
ICAC '08 Proceedings of the 2008 International Conference on Autonomic Computing
Applying genetic algorithms to decision making in autonomic computing systems
ICAC '09 Proceedings of the 6th international conference on Autonomic computing
Enabling safe dynamic component-based software adaptation
Architecting Dependable Systems III
Software quality trade-offs: A systematic map
Information and Software Technology
Hi-index | 0.00 |
Increasingly, high-assurance software systems apply self-reconfiguration in order to satisfy changing functional and non-functional requirements. Most self-reconfiguration approaches identify a target system configuration to provide the desired system behavior, then apply a series of reconfiguration instructions to reach the desired target configuration. Collectively, these reconfiguration instructions define an adaptation path. Although multiple satisfying adaptation paths may exist, most self-reconfiguration approaches select adaptation paths based on a single criterion, such as minimizing reconfiguration cost. However, different adaptation paths may represent tradeoffs between reconfiguration costs and other criteria, such as performance and reliability. This paper introduces an evolutionary computation-based approach to automatically evolve adaptation paths that safely transition an executing system from its current configuration to its desired target configuration, while balancing tradeoffs between functional and non-functional requirements. The proposed approach can be applied both at design time to generate suites of adaptation paths, as well as at run time to evolve safe adaptation paths to handle changing system and environmental conditions. We demonstrate the effectiveness of this approach by applying it to the dynamic reconfiguration of a collection of remote data mirrors, with the goal of minimizing reconfiguration costs while maximizing reconfiguration performance and reliability.