An Adaptive Decision Making Approach Based on Reinforcement Learning for Self-Managed Cloud Applications

Cloud applications usually face challenges from the dynamic changing environment, growing number of users and large amount of concurrency accesses etc. A self-management based on resource adjustment is emerging to deal with these problems. To achieve self-management, it is the key problem to make resource adjustment decisions adaptively. There are two types of decision making in self-management: static and dynamic. Static method is not suitable for cloud environments. And the existing dynamic methods (i.e. intelligence optimization algorithm-based method and off-line model-based method) are often inefficient or not adaptive to the variation of environment. In this paper, we propose a reinforcement learning-based approach to dynamic decision making in resource adjustment-based self-management. This approach enables a cloud application to guarantee its performance by learning the results of its behavior and by dynamically changing its plans based on the learning in the presence of environmental changes. The process of our decision making approach for the self-managed cloud applications is also presented in this paper. Experimental results using a prototype framework in the context of a SBS application demonstrate the effectiveness of this approach.

[1]  Schahram Dustdar,et al.  Cost-Based Optimization of Service Compositions , 2013, IEEE Transactions on Services Computing.

[2]  Danny Weyns,et al.  MAPE-K Formal Templates to Rigorously Design Behaviors for Self-Adaptive Systems , 2015, ACM Trans. Auton. Adapt. Syst..

[3]  Sam Malek,et al.  Ieee Transactions on Software Engineering 1 a Learning-based Framework for Engineering Feature-oriented Self-adaptive Software Systems , 2022 .

[4]  Matti A. Hiltunen,et al.  Self-Management of Adaptable Component-Based Applications , 2013, IEEE Transactions on Software Engineering.

[5]  Weisong Shi,et al.  A Two-Tiered On-Demand Resource Allocation Mechanism for VM-Based Data Centers , 2013, IEEE Transactions on Services Computing.

[6]  Richard S. Sutton,et al.  Reinforcement Learning: An Introduction , 1998, IEEE Trans. Neural Networks.

[7]  Bradley R. Schmerl,et al.  Rainbow: architecture-based self-adaptation with reusable infrastructure , 2004, International Conference on Autonomic Computing, 2004. Proceedings..

[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]  Jatinder N. D. Gupta,et al.  Heuristics for Provisioning Services to Workflows in XaaS Clouds , 2016, IEEE Transactions on Services Computing.

[10]  Andrew W. Moore,et al.  Reinforcement Learning: A Survey , 1996, J. Artif. Intell. Res..

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