ABSTRACT

This chapter introduces a formal method to support software adaptation, based on Markov Decision Processes (MDP). It provides an introduction to Iterative Decision-Making Scheme (IDMS), an iterative framework that supports a tradeoff among three important metrics in practical runtime decision-making problems: accuracy, data usage, and computational overhead. IDMS can be naturally embedded into the Rainbow framework which employs a standard, point-valued MDP as its decision model, and thus extends the adaptation function of the latter. IDMS is an iterative process that contains one pre-stage and several runtime steps. The pre-stage builds up a parametric MDP with transition probability parameters in the design time. One main advantage of IDMS is the flexibility that enables a tradeoff between the three important metrics for practical, especially runtime, decision-making. The three metrics are accuracy of the decision, data usage for making the decision, and computational overhead on the runtime system.