Planning Landscape Analysis for Self-Adaptive SystemsShort Research Paper
To assure performance on the fly, planning is arguably one of the most important steps for self-adaptive systems (SASs), especially when they are highly configurable with a daunting number of adaptation options. However, there has been little understanding of the planning landscape or ways by which it can be analyzed. This inevitably creates barriers to the design of better and tailored planners for SASs. In this paper, we showcase how the planning landscapes of SASs can be quantified and reasoned, particularly with respect to the different environments. We do so by using the notions and metrics in fitness landscape analysis — a well-established field from the optimization community. Through studying four real-world SASs and 14 different environments that are of diverse domains, scales, and search spaces, we found that (1) the SAS planning landscapes often provide strong guidance to the planner, but their ruggedness and multi-modality can be the major obstacle; (2) the extents of guidance and number of global/local optima are sensitive to the changing environment, but not the ruggedness of the surface; (3) the local optima are often closer to the global optimum than other random points; and (4) there are considerable (and useful) overlaps on the global/local optima between landscapes under different environments. We then summarize what our findings mean and their potential implications to the future work of planner designs for SASs. To promote open science, we release all the code and data at https://doi.org/10.5281/zenodo.5866808.