Decentralized Planning for Self-Adaptation in Multi-cloud Environment

The runtime management of Internet of Things (IoT) oriented applications deployed in multi-clouds is a complex issue due to the highly heterogeneous and dynamic execution environment. To effectively cope with such an environment, the cross-layer and multi-cloud effects should be taken into account and a decentralized self-adaptation is a promising solution to maintain and evolve the applications for quality assurance. An important issue to be tackled towards realizing this solution is the uncertainty effect of the adaptation, which may cause negative impact to the other layers or even clouds. In this paper, we tackle such an issue from the planning perspective, since an inappropriate planning strategy can fail the adaptation outcome. Therefore, we present an architectural model for decentralized self-adaptation to support the cross-layer and multi-cloud environment. We also propose a planning model and method to enable the decentralized decision making. The planning is formulated as a Reinforcement Learning problem and solved using the Q-learning algorithm. Through simulation experiments, we conduct a study to assess the effectiveness and sensitivity of the proposed planning approach. The results show that our approach can potentially reduce the negative impact on the cross-layer and multi-cloud environment.

[1]  Marco Aurélio Gerosa,et al.  Service-oriented middleware for the Future Internet: state of the art and research directions , 2011, Journal of Internet Services and Applications.

[2]  Rogério de Lemos,et al.  Software Engineering for Self-Adaptive Systems [outcome of a Dagstuhl Seminar] , 2009, Software Engineering for Self-Adaptive Systems.

[3]  Huaglory Tianfield,et al.  A concise introduction to autonomic computing , 2005, Adv. Eng. Informatics.

[4]  Valeria Cardellini,et al.  Towards Self-adaptation Planning for Complex Service-Based Systems , 2013, ICSOC Workshops.

[5]  Jim Dowling,et al.  Self-managed decentralised systems using K-components and collaborative reinforcement learning , 2004, WOSS '04.

[6]  Luciano Baresi,et al.  A Fault Taxonomy for Web Service Composition , 2009, ICSOC Workshops.

[7]  Thomas Ledoux,et al.  A Framework for the Coordination of Multiple Autonomic Managers in Cloud Environments , 2013, 2013 IEEE 7th International Conference on Self-Adaptive and Self-Organizing Systems.

[8]  Sooyong Park,et al.  Reinforcement learning-based dynamic adaptation planning method for architecture-based self-managed software , 2009, 2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems.

[9]  Marimuthu Palaniswami,et al.  Internet of Things (IoT): A vision, architectural elements, and future directions , 2012, Future Gener. Comput. Syst..

[10]  Peter Dayan,et al.  Q-learning , 1992, Machine Learning.

[11]  Marco D. Santambrogio,et al.  Coordination of Independent Loops in Self-Adaptive Systems , 2014, TRETS.

[12]  Alessio Lomuscio,et al.  Service-Oriented Computing – ICSOC 2013 Workshops , 2013, Lecture Notes in Computer Science.

[13]  Eric M. Yeatman,et al.  Urban Sensor Data Streams: London 2013 , 2013, IEEE Internet Computing.

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

[15]  Katsumi Inoue,et al.  Learning revised models for planning in adaptive systems , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[16]  Bradley R. Schmerl,et al.  On Patterns for Decentralized Control in Self-Adaptive Systems , 2010, Software Engineering for Self-Adaptive Systems.

[17]  Timo Ojala,et al.  Traffic in the Smart City: Exploring City-Wide Sensing for Traffic Control Center Augmentation , 2013, IEEE Internet Computing.

[18]  Maria Fazio,et al.  Design of a Message-Oriented Middleware for Cooperating Clouds , 2013, ESOCC Workshops.

[19]  NallurVivek,et al.  A Decentralized Self-Adaptation Mechanism for Service-Based Applications in the Cloud , 2013 .

[20]  Marco D. Santambrogio,et al.  On self-adaptive resource allocation through reinforcement learning , 2013, 2013 NASA/ESA Conference on Adaptive Hardware and Systems (AHS-2013).

[21]  Sam Malek,et al.  FUSION: a framework for engineering self-tuning self-adaptive software systems , 2010, FSE '10.

[22]  Peter Dayan,et al.  Technical Note: Q-Learning , 2004, Machine Learning.