3204459.pdf (4.45 MB)
FEMOSAA: feature-guided and knee-driven multi-objective optimization for self-adaptive software
journal contributionposted on 2019-09-19, 13:14 authored by Tao Chen, Ke Li, Rami Bahsoon, Xin Yao
Self-Adaptive Software (SAS) can reconfigure itself to adapt to the changing environment at runtime, aiming to continually optimize conflicted nonfunctional objectives (e.g., response time, energy consumption, throughput, cost, etc.). In this article, we present Feature-guided and knEe-driven Multi-Objective optimization for Self-Adaptive softwAre (FEMOSAA), a novel framework that automatically synergizes the feature model and Multi-Objective Evolutionary Algorithm (MOEA) to optimize SAS at runtime. FEMOSAA operates in two phases: at design time, FEMOSAA automatically transposes the engineers’ design of SAS, expressed as a feature model, to fit the MOEA, creating new chromosome representation and reproduction operators. At runtime, FEMOSAA utilizes the feature model as domain knowledge to guide the search and further extend the MOEA, providing a larger chance for finding better solutions. In addition, we have designed a new method to search for the knee solutions, which can achieve a balanced tradeoff. We comprehensively evaluated FEMOSAA on two running SAS: One is a highly complex SAS with various adaptable real-world software under the realistic workload trace; another is a service-oriented SAS that can be dynamically composed from services. In particular, we compared the effectiveness and overhead of FEMOSAA against four of its variants and three other search-based frameworks for SAS under various scenarios, including three commonly applied MOEAs, two workload patterns, and diverse conflicting quality objectives. The results reveal the effectiveness of FEMOSAA and its superiority over the others with high statistical significance and nontrivial effect sizes.
Ministry of Science and Technology of China (Grant No. 2017YFC0804003)
Science and Technology Innovation Committee Foundation of Shenzhen (Grant No. ZDSYS201703031748284)
EPSRC (Grant No. EP/J017515/01)
Evolutionary Computation for Dynamic Optimisation in Network Environments
Engineering and Physical Sciences Research CouncilFind out more...
- Computer Science
Published inACM Transactions on Software Engineering and Methodology
PublisherAssociation for Computing Machinery (ACM)
- VoR (Version of Record)
Rights holder© The Authors
Publisher statementThis is an Open Access Article. It is published by ACM under the Creative Commons Attribution 4.0 International Licence (CC BY 4.0). Full details of this licence are available at: https://creativecommons.org/licenses/by/4.0/