3204459.pdf (4.45 MB)
FEMOSAA: feature-guided and knee-driven multi-objective optimization for self-adaptive software
journal contribution
posted on 2019-09-19, 13:14 authored by Tao Chen, Ke Li, Rami Bahsoon, Xin YaoSelf-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.
Funding
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 Council
Find out more...History
School
- Science
Department
- Computer Science
Published in
ACM Transactions on Software Engineering and MethodologyVolume
27Issue
2Publisher
Association for Computing Machinery (ACM)Version
- VoR (Version of Record)
Rights holder
© The AuthorsPublisher statement
This 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/Acceptance date
2018-03-01Publication date
2018-06-29Copyright date
2018ISSN
1049-331XeISSN
1557-7392Publisher version
Language
- en