Search Budget in Multi-Objective Refactoring Optimization: a Model-Based Empirical Study
Daniele Di Pompeo, Michele Tucci
TL;DR
The paper analyzes the impact of a time-based search budget on the quality of solutions in model-based multi-objective refactoring optimization, comparing NSGA-II, SPEA2, and PESA2 across two benchmarks. Using Hypervolume ($HV$) against a reference front built from unbudgeted runs, it shows that tighter budgets significantly reduce front quality, with the algorithm choice often outweighing budget effects. PESA2 tends to produce the highest quality fronts within a budget, NSGA-II is the fastest enabling more evolutions, and SPEA2 is generally the slowest with weaker results. The findings guide designers in selecting algorithms based on budget constraints and emphasize the practical importance of budget-aware optimization in software model refactoring.
Abstract
Software model optimization is the task of automatically generate design alternatives, usually to improve quality aspects of software that are quantifiable, like performance and reliability. In this context, multi-objective optimization techniques have been applied to help the designer find suitable trade-offs among several non-functional properties. In this process, design alternatives can be generated through automated model refactoring, and evaluated on non-functional models. Due to their complexity, this type of optimization tasks require considerable time and resources, often limiting their application in software engineering processes. In this paper, we investigate the effects of using a search budget, specifically a time limit, to the search for new solutions. We performed experiments to quantify the impact that a change in the search budget may have on the quality of solutions. Furthermore, we analyzed how different genetic algorithms (i.e., NSGA-II, SPEA2, and PESA2) perform when imposing different budgets. We experimented on two case studies of different size, complexity, and domain. We observed that imposing a search budget considerably deteriorates the quality of the generated solutions, but the specific algorithm we choose seems to play a crucial role. From our experiments, NSGA-II is the fastest algorithm, while PESA2 generates solutions with the highest quality. Differently, SPEA2 is the slowest algorithm, and produces the solutions with the lowest quality.
