Managing Online Self-adaptation in Real-Time Environments

This paper provides a solution to the deliberation scheduling problem for self-adaptive hard real time intelligent control using the Self-Adaptive Cooperative Intelligent Real-Time Control Architecture (SA-CIRCA). For self-adaptive software, deliberation scheduling is the problem of deciding what aspects of the artifact should be improved, what methods of improvement should be chosen, and how much time should be devoted to each of these activities. The time spent in deliberation scheduling must be carefully controlled because it is time not available for the primary self-adaptation task. We provide a Markov Decision Process (MDP) model for deliberation scheduling in SA-CIRCA. Directly solving this MDP is not feasible for even relatively modest domains. We provide a polynomial time greedy (myopic) approximation algorithm. We evaluate this approximation against a "gold-standard" provided by the dynamic programming (value iteration) algorithm for MDPs. Our experimental results show that the approximation produces competitive solutions very quickly.