Adaptive Knowledge Bases in Self-Adaptive System Design

Self-adaptive systems allow for flexible solutions in changing environments. Usually, a fixed set of predefined rules is used to define the adaptation possibilities of a system. The main problem of such systems is to cope with environment behaviours that were not anticipated at design-time. In this case, no adaptation rule might be applicable or adaptations might not have the expected effect. In this paper, we propose an extended architecture of IBM's MAPE-K loop to cope with this problem. We impose a structure on the knowledge base consisting of an abstract system and environment model, a global goal model, and a set of (current) adaptation rules. Furthermore, we introduce an evaluation component that deletes failed adaptation rules, as well as a learning component that uses run-time models to autonomously generate new rules if the current ones are not applicable. With our approach, not only functional components can dynamically be adapted but also the adaptation logic itself.

[1]  Tobias Schüle,et al.  From Model-Based Design to Formal Verification of Adaptive Embedded Systems , 2007, ICFEM.

[2]  Tobias Schüle,et al.  Verifying the adaptation behavior of embedded systems , 2006, SEAMS '06.

[3]  Gregor Engels,et al.  High-quality specification of self-adaptive software systems , 2013, 2013 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS).

[4]  Thomas Vogel,et al.  Mechanisms for Leveraging Models at Runtime in Self-adaptive Software , 2014, Models@run.time@Dagstuhl.

[5]  Brice Morin,et al.  A Reference Architecture and Roadmap for Models@run.time Systems , 2011, Models@run.time@Dagstuhl.

[6]  A. W. Roscoe,et al.  FDR3 - A Modern Refinement Checker for CSP , 2014, TACAS.

[7]  Björn Bartels,et al.  Modular Design and Verification of Distributed Adaptive Real-Time Systems Based on Refinements and Abstractions , 2015, EAI Endorsed Trans. Self Adapt. Syst..

[8]  David Sinreich,et al.  An architectural blueprint for autonomic computing , 2006 .

[9]  Anna Philippou,et al.  Tools and Algorithms for the Construction and Analysis of Systems , 2018, Lecture Notes in Computer Science.

[10]  Tibor Dulai,et al.  CSP-based modelling for self-adaptive applications , 2009 .

[11]  Wang Yi,et al.  Timed Automata: Semantics, Algorithms and Tools , 2003, Lectures on Concurrency and Petri Nets.

[12]  Danny Weyns,et al.  ActivFORMS: active formal models for self-adaptation , 2014, SEAMS 2014.

[13]  Steve A. Schneider,et al.  Concurrent and Real-time Systems: The CSP Approach , 1999 .