On the Interaction between the Search Parameters and the Nature of the
Search Problems in Search-Based Model-Driven Engineering
Abstract
The use of Search-Based software engineering to address Model-Driven
Engineering activities (SBMDE) is becoming more popular. Many
maintenance tasks can be reformulated as a search problem, and, when
those tasks are applied to software models, the search strategy has to
retrieve a model fragment. There are no studies on the influence of the
search parameters when applied to software models. This paper evaluates
the impact of different search parameter values on the performance of an
evolutionary algorithm whose population is in the form of software
models. Our study takes into account the nature of the model fragment
location problems (MFLPs) in which the evolutionary algorithm is
applied. The evaluation searches 1,895 MFLPs (characterized through five
measures that define MFLPs) from two industrial case studies and uses
625 different combinations of search parameter values. The results show
that the impact on the performance when varying the population size, the
replacement percentage, or the crossover rate produces changes of around
30% in performance. With regard to the nature of the problems, the size
of the search space has the largest impact. Search parameter values and
the nature of the MFLPs influence the performance when applying an
evolutionary algorithm to perform fragment location on models. Search
parameter values have a greater effect on precision values, and the
nature of the model fragment location problems has a greater effect on
recall values. Our results should raise awareness of the relevance of
the search parameters and the nature of the problems for the SBMDE
community.