paper

Introducing Phylogenetics in Search-based Software Engineering: Phylogenetics-aware SBSE

Abstract

Phylogenetics studies the relationships, in terms of biological history and kinship, of a set of taxa (e.g., species). We argue that in Search-based Software Engineering (SBSE), the individuals of an evolutionary computation-driven population could be considered as taxa for which the leverage of Phylogenetic Inference might be beneficial. In this work, we present our Phylogenetics-aware SBSE approach. Our approach introduces a novel Phylogenetic Operation to promote results which are sufficiently aligned (in terms of lineage) with a certain reference given by the domain expert. Our approach is evaluated in two heterogeneous industrial case studies: Procedural Content Generation from Game Software Engineering, and Feature Location from Software Maintenance. The results are analyzed using quality-of-the-solution and acceptance-by-developers measurements. We performed a statistical analysis to determine whether the impact on the results is significant compared to baselines that do not leverage Phylogenetics. The results show that our approach significantly outperforms two baselines in both case studies. Furthermore, two focus groups confirmed the acceptance of our approach and stressed that solution acceptance may make the difference in industrial environments. Our work has the potential to motivate a new breed of research work on Phylogenetics awareness to produce better results in Software Engineering.

Acknowledgements

  • VARNETICA: Spanish Ministry of Science, Innovation and Universities through the Spanish National R+D+i Plan under Grant CNS2023‑145422
  • VARIATIVA: Ministry of Economy and Competitiveness (MINECO) through the Spanish National R+D+i Plan and ERDF funds under Grant PID2021‑128695OB‑I00
  • Research Group T61_23R: Gobierno de Aragón (Spain)
  • Spanish Ministry of Science and Innovation under the Excellence Network AI4Software (Red2022-134647-T)