Decision Making for Self-Adaptation Based on Partially Observable Satisfaction of Non-Functional Requirements

Luis Garcia, Huma Samin, Nelly Bencomo

Research output: Contribution to journalArticlepeer-review

Abstract

Approaches that support the decision-making of self-adaptive and autonomous systems (SAS) often consider an idealized situation where (i) the system’s state is treated as fully observable by the monitoring infrastructure, and (ii) adaptation actions are assumed to have known, deterministic effects over the system. However, in practice, the system’s state may not be fully observable, and the adaptation actions may produce unexpected effects due to uncertain factors. This article presents a novel probabilistic approach to quantify the uncertainty associated with the effects of adaptation actions on the state of a SAS. Supported by Bayesian inference and POMDPs (Partially-Observable Markov Decision Processes), these effects are translated into the satisfaction levels of the non-functional requirements (NFRs) to, therefore, drive the decision-making. The approach has been applied to two substantial case studies from the networking and Internet of Things (IoT) domains, using two different POMDP solvers. The results show that the approach delivers statistically significant improvements in supporting decision-making for SAS.
Original languageEnglish
Pages (from-to)1-44
Number of pages44
JournalACM Transactions on Autonomous and Adaptive Systems
Volume19
Issue number2
Early online date20 Apr 2024
DOIs
Publication statusE-pub ahead of print - 20 Apr 2024

Bibliographical note

© 2024 Copyright held by the owner/author(s). This work is licensed under a Creative Commons Attribution International 4.0 License.

Keywords

  • Non-functional requirements
  • decision making
  • uncertainty
  • POMDPs
  • self-adaptation

Fingerprint

Dive into the research topics of 'Decision Making for Self-Adaptation Based on Partially Observable Satisfaction of Non-Functional Requirements'. Together they form a unique fingerprint.

Cite this