Coordinated Actors for Reliable Self-adaptive Systems

Self-adaptive systems are systems that automatically adapt in response to environmental and internal changes, such as possible failures and variations in resource availability. Such systems are often realized by a MAPE-K feedback loop, where Monitor, Analyze, Plan and Execute components have access to a runtime model of the system and environment which is kept in the Knowledge component. In order to provide guarantees on the correctness of a self-adaptive system at runtime, the MAPE-K feedback loop needs to be extended with assurance techniques. To address this issue, we propose a coordinated actor-based approach to build a reusable and scalable model@runtime for self-adaptive systems in the domain of track-based traffic control systems. We demonstrate the approach by implementing an automated Air Traffic Control system (ATC) using Ptolemy tool. We compare different adaptation policies on the ATC model based on performance metrics and analyze combination of policies in different configurations of the model. We enriched our framework with runtime performance analysis such that for any unexpected change, subsequent behavior of the model is predicted and results are used for adaptation at the change-point. Moreover, the developed framework enables checking safety properties at runtime.

[1]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.

[2]  Martin Gogolla,et al.  Using Models at Runtime to Address Assurance for Self-Adaptive Systems , 2015, Models@run.time@Dagstuhl.

[3]  Danny Weyns,et al.  Tele Assistance: A Self-Adaptive Service-Based System Exemplar , 2015, 2015 IEEE/ACM 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems.

[4]  Radu Calinescu,et al.  Dynamic QoS Management and Optimization in Service-Based Systems , 2011, IEEE Transactions on Software Engineering.

[5]  Giordano Tamburrelli,et al.  Probabilistic Verification at Runtime for Self-Adaptive Systems , 2013, Assurances for Self-Adaptive Systems.

[6]  Elizabeth Latronico,et al.  System Design, Modeling, and Simulation Using Ptolemy Ii Ontologies , 2013 .

[7]  Dimitris Bertsimas,et al.  The Traffic Flow Management Rerouting Problem in Air Traffic Control: A Dynamic Network Flow Approach , 2000, Transp. Sci..

[8]  Mohammad Mahdi Jaghoori,et al.  Ten Years of Analyzing Actors: Rebeca Experience , 2011, Formal Modeling: Actors, Open Systems, Biological Systems.

[9]  Jesper Andersson,et al.  FORMS: Unifying reference model for formal specification of distributed self-adaptive systems , 2012, TAAS.

[10]  Carolyn L. Talcott,et al.  Composable Semantic Models for Actor Theories , 1997, High. Order Symb. Comput..

[11]  Heather Goldsby,et al.  Modular verification of dynamically adaptive systems , 2009, AOSD '09.

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

[13]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[14]  Philippe Collet,et al.  Actor-based runtime model of adaptable feedback control loops , 2012, MRT '12.

[15]  Saeed Jalili,et al.  PobSAM: Policy-based Managing of Actors in Self-Adaptive Systems , 2010, Electron. Notes Theor. Comput. Sci..

[16]  Holger Giese,et al.  Classifying Distributed Self-* Systems Based on Runtime Models and Their Coupling , 2014, MoDELS@Run.time.

[17]  Philippe Collet,et al.  ACTRESS: domain-specific modeling of self-adaptive software architectures , 2014, SAC.

[18]  Paolo Arcaini,et al.  Modeling and Analyzing MAPE-K Feedback Loops for Self-Adaptation , 2015, 2015 IEEE/ACM 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems.

[19]  Amedeo R. Odoni,et al.  The Air Traffic Flow Management Problem: An Integer Optimization Approach , 2008, IPCO.

[20]  Saeed Jalili,et al.  Formal modeling of evolving self-adaptive systems , 2012, Sci. Comput. Program..

[21]  Yuriy Brun,et al.  Traffic routing for evaluating self-adaptation , 2012, 2012 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS).

[22]  Carl Hewitt,et al.  Description and Theoretical Analysis (Using Schemata) of Planner: A Language for Proving Theorems and Manipulating Models in a Robot , 1972 .

[23]  Carlo Ghezzi,et al.  Dealing with Non-Functional Requirements for Adaptive Systems via Dynamic Software Product-Lines , 2010, Software Engineering for Self-Adaptive Systems.

[24]  Thomas Vogel,et al.  Model-Driven Engineering of Self-Adaptive Software with EUREMA , 2014, ACM Trans. Auton. Adapt. Syst..

[25]  Carlo Ghezzi,et al.  Self-adaptive software needs quantitative verification at runtime , 2012, CACM.

[26]  Laureano F. Escudero,et al.  On air traffic flow management with rerouting. Part II: Stochastic case , 2012, Eur. J. Oper. Res..

[27]  Bradley R. Schmerl,et al.  Software Engineering for Self-Adaptive Systems: A Second Research Roadmap , 2010, Software Engineering for Self-Adaptive Systems.

[28]  Siamak Mohammadi,et al.  Functional and Performance Analysis of Network-on-Chips Using Actor-based Modeling and Formal Verification , 2013, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

[29]  Carlo Ghezzi,et al.  Run-time efficient probabilistic model checking , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[30]  Gabor Karsai,et al.  Towards Practical Runtime Verification and Validation of Self-Adaptive Software Systems , 2013, Software Engineering for Self-Adaptive Systems.

[31]  Hongyang Qu,et al.  Incremental Runtime Verification of Probabilistic Systems , 2012, RV.