Decision-Making with Cross-Entropy for Self-Adaptation

Gabriel A. Moreno, Sagar Chaki, Ofer Strichman and Radislav Vaisman, Proceedings of the 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS), May 22-23, 2017.

Abstract: Approaches to decision-making in self-adaptive systems are increasingly becoming more effective at managing the target system by taking into account more elements of the decision problem that were previously ignored. These approaches have to solve complex optimization problems at run time, and even though they have been shown to be suitable for different kinds of systems, their time complexity can make them excessively slow for systems that have a large adaptation-relevant state space, or that require a tight control loop driven by fast decisions. In this paper we present an approach to speed up complex proactive latency-aware self-adaptation decisions, using the cross-entropy (CE) method for combinatorial optimization. CE is an any-time algorithm based on random sampling from the solution space, and is not guaranteed to find an optimal solution. Nevertheless, our experiments using two very different systems show that in practice it finds solutions that are close to optimum even when its running time is restricted to a fraction of a second, attaining speedups of up to 40 times over the previous fastest solution approach.