Skip to main content

Lund University Publications

LUND UNIVERSITY LIBRARIES

SimCA∗ : A control-theoretic approach to handle uncertainty in self-adaptive systems with guarantees

Shevtsov, Stepan ; Weyns, Danny and Maggio, Martina LU (2019) In ACM Transactions on Autonomous and Adaptive Systems 13(4).
Abstract

Self-adaptation provides a principled way to deal with software systems' uncertainty during operation. Examples of such uncertainties are disturbances in the environment, variations in sensor readings, and changes in user requirements. As more systems with strict goals require self-adaptation, the need for formal guarantees in self-adaptive systems is becoming a high-priority concern. Designing self-adaptive software using principles from control theory has been identified as one of the approaches to provide guarantees. In general, self-adaptation covers a wide range of approaches to maintain system requirements under uncertainty, ranging from dynamic adaptation of system parameters to runtime architectural reconfiguration. Existing... (More)

Self-adaptation provides a principled way to deal with software systems' uncertainty during operation. Examples of such uncertainties are disturbances in the environment, variations in sensor readings, and changes in user requirements. As more systems with strict goals require self-adaptation, the need for formal guarantees in self-adaptive systems is becoming a high-priority concern. Designing self-adaptive software using principles from control theory has been identified as one of the approaches to provide guarantees. In general, self-adaptation covers a wide range of approaches to maintain system requirements under uncertainty, ranging from dynamic adaptation of system parameters to runtime architectural reconfiguration. Existing control-theoretic approaches have mainly focused on handling requirements in the form of setpoint values or as quantities to be optimized. Furthermore, existing research primarily focuses on handling uncertainty in the execution environment. This article presents SimCA∗, which provides two contributions to the stateof- the-art in control-theoretic adaptation: (i) it supports requirements that keep a value above and below a required threshold, in addition to setpoint and optimization requirements; and (ii) it deals with uncertainty in system parameters, component interactions, system requirements, in addition to uncertainty in the environment. SimCA∗ provides guarantees for the three types of requirements of the system that is subject to different types of uncertainties.We evaluate SimCA∗ for two systems with strict requirements from different domains: an Unmanned Underwater Vehicle system used for oceanic surveillance and an Internet of Things application for monitoring a geographical area. The test results confirm that SimCA∗ can satisfy the three types of requirements in the presence of different types of uncertainty.

(Less)
Please use this url to cite or link to this publication:
author
; and
organization
publishing date
type
Contribution to journal
publication status
published
subject
keywords
Control theory, IoT, Self-adaptation, SimCA∗, Software, Uncertainty, UUV
in
ACM Transactions on Autonomous and Adaptive Systems
volume
13
issue
4
article number
17
publisher
Association for Computing Machinery (ACM)
external identifiers
  • scopus:85069975685
ISSN
1556-4665
DOI
10.1145/3328730
language
English
LU publication?
yes
id
1a6aa718-b3bd-4cdc-a107-3a680e13e625
date added to LUP
2019-08-27 14:42:45
date last changed
2022-05-11 20:48:21
@article{1a6aa718-b3bd-4cdc-a107-3a680e13e625,
  abstract     = {{<p>Self-adaptation provides a principled way to deal with software systems' uncertainty during operation. Examples of such uncertainties are disturbances in the environment, variations in sensor readings, and changes in user requirements. As more systems with strict goals require self-adaptation, the need for formal guarantees in self-adaptive systems is becoming a high-priority concern. Designing self-adaptive software using principles from control theory has been identified as one of the approaches to provide guarantees. In general, self-adaptation covers a wide range of approaches to maintain system requirements under uncertainty, ranging from dynamic adaptation of system parameters to runtime architectural reconfiguration. Existing control-theoretic approaches have mainly focused on handling requirements in the form of setpoint values or as quantities to be optimized. Furthermore, existing research primarily focuses on handling uncertainty in the execution environment. This article presents SimCA∗, which provides two contributions to the stateof- the-art in control-theoretic adaptation: (i) it supports requirements that keep a value above and below a required threshold, in addition to setpoint and optimization requirements; and (ii) it deals with uncertainty in system parameters, component interactions, system requirements, in addition to uncertainty in the environment. SimCA∗ provides guarantees for the three types of requirements of the system that is subject to different types of uncertainties.We evaluate SimCA∗ for two systems with strict requirements from different domains: an Unmanned Underwater Vehicle system used for oceanic surveillance and an Internet of Things application for monitoring a geographical area. The test results confirm that SimCA∗ can satisfy the three types of requirements in the presence of different types of uncertainty.</p>}},
  author       = {{Shevtsov, Stepan and Weyns, Danny and Maggio, Martina}},
  issn         = {{1556-4665}},
  keywords     = {{Control theory; IoT; Self-adaptation; SimCA∗; Software; Uncertainty; UUV}},
  language     = {{eng}},
  month        = {{07}},
  number       = {{4}},
  publisher    = {{Association for Computing Machinery (ACM)}},
  series       = {{ACM Transactions on Autonomous and Adaptive Systems}},
  title        = {{SimCA∗ : A control-theoretic approach to handle uncertainty in self-adaptive systems with guarantees}},
  url          = {{http://dx.doi.org/10.1145/3328730}},
  doi          = {{10.1145/3328730}},
  volume       = {{13}},
  year         = {{2019}},
}