FEMOSAA: Feature-guided and knee-driven multi-objective optimization for self-adaptive software


Research output: Journal PublicationsJournal Article (refereed)peer-review

50 Citations (Scopus)


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. © ACM.
Original languageEnglish
Article number5
JournalACM Transactions on Software Engineering and Methodology
Issue number2
Publication statusPublished - 30 Apr 2018
Externally publishedYes

Bibliographical note

This work is supported by the Ministry of Science and Technology of China (Grant No. 2017YFC0804003), Science and Technology Innovation Committee Foundation of Shenzhen (Grant No. ZDSYS201703031748284), and EPSRC (Grant Nos. EP/J017515/01 and EP/K001523).


  • Feature model
  • Multi-objective evolutionary algorithm
  • Multi-objective optimization
  • Performance engineering
  • Search-based software engineering
  • Self-adaptive system


Dive into the research topics of 'FEMOSAA: Feature-guided and knee-driven multi-objective optimization for self-adaptive software'. Together they form a unique fingerprint.

Cite this